diff --git a/src/assets/images/shuju/overview/title-small-bg.png b/src/assets/images/shuju/overview/title-small-bg.png
new file mode 100644
index 000000000..c03314d6a
Binary files /dev/null and b/src/assets/images/shuju/overview/title-small-bg.png differ
diff --git a/src/assets/scss/dataBoard/overview/index.scss b/src/assets/scss/dataBoard/overview/index.scss
index c45e6ae61..5b348c199 100644
--- a/src/assets/scss/dataBoard/overview/index.scss
+++ b/src/assets/scss/dataBoard/overview/index.scss
@@ -32,7 +32,165 @@
width: 460px;
}
}
-
+.white{
+ color: #fff;
+}
+.f-flex {
+ display: flex;
+ flex-wrap: nowrap;
+ }
+ .f-hflex {
+ display: flex;
+ flex-flow: column;
+ overflow: hidden;
+ }
+ .f-w50 {
+ width: 50% !important;
+ }
+ .f-flex1 {
+ flex: 1;
+ }
+
+ .f-mean {
+ justify-content: space-around;
+ }
+
+ .f-endpoint {
+ justify-content: space-between;
+ }
+
+ .f-align_item {
+ align-items: center;
+ }
+ .f-pingfang{
+ font-family: PingFang-SC-Regular;
+ }
+ // 字体大小
+ .f-font12 {
+ font-size: 12px;
+ }
+
+ .f-font14 {
+ font-size: 14px !important;
+ }
+
+ .f-font16 {
+ font-size: 16px !important;
+ }
+
+ .f-font18 {
+ font-size: 18px !important;
+ }
+ .f-font34 {
+ font-size: 34px !important;
+ font-style: italic;
+ font-weight: 500;
+ font-family: DIN Alternate;
+ }
+ .f-yellow{
+ color: #FFB73C;
+ }
+ .f-green{
+ color:#08EBAE;
+ }
+ .f-skyBlue{
+ color: #7FCEFF;
+ }
+ .f-darkGray{
+ color:#A3B9DA ;
+ }
+ //内边距
+ .f-p0 {
+ padding: 0 !important;
+ }
+ .f-p10 {
+ padding: 10px;
+ }
+ .f-p16 {
+ padding: 16px;
+ }
+
+ .f-p50 {
+ padding: 50px;
+ }
+
+ .f-p30 {
+ padding: 30px;
+ }
+ // 外边距
+ .f-right5 {
+ margin-right: 5px;
+ }
+
+ .f-right24 {
+ margin-right: 24px;
+ }
+
+ .f-bottom8 {
+ margin-bottom: 8px;
+ }
+
+ .f-bottom16 {
+ margin-bottom: 16px;
+ }
+ .f-top2 {
+ margin-top: 2px;
+ }
+
+ .f-top12 {
+ margin-top: 12px;
+ }
+
+ .f-top24 {
+ margin-top: 24px !important;
+ }
+ .f-top32 {
+ margin-top: 32px !important;
+ }
+ .f-top40 {
+ margin-top: 40px !important;
+ }
+
+ .f-top48 {
+ margin-top: 48px !important;
+ }
+
+ .f-top8 {
+ margin-top: 8px !important;
+ }
+
+ .f-bot8 {
+ margin-bottom: 8px;
+ }
+
+ .f-bot24 {
+ margin-bottom: 24px !important;
+ }
+
+ .f-top16 {
+ margin-top: 16px !important;
+ }
+
+ .f-bot16 {
+ margin-bottom: 16px !important;
+ }
+
+ .f-right8 {
+ margin-right: 8px !important;
+ }
+ .f-right10 {
+ margin-right: 10px !important;
+ }
+ .f-right16 {
+ margin-right: 16px !important;
+ }
+ .f-margin30 {
+ margin: 30px;
+ }
+
+ .f-m0 {
+ margin: 0 !important;
+ }
.m-map {
position: relative;
width: 100%;
@@ -61,7 +219,7 @@
}
.m-jdjs {
- height: 318px;
+ height: 548px;
padding: 0 16px;
&-js {
@@ -133,8 +291,10 @@
line-height: 24px;
}
}
+
}
+
@keyframes move {
from {
margin-top: -232px;
diff --git a/src/assets/scss/modules/management/list-main.scss b/src/assets/scss/modules/management/list-main.scss
index 6bdce451d..d5be753c7 100644
--- a/src/assets/scss/modules/management/list-main.scss
+++ b/src/assets/scss/modules/management/list-main.scss
@@ -120,7 +120,6 @@
}
}
-// 弹性盒子
.f-flex {
display: flex;
flex-wrap: nowrap;
diff --git a/src/utils/jwTool.js b/src/utils/jwTool.js
index 0da251e67..f4f36a584 100644
--- a/src/utils/jwTool.js
+++ b/src/utils/jwTool.js
@@ -1,8 +1,17 @@
+/*
+ * @Author: mk 2403457699@qq.com
+ * @Date: 2023-10-25 09:13:30
+ * @LastEditors: mk 2403457699@qq.com
+ * @LastEditTime: 2023-11-10 16:43:33
+ * @Description: satisfactionSource入参字符串报错
+ *
+ *
+ */
import Vue from "vue";
const paramsFormat = function (params) {
const data = { ...params };
- if (data.satisfactionSource) {
+ if (data.satisfactionSource && typeof data.satisfactionSource === "object") {
data.satisfactionSource = data.satisfactionSource.join(",");
}
let strArray = [];
diff --git a/src/views/dataBoard/overview/components/jdjs.vue b/src/views/dataBoard/overview/components/jdjs.vue
index 92d3dceeb..addf782d0 100644
--- a/src/views/dataBoard/overview/components/jdjs.vue
+++ b/src/views/dataBoard/overview/components/jdjs.vue
@@ -1,5 +1,5 @@
-
+

@@ -8,20 +8,66 @@
{{ overview }}
-
+
+
diff --git a/src/views/dataBoard/overview/index.vue b/src/views/dataBoard/overview/index.vue
index 95cfac18b..4ff19fb23 100644
--- a/src/views/dataBoard/overview/index.vue
+++ b/src/views/dataBoard/overview/index.vue
@@ -11,11 +11,10 @@
-
-
+
@@ -44,14 +43,14 @@
-
+
diff --git a/src/views/dataBoard/renfang/index.vue b/src/views/dataBoard/renfang/index.vue
index d1704d40a..401d85498 100644
--- a/src/views/dataBoard/renfang/index.vue
+++ b/src/views/dataBoard/renfang/index.vue
@@ -737,7 +737,7 @@ export default {
count: item.categoryCount,
ratio: ((100 * item.categoryCount) / data.resiCount).toFixed(0),
growth: 0,
- growthAbs: Math.abs(item.growth),
+ growthAbs: Math.abs(item.growth) || '--',
};
});
}
diff --git a/src/views/dataBoard/satisfactionEval/components/Title/titleSmall.vue b/src/views/dataBoard/satisfactionEval/components/Title/titleSmall.vue
new file mode 100644
index 000000000..23e7f0e87
--- /dev/null
+++ b/src/views/dataBoard/satisfactionEval/components/Title/titleSmall.vue
@@ -0,0 +1,66 @@
+
+
+
+
+ {{ text }}
+ {{ text }}
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/dataBoard/satisfactionEval/potentialPeople/index.vue b/src/views/dataBoard/satisfactionEval/potentialPeople/index.vue
index 0b467d0d2..7b90673c9 100644
--- a/src/views/dataBoard/satisfactionEval/potentialPeople/index.vue
+++ b/src/views/dataBoard/satisfactionEval/potentialPeople/index.vue
@@ -8,6 +8,7 @@
v-model="queryParams.agencyId"
size="small"
placeholder="按组织"
+ v-if="this.$route.query.type != 'shuji'"
>
+
+
+
{
return { label: index - 0 + 1 + "月", value: index - 0 + 1 };
@@ -162,6 +185,30 @@ export default {
},
activated() {
+ if(this.$route.query.type == 'shuji'){
+ this.breadcrumbList = [
+ {
+ path: "/dataBoard/overview/index",
+ name: "书记看板",
+ },
+ {
+ path: "",
+ name: "不满意风险人员",
+ },
+ ]
+ this.queryParams.satisfactionSource = this.$route.query.satisfactionSource
+ }else{
+ this.breadcrumbList = [
+ {
+ path: "/dataBoard/satisfactionEval/index",
+ name: "满意度评价",
+ },
+ {
+ path: "",
+ name: "潜在不满意人数",
+ },
+ ]
+ }
this.getOrg();
},
methods: {
@@ -195,11 +242,12 @@ export default {
},
getList() {
this.loading = true;
- console.log(this.$route.query.countType);
+ console.log(this.queryParams);
let params = {
...this.queryParams,
countType: this.$route.query.countType,
};
+ console.log(params);
this.$http
.get(
"/governance/satisfactionDetailList/getPotentialDissatisfiedCountDetail?" +
diff --git a/src/views/modules/goverhotline/followDetail.vue b/src/views/modules/goverhotline/followDetail.vue
new file mode 100644
index 000000000..4b3b9f052
--- /dev/null
+++ b/src/views/modules/goverhotline/followDetail.vue
@@ -0,0 +1,142 @@
+
+
+
+
+ 街道:
+ {{detailObj.streetName || '--'}}
+
+
+
+ 社区:
+ {{detailObj.communityName || '--'}}
+
+
+
+ 姓名:
+ {{detailObj.name || '--'}}
+
+
+
+ 回访电话:
+ {{detailObj.mobile || '--'}}
+
+
+
+ 领域:
+ {{detailObj.scopeName || '--'}}
+
+
+
+ 问题:
+ {{detailObj.problemDesc || '--'}}
+
+
+
+ 是否完成:
+
+ 正在推进
+ 已完成
+ 已完成并取消风险标记
+
+
+
+
+ 组织类型:
+
+ 省
+ 市
+ 区
+
+
+
+
+ 完成时限:
+
+
+
+
+
+
+
+ 备注:
+
+
+
+
+
+
+
+ 取 消
+ 提 交
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/modules/goverhotline/formList.vue b/src/views/modules/goverhotline/formList.vue
new file mode 100644
index 000000000..c0b918339
--- /dev/null
+++ b/src/views/modules/goverhotline/formList.vue
@@ -0,0 +1,143 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 处理中
+ 已完成
+ --
+
+
+
+
+ 查看
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/modules/goverhotline/index.vue b/src/views/modules/goverhotline/index.vue
index 8ce81730a..fbc7f33ab 100644
--- a/src/views/modules/goverhotline/index.vue
+++ b/src/views/modules/goverhotline/index.vue
@@ -71,7 +71,7 @@
科室热线分布情况
@@ -102,7 +102,7 @@
(一)同地点同类型事件重复投诉
-
+
@@ -137,6 +137,38 @@
+
+
+
+
+
+
@@ -147,8 +179,13 @@ import { mapGetters } from "vuex";
import axios from "axios";
import * as echarts from "echarts";
+import formList from "./formList";
+import util from "@js/util.js";
+import followDetail from "./followDetail";
+import eventInfo from "../shequzhili/event/cpts/event-info";
+
export default {
- components: {},
+ components: {formList, followDetail,eventInfo},
data() {
return {
@@ -182,7 +219,17 @@ export default {
communityCountShow:false,
departCountShow:false,
subCategoryCountShow:false,
-
+
+ showFormList: false,
+ showFormDetail: false,
+
+ recId: "",
+ departId:"",
+
+ eventId: "",
+ eventDetailData: {},
+ pageType: "info",
+
categoryChartOption: {
@@ -205,7 +252,6 @@ export default {
},
toolbox: {},
-
xAxis: {
type: 'category',
boundaryGap: true,
@@ -522,37 +568,40 @@ export default {
this.categoryChart.setOption(this.categoryChartOption);
let than = this;
this.categoryChart.on("click", function (params) {
- than.handelClickChart(params.name);
+ than.handelClickChart(params);
});
this.categoryPie= echarts.init(document.getElementById("categoryPie"));
this.categoryPie.setOption(this.categoryPieOption);
this.categoryPie.on("click", function (params) {
- than.handelClickChart(params.name);
+ than.handelClickChart(params);
});
}
if(this.communityCountShow){
this.communityChart= echarts.init(document.getElementById("communityChart"));
this.communityChart.setOption(this.communityOption);
+ let than = this;
this.communityChart.on("click", function (params) {
- than.handelClickChart(params.name);
+ than.handelClickChart(params);
});
}
if(this.departCountShow){
this.departChart= echarts.init(document.getElementById("departChart"));
this.departChart.setOption(this.departOption);
+ let than = this;
this.departChart.on("click", function (params) {
- than.handelClickChart(params.name);
+ than.handelClickDepartChart(params);
});
}
if(this.subCategoryCountShow){
this.hotlineChart= echarts.init(document.getElementById("hotlineChart"));
this.hotlineChart.setOption(this.hotlineChartOption);
+ let than = this;
this.hotlineChart.on("click", function (params) {
- than.handelClickChart(params.name);
+ than.handelClickChart(params);
});
}
@@ -568,15 +617,54 @@ export default {
this.categoryPie.resize();
}
},
- handelClickChart(name) {
+ handelClickChart(params) {
+ this.showFormList = true;
+ this.departId ='';
+ this.recId = params.data.id;
+ },
+ handelClickDepartChart(params) {
this.showFormList = true;
- this.satisfactionCategoryStr = this.dicts.satisfaction_category.filter(
- (item) => item.label == name
- )[0].value;
+ this.recId ='';
+ this.departId = params.data.id;
},
handleClose() {
this.showFormList = false;
},
+
+ async handelClickDetail(row) {
+ this.eventId = row.icEventId;
+ const url = "/governance/icEvent/detail";
+ const { data, code, msg } = await requestPost(url, {
+ icEventId: this.eventId,
+ });
+ if (code != 0) {
+ this.$message.error(msg);
+ } else {
+ this.eventDetailData = { ...data };
+ this.pageType = "info";
+ this.showFormDetail = true;
+ }
+ },
+
+ handleClose() {
+ this.showFormDetail = false;
+ this.pageType = "list";
+ this.eventId = "";
+ this.getTableData();
+ },
+ handleOk() {
+ this.showFormDetail = false;
+ this.pageType = "list";
+ this.eventId = "";
+ this.pageNo = 1;
+ this.getTableData();
+ },
+
+ handleEditSuccess() {
+ this.handleClose();
+ this.getTableData();
+ },
+
// 搜索事件
async handleSearch(val) {
console.log(this.formData);
@@ -632,20 +720,28 @@ export default {
}
this.report = data;
- console.log(this.report)
this.tableLoading = true;
//获取分类
Object.keys(this.report.categoryCount).forEach((key) => {
- const value = this.report.categoryCount[key];
+ const category = this.report.categoryCount[key];
+
+ // this.categoryChartOption.series[0].data.push(category.count);
+ this.categoryChartOption.xAxis.data.push(category.name);
+
+ const recObject = {
+ id: category.id,
+ value: category.count
+ };
+ this.categoryChartOption.series[0].data.push(recObject);
+
- this.categoryChartOption.series[0].data.push(value);
- this.categoryChartOption.xAxis.data.push(key);
const jsonObject = {
- name: key,
- value: value
+ id: category.id,
+ name: category.name,
+ value: category.count
};
this.categoryPieOption.series[0].data.push(jsonObject);
@@ -653,31 +749,46 @@ export default {
// 获取社区
Object.keys(this.report.communityCount).forEach((key) => {
- const value = this.report.communityCount[key];
+ const community = this.report.communityCount[key];
- this.communityOption.xAxis[0].data.push(key);
- this.communityOption.series[0].data.push(value/this.report.totalEvent*100);
- this.communityOption.series[1].data.push(value);
+ this.communityOption.xAxis[0].data.push(community.name);
+ const recObject = {
+ id: community.id,
+ value: community.count/this.report.totalEvent*100
+ };
+ this.communityOption.series[0].data.push(recObject);
+
+
+ this.communityOption.series[1].data.push(community.count);
});
// 获取科室
Object.keys(this.report.departCount).forEach((key) => {
- const value = this.report.departCount[key];
+ const depart = this.report.departCount[key];
- this.departOption.xAxis[0].data.push(key);
- this.departOption.series[0].data.push(value/this.report.totalEvent*100);
- this.departOption.series[1].data.push(value);
+ this.departOption.xAxis[0].data.push(depart.name);
+ const recObject = {
+ id: depart.id,
+ value: depart.count/this.report.totalEvent*100
+ };
+ this.departOption.series[0].data.push(recObject);
- });
+
+ this.departOption.series[1].data.push(depart.count);
+ });
// 获取热点诉求及区域分析
Object.keys(this.report.subCategoryCount).forEach((key) => {
- const value = this.report.subCategoryCount[key];
+ const subcategory = this.report.subCategoryCount[key];
+ this.hotlineChartOption.xAxis.data.push(subcategory.name);
- this.hotlineChartOption.xAxis.data.push(key);
- this.hotlineChartOption.series[0].data.push(value);
+ const recObject = {
+ id: subcategory.id,
+ value: subcategory.count
+ };
+ this.hotlineChartOption.series[0].data.push(recObject);
});
this.addressData = this.report.addressEvent
@@ -698,12 +809,11 @@ export default {
})
: [];
-
- if (this.report && this.report. categoryCount && Object.keys(this.report. categoryCount).length > 0) {
+ if (this.report && this.report.categoryCount && Object.keys(this.report.categoryCount).length > 0) {
this.categoryCountShow = true;
}
- if (this.report && this.report. communityCount && Object.keys(this.report. communityCount).length > 0) {
+ if (this.report && this.report.communityCount && Object.keys(this.report.communityCount).length > 0) {
this.communityCountShow = true;
}
@@ -715,6 +825,11 @@ export default {
this.subCategoryCountShow = true;
}
},
+
+ clickAddressData(row, column){
+ console.log("============clickAddressData============");
+ console.log(row);
+ }
},
props: {},