|
@@ -34,9 +34,9 @@
|
|
|
|
|
|
</span>
|
|
|
<span>:</span>
|
|
|
+ <!-- @focus="handleFocus" @blur="handleBlur" @change="advertisersChange" -->
|
|
|
<a-select show-search placeholder='请选择或搜索广告主' option-filter-prop="children" style="width: 300px"
|
|
|
- :filter-option="filterOption" @focus="handleFocus" @blur="handleBlur" @change="advertisersChange"
|
|
|
- v-model="advertiser">
|
|
|
+ :filter-option="filterOption" v-model="advertiser" @change="advertisersChange">
|
|
|
<a-select-option value="">全部</a-select-option>
|
|
|
<a-select-option v-for="item in advertisersArr" :key="item.id" :value='item.id'>
|
|
|
{{item.name}}
|
|
@@ -99,7 +99,8 @@
|
|
|
|
|
|
</span>
|
|
|
<span>:</span>
|
|
|
- <a-date-picker @change="onChange" v-model="dateValue" placeholder='请选择日期' :disabled-date="disabledDate" />
|
|
|
+ <a-date-picker @change="onChange" v-model="dateValue" :allowClear="false" placeholder='请选择日期'
|
|
|
+ :disabled-date="disabledDate" />
|
|
|
|
|
|
</span>
|
|
|
|
|
@@ -120,9 +121,18 @@
|
|
|
<span v-if="text==4">快手内广</span>
|
|
|
<span v-if="text=='-'">-</span>
|
|
|
</span>
|
|
|
- <span slot="yesterdayCost" slot-scope="yesterdayCost">{{yesterdayCost | decimalsHandle}}</span>
|
|
|
- <span slot="todayCost" slot-scope="todayCost">{{todayCost | decimalsHandle}}</span>
|
|
|
- <span slot="diffCost" slot-scope="diffCost">{{diffCost | decimalsHandle}}</span>
|
|
|
+ <!-- <span slot="yesterdayCost" slot-scope="yesterdayCost,record">
|
|
|
+ <span v-if="record.mediaType == 1">{{yesterdayCost | decimalsHandle}}</span>
|
|
|
+ <span v-else>{{yesterdayCost | decimalsHandleThree}}</span>
|
|
|
+ </span>
|
|
|
+ <span slot="todayCost" slot-scope="todayCost,record">
|
|
|
+ <span v-if="record.mediaType == 1">{{todayCost | decimalsHandle}}</span>
|
|
|
+ <span v-else>{{todayCost | decimalsHandleThree}}</span>
|
|
|
+ </span>
|
|
|
+ <span slot="diffCost" slot-scope="diffCost,record">
|
|
|
+ <span v-if="record.mediaType == 1">{{diffCost | decimalsHandle}}</span>
|
|
|
+ <span v-else>{{diffCost | decimalsHandleThree}}</span>
|
|
|
+ </span> -->
|
|
|
<span slot="operatorManger" slot-scope="operatorManger">{{ operatorManger | blankHandle}}</span>
|
|
|
<span slot="operator" slot-scope="operator">{{ operator | blankHandle}}</span>
|
|
|
<span slot="sale" slot-scope="sale">{{ sale | blankHandle}}</span>
|
|
@@ -233,11 +243,13 @@
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
- title: '公司',
|
|
|
- dataIndex: 'companyName',
|
|
|
- align: 'center',
|
|
|
- scopedSlots: { customRender: 'companyName' },
|
|
|
- width:200
|
|
|
+ title: '公司',
|
|
|
+ dataIndex: 'companyName',
|
|
|
+ align: 'center',
|
|
|
+ scopedSlots: {
|
|
|
+ customRender: 'companyName'
|
|
|
+ },
|
|
|
+ width: 200
|
|
|
},
|
|
|
{
|
|
|
title: '运营',
|
|
@@ -318,19 +330,12 @@
|
|
|
if (this.advertiser == '' || this.advertiser == undefined) {
|
|
|
|
|
|
this.project = undefined;
|
|
|
- this.projectArr = [];
|
|
|
+ this.projectArr = [];
|
|
|
+ this.getPruduct()
|
|
|
} else {
|
|
|
this.project = undefined;
|
|
|
this.projectArr = [];
|
|
|
- getAction('/ctop/media/report/getProject', {
|
|
|
- companyId: this.company,
|
|
|
- advertiserId: this.advertiser
|
|
|
- }).then(res => {
|
|
|
- if (res.success) {
|
|
|
- console.log(res)
|
|
|
- this.projectArr = res.result
|
|
|
- }
|
|
|
- })
|
|
|
+ this.getPruduct()
|
|
|
}
|
|
|
},
|
|
|
projectChange(value) {
|
|
@@ -455,12 +460,12 @@
|
|
|
|
|
|
|
|
|
downFilePost('/ctop/media/report/exportMediaReportExcel', {
|
|
|
- // companyId: company,
|
|
|
- // advertiserId: advertiser,
|
|
|
- // projectId: project,
|
|
|
+ // companyId: company,
|
|
|
+ // advertiserId: advertiser,
|
|
|
+ // projectId: project,
|
|
|
mediaType,
|
|
|
todayDate: this.dateValue.format('YYYY-MM-DD'),
|
|
|
- // yesterdayDate: moment(this.dateValue).subtract(1, "days").format('YYYY-MM-DD'),
|
|
|
+ // yesterdayDate: moment(this.dateValue).subtract(1, "days").format('YYYY-MM-DD'),
|
|
|
}).then(res => {
|
|
|
let blob = new Blob([res], {
|
|
|
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
|
|
@@ -493,7 +498,8 @@
|
|
|
},
|
|
|
getPruduct() {
|
|
|
postAction('/ctop/media/report/getAllProductList', {
|
|
|
- "mediaType": this.noTitleKey
|
|
|
+ "mediaType": this.noTitleKey,
|
|
|
+ advertiserId: this.advertiser==""?null:this.advertiser
|
|
|
}).then(res => {
|
|
|
if (res.success) {
|
|
|
console.log(res)
|
|
@@ -589,6 +595,54 @@
|
|
|
return 0
|
|
|
}
|
|
|
},
|
|
|
+ //保留两位小数并且变成货币格式
|
|
|
+ decimalsHandleThree(val) {
|
|
|
+
|
|
|
+ if (val && typeof val != 'string') {
|
|
|
+ if (val >= 0) {
|
|
|
+ val = parseFloat(val).toFixed(3);
|
|
|
+ let numberStr = val.toString()
|
|
|
+ let str = numberStr.split('.')
|
|
|
+
|
|
|
+ let str0 = str[0].split('').reverse();
|
|
|
+ for (let i = 0; i < str0.length; i++) {
|
|
|
+ if ((i + 1) % 4 === 0) {
|
|
|
+ str0.splice(i, 0, ',')
|
|
|
+ }
|
|
|
+ }
|
|
|
+ str0.reverse()
|
|
|
+ let handleResult = ''
|
|
|
+ for (let j = 0; j < str0.length; j++) {
|
|
|
+ handleResult += str0[j]
|
|
|
+ }
|
|
|
+
|
|
|
+ return handleResult + '.' + str[1]
|
|
|
+ } else {
|
|
|
+ val = parseFloat(val).toFixed(3);
|
|
|
+ let numberStr = val.toString()
|
|
|
+ let str = numberStr.split('.')
|
|
|
+
|
|
|
+ let str0 = str[0].substr(1).split('').reverse();
|
|
|
+ for (let i = 0; i < str0.length; i++) {
|
|
|
+ if ((i + 1) % 4 === 0) {
|
|
|
+ str0.splice(i, 0, ',')
|
|
|
+ }
|
|
|
+ }
|
|
|
+ str0.reverse()
|
|
|
+ let handleResult = ''
|
|
|
+ for (let j = 0; j < str0.length; j++) {
|
|
|
+ handleResult += str0[j]
|
|
|
+ }
|
|
|
+
|
|
|
+ return '-' + handleResult + '.' + str[1]
|
|
|
+ }
|
|
|
+
|
|
|
+ } else if (typeof val == 'string') {
|
|
|
+ return val
|
|
|
+ } else {
|
|
|
+ return 0
|
|
|
+ }
|
|
|
+ },
|
|
|
//变成货币格式
|
|
|
formatCurrency(val) {
|
|
|
if ((val || val == 0) && typeof val != 'string') {
|