Files
admin-sjzx/src/views/pqs/qualityInspeection/panorama/components/details/technique.vue

79 lines
2.6 KiB
Vue
Raw Normal View History

2024-04-26 09:15:20 +08:00
<!-- 技术 -->
<template>
<el-dialog draggable title="技术监督统计" v-model="dialogVisible" width="1400px">
2024-04-26 09:15:20 +08:00
<div>
2024-05-14 18:28:27 +08:00
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="320px" :data="tableData">
2024-06-24 17:41:54 +08:00
<vxe-column field="orgName" title="区域" />
<vxe-column field="abnormalNum" title="异常问题总数" />
<vxe-column field="workNum" title="工单总数" />
2024-05-30 13:30:12 +08:00
<!-- <vxe-column field="num" title="已关联工单数" /> -->
2024-06-24 17:41:54 +08:00
<vxe-column field="conversionNum" title="工单转换率(%)" />
<vxe-column field="processedNum" title="已处理工单数" />
<vxe-column field="disposalNum" title="工单处置率(%)" />
2024-04-26 09:15:20 +08:00
</vxe-table>
</div>
<div style="height: 300px; margin-top: 10px">
<MyEChart style="height: 300px" :options="picEChart" />
</div>
</el-dialog>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import MyEChart from '@/components/echarts/MyEchart.vue'
import { defaultAttribute } from '@/components/table/defaultAttribute'
2024-06-24 17:53:41 +08:00
import { getSupervisionDetailsData, getSupervisionCityDetailsData } from '@/api/device-boot/panorama'
2024-04-26 09:15:20 +08:00
const dialogVisible: any = ref(false)
2024-06-24 17:41:54 +08:00
const tableData: any = ref([])
2024-04-26 09:15:20 +08:00
2024-06-24 17:53:41 +08:00
const picEChart = ref({})
2024-04-26 09:15:20 +08:00
const open = async (row: any) => {
dialogVisible.value = true
2024-06-24 17:41:54 +08:00
getSupervisionDetailsData(row).then(res => {
tableData.value = res.data
})
2024-06-24 17:53:41 +08:00
getSupervisionCityDetailsData(row).then(res => {
picEChart.value = {
title: {
text: ''
},
xAxis: {
name: '',
data: ['技术监督计划', '用户投诉', '在线监测问题']
2024-06-24 17:53:41 +08:00
},
yAxis: {
name: '',
min: 0,
max: 100
},
options: {
dataZoom: null,
series: [
{
name: '问题个数',
type: 'bar',
data: [res.data.survey.abnormalNum, res.data.user.abnormalNum, res.data.onLine.abnormalNum]
},
{
name: '已处理',
type: 'bar',
data: [res.data.survey.processedNum, res.data.user.processedNum, res.data.onLine.processedNum]
}
]
}
}
})
2024-04-26 09:15:20 +08:00
}
defineExpose({ open })
</script>
2024-05-27 10:37:50 +08:00
<style lang="scss" scoped>
:deep(.el-dialog__body) {
max-height: none !important;
2024-06-24 17:41:54 +08:00
}
</style>