diff --git a/package.json b/package.json index e63aa1c..af052e6 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "baidu-map-vue3": "^0.4.9", "crypto-js": "^4.2.0", "echarts": "^5.4.3", - "element-plus": "^2.5.1", + "element-plus": "^2.8.8", "install": "^0.13.0", "lodash": "^4.17.21", "moment": "^2.30.1", diff --git a/src/api/data/basicScreen.ts b/src/api/data/basicScreen.ts index 0769009..777ce72 100644 --- a/src/api/data/basicScreen.ts +++ b/src/api/data/basicScreen.ts @@ -26,9 +26,47 @@ export function getGobalRecentlyTrendByMonth(year) { } +/** + * 机构问题排名 + * @param year + */ +export function getOrganizationRank(times) { + return request.get({ + url: `/datav/dataGobalScreen/getOrganizationRank?beginTime=${times[0]}&endTime=${times[1]}` + }); +} + + +/** + * 业务类型占比 + * @param year + */ +export function getBusinessRate(times) { + return request.get({ + url: `/datav/dataGobalScreen/getBusinessRate?beginTime=${times[0]}&endTime=${times[1]}` + }); +} +/** + * 突出问题排名 + * @param year + */ +export function getStrongProblemRate(times) { + return request.get({ + url: `/datav/dataGobalScreen/getStrongProblemRate?beginTime=${times[0]}&endTime=${times[1]}` + }); +} +/** + * 问题类型占比 + * @param year + */ +export function getProblemBusinessRate(times) { + return request.get({ + url: `/datav/dataGobalScreen/getProblemBusinessRate?beginTime=${times[0]}&endTime=${times[1]}` + }); +} diff --git a/src/assets/images/defaultPhoto.jpg b/src/assets/images/defaultPhoto.jpg new file mode 100644 index 0000000..3eb5d2d Binary files /dev/null and b/src/assets/images/defaultPhoto.jpg differ diff --git a/src/components/datav/header.vue b/src/components/datav/header.vue index 9be6d47..3536144 100644 --- a/src/components/datav/header.vue +++ b/src/components/datav/header.vue @@ -14,14 +14,10 @@ 案件核查 - -
- - 民意感知 - - -
- + + 民意感知 + +

