|
@@ -1,34 +1,3 @@
|
|
|
-<script lang="ts" setup>
|
|
|
-import {onMounted, ref, Ref} from 'vue'
|
|
|
-import {useRoute} from 'vue-router'
|
|
|
-import AdGroups from './adGroups/index.vue'
|
|
|
-import Placement from './placement/index.vue'
|
|
|
-import Budget from './budget/index.vue'
|
|
|
-import Automation from './automation/index.vue'
|
|
|
-import { getEnumLabel, getTagType } from '/@/views/adManage/utils/tools.js';
|
|
|
-import { dynBidStrategyEnum, dynStatusEnum, spTargetTypeEnum } from '/@/views/adManage/utils/enum.js';
|
|
|
-import {useShopInfo} from '/@/stores/shopInfo'
|
|
|
-// import { usePublicData } from '/@/stores/publicData'
|
|
|
-import {storeToRefs} from 'pinia'
|
|
|
-
|
|
|
-import {GetObj} from './api'
|
|
|
-
|
|
|
-const shopInfo = useShopInfo()
|
|
|
-const { profile } = storeToRefs(shopInfo)
|
|
|
-const route = useRoute()
|
|
|
-const campaignInfo: Ref<SpCampaign> = ref({})
|
|
|
-const tabActiveName = ref('adGroup')
|
|
|
-
|
|
|
-const campaignId = ref(route.query.campaignId)
|
|
|
-
|
|
|
-onMounted(async () => {
|
|
|
- const resp = await GetObj(route.query.campaignId)
|
|
|
- campaignInfo.value = resp.data
|
|
|
-})
|
|
|
-
|
|
|
-
|
|
|
-</script>
|
|
|
-
|
|
|
<template>
|
|
|
<div class="asj-container">
|
|
|
<div class="asj-detail-header">
|
|
@@ -44,7 +13,9 @@ onMounted(async () => {
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="label">预算:</span>
|
|
|
- <span class="value">{{ profile.currency_symbol + campaignInfo.budget }} | {{ dynStatusEnum[campaignInfo.budgetType] }}</span>
|
|
|
+ <span class="value">{{
|
|
|
+ profile.currency_symbol + campaignInfo.budget
|
|
|
+ }} | {{ dynStatusEnum[campaignInfo.budgetType] }}</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
<span class="label">投放类型:</span>
|
|
@@ -64,18 +35,19 @@ onMounted(async () => {
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <el-tabs type="border-card" class="asj-detail-tabs" v-model="tabActiveName">
|
|
|
+ <el-tabs v-model="tabActiveName" class="asj-detail-tabs" type="border-card">
|
|
|
<el-tab-pane label="广告组" name="adGroup">
|
|
|
- <AdGroups :campaignId="campaignId" v-if="tabActiveName==='adGroup'"></AdGroups>
|
|
|
+ <AdGroups v-if="tabActiveName==='adGroup'" :campaignId="campaignId"></AdGroups>
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="预算" name="budget">
|
|
|
- <Budget :campaignId="campaignId" v-if="tabActiveName==='budget'"></Budget>
|
|
|
+ <Budget v-if="tabActiveName==='budget'" :campaignId="campaignId"></Budget>
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="自动化" name="automation">
|
|
|
- <Automation :campaignId="campaignId" :profileId="profile.profile_id" :targetingType="campaignInfo.targetingType" v-if="tabActiveName==='automation'"></Automation>
|
|
|
+ <Automation v-if="tabActiveName==='automation'" :campaignId="campaignId" :profileId="profile.profile_id"
|
|
|
+ :targetingType="campaignInfo.targetingType"></Automation>
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="广告位" name="placement">
|
|
|
- <Placement :campaignId="campaignId" v-if="tabActiveName==='placement'"/>
|
|
|
+ <Placement v-if="tabActiveName==='placement'" :campaignId="campaignId" />
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="否定投放" name="negative">
|
|
|
否定投放
|
|
@@ -85,6 +57,38 @@ onMounted(async () => {
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
+<script lang="ts" setup>
|
|
|
+import { onMounted, ref, Ref } from 'vue';
|
|
|
+import { useRoute } from 'vue-router';
|
|
|
+import AdGroups from './adGroups/index.vue';
|
|
|
+import Placement from './placement/index.vue';
|
|
|
+import Budget from './budget/index.vue';
|
|
|
+import Automation from './automation/index.vue';
|
|
|
+import { getEnumLabel, getTagType } from '/@/views/adManage/utils/tools.js';
|
|
|
+import { dynBidStrategyEnum, dynStatusEnum, spTargetTypeEnum } from '/@/views/adManage/utils/enum.js';
|
|
|
+import { useShopInfo } from '/@/stores/shopInfo';
|
|
|
+// import { usePublicData } from '/@/stores/publicData'
|
|
|
+import { storeToRefs } from 'pinia';
|
|
|
+
|
|
|
+import { GetObj } from './api';
|
|
|
+
|
|
|
+
|
|
|
+const shopInfo = useShopInfo();
|
|
|
+const { profile } = storeToRefs(shopInfo);
|
|
|
+const route = useRoute();
|
|
|
+const campaignInfo: Ref<SpCampaign> = ref({});
|
|
|
+const tabActiveName = ref('adGroup');
|
|
|
+
|
|
|
+const campaignId = ref(route.query.campaignId);
|
|
|
+
|
|
|
+onMounted(async () => {
|
|
|
+ const resp = await GetObj(route.query.campaignId);
|
|
|
+ campaignInfo.value = resp.data;
|
|
|
+});
|
|
|
+
|
|
|
+
|
|
|
+</script>
|
|
|
+
|
|
|
<style>
|
|
|
/* .el-tabs--card {
|
|
|
height: calc(100vh - 80px);
|