Ver Fonte

✨ feat: 新增广告管理模块根据sku搜索

WanGxC há 1 ano atrás
pai
commit
f21256be19

+ 5 - 0
src/views/adManage/sp/advertisedProducts/index.vue

@@ -11,6 +11,9 @@ import { storeToRefs } from 'pinia'
 import { SbBaseColumn } from '/@/views/adManage/utils/commonTabColumn'
 import DataCompare from '/@/components/dataCompare/index.vue'
 
+
+const searchItem = inject('topSearchItem')
+const searchType = inject('searchType')
 const filterItem = inject('searchItem')
 
 const tabActiveName = ref('dataTendency')
@@ -22,6 +25,8 @@ const queryParams = ref({
   profileId: profile.value.profile_id,
   dateRange,
   filterItem,
+  searchType,
+  searchItem
 })
 
 const { crudBinding, crudRef, crudExpose } = useFs({ createCrudOptions, context: queryParams })

+ 6 - 6
src/views/adManage/sp/campaigns/index.vue

@@ -13,13 +13,13 @@ import { BaseColumn } from '/@/views/adManage/utils/commonTabColumn.js'
 import DataCompare from '/@/components/dataCompare/index.vue'
 import emitter from '../../../../utils/emitter'
 
-emitter.on('PopoverFilter-allSkus', (data: any) => {
-  searchItem.value = data.allSkus.value
-  searchType.value = data.searchType.value
-})
+// emitter.on('PopoverFilter-allSkus', (data: any) => {
+//   searchItem.value = data.allSkus.value
+//   searchType.value = data.searchType.value
+// })
 
-const searchItem = ref([])
-const searchType = ref('')
+const searchItem = inject('topSearchItem')
+const searchType = inject('searchType')
 const filterItem = inject('searchItem')
 
 const tabActiveName = ref('dataTendency')

+ 13 - 0
src/views/adManage/sp/index.vue

@@ -13,6 +13,7 @@ import DateRangePicker from '/@/components/DateRangePicker/index.vue'
 import { usePublicData } from '/@/stores/publicData'
 import { useShopInfo } from '/@/stores/shopInfo'
 import { GetAllPortfolios } from '/@/views/adManage/portfolios/api'
+import emitter from '/@/utils/emitter'
 
 // const shopInfo = useShopInfo()
 const publicData = usePublicData()
@@ -20,9 +21,11 @@ const selectedPortfolios: Ref<string[]> = ref([])
 const portfolios: Ref<Portfolio[]> = ref([])
 const { dateRange } = storeToRefs(publicData)
 provide('dateRange', dateRange)
+
 const shopInfo = useShopInfo()
 const { profile } = storeToRefs(shopInfo)
 provide('profile', profile)
+
 const searchItem = ref('')
 const filterItem = ref('')
 provide('searchItem', searchItem)
@@ -32,6 +35,16 @@ function handleSearchChange() {
   searchItem.value = filterItem.value
 }
 
