|
@@ -5,28 +5,28 @@
|
|
<span> {{ campaignInfo.campaignName }}</span>
|
|
<span> {{ campaignInfo.campaignName }}</span>
|
|
</span>
|
|
</span>
|
|
<div class="asj-detail-info">
|
|
<div class="asj-detail-info">
|
|
- <span>状态:{{ campaignInfo.state }}</span>
|
|
|
|
- <span>预算:${{ campaignInfo.budget }}</span>
|
|
|
|
|
|
+ <span>状态:{{ campaignInfo.state }} ({{ campaignInfo.servingStatus }})</span>
|
|
|
|
+ <span>预算:{{ profile.currency_symbol + campaignInfo.budget }} | {{ campaignInfo.budgetType }}</span>
|
|
<span>投放类型:{{ campaignInfo.targetingType }}</span>
|
|
<span>投放类型:{{ campaignInfo.targetingType }}</span>
|
|
<span>投放日期:{{ campaignInfo.startDate }} ~ {{ campaignInfo.endDate ?? '无结束日期' }}</span>
|
|
<span>投放日期:{{ campaignInfo.startDate }} ~ {{ campaignInfo.endDate ?? '无结束日期' }}</span>
|
|
- <span>广告组合:{{ campaignInfo?.portfolio?.name }}</span>
|
|
|
|
- <span>竞价策略:{{ campaignInfo.dynBidStrategy }}</span>
|
|
|
|
|
|
+ <span>广告组合:{{ campaignInfo?.portfolioName }}</span>
|
|
|
|
+ <span>竞价策略:{{ getEnumLabel(dynBidStrategyEnum, campaignInfo.dynBidStrategy) }}</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<el-tabs type="border-card" class="asj-detail-tabs" v-model="tabActiveName">
|
|
<el-tabs type="border-card" class="asj-detail-tabs" v-model="tabActiveName">
|
|
<el-tab-pane label="广告组" name="adGroup">
|
|
<el-tab-pane label="广告组" name="adGroup">
|
|
<AdGroups :campaignId="route.query.campaignId" v-if="tabActiveName==='adGroup'"></AdGroups>
|
|
<AdGroups :campaignId="route.query.campaignId" v-if="tabActiveName==='adGroup'"></AdGroups>
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
- <el-tab-pane label="预算" :lazy="true">
|
|
|
|
- 预算
|
|
|
|
|
|
+ <el-tab-pane label="预算" name="budget">
|
|
|
|
+ <Budget :campaignId="route.query.campaignId" v-if="tabActiveName==='budget'"></Budget>
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
- <el-tab-pane label="自动化" :lazy="true">
|
|
|
|
|
|
+ <el-tab-pane label="自动化" name="automation">
|
|
自动化
|
|
自动化
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
<el-tab-pane label="广告位" name="placement">
|
|
<el-tab-pane label="广告位" name="placement">
|
|
<Placement :campaignId="route.query.campaignId" v-if="tabActiveName==='placement'"/>
|
|
<Placement :campaignId="route.query.campaignId" v-if="tabActiveName==='placement'"/>
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
- <el-tab-pane label="否定投放" :lazy="true">
|
|
|
|
|
|
+ <el-tab-pane label="否定投放" name="negative">
|
|
否定投放
|
|
否定投放
|
|
</el-tab-pane>
|
|
</el-tab-pane>
|
|
<!-- <el-tab-pane label="操作日志" :lazy="true"></el-tab-pane> -->
|
|
<!-- <el-tab-pane label="操作日志" :lazy="true"></el-tab-pane> -->
|
|
@@ -39,16 +39,23 @@ import { ref, onMounted, onBeforeMount, Ref } from 'vue'
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
import AdGroups from './adGroups/index.vue'
|
|
import AdGroups from './adGroups/index.vue'
|
|
import Placement from './placement/index.vue'
|
|
import Placement from './placement/index.vue'
|
|
|
|
+import Budget from './budget/index.vue'
|
|
|
|
+import { getEnumLabel } from '/@/views/adManage/utils/tools.js'
|
|
|
|
+import { dynBidStrategyEnum, spCampaignServingStatusEnum } from '/@/views/adManage/utils/enum.js'
|
|
|
|
+import { useShopInfo } from '/@/stores/shopInfo'
|
|
|
|
+// import { usePublicData } from '/@/stores/publicData'
|
|
|
|
+import { storeToRefs } from 'pinia'
|
|
|
|
|
|
-import { GetObj } from '../api'
|
|
|
|
|
|
+import { GetObj } from './api'
|
|
|
|
|
|
-const router = useRouter()
|
|
|
|
|
|
+const shopInfo = useShopInfo()
|
|
|
|
+const { profile } = storeToRefs(shopInfo)
|
|
const route = useRoute()
|
|
const route = useRoute()
|
|
const campaignInfo: Ref<SpCampaign> = ref({})
|
|
const campaignInfo: Ref<SpCampaign> = ref({})
|
|
const tabActiveName = ref('adGroup')
|
|
const tabActiveName = ref('adGroup')
|
|
|
|
|
|
onMounted(async () => {
|
|
onMounted(async () => {
|
|
- const resp = await GetObj(route.query.id)
|
|
|
|
|
|
+ const resp = await GetObj(route.query.campaignId)
|
|
campaignInfo.value = resp.data
|
|
campaignInfo.value = resp.data
|
|
})
|
|
})
|
|
|
|
|