Compare commits

..

3 Commits

  1. 7
      src/api/screen/mail.ts
  2. 4
      src/api/screen/subScreen/subOneCaseVerif.ts
  3. 41
      src/api/screen/subScreen/subOneSupervisionNotify.ts
  4. 14
      src/views/datav/MailVisits.vue
  5. 1
      src/views/datav/subonedatav/SubOneCaseVerif.vue
  6. 123
      src/views/datav/subonedatav/SubOneSceneInsp.vue

7
src/api/screen/mail.ts

@ -42,9 +42,10 @@ export function getEntanglementAndMassMail(body) {
//追责问责情况
export function getResultCount(times){
return request.get({
url:`/datav/mailVisits/getResultCount?beginTime=${times[0]}&endTime=${times[1]}`
export function getResultCount(body){
return request.post({
url:`/datav/mailVisits/getResultCount`,
body
})
}

4
src/api/screen/subScreen/subOneCaseVerif.ts

@ -40,7 +40,7 @@ export function getSubOneCaseVerificationTrend(departId, year) {
});
}
// @Operation(summary = "案件来源占比 & 问责处理情况")
export function getSubOneCaseSourceRateAndDealSituation(body) {
return request.post({
url: `/datav/sub1/caseVerif/getSubOneCaseSourceRateAndDealSituation`,
@ -52,6 +52,6 @@ export function getSubOneCaseSourceRateAndDealSituation(body) {
export function getSubOneConfinementAndPause(departId, times) {
return request.get({
url: `/datav/sub1/caseVerif/getSubOneCaseSourceRateAndDealSituation?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}`
url: `/datav/sub1/caseVerif/getSubOneConfinementAndPause?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}`
});
}

41
src/api/screen/subScreen/subOneSupervisionNotify.ts

@ -1,14 +1,13 @@
import request from "@/api/request";
//监督管理-整改率排名
export function getSubOneChangedRank(departId, times) {
return request.get({
url: `/datav/sub1/supervisonNotify/getSubOneChangedRank?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}`
// 现场监督卡片
export function getSubOneChangedRank(body) {
return request.post({
url: `/datav/sub1/supervisonNotify/getSubOneChangedRank`,
body
});
}
export function getSubOneProblemTypeRate(departId, times) {
return request.get({
url: `/datav/sub1/supervisonNotify/getSubOneProblemTypeRate?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}`
@ -20,22 +19,29 @@ export function getSubOneSupervisionTrend(departId, year) {
url: `/datav/sub1/supervisonNotify/getSubOneSupervisionTrend?departId=${departId}&year=${year}`
});
}
//监督管理-中央数据
export function getSubOneSupervisionNotifyCount(departId, times) {
return request.get({
url: `/datav/sub1/supervisonNotify/getSubOneSupervisionNotifyCount?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}`
// 中央数据
export function getSubOneSupervisionNotifyCount(body) {
return request.post({
url: `/datav/sub1/supervisonNotify/getSubOneSupervisionNotifyCount`,
body
});
}
export function getSubOneSupervisionMap(departId, times) {
return request.get({
url: `/datav/sub1/supervisonNotify/getSubOneSupervisionMap?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}`
export function getSubOneSupervisionNotifyMap(body) {
return request.post({
url: `/datav/sub1/supervisonNotify/getSubOneSupervisionNotifyMap`,
body
});
}
export function getSubOneYellowBetDrug(departId, times,type) {
return request.get({
url: `/datav/sub1/supervisonNotify/getSubOneYellowBetDrug?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}&type=${type}`
export function getSubOneYellowBetDrug(body) {
return request.post({
url: `/datav/sub1/supervisonNotify/getSubOneYellowBetDrug`,
body
});
}
@ -44,6 +50,3 @@ export function getSubOneWorkDynamics(departId, times) {
url: `/datav/sub1/supervisonNotify/getSubOneWorkDynamics?departId=${departId}&beginTime=${times[0]}&endTime=${times[1]}`
});
}
// export

14
src/views/datav/MailVisits.vue

@ -807,13 +807,13 @@ const option3 =ref( {
//
const getResultCountDataFun = async (timeValue = time.value)=>{
const res = await getResultCount(timeValue);
let resultCountArray = []
Object.keys(res).forEach(s=>{
resultCountArray.push({name:s,value:res[s]})
})
option3.value.series[0].data=resultCountArray;
const getResultCountDataFun = async ()=>{
const body = {
beginTime: time.value[0],
endTime: time.value[1],
}
const res = await getResultCount(body);
option3.value.series[0].data=res.resultCountArray;
}
// region

1
src/views/datav/subonedatav/SubOneCaseVerif.vue

@ -548,6 +548,7 @@ const getSubOneCaseProblemPropertyData = async (departId, timeValue) => {
const res = await getSubOneCaseProblemProperty(departId, timeValue);
zfbaPieOption.value.series[0].data = res.zfbaPieList;
fwglPieOption.value.series[0].data = res.fwglPieList;
jgjjPieOption.value.series[0].data = res.fwglPieList;
}
const getSubOneAllCaseVerificationCountData = async () => {

123
src/views/datav/subonedatav/SubOneSceneInsp.vue

@ -27,7 +27,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ leftOverview.changing }}
{{ leftOverview.processingNumber }}
</div>
<div class="descriptions_label">
办理中
@ -37,7 +37,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ leftOverview.changed }}
{{ leftOverview.completedNumber }}
</div>
<div class="descriptions_label">
已办结
@ -47,7 +47,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ leftOverview.correctionRate }}%
{{ leftOverview.completedRate }}%
</div>
<div class="descriptions_label">
办结率
@ -58,10 +58,11 @@
<el-scrollbar height="350px">
<datav-chart-bar
:data="fxsjChangedRankList"
size="small"
size="large"
title="办结率排名"
sub-title="已办结/问题数"
unit="%"
:isgroupby="true"
:label-width="110"
:color="dayTimeColors"
/>
@ -82,7 +83,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ leftOverview.changing }}
{{ leftOverview.processingNumber }}
</div>
<div class="descriptions_label">
办理中
@ -92,7 +93,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ leftOverview.changed }}
{{ leftOverview.completedNumber }}
</div>
<div class="descriptions_label">
已办结
@ -102,7 +103,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ leftOverview.correctionRate }}%
{{ leftOverview.completedRate }}%
</div>
<div class="descriptions_label">
办结率
@ -117,6 +118,7 @@
title="办结率排名"
sub-title="已办结/问题数"
unit="%"
:isgroupby="true"
:label-width="110"
:color="dayTimeColors"
/>
@ -216,7 +218,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ fxsjYellowBetOverview.proTotal }}
{{ rightOverview.proTotal }}
</div>
<div class="descriptions_label">
问题数
@ -226,7 +228,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ fxsjYellowBetOverview.changing }}
{{ rightOverview.processingNumber }}
</div>
<div class="descriptions_label">
办理中
@ -236,7 +238,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ fxsjYellowBetOverview.changed }}
{{ rightOverview.completedNumber }}
</div>
<div class="descriptions_label">
已办结
@ -246,7 +248,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ fxsjYellowBetOverview.correctionRate }}%
{{ rightOverview.completedRate }}%
</div>
<div class="descriptions_label">
办结率
@ -270,7 +272,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ jsdwYellowBetOverview.proTotal }}
{{ rightOverview.proTotal }}
</div>
<div class="descriptions_label">
问题数
@ -280,7 +282,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ jsdwYellowBetOverview.changing }}
{{ rightOverview.processingNumber }}
</div>
<div class="descriptions_label">
办理中
@ -290,7 +292,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ jsdwYellowBetOverview.changed }}
{{ rightOverview.completedNumber }}
</div>
<div class="descriptions_label">
已办结
@ -300,7 +302,7 @@
<el-col :span="6">
<div class="descriptions_cell text-center">
<div class="descriptions_content">
{{ jsdwYellowBetOverview.correctionRate }}%
{{ rightOverview.completedRate }}%
</div>
<div class="descriptions_label">
办结率
@ -510,7 +512,7 @@ import moment from "moment";
import {getSubOneStreetMap} from "@/api/screen/subScreen/subOneGlobal.ts";
import {
getSubOneChangedRank,
getSubOneProblemTypeRate, getSubOneSupervisionMap, getSubOneSupervisionNotifyCount,
getSubOneProblemTypeRate, getSubOneSupervisionNotifyMap, getSubOneSupervisionNotifyCount,
getSubOneSupervisionTrend, getSubOneWorkDynamics, getSubOneYellowBetDrug
} from "@/api/screen/subScreen/subOneSupervisionNotify.ts";
import {workDynamicColorMapping} from "@/enums/workDynamicColorMapping.js";
@ -590,8 +592,14 @@ let subOneSceneWorkDynamicsIntervalId;
const tempDepartId = ref(0); // id
const showDialog = ref(false); //
const rightOverview =ref({})
const getYellowBetDrugData = async (departId,times) => {
const res = await getSubOneYellowBetDrug(departId, times,subOneZxdcProRankTab.value)
const getYellowBetDrugData = async () => {
const body = {
beginTime: time.value[0],
endTime: time.value[1],
departId: currentDepartId,
specialSupervision: subOneZxdcProRankTab.value
}
const res = await getSubOneYellowBetDrug(body)
rightOverview.value = res.overview;
fxsjYellowBetOverview.value = res.fxsjYellowBetOverview
jsdwYellowBetOverview.value = res.jsdwYellowBetOverview
@ -600,7 +608,7 @@ const getYellowBetDrugData = async (departId,times) => {
};
watch(subOneZxdcProRankTab, () => {
getYellowBetDrugData(currentDepartId, time.value)
getYellowBetDrugData()
})
@ -808,23 +816,29 @@ const getMapJSON = async (departId = currentDepartId) => {
echarts.registerMap("changsha", res);
subOneSceneInspMapChart.value.chart.setOption(option.value);
}
const getSubOneChangedRankData = async (departId, times) => {
const res = await getSubOneChangedRank(departId, times)
const getSubOneChangedRankData = async () => {
const res = await getSubOneChangedRank({
departId: currentDepartId,
beginTime: time.value[0],
endTime: time.value[1]
})
leftOverview.value =res.overview;
fxsjRankOverview.value = res.fxsjRankOverview;
jsdwRankOverview.value = res.jsdwRankOverview;
fxsjChangedRankList.value = res.fxsjChangedRankList;
jsdwChangedRankList.value = res.jsdwChangedRankList;
console.log(res);
}
const getSubOneProblemTypeRateData = async (departId, times) => {
const res = await getSubOneProblemTypeRate(departId, times)
const getSubOneProblemTypeRateData = async () => {
const res = await getSubOneProblemTypeRate(currentDepartId, time.value)
// wtlxList.value = circularChart;
wtlxList.value = res.wtlxList
}
const getSubOneSupervisionNotifyCountData = async (departId, times) => {
const res = await getSubOneSupervisionNotifyCount(departId, times)
const getSubOneSupervisionNotifyCountData = async () => {
const res = await getSubOneSupervisionNotifyCount({
departId: currentDepartId,
beginTime: time.value[0],
endTime: time.value[1]
})
Object.assign(overview.value, {
correctionRate: Number(res.overview.completedRate),
supervisionNotifyPreTotal: Number(res.overview.personNumber),
@ -835,8 +849,12 @@ const getSubOneSupervisionNotifyCountData = async (departId, times) => {
reportNumber: Number(res.overview.reportNumber)
});
}
const getSubOneSupervisionMapData = async (departId, times) => {
const res = await getSubOneSupervisionMap(departId, times);
const getSubOneSupervisionMapData = async () => {
const res = await getSubOneSupervisionNotifyMap({
departId: currentDepartId,
beginTime: time.value[0],
endTime: time.value[1]
});
const mappedData = res.superviseTempMapVoList.map(item => {
return {
...item,
@ -844,7 +862,7 @@ const getSubOneSupervisionMapData = async (departId, times) => {
};
});
const total = mappedData.reduce((sum, item) => sum + Number(item.value), 0);
const avg = total / mappedData.length; //
const avg = total / mappedData.length; // <EFBFBD>?
const range30Percent = avg * 0.3 //
option.value.visualMap.pieces = [
{gte: 0, lte: avg - range30Percent, label: "低于平均问题30%", color: "#4987F6"},
@ -854,41 +872,32 @@ const getSubOneSupervisionMapData = async (departId, times) => {
superviseTempMapVoList.value = mappedData;
option.value.series[0].data = mappedData;
}
const getSubOneSupervisionTrendData = async (departId, year) => {
const res = await getSubOneSupervisionTrend(departId, year)
const getSubOneSupervisionTrendData = async () => {
const res = await getSubOneSupervisionTrend(currentDepartId, selectedYear.value)
const supervisionTrend = res.supervisionTrend;
const categories = supervisionTrend.map(item => item.name);
const values = supervisionTrend.map(item => item.value);
proTrend.value.xAxis.data = categories;
proTrend.value.series[0].data = values;
}
const getSubOneYellowBetDrugData = async (departId, times) => {
const res = await getSubOneYellowBetDrug(departId, times)
fxsjYellowBetOverview.value = res.fxsjYellowBetOverview
jsdwYellowBetOverview.value = res.jsdwYellowBetOverview
fxsjYellowBetRankList.value = res.fxsjYellowBetRankList
jsdwYellowBetRankList.value = res.jsdwYellowBetRankList
}
const getSubOneWorkDynamicsData = async (departId, times) => {
const data = await getSubOneWorkDynamics(departId, times);
const getSubOneWorkDynamicsData = async () => {
const data = await getSubOneWorkDynamics(currentDepartId, time.value);
const colorNewsVoList = workDynamicColorMapping(data);
messages.value = colorNewsVoList;
}
const getData = async () => {
await Promise.all([
getMapJSON(currentDepartId),
getSubOneSupervisionMapData(currentDepartId, time.value),
getSubOneChangedRankData(currentDepartId, time.value),
getSubOneProblemTypeRateData(currentDepartId, time.value),
getSubOneSupervisionNotifyCountData(currentDepartId, time.value),
getSubOneSupervisionTrendData(currentDepartId, selectedYear.value),
getYellowBetDrugData(currentDepartId, time.value),
getSubOneWorkDynamicsData(currentDepartId, time.value)
]);
getMapJSON(currentDepartId);
getSubOneSupervisionMapData();
getSubOneChangedRankData();
getSubOneProblemTypeRateData();
getSubOneSupervisionNotifyCountData();
getSubOneSupervisionTrendData();
getYellowBetDrugData();
getSubOneWorkDynamicsData();
}
// endregion
@ -922,17 +931,17 @@ const subOneSceneInspMapAnimation = () => {
seriesIndex: 0,
});
mapTemp.dispatchAction({
type: "highlight", //highLight
type: "highlight", //highLight <EFBFBD>?
seriesIndex: 0, //index
dataIndex: randomNum, //index
});
mapTemp.dispatchAction({
type: "showTip", //showTip
type: "showTip", //showTip <EFBFBD>?
seriesIndex: 0,
dataIndex: randomNum,
});
};
// 2
// 2 <EFBFBD>?
subOneSceneInspMapIntervalId = setInterval(subOneSceneInspMapAnimation, 2000);
//
const subOneSceneInspTrendAnimation = () => {
@ -961,7 +970,7 @@ const subOneSceneInspZxdxRankAnimation = () => {
}
};
subOneSceneInspZxdxIntervalId = setInterval(subOneSceneInspZxdxRankAnimation, 5000);
//
// <EFBFBD>?
const subOneSceneWorkDynamicsAnimation = () => {
const sceneScrollTemp = subOneSceneScrollbar?.value;
const maxScroll = sceneScrollTemp?.wrapRef?.scrollHeight - sceneScrollTemp?.wrapRef?.clientHeight;
@ -992,7 +1001,7 @@ onMounted(() => {
});
const handleCommand = (year) => {
selectedYear.value = year; //
getSubOneSupervisionTrendData(currentDepartId, selectedYear.value);
getSubOneSupervisionTrendData();
};
const handleClick = (params) => {
const departId = params.data.departId;
@ -1193,7 +1202,7 @@ const getNegativePageFun = async (row)=>{
font-weight: 400;
font-size: 16px;
color: #FFFFFF;
border-bottom: 1px solid #253755; /* 设置下边*/
border-bottom: 1px solid #253755; /* 设置下边<EFBFBD>?*/
}
.tooltip-content {

Loading…
Cancel
Save