|
@@ -50,7 +50,7 @@
|
50
|
50
|
</div>
|
51
|
51
|
</div>
|
52
|
52
|
</div>
|
53
|
|
- <ux-grid class="uxGridBox" ref="plxTable" :border="false" @row-click="() => { return }"
|
|
53
|
+ <ux-grid class="throwPersonPuton-list" ref="plxTable" :border="false" @row-click="() => { return }"
|
54
|
54
|
:header-cell-style="headerColor" :height="height" show-footer-overflow="tooltip" show-overflow="tooltip"
|
55
|
55
|
size="mini">
|
56
|
56
|
<ux-table-column v-for="item in desCol" :key="item.prop" :resizable="true" :field="item.prop" :title="item.label"
|
|
@@ -68,6 +68,16 @@
|
68
|
68
|
</template>
|
69
|
69
|
<template v-slot="{ row }">
|
70
|
70
|
<span v-if="item.prop === 'account_name'" :class="sort_field == item.prop ? 'sortFieldStyle' : ''">{{ row[item.prop] }}</span>
|
|
71
|
+
|
|
72
|
+ <!-- S 使用客服 -->
|
|
73
|
+ <div v-else-if="item.prop === 'user_list_show'">
|
|
74
|
+ <template v-if="row['user_list_show'] && row['user_list_show'].length">
|
|
75
|
+ <colPopover :list="row['user_list_show']" :maxLength="4" :width="280" />
|
|
76
|
+ </template>
|
|
77
|
+ <span v-else> - </span>
|
|
78
|
+ </div>
|
|
79
|
+ <!-- E 使用客服 -->
|
|
80
|
+
|
71
|
81
|
<span v-else :class="sort_field == item.prop ? 'sortFieldStyle' : ''">{{ row[item.prop] || row[item.prop] == 0 ? $formatNum(row[item.prop]) : '-' }}</span>
|
72
|
82
|
</template>
|
73
|
83
|
</ux-table-column>
|
|
@@ -82,8 +92,10 @@
|
82
|
92
|
<script>
|
83
|
93
|
import datePicker from '@/components/assembly/screen/datePicker.vue'
|
84
|
94
|
import selfChannel from '@/components/assembly/screen/channel.vue'
|
|
95
|
+import colPopover from '@/components/assembly/screen/colPopover.vue'
|
|
96
|
+
|
85
|
97
|
export default {
|
86
|
|
- components: { datePicker, selfChannel },
|
|
98
|
+ components: { datePicker, selfChannel, colPopover },
|
87
|
99
|
data () {
|
88
|
100
|
return {
|
89
|
101
|
dataLoading: false,
|
|
@@ -151,6 +163,7 @@ export default {
|
151
|
163
|
{ prop: "playletTitle", label: "剧集", min_width: 160, fixed: 'left' },
|
152
|
164
|
{ prop: "official_account_name", label: "公众号", min_width: 160 },
|
153
|
165
|
{ prop: "account_name", label: "投放账号", min_width: 160 },
|
|
166
|
+ { prop: "user_list_show", label: "使用客服", min_width: 260 },
|
154
|
167
|
{ prop: "user_name", label: "投手", min_width: 160 },
|
155
|
168
|
{ prop: "start_date", label: "开始日期", min_width: 160 },
|
156
|
169
|
{ prop: "end_date", label: "截止日期", min_width: 160 },
|
|
@@ -162,6 +175,8 @@ export default {
|
162
|
175
|
{ prop: "first_day_roi", label: "首日ROI", notes: '首日ROI=当日新用户充值之和/累计消耗' },
|
163
|
176
|
{ prop: "profile", label: "总毛利额", notes: '总毛利额=累计充值-累计消耗' },
|
164
|
177
|
{ prop: "recall_rate", label: "回本率%", notes: '回本率=累计充值/累计消耗' },
|
|
178
|
+ { prop: "three_days_rate", label: "3天倍率" },
|
|
179
|
+ { prop: "seven_days_rate", label: "7天倍率" },
|
165
|
180
|
],
|
166
|
181
|
height: '',
|
167
|
182
|
tagType: 2,
|
|
@@ -285,6 +300,15 @@ export default {
|
285
|
300
|
var res = res.data
|
286
|
301
|
this.loading = false
|
287
|
302
|
if (res && res.errno == 0) {
|
|
303
|
+
|
|
304
|
+ res.rst.data.forEach(row => {
|
|
305
|
+ if (row.user_list && Array.isArray(row.user_list) && row.user_list.length) { // 使用客服
|
|
306
|
+ row.user_list_show = row.user_list.map(u => `${u.user_name}(${u.corp_name})`)
|
|
307
|
+ } else if (!row.user_list || !Array.isArray(row.user_list) || !row.user_list.length) {
|
|
308
|
+ row.user_list_show = []
|
|
309
|
+ }
|
|
310
|
+ })
|
|
311
|
+
|
288
|
312
|
if (type == 'export') {
|
289
|
313
|
this.exportEvent(res.rst.data)
|
290
|
314
|
} else {
|
|
@@ -372,6 +396,21 @@ export default {
|
372
|
396
|
}
|
373
|
397
|
}
|
374
|
398
|
</script>
|
|
399
|
+
|
|
400
|
+<style lang="scss">
|
|
401
|
+.throwPersonPuton-list {
|
|
402
|
+ .elx-table.elx-editable.size--mini .elx-body--column,
|
|
403
|
+ .elx-table.size--mini .elx-body--column.col--ellipsis,
|
|
404
|
+ .elx-table.size--mini .elx-footer--column.col--ellipsis {
|
|
405
|
+ height: 120px !important;
|
|
406
|
+ }
|
|
407
|
+ .elx-table.size--mini .elx-body--column.col--ellipsis>.elx-cell,
|
|
408
|
+ .elx-table.size--mini .elx-footer--column.col--ellipsis>.elx-cell {
|
|
409
|
+ max-height: initial !important;
|
|
410
|
+ }
|
|
411
|
+}
|
|
412
|
+</style>
|
|
413
|
+
|
375
|
414
|
<style lang="scss" scoped>
|
376
|
415
|
/deep/ .common-screen-label {
|
377
|
416
|
flex-shrink: 0;
|