diff --git a/src/components/datav/chart-bar-pro.vue b/src/components/datav/chart-bar-pro.vue new file mode 100644 index 0000000..d085a34 --- /dev/null +++ b/src/components/datav/chart-bar-pro.vue @@ -0,0 +1,180 @@ + + + {{ title }} + {{ subTitle }} + + + + + {{ item.sort }} + + + {{item.label}} + + + {{ item.value }} + + {{ item.numerator }} + / + {{ item.denominator }} + + + + + + \ No newline at end of file diff --git a/src/style/datav.scss b/src/style/datav.scss index f9da393..de4ef42 100644 --- a/src/style/datav.scss +++ b/src/style/datav.scss @@ -37,3 +37,5 @@ font-size: 29px; font-weight: 700; } + + diff --git a/src/views/datav/Gobal.vue b/src/views/datav/Gobal.vue index 37beed3..62db96a 100644 --- a/src/views/datav/Gobal.vue +++ b/src/views/datav/Gobal.vue @@ -74,13 +74,11 @@ style="width: 16.66%" /> - - - - - - - + - - - - - - 4323 - - - 信件总数 - - - - - - - 4323 - - - 处理中 - - - - - - - 2356 - - - 办结数 - - - - - - - 96% - - - 满意率 - - - - - - - - 分县市局 - - 局属单位 - + + + + + ${res.name} + + + 问题总数 ${params.data.totalPro} + 督察问题 ${params.data.supervisePro} + 案件核查问题 ${params.data.caseVerifyPro} + 信访投诉问题 ${params.data.mailPro} + 警务评议问题 ${params.data.policePro} + 审计监督问题 ${params.data.reviewPro} + + + `; + } + } + }, visualMap: { type: "piecewise", bottom: 10, pieces: [ - {gte: 85, lte: 100, label: "问题数低于500"}, - {gte: 65, lte: 85, label: "问题数低于1000"}, - {gte: 0, lte: 65, label: "问题数低于1000"}, + {gte: 0, lte: 500, label: "问题数低于500"}, + {gte: 500, lte: 1000, label: "问题数介于500-1000"}, + {gte: 1000, label: "问题数高于1000"}, ], - right: 10, // 右边距 + right: 10, realtime: false, - orient: "horizontal", // 水平显示 + orient: "horizontal", textStyle: { - color: "#fff", // 文字颜色 + color: "#fff", }, calculable: true, inRange: { - color: ["#D34343", "#F6A149", "#4987F6"], + color: ["#4987F6", "#F6A149", "#D34343",], }, }, series: [ @@ -201,22 +277,44 @@ const option = { type: "map", map: "changsha", hoverAnimation: true, - label: { show: true, color: "white", }, itemStyle: { normal: { - areaColor: "#02215E", // 这里将地图区域的颜色修改为红色 + areaColor: "#02215E", + borderColor: "#1773c3", }, }, - }, + data: gobalTempMapVoList.value.map(item => ({ + name: item.name, + value: item.totalPro, + todaysum: item.totalPro, + allsum: item.supervisePro, + completed: item.caseVerifyPro, + completedrate: item.mailPro, + resolvedrate: item.policePro, + reviewrate: item.reviewPro + })) + } ], }; - +// endregion +/** + * gobalTempMapVoList.value.map(item => ({ + * name: item.name, + * value: item.totalPro, + * todaysum: item.totalPro, + * allsum: item.supervisePro, + * completed: item.caseVerifyPro, + * completedrate: item.mailPro, + * resolvedrate: item.policePro + * })) + * @type {Ref, UnwrapRef<{yAxis: {splitLine: {lineStyle: {color: string}, show: boolean}, type: string}, xAxis: {data: *[], type: string, boundaryGap: boolean}, series: [{areaStyle: {color: LinearGradient}, lineStyle: {color: string, width: number}, data: *[], label: {show: boolean}, type: string, smooth: boolean}], tooltip: {axisPointer: {label: {backgroundColor: string}, type: string}, trigger: string}}> | {yAxis: {splitLine: {lineStyle: {color: string}, show: boolean}, type: string}, xAxis: {data: *[], type: string, boundaryGap: boolean}, series: [{areaStyle: {color: LinearGradient}, lineStyle: {color: string, width: number}, data: *[], label: {show: boolean}, type: string, smooth: boolean}], tooltip: {axisPointer: {label: {backgroundColor: string}, type: string}, trigger: string}}>} + */ // 问题趋势线状图 -const proTrend =ref({ +const proTrend = ref({ xAxis: { type: "category", boundaryGap: false, @@ -268,48 +366,11 @@ const proTrend =ref({ ], }); -const data1 = [ - { - label: "开福分局", - value: 97, - }, - { - label: "芙蓉分局", - value: 90, - }, - { - label: "岳麓分局", - value: 85, - }, - { - label: "雨花分局", - value: 80, - }, - { - label: "望城分局", - value: 71, - }, - { - label: "浏阳市局", - value: 66, - }, - { - label: "长沙县局", - value: 62, - }, -]; function go() { router.push("/datav/sub1") } -// region 机构问题排名 -const activeOrgTab = ref("1"); -const fxsjlist = ref([]); -const jsdwlist = ref([]); -const ywzblist = ref([]); -const wtlxlist = ref([]); -// endregion // region 环形图 // 业务类型占比 @@ -368,18 +429,33 @@ const time = ref([ ]); function getData() { - getAllGobalCount(time.value).then((res) => { overview.value = res.overview; fxsjlist.value = res.fxsjlist; jsdwlist.value = res.jsdwlist; ywzblist.value = res.ywzblist; wtlxlist.value = res.wtlxlist; + tcwtlist.value = res.tcwtlist; + console.log(res.gobalTempMapVoList); + // gobalTempMapVoList.value = res.gobalTempMapVoList; + // console.log(gobalTempMapVoList.value); + /* option.value.series[0].data = gobalTempMapVoList.value.map(item => ({ + name: item.name, + totalPro: item.totalPro, + supervisePro: item.supervisePro, + caseVerifyPro: item.caseVerifyPro, + mailPro: item.mailPro, + policePro: item.policePro, + reviewPro: item.reviewPro + }));*/ + + }); getGobalRecentlyTrendByMonth(new Date().getFullYear()).then((res) => { proTrend.value.xAxis.data = res.monthList; proTrend.value.series[0].data = res.totalList; }); + } watch(time, () => { @@ -387,7 +463,6 @@ watch(time, () => { }); onMounted(() => { getData(); - }); const colors = [ @@ -409,6 +484,52 @@ const colors = [ + + \ No newline at end of file diff --git a/src/views/datav/Jwpy.vue b/src/views/datav/Jwpy.vue index 5873f67..1ccbe6d 100644 --- a/src/views/datav/Jwpy.vue +++ b/src/views/datav/Jwpy.vue @@ -1,14 +1,343 @@ - - - - - - + + + + + + + + + + + + {{ overview.firstMail }} + + + 调查总量 + + + + + + + {{ overview.firstMail }} + + + 调查总量 + + + + + + + {{ overview.firstMail }} + + + 有效回复 + + + + + + + {{ overview.firstMail }} + + + 满意 + + + + + + + {{ overview.firstMail }} + + + 基本满意 + + + + + + + {{ overview.firstMail }} + + + 不满意数 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/datav/MailVisits.vue b/src/views/datav/MailVisits.vue index cfbfcb7..fbd8380 100644 --- a/src/views/datav/MailVisits.vue +++ b/src/views/datav/MailVisits.vue @@ -133,13 +133,14 @@ +