diff --git a/src/assets/scss/modules/visual/distributionAnalyze.scss b/src/assets/scss/modules/visual/distributionAnalyze.scss index 874dfbed6..438c0e30b 100644 --- a/src/assets/scss/modules/visual/distributionAnalyze.scss +++ b/src/assets/scss/modules/visual/distributionAnalyze.scss @@ -116,12 +116,12 @@ display: flex; flex-direction: row; // flex-wrap: wrap; - // justify-content: center; + justify-content: space-between; height: calc(100vh - 230px); .g-l { width: 40%; - height: calc(100vh - 290px); + height: calc(100vh - 240px); .echart-line { margin-left: 30px; @@ -139,7 +139,7 @@ } .g-r { - width: 60%; + width: 55%; height: calc(100vh - 250px); .r-map { diff --git a/src/assets/scss/modules/visual/incident-info.scss b/src/assets/scss/modules/visual/incident-info.scss index 989b7d567..9fe6638c5 100644 --- a/src/assets/scss/modules/visual/incident-info.scss +++ b/src/assets/scss/modules/visual/incident-info.scss @@ -1,375 +1,379 @@ -@import "../../c/config"; -@import "../../c/function"; -@import "./c/common"; +@import '../../c/config'; +@import '../../c/function'; +@import './c/common'; .m-pop { - @include shield; - background-color: rgba(#000, 0.9); - overflow-y: auto; + @include shield; + background-color: rgba(#000, 0.9); + overflow-y: auto; - .wrap { - position: relative; - margin: 120px auto; - width: 1020px; - - .title { - padding: 10px; - font-size: 22px; - font-family: PingFang SC; - font-weight: 800; - color: #ffffff; - display: flex; - align-items: center; - - img { - display: block; - margin-right: 5px; - } - span { - display: block; - } - } + .wrap { + position: relative; + margin: 120px auto; + width: 1020px; + + .title { + padding: 10px; + font-size: 22px; + font-family: PingFang SC; + font-weight: 800; + color: #ffffff; + display: flex; + align-items: center; + + img { + display: block; + margin-right: 5px; + } + span { + display: block; + } + } - .btn-close { - position: absolute; - top: -15px; - right: -15px; - cursor: pointer; - } + .btn-close { + position: absolute; + top: -15px; + right: -15px; + cursor: pointer; + } - .line { - margin: 20px auto; - width: 900px; - height: 1px; - border: 1px dashed #1257c9; - } + .line { + margin: 20px auto; + width: 900px; + height: 1px; + border: 1px dashed #1257c9; + } - .tabs { - margin-top: 30px; - display: flex; - align-items: center; - padding-left: 20px; - padding-left: 58px; - - .tab-btn { - width: 30px; - text-align: center; - cursor: pointer; - } - - .tab { - margin: 0 5px; - min-width: 76px; - padding: 0 5px; - height: 30px; - background: rgba(255, 255, 255, 0); - border: 1px solid #1257c9; - box-shadow: 0 0 10px 0 inset #1257c9; - border-radius: 2px; - text-align: center; - font-size: 14px; - font-family: PingFang SC; - font-weight: 400; - color: #ffffff; - line-height: 30px; - cursor: pointer; - transition: all ease 0.5s; - &.z-on { - background: linear-gradient(90deg, #1a5afd, #009cff); - box-shadow: none; - } - } + .tabs { + margin-top: 30px; + display: flex; + align-items: center; + padding-left: 20px; + padding-left: 58px; + + .tab-btn { + width: 30px; + text-align: center; + cursor: pointer; + } + + .tab { + margin: 0 5px; + min-width: 76px; + padding: 0 5px; + height: 30px; + background: rgba(255, 255, 255, 0); + border: 1px solid #1257c9; + box-shadow: 0 0 10px 0 inset #1257c9; + border-radius: 2px; + text-align: center; + font-size: 14px; + font-family: PingFang SC; + font-weight: 400; + color: #ffffff; + line-height: 30px; + cursor: pointer; + transition: all ease 0.5s; + &.z-on { + background: linear-gradient(90deg, #1a5afd, #009cff); + box-shadow: none; } + } } + } } .m-info { - padding-left: 62px; - font-size: 16px; + padding-left: 62px; + font-size: 16px; + font-family: PingFang SC; + font-weight: 400; + color: #ffffff; + line-height: 24px; + width: 500px; + + .info-title { + margin-top: 30px; + font-size: 20px; font-family: PingFang SC; - font-weight: 400; + font-weight: bold; color: #ffffff; - line-height: 24px; - width: 500px; - - .info-title { - margin-top: 30px; - font-size: 20px; - font-family: PingFang SC; - font-weight: bold; - color: #ffffff; - line-height: 30px; - } - .info-content { - margin: 20px 0; - } - .info-pics { - display: flex; - margin: 20px 0; - img { - display: block; - width: 32%; - height: 90px; - margin-right: 9px; - object-fit: cover; - } + line-height: 30px; + } + .info-content { + margin: 20px 0; + } + .info-pics { + display: flex; + margin: 20px 0; + img { + display: block; + width: 32%; + height: 90px; + margin-right: 9px; + object-fit: cover; } + } - .info-prop { - position: relative; - margin: 10px 0; - display: flex; - padding-left: 15px; + .info-prop { + position: relative; + margin: 10px 0; + display: flex; + padding-left: 15px; - > span, - > div { - display: block; - max-width: 300px; - } + > span, + > div { + display: block; + max-width: 300px; + } - &::before { - content: ""; - display: block; - position: absolute; - top: 9px; - left: 0; - width: 7px; - height: 7px; - background: #0c81fe; - border-radius: 3px; - margin-right: 10px; - } + &::before { + content: ''; + display: block; + position: absolute; + top: 9px; + left: 0; + width: 7px; + height: 7px; + background: #0c81fe; + border-radius: 3px; + margin-right: 10px; } + } } .m-case { - @include scrollBar; - height: 600px; - padding: 20px 0 20px 0; - overflow-y: auto; + @include scrollBar; + height: 600px; + padding: 20px 0 20px 0; + overflow-y: auto; } .m-row { - display: flex; - justify-content: space-between; + display: flex; + justify-content: space-between; } .m-yanpan { - padding-left: 62px; - padding-right: 0; - min-height: 300px; + padding-left: 62px; + padding-right: 0; + min-height: 300px; } .m-hint { - position: relative; - height: 300px; - - // 暂无数据 - img { - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - margin: auto; - } + position: relative; + height: 300px; + + // 暂无数据 + img { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + margin: auto; + } } .m-line { - min-width: 400px; + min-width: 400px; - .stat { - margin: 20px 0 10px; - display: flex; - .stat-item { - width: 33%; - text-align: center; - - div { - font-size: 17px; - font-family: Source Han Serif SC; - font-weight: 500; - color: rgba(#fff, 0.5); - line-height: 24px; - &.z-weak { - font-size: 12px; - font-family: Source Han Serif SC; - font-weight: 500; - color: rgba(#fff, 0.5); - line-height: 24px; - } - } + .stat { + margin: 20px 0 10px; + display: flex; + .stat-item { + width: 33%; + text-align: center; + + div { + font-size: 17px; + font-family: Source Han Serif SC; + font-weight: 500; + color: rgba(#fff, 0.5); + line-height: 24px; + &.z-weak { + font-size: 12px; + font-family: Source Han Serif SC; + font-weight: 500; + color: rgba(#fff, 0.5); + line-height: 24px; } + } } + } } .m-tb { - padding-left: 62px; - padding-right: 40px; + padding-left: 62px; + padding-right: 40px; } .m-pagination { - box-sizing: border-box; - margin-top: 20px; - width: 100%; - height: 40px; - display: flex; - justify-content: flex-end; + box-sizing: border-box; + margin-top: 20px; + width: 100%; + height: 40px; + display: flex; + justify-content: flex-end; + + /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { + background: #0266d1; + color: #000d3f; + } + + /deep/ .el-pagination .el-pager li { + background: #002e74; + } + + /deep/ .el-pagination .btn-prev { + background: #002e74; + } + + /deep/ .el-pagination .btn-next { + background: #002e74; + } +} - /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { - background: #0266d1; - color: #000d3f; - } +.m-process { + width: 400px; - /deep/ .el-pagination .el-pager li { - background: #002e74; - } + .process-title { + margin-bottom: 25px; + margin-left: -5px; + font-size: 16px; + font-family: PingFang SC; + font-weight: bold; + color: #ffffff; + line-height: 18px; + } - /deep/ .el-pagination .btn-prev { - background: #002e74; + .list { + position: relative; + box-sizing: border-box; + margin-top: 30px/2; + margin-left: 50px/2; + padding: 0 0 0 30px/2; + width: 680px/2; + border-left: 3px solid #0c81fe; + padding-right: 10px; + + &::before { + content: ''; + position: absolute; + z-index: 1; + display: block; + top: -2px/2; + left: -2px/2; + width: 5px/2; + height: 20px/2; + background-color: #ffffff; } - /deep/ .el-pagination .btn-next { - background: #002e74; - } -} + .item { + position: relative; + z-index: 2; + margin-bottom: 8px; + padding-bottom: 8px; + font-size: 16px; + font-family: PingFang SC; + font-weight: 400; + color: #fefefe; + line-height: 24px; + padding-left: 20px; + padding-top: 1px; + + &::before { + content: ''; + display: block; + position: absolute; + top: -5px; + left: -11px; + width: 18px; + height: 18px; + background: #0c81fe; + border: 4px solid lighten(#0c81fe, 15); + border-radius: 100%; + } + + &.z-on { + &::before { + background: #e08400; + border-color: lighten(#e08400, 15); + } + } -.m-process { - width: 400px; + &:last-child { + margin-bottom: 0; + padding-bottom: 0; + border-bottom: none; + } - .process-title { - margin-bottom: 25px; - margin-left: -5px; - font-size: 16px; - font-family: PingFang SC; - font-weight: bold; - color: #ffffff; - line-height: 18px; - } + .item-row { + margin-top: -10px; + margin-bottom: 10px; + display: flex; + } - .list { + .name { position: relative; - box-sizing: border-box; - margin-top: 30px/2; - margin-left: 50px/2; - padding: 0 0 0 30px/2; - width: 680px/2; - border-left: 3px solid #0c81fe; - padding-right: 10px; + padding: 0 10px; + font-size: 12px; + font-family: PingFang SC; + font-weight: 500; + color: #fefefe; + line-height: 22px; + height: 22px; + border-radius: 10px 0 10px 0; + background-color: #0c81fe; + // background-color: #e08400; + } + + .date { + margin-left: 10px; + font-size: 12px; + font-family: PingFang SC; + font-weight: 500; + color: #7ca1d2; + line-height: 25px; + } - &::before { - content: ""; - position: absolute; - z-index: 1; - display: block; - top: -2px/2; - left: -2px/2; - width: 5px/2; - height: 20px/2; - background-color: #ffffff; - } + .detail { + @include cs; + font-size: 16px; + line-height: 20px; + margin-bottom: 5px; + display: flex; - .item { - position: relative; - z-index: 2; - margin-bottom: 8px; - padding-bottom: 8px; - font-size: 16px; - font-family: PingFang SC; - font-weight: 400; - color: #fefefe; - line-height: 24px; - padding-left: 20px; - padding-top: 1px; - - &::before { - content: ""; - display: block; - position: absolute; - top: -5px; - left: -11px; - width: 18px; - height: 18px; - background: #0c81fe; - border: 4px solid lighten(#0c81fe, 15); - border-radius: 100%; - } - - &.z-on { - &::before { - background: #e08400; - border-color: lighten(#e08400, 15); - } - } - - &:last-child { - margin-bottom: 0; - padding-bottom: 0; - border-bottom: none; - } - - .item-row { - margin-top: -10px; - margin-bottom: 10px; - display: flex; - } - - .name { - position: relative; - padding: 0 10px; - font-size: 12px; - font-family: PingFang SC; - font-weight: 500; - color: #fefefe; - line-height: 22px; - height: 22px; - border-radius: 10px 0 10px 0; - background-color: #0c81fe; - // background-color: #e08400; - } - - .date { - margin-left: 10px; - font-size: 12px; - font-family: PingFang SC; - font-weight: 500; - color: #7ca1d2; - line-height: 25px; - } - - .detail { - @include cs; - font-size: 16px; - line-height: 20px; - margin-bottom: 5px; - display: flex; - - .detail-field { - width: 22%; - text-align: justify; - text-align-last: justify; - } - .detail-value { - width: 78%; - .detail-link { - display: inline; - } - } - } - - .attachement-list { - padding-left: 80px; - a { - display: block; - cursor: pointer; - color: #4df0ff; - font-size: 14px; - - i { - color: #fff; - } - } - } + .detail-field { + width: 22%; + text-align: justify; + text-align-last: justify; } + .detail-value { + width: 78%; + .detail-link { + display: inline; + } + } + } + + .attachement-list { + padding-left: 80px; + a { + display: block; + cursor: pointer; + color: #4df0ff; + font-size: 14px; + + i { + color: #fff; + } + } + } } + } +} + +.m-top { + display: flex; } diff --git a/src/views/modules/visual/communityGovern/cpt/project-info.vue b/src/views/modules/visual/communityGovern/cpt/project-info.vue new file mode 100644 index 000000000..ac6d82f24 --- /dev/null +++ b/src/views/modules/visual/communityGovern/cpt/project-info.vue @@ -0,0 +1,629 @@ + + + + + diff --git a/src/views/modules/visual/communityGovern/distributionAnalyze.vue b/src/views/modules/visual/communityGovern/distributionAnalyze.vue index 097df0a05..5f5e4c79d 100644 --- a/src/views/modules/visual/communityGovern/distributionAnalyze.vue +++ b/src/views/modules/visual/communityGovern/distributionAnalyze.vue @@ -503,11 +503,12 @@ export default { let dataArray = new Array(num) //遍历每个分类 this.lineList[0].categoryList.forEach((categoryItem, index) => { - this.legend.push(categoryItem.name) + this.legend.push(categoryItem.categoryName) dataArray[index] = [] }); + //遍历每个时间 this.lineList.forEach(item => { this.xaxis.push(item.time) @@ -523,8 +524,9 @@ export default { this.lineList[0].categoryList.forEach((categoryItem, index) => { let object = { - name: categoryItem.name, + name: categoryItem.categoryName, type: 'line', + smooth: true, barWidth: 15, areaStyle: {}, itemStyle: { diff --git a/src/views/modules/visual/communityGovern/distributionLineOption.js b/src/views/modules/visual/communityGovern/distributionLineOption.js index ac8970267..05df510d0 100644 --- a/src/views/modules/visual/communityGovern/distributionLineOption.js +++ b/src/views/modules/visual/communityGovern/distributionLineOption.js @@ -2,6 +2,21 @@ import * as echarts from 'echarts' export function lineOption () { return { + tooltip: { + trigger: 'axis', + axisPointer: { + type: 'cross', + label: { + backgroundColor: '#6a7985' + } + } + }, + grid: { + left: 70, + top: 40, + right: 50, + bottom: 150 + }, legend: { textStyle: { color: '#D2E7FF', @@ -10,7 +25,7 @@ export function lineOption () { }, itemWidth: 20, itemHeight: 10, - // top: 350, + // top: 650, bottom: 0, data: [] }, @@ -62,6 +77,7 @@ export function lineOption () { } }, series: [ + // { // name: '项目数', // type: 'line', diff --git a/src/views/modules/visual/communityGovern/processAnalyze.vue b/src/views/modules/visual/communityGovern/processAnalyze.vue index ec2ca8c87..c20b4eceb 100644 --- a/src/views/modules/visual/communityGovern/processAnalyze.vue +++ b/src/views/modules/visual/communityGovern/processAnalyze.vue @@ -528,7 +528,6 @@ export default { } this.$refs.pieChart.handleClick(fun) - }, clickPie (seriesIndex) { diff --git a/src/views/modules/visual/communityGovern/resibuzz.vue b/src/views/modules/visual/communityGovern/resibuzz.vue index 84e9e9c08..73918a26e 100644 --- a/src/views/modules/visual/communityGovern/resibuzz.vue +++ b/src/views/modules/visual/communityGovern/resibuzz.vue @@ -192,8 +192,8 @@ export default { pageNo: 1, total: 0, }, - showIssue: true, - issueId: 'cf48b7dc70ef4c319fd9c71890d9dbbb', + showIssue: false, + issueId: '', casOptions: [], agencyIdArray: [], @@ -243,7 +243,6 @@ export default { this.orgId = this.agencyInfo.agencyId this.orgType = this.agencyInfo.level === 'grid' ? 'grid' : 'agency' - if (!this.agencyInfo.latitude) { this.agencyInfo.latitude = 36.072227 } diff --git a/src/views/modules/visual/communityGovern/typeAnalyze.vue b/src/views/modules/visual/communityGovern/typeAnalyze.vue index d6a9d6299..a78d2c245 100644 --- a/src/views/modules/visual/communityGovern/typeAnalyze.vue +++ b/src/views/modules/visual/communityGovern/typeAnalyze.vue @@ -43,7 +43,8 @@ + :list="demand.list" + @operate="toProjectInfo"> @@ -61,6 +62,11 @@ + @@ -70,6 +76,7 @@ import { requestPost } from "@/js/dai/request"; import cptCard from "@/views/modules/visual/cpts/card"; import cptTb from "@/views/modules/visual/cpts/tb"; import screenEchartsFrame from "@/views/modules/visual/components/screen-echarts-frame"; +import projectInfo from "./cpt/project-info"; import { pieOption } from './typePieOption.js' import nextTick from 'dai-js/tools/nextTick' @@ -150,8 +157,13 @@ export default { pageSize: 10, pageNo: 1, total: 0, - }, + tableList: [], + showProject: false, + userId: '',//话题事件创始人 + categoryCodes: [],//一级分类Id + projectId: '', + casOptions: [], agencyIdArray: [], @@ -175,7 +187,7 @@ export default { }, async mounted () { - this.userId = this.uid; + this.initData() await this.getAgencylist()//获取组织级别 await nextTick(500) @@ -382,6 +394,7 @@ export default { if (code === 0) { this.demand.total = data.total; + this.tableList = data.list this.demand.list = data.list.map((item) => { //楼院小组:issue; 项目立项:agency 事件上报:resi_event【也可控制点击查看时里边三个按钮的显示】 item.originShow = item.origin === 'issue' ? '楼院小组' : item.origin === 'agency' ? '项目立项' : '事件上报' @@ -408,8 +421,14 @@ export default { this.demand.pageNo = val; this.getTable(); }, - toUserInfo (uid) { - this.$router.push({ path: `/main-shuju/visual-basicinfo-people/${uid}` }); + async toProjectInfo (index) { + const { tableList } = this; + this.projectId = tableList[index].projectId + this.userId = tableList[index].userId + this.categoryCodes = tableList[index].categoryCodes + + this.showProject = true + }, }, props: { @@ -426,6 +445,7 @@ export default { cptCard, cptTb, screenEchartsFrame, + projectInfo, }, watch: { @@ -433,13 +453,7 @@ export default { let dataArray = this.dateIdShow.split('-') this.dateId = dataArray.join('') }, - uid (id) { - this.userId = id; - }, - userId () { - this.getPie() - window.scrollTo(0, 0); - }, + }, };