Ver Código Fonte

自定义指标

xiuli.gao 9 meses atrás
pai
commit
9b756a701f
45 arquivos alterados com 97 adições e 72 exclusões
  1. 1 0
      dist/assets/index.05255e38.css
  2. 1 1
      dist/assets/index.ca6f969d.js
  3. 0 1
      dist/assets/index.2f036c47.css
  4. 1 1
      dist/assets/index.a740ca20.css
  5. 1 0
      dist/assets/index.db50a4fb.css
  6. 1 1
      dist/index.html
  7. 1 1
      dist/js/Home/index.6fbf2056.js
  8. 1 1
      dist/js/_dialog/_dialog.11f9c359.js
  9. 1 1
      dist/js/_input/_input.1f4967b5.js
  10. 1 1
      dist/js/_select/_select.5b093418.js
  11. 0 3
      dist/js/acStatement.vue/index.0e35ac52.js
  12. 3 0
      dist/js/acStatement.vue/index.bac60246.js
  13. 1 1
      dist/js/adTask/index.6408bdff.js
  14. 1 1
      dist/js/adqManage/index.5b4cdf8b.js
  15. 1 1
      dist/js/basisMoudle/error.f952e2dc.js
  16. 1 1
      dist/js/basisMoudle/login.09701c66.js
  17. 1 1
      dist/js/collectClip/index.10e9ac9b.js
  18. 1 1
      dist/js/configArea/index.9175dbba.js
  19. 1 1
      dist/js/define/define.3db29523.js
  20. 0 1
      dist/js/gdtList/index.1846a7e6.js
  21. 1 0
      dist/js/gdtList/index.1d715bb7.js
  22. 1 0
      dist/js/index/index.0ef21867.js
  23. 1 1
      dist/js/index/index.b5a18753.js
  24. 1 1
      dist/js/index/index.d1373a97.js
  25. 1 1
      dist/js/layout/index.bc720ee3.js
  26. 1 1
      dist/js/layout/index_head.718a07bb.js
  27. 1 1
      dist/js/limitManage/index.eed9321a.js
  28. 0 1
      dist/js/list/list.4152882d.js
  29. 1 1
      dist/js/materialBlock/materialBlock.5d7b8698.js
  30. 1 1
      dist/js/materialLibrary/index.0732966d.js
  31. 1 1
      dist/js/memberManage/index.d3fe36b3.js
  32. 1 1
      dist/js/menu/index.a06d27da.js
  33. 1 1
      dist/js/miniprogram/index.13234dbf.js
  34. 1 1
      dist/js/projectManage/index.5526841c.js
  35. 1 1
      dist/js/radioGroup/radioGroup.6626d36c.js
  36. 1 1
      dist/js/tableInfo/tableInfo.1872fada.js
  37. 1 1
      dist/js/taskList/index.44a44d99.js
  38. 1 1
      dist/js/teamManage/index.3bd2b06d.js
  39. 1 1
      dist/js/timeScreen/timeScreen.35749212.js
  40. 1 1
      dist/js/warning/warning.ee249905.js
  41. 1 1
      dist/js/wechatPage/index.c00dc34a.js
  42. 1 1
      dist/js/weekTime/weekTime.a4c2d76f.js
  43. 55 31
      src/components/businessMoudle/dataManagement/acStatement.vue/dataList.vue
  44. 1 1
      src/components/businessMoudle/gdtList/indicators/index.vue
  45. 1 1
      src/components/businessMoudle/gdtList/indicators/ts/api.ts

Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 0
dist/assets/index.05255e38.css


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/assets/index.ca6f969d.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 1
dist/assets/index.2f036c47.css


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/assets/index.a740ca20.css


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 0
dist/assets/index.db50a4fb.css


+ 1 - 1
dist/index.html

@@ -12,7 +12,7 @@
12 12
 			document.write('<script src="' + src + '"><\/script>');
13 13
 			})();
14 14
     </script>
15
-    <script type="module" crossorigin src="./assets/index.ca6f969d.js"></script>
15
+    <script type="module" crossorigin src="./assets/index.076039f9.js"></script>
16 16
     <link rel="modulepreload" href="./js/@vue/@vue.5bfcce30.js">
17 17
     <link rel="modulepreload" href="./js/vue-router/vue-router.ccba075e.js">
