7 Commits

5 changed files with 725 additions and 619 deletions

View File

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- <meta name="viewport" content="width=device-width, initial-scale=1.0">-->
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, viewport-fit=cover,user-scalable=no"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, viewport-fit=cover,user-scalable=no">
<meta name="format-detection" content="telephone=yes"/> <meta name="format-detection" content="telephone=yes"/>
<link rel="icon" href="<%= BASE_URL %>favicon.ico"> <link rel="icon" href="<%= BASE_URL %>favicon.ico">
@ -34,11 +35,11 @@
// VConsole 默认会挂载到 `window.VConsole` 上 // VConsole 默认会挂载到 `window.VConsole` 上
// let vConsole = new window.VConsole(); // let vConsole = new window.VConsole();
(function (doc, win) { (function (doc, win) {
console.log("==window.location.pathname===",window.location.pathname)
let docEl = doc.documentElement let docEl = doc.documentElement
let resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize' let resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize'
recalc = function () { recalc = function () {
var clientWidth = docEl.clientWidth; var clientWidth = docEl.clientWidth;
// console.log("clientWidth",clientWidth)
if (!clientWidth) return; if (!clientWidth) return;
if (clientWidth < 400) { if (clientWidth < 400) {
clientWidth = 400; clientWidth = 400;
@ -48,13 +49,20 @@
if (!doc.addEventListener) return; if (!doc.addEventListener) return;
var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
if (isMobile) {// 是移动端不变 if (isMobile) {// 是移动端不变
// console.log("是移动端不变")
}else{ }else{
if(window.location.pathname=='/h5/supplier/dispatch/kpiIndex'){
// console.log("执行了执行了")
win.addEventListener(resizeEvt, recalc, false); win.addEventListener(resizeEvt, recalc, false);
doc.addEventListener('DOMContentLoaded', recalc, false); doc.addEventListener('DOMContentLoaded', recalc, false);
} }
// console.log("isMobile",isMobile) /*else{
console.log("走着了这种饿 ")
}*/
}
})(document, window); })(document, window);
</script> </script>
</body> </body>
</html> </html>

View File

@ -1,45 +0,0 @@
<template>
<div class="wrap">
<el-table :data="tableData"
stripe
border
style="width: 100%"
class="custom-table">
<el-table-column
v-for="(column,i) in tableData"
:key="i"
:prop="column.prop"
:label="column.label"
:fixed="i===0"
:width="i===0 ? '40' :'80'"
align="center"
>
</el-table-column>
</el-table>
</div>
</template>
<script>
export default {
name: "commonTable",
props: ['tableData'],
data() {
return {}
},
mounted() {
},
methods: {}
}
</script>
<style scoped lang="scss">
@import "@/styles/mixin.scss";
::v-deep .el-table thead{
font-size: 11px;
color: #1D2129;
font-weight: bold;
}
::v-deep .el-table th.el-table__cell.is-leaf {
background-color: #E5E6EB;
}
</style>

View File

@ -210,7 +210,7 @@
v-for="item in driverselectOption" v-for="item in driverselectOption"
:key="item.id" :key="item.id"
:label="item.name" :label="item.name"
:value="item.id"> :value="item.name">
</el-option> </el-option>
</el-select> </el-select>
</div> </div>
@ -238,7 +238,7 @@
<div v-loading="loadingData" class="contentWrap monthTotal" v-if="[5,6,7,8,9].includes(active)"> <div v-loading="loadingData" class="contentWrap monthTotal" v-if="[5,6,7,8,9].includes(active)">
<div :class="{'comTab':true,'detailTable':isMobile}"> <div :class="{'comTab':true,'detailTable':isMobile}">
<noFit-table :active='active' :is-mobile='isMobile' :table-data="detailList" :label-list="labelList" <noFit-table :active='active' :is-mobile='isMobile' :table-data="detailList" :label-list="labelList"
:loading="loading"></noFit-table> ></noFit-table>
</div> </div>
<!-- <el-pagination <!-- <el-pagination
small small
@ -250,6 +250,7 @@
:total="total"> :total="total">
</el-pagination>--> </el-pagination>-->
<el-pagination <el-pagination
v-if="active !== 9"
small small
:page-sizes="[20, 50, 100]" :page-sizes="[20, 50, 100]"
:current-page.sync="pageNum" :current-page.sync="pageNum"
@ -323,7 +324,7 @@ export default {
pageSize: 20, pageSize: 20,
total: 0, total: 0,
swithVal: true, swithVal: true,
supplierId:'',//1128 supplierId:'',
selectLoading: false, selectLoading: false,
selectOption: [], selectOption: [],
driverId:'',//68517 driverId:'',//68517
@ -351,7 +352,6 @@ export default {
}, },
methods: { methods: {
async selectSupplierNameHanldle(){ async selectSupplierNameHanldle(){
console.log("supplierId",this.supplierId)
await this.getData() await this.getData()
setTimeout(()=>{ setTimeout(()=>{
this.$refs.Doughnut1.initCircle() this.$refs.Doughnut1.initCircle()
@ -361,7 +361,7 @@ export default {
this.$refs.Doughnut5.initCircle() this.$refs.Doughnut5.initCircle()
this.$refs.Doughnut6.initCircle() this.$refs.Doughnut6.initCircle()
this.$refs.Doughnut7.initCircle() this.$refs.Doughnut7.initCircle()
},1000) },1500)
}, },
async remoteMethod(query) { async remoteMethod(query) {
if (query !== '') { if (query !== '') {
@ -398,6 +398,8 @@ export default {
console.log("搜索按钮") console.log("搜索按钮")
}, },
async changeHandle() { async changeHandle() {
this.v1=[]
this.v2=[]
await this.twoTabHanldeData(); await this.twoTabHanldeData();
await this.drawLine(); await this.drawLine();
}, },
@ -435,6 +437,7 @@ export default {
this.activeIndex = 0; this.activeIndex = 0;
this.detailList = []; this.detailList = [];
this.labelList = []; this.labelList = [];
this.driverName=''
this.getData(); this.getData();
if (this.active === 1) { if (this.active === 1) {
setTimeout(() => { setTimeout(() => {
@ -507,6 +510,7 @@ export default {
label: { label: {
show: true, // 显示标签 show: true, // 显示标签
position: 'top', // 标签位置在柱形顶部 position: 'top', // 标签位置在柱形顶部
formatter: '{c}%'
} }
}, },
{ {
@ -854,19 +858,37 @@ export default {
this.indexData = res.data; this.indexData = res.data;
this.supplierName=res.data?.supplierName this.supplierName=res.data?.supplierName
this.indexData.refuseOrderRate=this.indexData.refuseOrderRate*100 this.indexData.refuseOrderRate=this.indexData.refuseOrderRate*100
this.indexData.timeoutOrderRate=this.indexData.timeoutOrderRate*100
if (this.indexData.refuseOrderRate % 1 !== 0) { if (this.indexData.refuseOrderRate % 1 !== 0) {
this.indexData.refuseOrderRate = this.indexData.refuseOrderRate.toFixed(2); this.indexData.refuseOrderRate = this.indexData.refuseOrderRate.toFixed(2);
} }
this.indexData.timeoutOrderRate=this.indexData.timeoutOrderRate*100
if (this.indexData.timeoutOrderRate % 1 !== 0) { if (this.indexData.timeoutOrderRate % 1 !== 0) {
this.indexData.timeoutOrderRate = this.indexData.timeoutOrderRate.toFixed(2); this.indexData.timeoutOrderRate = this.indexData.timeoutOrderRate.toFixed(2);
} }
this.indexData.complainOrderRate=this.indexData.complainOrderRate*100 this.indexData.complainOrderRate=this.indexData.complainOrderRate*100
if (this.indexData.complainOrderRate % 1 !== 0) {
this.indexData.complainOrderRate = this.indexData.complainOrderRate.toFixed(2);
}
this.indexData.customerSatisfaction=this.indexData.customerSatisfaction*100 this.indexData.customerSatisfaction=this.indexData.customerSatisfaction*100
if (this.indexData.customerSatisfaction % 1 !== 0) {
this.indexData.customerSatisfaction = this.indexData.customerSatisfaction.toFixed(2);
}
this.indexData.threeMinutesContactRate=this.indexData.threeMinutesContactRate*100 this.indexData.threeMinutesContactRate=this.indexData.threeMinutesContactRate*100
if (this.indexData.threeMinutesContactRate % 1 !== 0) {
this.indexData.threeMinutesContactRate = this.indexData.threeMinutesContactRate.toFixed(2);
}
this.indexData.urgeRate=this.indexData.urgeRate*100 this.indexData.urgeRate=this.indexData.urgeRate*100
if (this.indexData.urgeRate % 1 !== 0) {
this.indexData.urgeRate = this.indexData.urgeRate.toFixed(2);
}
this.indexData.appRate=this.indexData.appRate*100 this.indexData.appRate=this.indexData.appRate*100
if (this.indexData.appRate % 1 !== 0) {
this.indexData.appRate = this.indexData.appRate.toFixed(2);
}
this.indexData.polymerizationSuccessRate=this.indexData.polymerizationSuccessRate*100 this.indexData.polymerizationSuccessRate=this.indexData.polymerizationSuccessRate*100
if (this.indexData.polymerizationSuccessRate % 1 !== 0) {
this.indexData.polymerizationSuccessRate = this.indexData.polymerizationSuccessRate.toFixed(2);
}
} else if ([1, 2].includes(this.active)) { } else if ([1, 2].includes(this.active)) {
let res = await getStatisticsKpi({ let res = await getStatisticsKpi({
startTime: this.active === 1 ? this.startMonthTime : this.startTime, startTime: this.active === 1 ? this.startMonthTime : this.startTime,
@ -953,7 +975,7 @@ export default {
}); });
this.total = result.total this.total = result.total
this.detailList = result.data?.map(item => { this.detailList = result.data?.map(item => {
let formatVal = dayjs(item.createTime).format('DD'); let formatVal =item.createTime ? dayjs(item.createTime).format('DD') : '';
return {...item, date: formatVal}; return {...item, date: formatVal};
}); });
this.loading = false this.loading = false
@ -1178,11 +1200,13 @@ export default {
this.v2.push(item.threeMinutesReceivingRate.replace('%', '')) this.v2.push(item.threeMinutesReceivingRate.replace('%', ''))
}) })
} else { } else {
console.log(" this.detailList师傅接单时效", this.detailList)
this.detailList?.map(item => { this.detailList?.map(item => {
this.v1.push(item.arriving) this.v1.push(item.arriving)
this.v2.push(item.polymerizationSuccessArriving) this.v2.push(item.polymerizationSuccessArriving)
this.v3.push(item.fortyMinutesArrivalRate.replace('%', '')) this.v3.push(item.fortyMinutesArrivalRate.replace('%', ''))
}) })
console.log("this.v1",this.v1,this.v2,this.v3)
} }
this.detailList?.map((item,index) => { this.detailList?.map((item,index) => {
const columnObj = {} const columnObj = {}
@ -1202,7 +1226,7 @@ export default {
if (this.swithVal) { if (this.swithVal) {
this.detailList?.map(item => { this.detailList?.map(item => {
this.v3.push(item.trailArriving) this.v3.push(item.trailArriving)
this.v4.push(item.trailPolymerizationSuccessArriving) this.v4.push(item.trailPolymerizationSuccessArsriving)
this.v5.push(item.trailFortyMinutesArrivalRate ? item.trailFortyMinutesArrivalRate.replace('%', '') : item.trailFortyMinutesArrivalRate) this.v5.push(item.trailFortyMinutesArrivalRate ? item.trailFortyMinutesArrivalRate.replace('%', '') : item.trailFortyMinutesArrivalRate)
}) })
} else { } else {
@ -1694,6 +1718,10 @@ export default {
::v-deep .el-input__inner{ ::v-deep .el-input__inner{
height: 30px; height: 30px;
} }
::v-deep .el-input__suffix {
top: 4px; /* 给清除按钮预留空间 */
}
} }
.comTab { .comTab {
width: 100%; width: 100%;

File diff suppressed because it is too large Load Diff

View File

@ -11,7 +11,7 @@
@click-left="goback" @click-left="goback"
/> />
</div> </div>
<div class="baseInfo common"> <div class="baseInfo common" style="height: 344px">
<div class="title">基本信息:</div> <div class="title">基本信息:</div>
<div class="line"></div> <div class="line"></div>
<div class="item"> <div class="item">
@ -47,9 +47,16 @@
</div> </div>
<div class="item"> <div class="item">
<span class="titleLeft">扣除责任险费</span> <span class="titleLeft">扣除责任险费</span>
<span class="content">{{orderInfo.policyAmount}} {{orderInfo.cutInsuranceAmount}}</span> <span class="content">{{orderInfo.policyAmount}}</span>
</div>
<div class="item">
<span class="titleLeft">车衣费用</span>
<span class="content">{{orderInfo.carClothingToolAmount}}</span>
</div>
<div class="item">
<span class="titleLeft">换电瓶费用</span>
<span class="content">{{orderInfo.replaceBatteryAmount}}</span>
</div> </div>
</div> </div>
<div class="baseInfo common"> <div class="baseInfo common">
<div class="title">审核数据:</div> <div class="title">审核数据:</div>