2 Commits

Author SHA1 Message Date
d7d4d5a5a5 task#,师傅相关还原 2025-01-02 20:59:56 +08:00
dfddc69c4a task#,师傅相关还原 2025-01-02 17:39:22 +08:00
3 changed files with 29 additions and 41 deletions

View File

@ -29,7 +29,3 @@ See [Configuration Reference](https://cli.vuejs.org/config/).
```
code = 104, 接口不提示报错
```
### 开发分支
```
dev_2025
```

View File

@ -13,7 +13,7 @@
<template slot-scope="scope">{{scope.row[item.prop]}} </template>
</el-table-column>
</template>
<!-- <template v-else-if="active===4">
<template v-else-if="active===4">
<el-table-column v-for="(column,index) in filteredLabelList" :key="column.prop" :prop="column.prop" :label="column.label"
:fixed="index===0" align="center" min-width="100"
:width="(isMobile && (column.label=='案件编号' || column.label=='服务内容')) ? 70 : 'auto'">
@ -25,7 +25,7 @@
<span v-else>{{ scope.row[column.prop] }}</span>
</template>
</el-table-column>
</template>-->
</template>
<template v-else>
<el-table-column v-for="column in labelList" :key="column.prop" :prop="column.prop" :label="column.label"
align="center" min-width="100" :width="(isMobile && (column.label=='案件编号' || column.label=='服务内容')) ? 70 : 'auto'">
@ -45,12 +45,12 @@ export default {
mounted() {
},
computed: {
/* filteredLabelList() {
filteredLabelList() {
if(this.active!==4){
return
}
return this.labelList.filter(column => column.label !== '星级评分');
}*/
}
},
methods: {
setTableCellStyle({ row, column,columnIndex }) {

View File

@ -39,7 +39,7 @@
<van-tabs v-model="active" sticky @click="tabClickHandle">
<van-tab v-for="(item,index) in tabArr" :key="index" :title="item.name"></van-tab>
<div v-if="isMobile && !([0,1,2,3].includes(active))" class="tipArrow left">{{ leftArr }}</div>
<div v-if="isMobile && !([7,8].includes(active))" class="tipArrow right">>>></div>
<div v-if="isMobile && !([9,10].includes(active))" class="tipArrow right">>>></div>
</van-tabs>
<div v-loading="loadingData" :class="{'contentWrap':true,'webcontentWrap':!isMobile}" v-if="active===0">
<div :class="{'reciceOrder':true,'webCom':!isMobile}">
@ -202,7 +202,7 @@
<noFit-table v-else :active='active' :is-mobile='isMobile' :table-data="detailList" :label-list="labelList"></noFit-table>
</div>
</div>
<div v-loading="loadingData" class="contentWrap monthTotal" v-if="[2].includes(active)">
<div v-loading="loadingData" class="contentWrap monthTotal" v-if="[2,4,5].includes(active)">
<div class="searchDriverName" v-if="[5,4].includes(active)">
<el-select
v-model="driverName"
@ -245,7 +245,7 @@
:total="total">
</el-pagination>
</div>
<div v-loading="loadingData" class="contentWrap monthTotal" v-if="[3,4,5,6,7,8].includes(active)">
<div v-loading="loadingData" class="contentWrap monthTotal" v-if="[3,6,7,8,9,10].includes(active)">
<div :class="{'comTab':true,'detailTable':isMobile}">
<noFit-table :active='active' :is-mobile='isMobile' :table-data="detailList" :label-list="labelList"
></noFit-table>
@ -273,7 +273,7 @@ import {
getStatisticsKpiByMonth,
getStatisticsKpi,
getSupplierId,
getDriverName,
getDriverName,getDriverStatisticsKpi,
getRecentSupplierKpi, querySupplierDriverStatisticsScore
} from "@/api/kpi.js"
import {myMixins} from "@/utils/myMixins"
@ -289,9 +289,9 @@ export default {
return {
active:0,
activeIndex: 0,
// {name: '月/师傅'}, {name: '日/师傅'},
//
tabArr: [
{name: '总览'}, {name: '月/总'}, {name: '日/总'},{name: '师傅满意度'}, {name: '拒单明细'},
{name: '总览'}, {name: '月/总'}, {name: '日/总'},{name: '师傅满意度'},{name: '月/师傅'}, {name: '日/师傅'}, {name: '拒单明细'},
{name: '超时明细'}, {name: '投诉明细'}, {name: '不使用APP案件明细'}, {name: '车辆在线情况'}
],
list: [{name: '接单指标'}, {name: '客户评价'}, {name: 'APP使用'}, {name: ' 时效 '}],
@ -1054,9 +1054,8 @@ export default {
this.loading = false
this.detailList?.map(item => {
this.xAxisArr.push(item.month)
this.xAxisArr = [...new Set(this.xAxisArr)]; // 去重
})
console.log(" this.xAxisArr", this.xAxisArr)
// console.log(" this.xAxisArr", this.xAxisArr)
// this.xAxisArr[this.xAxisArr.length - 1] = '本月'
await this.twoTabHanldeData()
}else if (this.active === 3) {
@ -1077,13 +1076,12 @@ export default {
});
this.labelList = [
{label: '师傅姓名', prop: 'driverName'},
{label: '服务商名称', prop: 'supplierName'},
{label: '案件总量', prop: 'orderCount'},
{label: '满意度得分 ', prop: 'driverSatisfaction'},
]
this.loading = false;
}
/* else if ([4,5].includes(this.active)) {
else if ([4,5].includes(this.active)) {
let res = await getDriverStatisticsKpi({
startTime: this.startTime ,
endTime: this.endTime,
@ -1119,9 +1117,8 @@ export default {
this.total=0
}
await this.twoTabHanldeData();
}*/
else if ([ 4,5,6, 7, 8].includes(this.active)) {
}
else if ([ 6, 7, 8,9,10].includes(this.active)) {
this.detailList = []
this.labelList = []
let result = await getKpiDetailsData({
@ -1138,7 +1135,7 @@ export default {
return {...item, date: formatVal};
});
this.loading = false
if (this.active === 4) {//拒单明细
if (this.active === 6) {//拒单明细
this.labelList = [
{label: '案件编号', prop: 'orderCode'},
{label: '服务内容', prop: 'serviceName'},
@ -1149,7 +1146,7 @@ export default {
{label: '中道派单时间', prop: 'dispatchTime'},
{label: '拒绝原因', prop: 'reason'},
]
} else if (this.active === 5) {//超时明细
} else if (this.active === 7) {//超时明细
this.labelList = [
{label: '案件编号', prop: 'orderCode'},
{label: '服务内容', prop: 'serviceName'},
@ -1159,7 +1156,7 @@ export default {
{label: '上游接单来源', prop: 'workSource'},
{label: '中道派单时间', prop: 'dispatchTime'},
]
} else if (this.active === 6) {//投诉明细
} else if (this.active === 8) {//投诉明细
this.labelList = [
{label: '案件编号', prop: 'orderCode'},
{label: '服务内容', prop: 'serviceName'},
@ -1168,7 +1165,7 @@ export default {
{label: '投诉时间', prop: 'complainCreateTime'},
{label: '投诉类型', prop: 'complainTypeString'},
]
} else if (this.active === 7) {//不使用App案件明细
} else if (this.active === 9) {//不使用App案件明细
this.labelList = [
{label: '案件编号', prop: 'orderCode'},
{label: '服务内容', prop: 'serviceName'},
@ -1176,7 +1173,7 @@ export default {
{label: '工单创建时间', prop: 'orderCreateTime'},
{label: '事发地', prop: 'vehiclePointAddress'},
]
} else if (this.active === 8) {//车辆在线情况
} else if (this.active === 10) {//车辆在线情况
this.labelList = [
{label: '日期', prop: 'date'},
{label: '0点在线车辆数量', prop: 'zeroClockVehicleCount'},
@ -1208,18 +1205,13 @@ export default {
year = new Date(this.current).getFullYear();
month = new Date(this.current).getMonth() + 1;
} else {
/*year = new Date().getFullYear();
month = new Date().getMonth() + 1;*/
year = 2024
month = 12
year = new Date().getFullYear();
month = new Date().getMonth() + 1;
}
let yearAndMonth = year + '-' + (month > 9 ? month : '0' + month);
this.current = dayjs(new Date(yearAndMonth)).format('YYYY-MM')
console.log("this.current",this.current)
/*this.startTime = dayjs(new Date()).format('YYYY-MM') + '-01 00:00:00'
this.endTime = dayjs(new Date()).format('YYYY-MM') + '-' + this.getDayLen()+' 23:59:59'*/
this.startTime = '2024-12-01 00:00:00'
this.endTime = '2024-12-31 23:59:59'
this.startTime = dayjs(new Date()).format('YYYY-MM') + '-01 00:00:00'
this.endTime = dayjs(new Date()).format('YYYY-MM') + '-' + this.getDayLen()+' 23:59:59'
this.startMonthTime=this.getStartTimeFromEndTime(this.endTime)
console.log(" this.startMonthTime", this.startMonthTime,this.startTime)
},
@ -1594,15 +1586,15 @@ export default {
},
setType(type) {
switch (type) {
case 4:
return 1;
case 5:
return 2;
case 6:
return 3;
return 1;
case 7:
return 4;
return 2;
case 8:
return 3;
case 9:
return 4;
case 10:
return 5;
}
},