18 18
     <link rel="modulepreload" href="./js/vue-demi/vue-demi.4f3c4c97.js">

Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/Home/index.6fbf2056.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/_dialog/_dialog.11f9c359.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/_input/_input.1f4967b5.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/_select/_select.5b093418.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 3
dist/js/acStatement.vue/index.0e35ac52.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 3 - 0
dist/js/acStatement.vue/index.bac60246.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/adTask/index.6408bdff.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/adqManage/index.5b4cdf8b.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/basisMoudle/error.f952e2dc.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/basisMoudle/login.09701c66.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/collectClip/index.10e9ac9b.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/configArea/index.9175dbba.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/define/define.3db29523.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 1
dist/js/gdtList/index.1846a7e6.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 0
dist/js/gdtList/index.1d715bb7.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 0
dist/js/index/index.0ef21867.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/index/index.b5a18753.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/index/index.d1373a97.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/layout/index.bc720ee3.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/layout/index_head.718a07bb.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/limitManage/index.eed9321a.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 1
dist/js/list/list.4152882d.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/materialBlock/materialBlock.5d7b8698.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/materialLibrary/index.0732966d.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/memberManage/index.d3fe36b3.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/menu/index.a06d27da.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/miniprogram/index.13234dbf.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/projectManage/index.5526841c.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/radioGroup/radioGroup.6626d36c.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/tableInfo/tableInfo.1872fada.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/taskList/index.44a44d99.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/teamManage/index.3bd2b06d.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/timeScreen/timeScreen.35749212.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/warning/warning.ee249905.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/wechatPage/index.c00dc34a.js


Diferenças do arquivo suprimidas por serem muito extensas
+ 1 - 1
dist/js/weekTime/weekTime.a4c2d76f.js


+ 55 - 31
src/components/businessMoudle/dataManagement/acStatement.vue/dataList.vue

@@ -2,12 +2,15 @@
2 2
   <div v-loading="loading" class="table_container">
3 3
     <div class="tableTop">
4 4
       <div class="title">详细数据</div>
5
-      <el-button type="primary" plain @click="exportEvent">导出数据</el-button>
5
+      <div>
6
+        <Indicators :type="mainPageInfo.data_group == 'account' ? 'account_report_1' : ( mainPageInfo.data_group == 'user' ? 'account_report_2' : (mainPageInfo.data_group == 'team' ? 'account_report_3' : ''))" @refresh="init(1)"></Indicators>
7
+        <el-button class="lMar10" type="primary" plain @click="exportEvent">导出数据</el-button>
8
+      </div>
6 9
     </div>
7 10
     <div>
8
-      <el-table ref="tableAccountRef" :data="tableInfo.tableList"
9
-        :header-cell-style="tableHeaderStyle" style="width: 100%;" border empty-text="暂无数据" :summary-method="getSummaries"
10
-        show-summary max-height="calc(100vh - 280px)">
11
+      <el-table ref="tableAccountRef" :data="tableInfo.tableList" :header-cell-style="tableHeaderStyle"
12
+        style="width: 100%;" :key="tableInfo.updateKey" border empty-text="暂无数据" :summary-method="getSummaries" show-summary
13
+        max-height="calc(100vh - 280px)">
11 14
         <template v-for="item in tableInfo.descol">
12 15
           <el-table-column :fixed="item.disabled == 1" :prop="item.key_value"
13 16
             :min-width="item.key_value != 'advertiser_status' && item.key_value != 'advertiser_nick' && item.label.length <= 4 ? '120px' : item.label.length <= 8 ? '150px' : '200px'">
@@ -58,12 +61,13 @@ import { Api } from "@/api/api";
58 61
 import { ElMessage } from "element-plus";
59 62
 import { getDay, hasDot } from "@/common/common";
60 63
 import http from "@/http/http";
61
-import downLoadTable from "@/components/capsulationMoudle/downLoadTable.vue";
62 64
 import { exportOrder } from "@/common/export/index.js";
65
+import Indicators from '@/components/businessMoudle/gdtList/indicators/index.vue'
66
+
63 67
 const props = defineProps({
64 68
   mainPageInfo: {
65 69
     type: Object,
66
-    default: ()=>{}
70
+    default: () => { }
67 71
   }
68 72
 })
69 73
 
@@ -79,7 +83,8 @@ const tableInfo = reactive<any>({
79 83
   pageSize: 20,
80 84
   total: 0,
81 85
   totalPages: 0,//共多少页
82
-  sortType: 'desc'
86
+  sortType: 'desc',
87
+  updateKey: 1,
83 88
 })
84 89
 
85 90
 