diff --git a/src/router/routes.ts b/src/router/routes.ts index 33e5b42..c75c2ab 100644 --- a/src/router/routes.ts +++ b/src/router/routes.ts @@ -52,11 +52,11 @@ export const routes = [ }, { path: '/datav/jwpy', - // component: () => import('@/views/datav/Jwpy.vue'), - beforeEnter: (to, from, next) => { + component: () => import('@/views/datav/Jwpy.vue'), + /* beforeEnter: (to, from, next) => { window.open('www.baidu.com', '_blank'); next(false); // 阻止路由的正常内部跳转 - } + }*/ }, { path: '/datav/lmgz', diff --git a/src/views/datav/Gobal.vue b/src/views/datav/Gobal.vue index 9fe351c..d0f6148 100644 --- a/src/views/datav/Gobal.vue +++ b/src/views/datav/Gobal.vue @@ -141,7 +141,12 @@ import changshaMap from "@/assets/data/changsha.json"; import * as echarts from "echarts/core"; import moment from "moment/moment"; import {getCaseVerifData} from "@/api/datav"; -import {getAllGobalCount, getGobalRecentlyTrendByMonth} from "@/api/data/basicScreen.ts"; +import { + getAllGobalCount, + getBusinessRate, + getGobalRecentlyTrendByMonth, + getOrganizationRank, getProblemBusinessRate, getStrongProblemRate +} from "@/api/data/basicScreen.ts"; // region 各种数据 const activeOrgTab = ref("1"); const fxsjlist = ref([]); // 分县市区机构问题排名 @@ -396,28 +401,36 @@ const time = ref([ ]); function getData() { - getAllGobalCount(time.value).then((res) => { - overview.value = res.overview; + getOrganizationRank(time.value).then((res) => { fxsjlist.value = res.fxsjlist; jsdwlist.value = res.jsdwlist; + }); + getBusinessRate(time.value).then((res) => { ywzblist.value = res.ywzblist; - wtlxlist.value = res.wtlxlist; - tcwtlist.value = res.tcwtlist; + }); + getAllGobalCount(time.value).then((res) => { + overview.value = res.overview; gobalTempMapVoList = res.gobalTempMapVoList; }); getGobalRecentlyTrendByMonth(new Date().getFullYear()).then((res) => { proTrend.value.xAxis.data = res.monthList; proTrend.value.series[0].data = res.totalList; }); - + getStrongProblemRate(time.value).then((res) => { + tcwtlist.value = res.tcwtlist; + }); + getProblemBusinessRate(time.value).then((res) => { + wtlxlist.value = res.wtlxlist; + }); } -watch(time, () => { +onMounted(() => { getData(); }); -onMounted(() => { +watch(time, () => { getData(); }); + const colors = [ { color: "linear-gradient( 270deg, #FB002D 0%, #822232 100%)", diff --git a/src/views/datav/Jwpy.vue b/src/views/datav/Jwpy.vue index 9818c71..afe3c63 100644 --- a/src/views/datav/Jwpy.vue +++ b/src/views/datav/Jwpy.vue @@ -93,7 +93,27 @@ - +
+

业务满意率

+ + + + + + + + +
@@ -405,6 +425,61 @@ const option3 = { } }] }; +const fontSize = ref(11) +const headerCellStyle = ref({ + fontSize: '11px', /* 设置表头字体大小 */ + color: '#24D2EE', /* 设置表头字体颜色 */ + backgroundColor: '#04144E', /* 设置表头背景颜色 */ + height: '15px', /* 设置表头高度 */ + padding: '0 0 0 0', /* 设置表头内边距 */ +}); + +const tableRowStyle = (row) => { + return { + backgroundColor: '#04144E', + color: "#FFFFFF" + }; +}; + + +// 自定义总合行样式 +const summaryCellStyle = () => { + return { + backgroundColor: '#04144E', + color: "#FFFFFF" + }; +}; + + +// 定义汇总方法 +const getSummaries = (param) => { + const {columns, data} = param; + const sums = []; + columns.forEach((column, index) => { + if (index === 0) { + sums[index] = '总计'; + return; + } + const values = data.map(item => Number(item[column.property])); + if (!values.every(value => isNaN(value))) { + sums[index] = values.reduce((prev, curr) => { + const value = Number(curr); + if (!isNaN(value)) { + return prev + curr; + } else { + return prev; + } + }, 0); + sums[index] += ''; + } else { + sums[index] = 'N/A'; + } + }); + return sums; +}; + + + // region 调查情况 const overview = ref({ total: 0, @@ -485,7 +560,51 @@ const colors = [ }, ]; - +const tableData = [ + { + id: '12987122', + name: 'Tom', + amount1: '234', + amount2: '3.2', + amount3: 10, + }, { + id: '12987122', + name: 'Tom', + amount1: '234', + amount2: '3.2', + amount3: 10, + }, { + id: '12987122', + name: 'Tom', + amount1: '234', + amount2: '3.2', + amount3: 10, + }, { + id: '12987122', + name: 'Tom', + amount1: '234', + amount2: '3.2', + amount3: 10, + }, { + id: '12987122', + name: 'Tom', + amount1: '234', + amount2: '3.2', + amount3: 10, + }, { + id: '12987122', + name: 'Tom', + amount1: '234', + amount2: '3.2', + amount3: 10, + }, { + id: '12987122', + name: 'Tom', + amount1: '234', + amount2: '3.2', + amount3: 10, + }, +] @@ -519,5 +638,20 @@ const colors = [ height: 118px; } +.custom-footer-row { + background-color:#FB3131; + font-weight: bold; + color: #333; +} + +.custom-footer-cell { + text-align: center; + padding: 10px; +} + + + + + \ No newline at end of file diff --git a/src/views/datav/SceneInsp.vue b/src/views/datav/SceneInsp.vue index 23c506e..f49a8e8 100644 --- a/src/views/datav/SceneInsp.vue +++ b/src/views/datav/SceneInsp.vue @@ -472,7 +472,7 @@ const option = ref({
  • 整改中 ${dataItem.changing}
  • 已整改 ${dataItem.changed}
  • 涉及单位数 ${dataItem.relationOrg}
  • -
  • 整改率 ${dataItem.changedRate}
  • +
  • 整改率 ${dataItem.changedRate}%
  • `; diff --git a/src/views/sensitivePerception/RiskPersonnel.vue b/src/views/sensitivePerception/RiskPersonnel.vue index f293864..3577b9d 100644 --- a/src/views/sensitivePerception/RiskPersonnel.vue +++ b/src/views/sensitivePerception/RiskPersonnel.vue @@ -146,27 +146,48 @@ +
    风险人员基本情况
    - - -
    -
    - - {{ activeRow.name }} -
    -
    - - {{ getGender(activeRow.gender) }} -
    -
    - - {{ activeRow.idCode }} -
    -
    - - {{ activeRow.age }} + + + + + + +
    +
    + +
    +
    +
    + + {{ activeRow.name }} +
    +
    + + {{ getGender(activeRow.gender) }} +
    +
    + + {{ activeRow.idCode }} +
    +
    +
    + + {{ activeRow.age }} +
    +
    + + {{ activeRow.controlDepartName }} +
    +
    + + {{ activeRow.mobileNumber }} +
    +
    +
    @@ -179,9 +200,7 @@
    -
    - {{ item.riskName }} -
    +
    {{ item.riskName }}