Browse Source

获取一级审计督察地图数据

master
buaixuexideshitongxue 2 months ago
parent
commit
5f1cb96992
  1. 10
      src/api/data/aduit.ts
  2. 206
      src/views/datav/AuditSuper.vue

10
src/api/data/aduit.ts

@ -14,3 +14,13 @@ export function getAuditNegativeVo(times){
} }
/**
*
* @param times
*/
export function getAuditMap(body){
return request.post({
url: `/datav/audit/getAuditMap`,
body
})
}

206
src/views/datav/AuditSuper.vue

@ -133,10 +133,11 @@ import vCharts from "vue-echarts";
import changshaMap from "@/assets/data/changsha.json"; import changshaMap from "@/assets/data/changsha.json";
import * as echarts from "echarts/core"; import * as echarts from "echarts/core";
import moment from "moment/moment.js"; import moment from "moment/moment.js";
import { getWorkDynamics,getAuditNegativeVo } from "@/api/data/aduit.ts"; import {getWorkDynamics, getAuditNegativeVo, getAuditMap} from "@/api/data/aduit.ts";
import { workDynamicColorMapping } from "@/enums/workDynamicColorMapping.js"; import { workDynamicColorMapping } from "@/enums/workDynamicColorMapping.js";
import { getAuditOverview, getAuditProblems } from '@/api/datav' import { getAuditOverview, getAuditProblems } from '@/api/datav'
import { onMounted } from "vue"; import { onMounted } from "vue";
import {mapOrgNameMapping} from "@/enums/orgMapping.js";
const messages = ref([]); const messages = ref([]);
const time = ref([ const time = ref([
moment().startOf("year").format("YYYY-MM-DD"), moment().startOf("year").format("YYYY-MM-DD"),
@ -188,7 +189,9 @@ function getData() {
problemOptions.value.series[0].data = data problemOptions.value.series[0].data = data
}); });
getWorkDynamicsData(); getWorkDynamicsData();
getAuditNegativeVoFun(); getAuditNegativeVoFun();
getAuditMapData();
} }
const fxData =ref([]) const fxData =ref([])
@ -203,71 +206,82 @@ const getAuditNegativeVoFun =async ()=>{
} }
} }
const auditSuperRankTab = ref('1'); const auditSuperRankTab = ref('1');
let gobalTempMapVoList = [ // let auditMapData = [
{ // {
name: "天心分局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 0, // checkPro: 0,
rushPro: 0, // rushPro: 0,
changed: 0, // changed: 0,
}, // },
{ // {
name: "开福分局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 186, // checkPro: 186,
rushPro: 0, // rushPro: 0,
changed: 137, // changed: 137,
}, // },
{ // {
name: "湘江新区", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 11, // checkPro: 11,
rushPro: 0, // rushPro: 0,
changed: 0, // changed: 0,
}, // },
{ // {
name: "望城分局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 0, // checkPro: 0,
rushPro: 0, // rushPro: 0,
changed: 0, // changed: 0,
}, // },
{ // {
name: "浏阳市局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 0, // checkPro: 0,
rushPro: 0, // rushPro: 0,
changed: 0, // changed: 0,
}, // },
{ // {
name: "长沙县局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 0, // checkPro: 0,
rushPro: 0, // rushPro: 0,
changed: 0, // changed: 0,
}, // },
{ // {
name: "芙蓉分局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 1, // checkPro: 1,
rushPro: 0, // rushPro: 0,
changed: 1, // changed: 1,
}, // },
{ // {
name: "雨花分局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 240, // checkPro: 240,
rushPro: 0, // rushPro: 0,
changed: 220, // changed: 220,
}, // },
{ // {
name: "宁乡市局", // name: "",
reviewOrg: 0, // reviewOrg: 0,
checkPro: 232, // checkPro: 232,
rushPro: 194, // rushPro: 194,
changed: 194, // changed: 194,
}, // },
]; // ];
const auditMapData = ref([
{
originalName: "浏阳市局",
name: "浏阳市",
reportProjectNumber: 135,
checkProNumber: 135,
rushProNumber: 89,
rectifyNumber: 152,
},
]);
echarts.registerMap("changsha", changshaMap); echarts.registerMap("changsha", changshaMap);
const option = ref({ const option = ref({
geo: { geo: {
@ -276,8 +290,7 @@ const option = ref({
tooltip: { tooltip: {
trigger: "item", trigger: "item",
formatter: function (params) { formatter: function (params) {
console.log(params); const dataItem = auditMapData.value.find((item) =>
const dataItem = gobalTempMapVoList.find((item) =>
item.name.includes(params.name.substring(0, 2)) item.name.includes(params.name.substring(0, 2))
); );
if (dataItem) { if (dataItem) {
@ -286,21 +299,22 @@ const option = ref({
<div class="tooltip-title">${dataItem.name}</div> <div class="tooltip-title">${dataItem.name}</div>
<div class="tooltip-content"> <div class="tooltip-content">
<ul class="tooltip-ul" > <ul class="tooltip-ul" >
<li>审计单位/项目数<span>暂无</span></li> <li>审计单位/项目数<span>${dataItem.reportProjectNumber}</span></li>
<li>查处问题数 <span>${dataItem.checkPro}</span></li> <li>查处问题数 <span>${dataItem.checkProNumber}</span></li>
<li>追责问责数 <span>暂无</span></li> <li>追责问责数 <span>${dataItem.rushProNumber}</span></li>
<li>整改问题数 <span>${dataItem.changed}</span></li> <li>整改问题数 <span>${dataItem.rectifyNumber}</span></li>
</ul> </ul>
</div> </div>
</div>`; </div>`;
} else { } else {
return `<div class="tooltip"> return `<div class="tooltip">
<div class="tooltip-title">${dataItem.name}</div> <div class="tooltip-title">${params.name}</div>
<div class="tooltip-content"> <div class="tooltip-content">
<ul class="tooltip-ul""> <ul class="tooltip-ul"">
<li>审计单位/项目 <span>0</span></li> <li>审计单位/项目 <span>-</span></li>
<li>查处问题数 <span>0</span></li> <li>查处问题数 <span>-</span></li>
<li>追责问责数 <span>0</span></li> <li>追责问责数 <span>-</span></li>
<li>整改问题数 <span>-</span></li>
</ul> </ul>
</div> </div>
</div>`; </div>`;
@ -529,6 +543,44 @@ function handlePerviewFile(msg) {
files.value = JSON.parse(msg.files) files.value = JSON.parse(msg.files)
} }
} }
const getAuditMapData = async ()=>{
const body = {
beginTime: time.value[0],
endTime: time.value[1]
}
const res = await getAuditMap(body);
const mappedData = mapOrgNameMapping(res.auditSuperviseMapIconVoList,"checkProNumber");
//
const maxItem = mappedData.reduce(
(max, item) => (Number(item.value) > Number(max.value) ? item : max),
mappedData[0]
);
const range60Percent = maxItem.value * 0.6; //
const range80Percent = maxItem.value * 0.8; //
console.log("============================")
console.log(mappedData)
auditMapData.value = mappedData;
option.value.series[0].data = mappedData;
option.value.visualMap.pieces = [
{
gte: 0,
lte: range60Percent,
label: "低于最大问题数的60%",
color: "#4987F6",
},
{
gte: range60Percent,
lte: range80Percent,
label: "介于最大问题数的60%~80%",
color: "#F6A149",
},
{ gte: range80Percent, label: "高于最大问题数的80%", color: "#D34343" },
];
}
</script> </script>

Loading…
Cancel
Save