story#4506, KPI演示优化-240709

This commit is contained in:
2024-07-10 21:19:53 +08:00
parent 48cd129290
commit 0aa9f3ec04
3 changed files with 317 additions and 102 deletions

View File

@ -8,9 +8,16 @@
v-loading="loading"
:cell-style="setTableCellStyle"
class="custom-table">
<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'">
</el-table-column>
<template v-if="active===1">
<el-table-column v-for="item in labelList" :key="item.prop" :label="item.label" :prop="item.prop" align="center">
<template slot-scope="scope">{{scope.row[item.prop]}} </template>
</el-table-column>
</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'">
</el-table-column>
</template>
</el-table>
</div>
</template>
@ -18,7 +25,7 @@
<script>
export default {
name: "noFit-table",
props: ['tableData', 'labelList', 'loading', 'isMobile'],
props: ['tableData', 'labelList', 'loading', 'isMobile','active'],
data() {
return {}
},
@ -26,12 +33,67 @@ export default {
},
methods: {
setTableCellStyle({ row, column,columnIndex }) {
// 月总表格被转置,原始方法失效,重新定义对比
if(this.active===1){
if(row.month == '3接单率(%)'){
if(columnIndex){
let res=row[column.property]
const rate = parseFloat(res && res.replace('%', ''));
if(rate < 95){
return {backgroundColor: '#F1B289'}
}
}
}
if(row.month == '接单时效(分)'){
if(columnIndex){
let res=row[column.property]
if(res > 5){
return {backgroundColor: '#F1B289'}
}
}
}
if(row.month == '到达时效(分)'){
if(columnIndex){
let res=row[column.property]
if(res > 40){
return {backgroundColor: '#F1B289'}
}
}
}
if(row.month == '总聚合成功率(%)'){
if(columnIndex){
let res=row[column.property]
const rate = parseFloat(res && res.replace('%', ''));
if(rate < 80){
return {backgroundColor: '#F1B289'}
}
}
}
if(row.month == '使用率(%)'){
if(columnIndex){
let res=row[column.property]
const rate = parseFloat(res && res.replace('%', ''));
if(rate < 95){
return {backgroundColor: '#F1B289'}
}
}
}
if(row.month == '投诉率(%)'){
if(columnIndex){
let res=row[column.property]
const rate = parseFloat(res && res.replace('%', ''));
if(rate > 0.1){
return {backgroundColor: '#F1B289'}
}
}
}
}
// 接单率
if(column.property=='threeMinutesReceivingRate'){
if(columnIndex){
const rate = parseFloat(row.threeMinutesReceivingRate && row.threeMinutesReceivingRate.replace('%', ''));
if(rate < 95){
return {backgroundColor: '#88C9F2'}
return {backgroundColor: '#F1B289'}
}
}
}
@ -39,7 +101,7 @@ export default {
if(column.property=='receiving'){
if(columnIndex){
if(row.receiving > 5){
return {backgroundColor: '#88C9F2'}
return {backgroundColor: '#F1B289'}
}
}
}
@ -47,7 +109,7 @@ export default {
if(column.property=='arriving'){
if(columnIndex){
if(row.arriving > 40){
return {backgroundColor: '#88C9F2'}
return {backgroundColor: '#F1B289'}
}
}
}
@ -56,7 +118,7 @@ export default {
if(columnIndex){
const rate = parseFloat(row.polymerizationSuccessRate && row.polymerizationSuccessRate.replace('%', ''));
if(rate < 80){
return {backgroundColor: '#88C9F2'}
return {backgroundColor: '#F1B289'}
}
}
}
@ -65,7 +127,7 @@ export default {
if(columnIndex){
const rate = parseFloat(row.appRate && row.appRate.replace('%', ''));
if(rate < 95){
return {backgroundColor: '#88C9F2'}
return {backgroundColor: '#F1B289'}
}
}
}
@ -74,7 +136,7 @@ export default {
if(columnIndex){
const rate = parseFloat(row.urgeRate && row.urgeRate.replace('%', ''));
if(rate > 3){
return {backgroundColor: '#88C9F2'}
return {backgroundColor: '#F1B289'}
}
}
}
@ -83,7 +145,7 @@ export default {
if(columnIndex){
const rate = parseFloat(row.complainOrderRate.replace('%', ''));
if(rate > 0.1){
return {backgroundColor: '#88C9F2'}
return {backgroundColor: '#F1B289'}
}
}
}