|
@@ -24,7 +24,10 @@
|
|
|
import { defineAsyncComponent, onMounted, reactive, ref } from 'vue';
|
|
|
import { FormInstance } from 'element-plus';
|
|
|
import { defaultDate } from '@/utils/constants';
|
|
|
-import { getSSPStatisticsProcess, getSSPStatisticsProcessExport } from '@/api/snapshot/statistics';
|
|
|
+import {
|
|
|
+ getSSPStatisticsIndustry,
|
|
|
+ getSSPStatisticsIndustryExport,
|
|
|
+} from '@/api/snapshot/statistics';
|
|
|
import Other from '@/utils/other';
|
|
|
import { useRouter } from 'vue-router';
|
|
|
|
|
@@ -78,180 +81,10 @@ const gridOptions = reactive<any>({
|
|
|
width: 200,
|
|
|
fixed: 'left',
|
|
|
},
|
|
|
- {
|
|
|
- title: '上报情况',
|
|
|
- children: [
|
|
|
- {
|
|
|
- field: 'ybOrderCountNum',
|
|
|
- title: '上报数量',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'ybOrderCountNum')} link>
|
|
|
- {row.ybOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'ybOrderCountNum',
|
|
|
- title: '总办理时长',
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '重点工单',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- ],
|
|
|
- },
|
|
|
- {
|
|
|
- title: '上报区域',
|
|
|
- children: [
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '自贡市',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '自流井区',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '高新区',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '荣县',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '富顺县',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '沿滩区',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '贡井区',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '大安区',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '外地',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- field: 'zbOrderCountNum',
|
|
|
- title: '其它',
|
|
|
- slots: {
|
|
|
- default({ row }) {
|
|
|
- return (
|
|
|
- <el-button type="primary" onClick={() => linkDetail(row, 'zbOrderCountNum')} link>
|
|
|
- {row.zbOrderCountNum}
|
|
|
- </el-button>
|
|
|
- );
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
- ],
|
|
|
- }
|
|
|
],
|
|
|
data: [],
|
|
|
params: {
|
|
|
- exportMethod: getSSPStatisticsProcessExport,
|
|
|
+ exportMethod: getSSPStatisticsIndustryExport,
|
|
|
exportParams: requestParams,
|
|
|
},
|
|
|
});
|
|
@@ -268,11 +101,64 @@ const queryList = () => {
|
|
|
requestParams.value.StartTime = state.queryParams.crTime === null ? null : state.queryParams.crTime[0]; // 受理时间
|
|
|
requestParams.value.EndTime = state.queryParams.crTime === null ? null : state.queryParams.crTime[1];
|
|
|
Reflect.deleteProperty(requestParams.value, 'crTime'); // 删除无用的参数
|
|
|
- getSSPStatisticsProcess(requestParams.value)
|
|
|
+ getSSPStatisticsIndustry(requestParams.value)
|
|
|
.then((res) => {
|
|
|
- state.loading = false;
|
|
|
- gridOptions.data = res.result ?? [];
|
|
|
+ let columns: EmptyArrayType = [];
|
|
|
+ const parent = {
|
|
|
+ title: '上报区域',
|
|
|
+ children: [],
|
|
|
+ };
|
|
|
+ parent.children = res.result.headers?.map((item: any) => {
|
|
|
+ return {
|
|
|
+ align: 'center',
|
|
|
+ field: item.dicDataValue,
|
|
|
+ title: item.dicDataValue,
|
|
|
+ slots: {
|
|
|
+ default(scope: any) {
|
|
|
+ return (
|
|
|
+ <el-button type="primary" onClick={() => linkDetail(scope.row, item.dicDataValue)} link>
|
|
|
+ {scope.row[item.dicDataValue] ? scope.row[item.dicDataValue] : 0}
|
|
|
+ </el-button>
|
|
|
+ );
|
|
|
+ },
|
|
|
+ },
|
|
|
+ };
|
|
|
+ });
|
|
|
+ columns.unshift(
|
|
|
+ {
|
|
|
+ field: 'IndustryName',
|
|
|
+ title: '行业类型',
|
|
|
+ fixed: 'left',
|
|
|
+ minWidth: 120,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '上报情况',
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ field: 'OrderCountNum',
|
|
|
+ title: '上报数量',
|
|
|
+ slots: {
|
|
|
+ default(scope: any) {
|
|
|
+ return (
|
|
|
+ <el-button type="primary" onClick={() => linkDetail(scope.row, 'OrderCountNum')} link>
|
|
|
+ {scope.row.OrderCountNum ? scope.row.OrderCountNum : 0}
|
|
|
+ </el-button>
|
|
|
+ );
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ field: 'AllDuration',
|
|
|
+ title: '总办理时长',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ }
|
|
|
+ );
|
|
|
+ columns.push(parent);
|
|
|
+ gridOptions.data = res?.result.data ?? [];
|
|
|
+ gridOptions.columns = columns;
|
|
|
gridOptions.loading = false;
|
|
|
+ state.loading = false;
|
|
|
})
|
|
|
.finally(() => {
|
|
|
state.loading = false;
|