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 @@ + + + \ 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 @@ + + + + \ 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 @@
+