@@ -119,21 +124,29 @@ const exportEvent = async () => {
119 124
   loading.value = false;
120 125
   if (res && res.errNo == '0') {
121 126
     let list = res.rst.data.list;
122
-      let tHeader = res.rst.data?.explain?.map((v) => {
123
-        return v.label;
124
-      })
125
-      let filterVal = res.rst.data?.explain.map((v) => {
126
-        return v.key_value
127
-      })
128
-      let excelDatas = [
129
-        {
130
-          tHeader: tHeader, // sheet表一头部
131
-          filterVal: filterVal, // 表一的数据字段
132
-          tableDatas: list, // 表一的整体json数据
133
-          sheetName: ''// 表一的sheet名字
134
-        }
135
-      ]
136
-      exportOrder({ excelDatas, name: `数据报表(导出时间:${getDay(0)})` })
127
+    let descol = [{
128
+        disabled: 1,
129
+        if_sort: 1,
130
+        key_value: "time",
131
+        label: "时间",
132
+        tooltip: ""
133
+      }].concat(res.rst.data?.explain)
134
+
135
+    let tHeader = descol.map((v) => {
136
+      return v.label;
137
+    })
138
+    let filterVal = descol.map((v) => {
139
+      return v.key_value
140
+    })
141
+    let excelDatas = [
142
+      {
143
+        tHeader: tHeader, // sheet表一头部
144
+        filterVal: filterVal, // 表一的数据字段
145
+        tableDatas: list, // 表一的整体json数据
146
+        sheetName: ''// 表一的sheet名字
147
+      }
148
+    ]
149
+    exportOrder({ excelDatas, name: `数据报表(导出时间:${getDay(0)})` })
137 150
   } else {
138 151
     ElMessage.error(res.errMsg)
139 152
   }
@@ -161,13 +174,20 @@ const init = async (page?: any, pageSize?: any) => {
161 174
   let res: any = await http.get(Api.report_accountReportList, params)
162 175
   loading.value = false;
163 176
   if (res && res.errNo == '0') {
164
-    if(res.rst?.data?.summary?.length > 0){
177
+    if (res.rst?.data?.summary?.length > 0) {
165 178
       tableInfo.summary = res.rst?.data?.summary[0];
166 179
     }
167
-    tableInfo.descol = res.rst?.data?.explain;
180
+    tableInfo.descol = [{
181
+        disabled: 1,
182
+        if_sort: 1,
183
+        key_value: "time",
184
+        label: "时间",
185
+        tooltip: ""
186
+      }].concat(res.rst?.data?.explain);
168 187
     tableInfo.tableList = res.rst?.data?.list;
169 188
     tableInfo.total = res.rst?.pageInfo.total
170 189
     tableInfo.totalPages = res.rst?.pageInfo.total
190
+    tableInfo.updateKey ++;
171 191
   } else {
172 192
     ElMessage.error(res.errMsg)
173 193
   }
@@ -232,16 +252,19 @@ defineExpose({
232 252
   max-width: 600px;
233 253
   /* 设置最大宽度,根据需要调整 */
234 254
 }
235
-.table_container{
255
+
256
+.table_container {
236 257
   background-color: #fff;
237 258
   margin-top: 10px;
238 259
   padding: 20px;
239 260
 }
240
-.sortBox{
261
+
262
+.sortBox {
241 263
   height: 16px;
242 264
   margin-left: 2px;
243 265
   margin-top: -4px;
244
-  .sortItem{
266
+
267
+  .sortItem {
245 268
     width: 8px;
246 269
     height: 8px;
247 270
     line-height: 8px;
@@ -249,15 +272,16 @@ defineExpose({
249 272
     color: #999;
250 273
   }
251 274
 }
252
-.tableTop{
275
+
276
+.tableTop {
253 277
   display: flex;
254 278
   align-items: center;
255 279
   justify-content: space-between;
256 280
   padding-bottom: 20px;
257
-  .title{
281
+
282
+  .title {
258 283
     font-size: 14px;
259 284
     color: #333;
260 285
     font-weight: bold;
261 286
   }
262
-}
263
-</style>
287
+}</style>

+ 1 - 1
src/components/businessMoudle/gdtList/indicators/index.vue

@@ -38,7 +38,7 @@ import IndicatorsDialog from './indexDialog.vue'
38 38
 import { getAdKpisTemplate, selectAdKpisTemplate, delAdKpisTemplate } from './ts/api'
39 39
 import { ElMessage } from 'element-plus';
40 40
 const props = withDefaults(defineProps<{
41
-  type: "media_base" | "campaign_base" | "ad_base" | "creative_base",
41
+  type: "media_base" | "campaign_base" | "ad_base" | "creative_base" | string,
42 42
 }>(), {
43 43
   type: 'media_base',
44 44
 })

+ 1 - 1
src/components/businessMoudle/gdtList/indicators/ts/api.ts

@@ -2,7 +2,7 @@ import http from '@/http/http'
2 2
 import { ElMessage } from "element-plus";
3 3
 //基本接口
4 4
 interface IType {
5
-  type: 'media_base' | 'campaign_base' | 'ad_base' | 'creative_base',
5
+  type: 'media_base' | 'campaign_base' | 'ad_base' | 'creative_base' | any,
6 6
 }
7 7
 /**保存常用/自定义指标模板 */
8 8
 interface IAdKpisTemplateSave extends IType {