+// 提供给PopoverFilter组件的搜索内容
+emitter.on('PopoverFilter-allSkus', (data: any) => {
+  topSearchItem.value = data.allSkus.value
+  searchType.value = data.searchType.value
+})
+const topSearchItem = ref([])
+const searchType = ref('')
+provide('topSearchItem', topSearchItem)
+provide('searchType', searchType)
+
 const tabActiveName = ref('Campaigns')
 const tabs = [
   { label: '广告活动', name: 'Campaigns' },

+ 4 - 0
src/views/adManage/sp/keywords/index.vue

@@ -12,6 +12,8 @@ import router from '/@/router'
 import { BaseColumn } from '/@/views/adManage/utils/commonTabColumn'
 import DataCompare from '/@/components/dataCompare/index.vue'
 
+const searchItem = inject('topSearchItem')
+const searchType = inject('searchType')
 const filterItem = inject('searchItem')
 
 const tabActiveName = ref('dataTendency')
@@ -22,6 +24,8 @@ const { profile } = storeToRefs(shopInfo)
 const queryParams = ref({
   profileId: profile.value.profile_id,
   dateRange,
+  searchItem,
+  searchType,
   filterItem,
 })
 const { crudBinding, crudRef, crudExpose } = useFs({ createCrudOptions, context: queryParams })

+ 5 - 0
src/views/adManage/sp/placement/index.vue

@@ -12,7 +12,10 @@ import { storeToRefs } from 'pinia'
 import { SbBaseColumn } from '/@/views/adManage/utils/commonTabColumn'
 import DataCompare from '/@/components/dataCompare/index.vue'
 
+const searchItem = inject('topSearchItem')
+const searchType = inject('searchType')
 const filterItem = inject('searchItem')
+
 const tabActiveName = ref('dataTendency')
 const shopInfo = useShopInfo()
 const publicData = usePublicData()
@@ -21,6 +24,8 @@ const { profile } = storeToRefs(shopInfo)
 const queryParams = ref({
   profileId: profile.value.profile_id,
   dateRange,
+  searchItem,
+  searchType,
   filterItem,
 })
 const { crudBinding, crudRef, crudExpose } = useFs({ createCrudOptions, context: queryParams })

+ 5 - 0
src/views/adManage/sp/purchasedOtherProducts/index.vue

@@ -12,6 +12,9 @@ import { SpCampaignPuchasedOtherProductsColumn } from '/@/views/adManage/utils/c
 import DataCompare from '/@/components/dataCompare/index.vue'
 import router from '/@/router'
 
+
+const searchItem = inject('topSearchItem')
+const searchType = inject('searchType')
 const filterItem = inject('searchItem')
 
 const tabActiveName = ref('dataTendency')
@@ -28,6 +31,8 @@ const showCompare = ref(false)
 const queryParams = ref({
   profileId: profile.value.profile_id,
   dateRange,
+  searchItem,
+  searchType,
   filterItem,
 })
 const { crudBinding, crudRef, crudExpose } = useFs({ createCrudOptions, context: queryParams })

+ 5 - 0
src/views/adManage/sp/searchTerm/index.vue

@@ -11,7 +11,10 @@ import { BaseColumn } from '/@/views/adManage/utils/commonTabColumn.js'
 import DataCompare from '/@/components/dataCompare/index.vue'
 import { useRouter } from 'vue-router'
 
+const searchItem = inject('topSearchItem')
+const searchType = inject('searchType')
 const filterItem = inject('searchItem')
+
 const tabActiveName = ref('dataTendency')
 const shopInfo = useShopInfo()
 const publicData = usePublicData()
@@ -28,6 +31,8 @@ const jumpGroup = (row: any) => {
 const queryParams = ref({
   profileId: profile.value.profile_id,
   dateRange,
+  searchType,
+  searchItem,
   filterItem,
 })
 const { crudBinding, crudRef, crudExpose } = useFs({ createCrudOptions, context: queryParams })

+ 6 - 0
src/views/adManage/sp/targets/index.vue

@@ -12,7 +12,11 @@ import { storeToRefs } from 'pinia'
 import { SbBaseColumn } from '/@/views/adManage/utils/commonTabColumn'
 import DataCompare from '/@/components/dataCompare/index.vue'
 
+
+const searchItem = inject('topSearchItem')
+const searchType = inject('searchType')
 const filterItem = inject('searchItem')
+
 const tabActiveName = ref('dataTendency')
 const shopInfo = useShopInfo()
 const publicData = usePublicData()
@@ -21,6 +25,8 @@ const { profile } = storeToRefs(shopInfo)
 const queryParams = ref({
   profileId: profile.value.profile_id,
   dateRange,
+  searchType,
+  searchItem,
   filterItem,
 })
 

+ 2 - 0
src/views/demo/index.vue

@@ -2,6 +2,8 @@
 import * as ww from '@wecom/jssdk'
 import { WeComLogin } from './api'
 
+// const txt = defineModel()
+
 function createWXQRCode() {
   ww.createWWLoginPanel({
     el: '#wx_qrcode',