| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116 |
- <template>
- <div class="mainBox" id="mainBox">
- <div class="mainHeader">
- <div class="header-left">
- <div class="date-down myselect" @click="showHideDate">
- <div class="myselect">年度</div>
- <div class="myselect">{{selectDateName}}</div>
- <div class="myselect"><i :class="iconDate"></i></div>
- <ul class="myselect" v-if="isDateVisible">
- <li class="myselect" style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" @click.stop="dateChange(item.year,item.year)" v-for="item in yearList" :title="item.year">{{item.year}}</li>
- </ul>
- </div>
- <div class="date-down " @click="showHideType">
- <div class="myselect">批次</div>
- <div class="myselect">{{selectBatchName}}</div>
- <div class="myselect"><i :class="iconBatch"></i></div>
- <ul class="myselect" v-if="isBatchVisible">
- <li class="myselect" style="overflow: hidden;text-overflow: ellipsis;white-space: nowrap;" @click.stop="batchChange(item.adName,item.batch)" v-for="item in batchList" :title="item.adName">{{item.batch}}{{item.adName}}</li>
- </ul>
- </div>
- <!-- <el-select v-model="selectDate" placeholder="请选择" size="mini" @change="dateChange">-->
- <!-- <el-option-->
- <!-- v-for="item in options"-->
- <!-- :key="item.value"-->
- <!-- :label="item.label"-->
- <!-- :value="item.value">-->
- <!-- </el-option>-->
- <!-- </el-select>-->
- <!-- <el-select v-model="selectBatch" placeholder="请选择" size="mini" @change="batchChange">-->
- <!-- <el-option-->
- <!-- v-for="item in dcTypeList"-->
- <!-- :key="item.inspType"-->
- <!-- :label="item.inspName"-->
- <!-- :value="item.inspType">-->
- <!-- </el-option>-->
- <!-- </el-select>-->
- </div>
- <div class="header-middle">{{title}}</div>
- <div class="header-right">
- <div class="hourMs">{{currentTimestap}}</div>
- <div class="timeContent">
- <div class="timeOrWeek times">{{currentTime}}</div>
- <div class="timeOrWeek weeks">{{currentWeek}}</div>
- </div>
- <div class="turnBtn" @click="slideHeader">{{turnName}}</div>
- </div>
- </div>
- <div class="mainContent" id="mainContent">
- <div class="mainContent-left">
- <div class="mainContent-left-top">
- <div class="mainContent-left-top-left">
- <div class="summary-item">
- <div class="summary-item-col">
- <div class="summary-title">
- <img src="../../assets/person.png">
- <div class="summary-text">
- <span class="summary-pointer">人员</span>
- <span class="summary-group">单位:(个)</span>
- </div>
- <!-- <img src="../../assets/right.png">-->
- </div>
- <div class="summary-content">
- <countTo :startVal='0' :endVal='statiscsData.PERSIZE' :duration='2000'></countTo>
- </div>
- </div>
- <div class="summary-item-col">
- <div class="summary-title">
- <img src="../../assets/question.png">
- <div class="summary-text">
- <span class="summary-pointer">问题数</span>
- <span class="summary-group">单位:(个)</span>
- </div>
- <!-- <img src="../../assets/right.png">-->
- </div>
- <div class="summary-content">
- <countTo :startVal='0' :endVal='statiscsData.PBLMSIZE' :duration='2000'></countTo>
- </div>
- </div>
- </div>
- <div class="summary-item">
- <div class="summary-item-col">
- <div class="summary-title">
- <img src="../../assets/group.png">
- <div class="summary-text">
- <span class="summary-pointer">组</span>
- <span class="summary-group">单位:(个)</span>
- </div>
- <!-- <img src="../../assets/right.png">-->
- </div>
- <div class="summary-content">
- <countTo :startVal='0' :endVal='statiscsData.GROUPSIZE' :duration='2000'></countTo>
- </div>
- </div>
- <div class="summary-item-col">
- <div class="summary-title">
- <img src="../../assets/zgnum.png">
- <div class="summary-text">
- <span class="summary-pointer">整改数</span>
- <span class="summary-group">单位:(个)</span>
- </div>
- <!-- <img src="../../assets/right.png">-->
- </div>
- <div class="summary-content">
- <countTo :startVal='0' :endVal='statiscsData.MENDSIZE' :duration='2000'></countTo>
- </div>
- </div>
- </div>
- <div class="summary-item">
- <div class="summary-item-col">
- <div class="summary-title">
- <img src="../../assets/object.png">
- <div class="summary-text">
- <span class="summary-pointer">工程</span>
- <span class="summary-group">单位:(个)</span>
- </div>
- <!-- <img src="../../assets/right.png">-->
- </div>
- <div class="summary-content">
- <countTo :startVal='0' :endVal='statiscsData.OBJSIZE' :duration='2000'></countTo>
- </div>
- </div>
- <div class="summary-item-col">
- <div class="summary-title">
- <img src="../../assets/xhNum.png">
- <div class="summary-text">
- <span class="summary-pointer">销号数</span>
- <span class="summary-group">单位:(个)</span>
- </div>
- <!-- <img src="../../assets/right.png">-->
- </div>
- <div class="summary-content">
- <countTo :startVal='0' :endVal='statiscsData.PBLMLOGSIZE' :duration='2000'></countTo>
- </div>
- </div>
- </div>
- </div>
- <div class="mainContent-left-top-right">
- <div class="shortcutkey">
- <ul>
- <li @click="hrefClick('/queryResults')">成果查询</li>
- <li @click="hrefClick('/inspection_resultTable')">汇总成果</li>
- <li @click="hrefClick('inspection_chart')">汇总统计</li>
- <li @click="hrefClick('/report_jcbg_doc')">稽察报告</li>
- </ul>
- </div>
- <div class="mapEchart" id="chart1"></div>
- </div>
- </div>
- <div class="mainContent-left-bottom">
- <div class="echarts-bottom">
- <div class="echarts-bottom-title"><span>稽察专业分类问题数</span></div>
- <div class="echarts-bottom-content" id="chart2"></div>
- </div>
- <!-- <div class="echarts-bottom">-->
- <!-- <div class="echarts-bottom-title"><span>督查对象区域分布</span></div>-->
- <!-- <div class="echarts-bottom-content" id="chart3"></div>-->
- <!-- </div>-->
- <div class="echarts-bottom">
- <div class="echarts-bottom-title"><span>稽察地市问题分布</span></div>
- <div class="echarts-bottom-content" id="chart4"></div>
- </div>
- <div class="echarts-bottom">
- <div class="echarts-bottom-title"><span>问题等级统计</span></div>
- <div class="echarts-bottom-content" id="chart5"></div>
- </div>
- </div>
- </div>
- <div class="mainContent-right">
- <div class="mainContent-right-top">
- <div class="echarts-bottom-title"><span>通知公告</span></div>
- <div class="echarts-bottom-content tzgg">
- <ul class="cms-news">
- <li v-if="messageList!=null && messageList.length>0" v-for="(item,index) in messageList" @click="showMessage(item)" :title="item.title">{{item.title}}</li>
- </ul>
- </div>
- </div>
- <div class="mainContent-right-bottom">
- <div class="echarts-bottom-title"><span>工程问题详细</span></div>
- <div class="echarts-bottom-content proPblm">
- <ul>
- <li v-if="projectList!=null && projectList.length>0" v-for="(item,index) in projectList" @click="showProPblmDetail(item)"><i class="el-icon-s-opportunity"></i><div :title="item.name">{{item.name?item.name:item.ojbNm}}</div><span>{{formatDateTime(item.intm)}}</span></li>
- </ul>
- </div>
- </div>
- <!-- <div class="mainContent-right-style1">-->
- <!-- <div class="echarts-bottom-title"><span>近期面貌</span></div>-->
- <!-- <div class="echarts-bottom-content" ref="banner">-->
- <!-- <el-carousel :height="bannerHeight" id="nearFace1">-->
- <!-- <el-carousel-item v-if="nearFaceList!=null && nearFaceList.length>0" v-for="(item,index) in nearFaceList" >-->
- <!--<!– <a :href="`${hostUrl}/${item.filePath}`" target="_blank" style="position: relative;display: block;;width: 100%;height:100%;">–>-->
- <!-- <div class="titleCar" :title="item.objName">{{item.objName}}</div>-->
- <!-- <img :src="`${urlReplace(item.filePath)}`" :alt="item.objName" style="width: 100%;height:100%;">-->
- <!--<!– </a>–>-->
- <!-- </el-carousel-item>-->
- <!-- </el-carousel>-->
- <!-- </div>-->
- <!-- </div>-->
- <!-- <div class="mainContent-right-style">-->
- <!-- <div class="echarts-bottom-title"><span>问题图片</span></div>-->
- <!-- <div class="echarts-bottom-content">-->
- <!-- <el-carousel :height="bannerHeight">-->
- <!-- <el-carousel-item v-if="questionImgList!=null && questionImgList.length>0" v-for="(item,index) in questionImgList">-->
- <!-- <a :href="`${hostUrl}/${item.filePath}`" target="_blank"><img :src="`${hostUrl}/${item.filePath}`"></a>-->
- <!-- </el-carousel-item>-->
- <!-- </el-carousel>-->
- <!-- </div>-->
- <!-- </div>-->
- <!-- <div class="mainContent-right-style2">-->
- <!-- <div class="echarts-bottom-title"><span>问题视频</span></div>-->
- <!-- <div class="echarts-bottom-content">-->
- <!-- <el-carousel :height="bannerHeight">-->
- <!-- <el-carousel-item v-if="questionVideoList!=null && questionVideoList.length>0" v-for="(item,index) in questionVideoList">-->
- <!-- <a :href="`${hostUrl}/${item.filePath}`" target="_blank" style="position: relative;display: block;width: 100%;height:100%;">-->
- <!-- <div class="titleCar" :title="item.objName">{{item.objName}}</div>-->
- <!-- <video :src="`${urlReplace(item.filePath)}`" controls="controls" style="width:100%;height:100%;"></video>-->
- <!-- </a>-->
- <!-- </el-carousel-item>-->
- <!-- </el-carousel>-->
- <!-- </div>-->
- <!-- </div>-->
- </div>
- </div>
- <proPblmDetail v-if="proPblmVisible" :proPblmId="proPblmId" :title="proTitle" @closeDialog="closeDialog"></proPblmDetail>
- <showMessage v-if="showMessageVisible" :clctzUrl="clctzUrl" @closeDialog="closeMessageDialog"></showMessage>
- <personList v-if="isShowPersonList" :param="personParam" @closeDialogPerson="closeDialogPerson"></personList>
- <groupList v-if="isShowGroupList" :param="groupParam" @closeDialogGroup="closeDialogGroup"></groupList>
- <objList v-if="isShowObjList" :param="objParam" @closeDialogObj="closeDialogObj"></objList>
- <pblmList v-if="isShowPblmList" :param="pblmParam" @closeDialogPblm="closeDialogPblm"></pblmList>
- </div>
- </template>
- <script>
- import {hostUrl} from '@util/global_variable.js'
- import countTo from 'vue-count-to';
- import Viewer from 'viewerjs';
- import 'viewerjs/dist/viewer.css';
- import echarts from "echarts";
- // import 'echarts-gl';
- import '@util/echarts-gl.min.js';
- import axios from 'axios' //引入axios
- import request from "@util/gw_ajax_request.js";
- import {formatDate,formatDateTimstamp} from "@util/gw_date.js"
- import proPblmDetail from "./proPblmDetail"
- import showMessage from "./showMessage"
- import personList from "./personList_jc";
- import groupList from "./groupList_jc";
- import objList from "./objList_jc";
- import pblmList from "./pblmList_jc";
- import {
- getMessage,
- getJcPblmCount,
- getYear,
- getBatch,
- getJcData,
- getJcTotalData,
- getTopTacPblm,
- getQuestionImgList,
- getTopTacPblmvideo,
- getJcDataProject
- } from "../../api/homeMainView.js";
- export default {
- components: {
- countTo,
- proPblmDetail,
- showMessage,
- personList,
- groupList,
- objList,
- pblmList
- },
- props: [],
- data() {
- //这里存放数据
- return {
- currentHeight:window.innerHeight,
- title:"福建水利监管可视化",
- turnvalue:"0",
- fullvalue:"0",
- turnName:"全屏",
- selectDate:new Date().getFullYear().toString(),
- selectDateName:new Date().getFullYear().toString(),
- isDateVisible:false,
- selectBatch:"",
- selectBatchName:"全部",
- isBatchVisible:false,
- iconDown:"el-icon-arrow-down myselect",
- iconUp:"el-icon-arrow-up myselect",
- iconBatch:"el-icon-arrow-down myselect",
- iconDate:"el-icon-arrow-down myselect",
- chart1:null,
- chart2:null,
- // chart3:null,
- chart4:null,
- chart5:null,
- currentTimestap:"",
- currentWeek:"",
- currentTime:"",
- //督察类别
- batchList:[],
- yearList:[],
- //统计看板数据
- statiscsData:{
- GROUPSIZE: 0,//组
- MENDSIZE: 0,//整改
- OBJSIZE: 0,//工程
- PBLMLOGSIZE: 0,//归档数
- PBLMSIZE: 0,//问题数
- PERSIZE: 0//人员个数
- },
- //地图数据
- chartMapData:{
- mapPercent:[],
- geoCoordMap:{},
- geoCoordMapList:[],
- },
- //督察类别数量
- chartDcTypeData:{
- count:0,
- dataList:[]
- },
- chartObjData:{
- xData:[],
- dataList:[]
- },
- chartPblmData:{
- xData:[],
- dataList:[]
- },
- chartMendPblmData:{
- xData:[],
- dataList:[]
- },
- chartPblmTypeData:{
- info:0,
- warn:0,
- fatal:0,
- error:0
- },
- messageList:[],
- bannerList:[],
- bannerHeight:"0",
- addvcdList:[],
- adCode:"",
- adName:"",
- nearFaceList:[],
- questionImgList:[],
- questionVideoList:[],
- timerData:null,
- proPblmVisible:false,
- proPblmId:"",
- projectList:[],
- proTitle:"",
- adCode:"",
- showMessageVisible:false,
- clctzUrl:"",
- personParam:{},
- isShowPersonList:false,
- groupParam:{},
- isShowGroupList:false,
- isShowObjList:false,
- objParam:{},
- isShowPblmList:false,
- pblmParam:{}
- }
- },
- //监听属性 类似于data概念
- computed: {
- formatDateTime() {
- return formatDateTimstamp
- },
- hostUrl(){
- return hostUrl
- },
- organNm() {
- return localStorage.getItem('currentOrgNm') ? localStorage.getItem('currentOrgNm') : ''
- },
- organCode() {
- return localStorage.getItem('currentRlcode') ? localStorage.getItem('currentRlcode') : ''
- },
- currentOrgId() {
- return localStorage.getItem('currentOrgId') ? localStorage.getItem('currentOrgId') : ''
- },
- },
- //监控data中的数据变化
- watch: {
- },
- //生命周期 - 创建完成(可以访问当前this实例)
- created() {
- this.initYear();
- this.initBatch();
- let currentOrgId = localStorage.getItem("currentOrgId")
- if(currentOrgId == '041'){
- this.title = '水利稽察'
- }else if(this.organCode.indexOf("33")>-1){
- this.title = localStorage.getItem("currentOrgNm")+'水利稽察数字化应用'
- }else if(localStorage.getItem('currentRlcode').substring(0,2)=='37'){
- this.title = '山东省水利稽察信息系统'
- }else if(currentOrgId == '055'){
- this.title = '海南水务稽察平台'
- }else if (localStorage.getItem('currentRlcode').substring(0,2)=='44') {
- this.title = '广东省水利稽察'
- }else{
- this.title = localStorage.getItem("currentOrgNm")+'水利稽察'
- }
- },
- //生命周期 - 挂载完成(可以访问DOM元素)
- mounted() {
- var _self = this;
- document.addEventListener('click',function(e){
- if(e.target.className!='myselect'){
- _self.isDateVisible = false;
- _self.isBatchVisible = false;
- _self.iconDate = _self.iconDown;
- _self.iconBatch = _self.iconDown;
- }
- })
- setInterval(function(){ _self.myTimer() }, 1000);
- this.initStatiscsData(null);
- this.initData();
- this.initData1();
- this.initMessage();
- this.getProjectList(null);
- // this.initNearFace(this.organCode);
- // this.initQuestionImg(this.organCode);
- // this.initQuestionVideo(this.organCode);
- this.$nextTick(function () {
- // var height= this.$refs.banner.offsetHeight;
- // this.bannerHeight = height+"px";
- var _self = this;
- window.onresize = function() {
- // var height= _self.$refs.banner.offsetHeight;
- // _self.bannerHeight = height+"px";
- _self.resizeCharts();
- }
- });
- this.timerData = setInterval(this.IntervalData, 600000);
- },
- //方法集合
- methods: {
- closeDialogPerson(){
- this.isShowPersonList = false;
- this.personParam = {};
- },
- closeDialogGroup(){
- this.isShowGroupList = false;
- this.groupParam = {};
- },
- closeDialogObj(){
- this.isShowObjList = false;
- this.objParam = {};
- },
- closeDialogPblm(){
- this.isShowPblmList = false;
- this.pblmParam = {};
- },
- showPerson(){
- this.isShowPersonList = true;
- this.personParam["year"] = this.selectDate;
- this.personParam["batch"] = this.selectBatch;
- this.personParam["adCode"] = this.adCode;
- },
- showGroup(){
- this.isShowGroupList = true;
- this.groupParam["year"] = this.selectDate;
- this.groupParam["batch"] = this.selectBatch;
- this.groupParam["adCode"] = this.adCode;
- },
- showObj(){
- this.isShowObjList = true;
- this.objParam["year"] = this.selectDate;
- this.objParam["batch"] = this.selectBatch;
- this.objParam["adCode"] = this.adCode;
- },
- showPblm(){
- this.isShowPblmList = true;
- this.pblmParam["year"] = this.currentCode;
- this.pblmParam["batch"] = this.selectDate;
- this.pblmParam["adCode"] = this.selectType;
- },
- hrefClick(path){
- this.$router.push({
- path: path,
- query:{
- date:this.selectDate,
- batch:this.selectBatch,
- adCode:this.adCode
- }
- });
- },
- getProjectList(adCode){
- this.projectList = [];
- var params = {
- year:this.selectDate,
- batch:this.selectBatch,
- adCode:adCode
- }
- request.post(`/tac/insp/year/batch/obj/getObjPage`,params).then(res=>{
- if(res.success){
- this.loading = false
- this.projectList = res.data.list
- }else{
- this.loading = false
- this.$message.error(res.message)
- }
- }).catch(err=>{
- this.$message.error(err)
- })
- },
- closeDialog(){
- this.proPblmVisible = false;
- this.proPblmId = "";
- },
- closeMessageDialog(){
- this.showMessageVisible = false;
- },
- showProPblmDetail(item){
- this.proPblmVisible = true;
- this.proPblmId = item.id;
- this.proTitle = item.name?item.name:item.ojbNm;
- },
- showMessage(item) {
- if(item.clcUrl){
- this.clctzUrl=this.hostUrl + item.clcUrl;
- this.showMessageVisible=true;
- }
- },
- urlReplace(d){
- return this.hostUrl;
- },
- showHideDate(){
- this.isDateVisible = !this.isDateVisible;
- this.iconDate = (this.iconDate==this.iconDown?this.iconUp:this.iconDown);
- },
- showHideType(){
- this.isBatchVisible = !this.isBatchVisible;
- this.iconBatch = (this.iconBatch==this.iconDown?this.iconUp:this.iconDown);
- },
- IntervalData(){
- this.initStatiscsData(null);
- this.initData();
- this.initData1();
- this.initMessage();
- this.initNearFace(this.organCode);
- this.initQuestionImg(this.organCode);
- this.initQuestionVideo(this.organCode);
- },
- resizeCharts(){
- this.chart1.resize();
- this.chart2.resize();
- // this.chart3.resize();
- this.chart4.resize();
- this.chart5.resize();
- },
- initMessage(){
- var _self = this;
- getMessage({pageNum:1,pageSize:10,app:"2"}).then((res) => {
- _self.messageList = res.data.list;
- });
- },
- initNearFace(adCode){
- var _self = this;
- getTopTacPblm(adCode).then((res) => {
- _self.nearFaceList = res.data;
- _self.$nextTick(function(){
- var ViewerDom = document.getElementById('nearFace1');
- var viewer = new Viewer(ViewerDom, {
- })
- });
- });
- },
- initQuestionImg(adCode){
- var _self = this;
- getQuestionImgList(adCode,this.selectBatch).then((res) => {
- _self.questionImgList = res.data;
- });
- },
- initQuestionVideo(adCode){
- var _self = this;
- getTopTacPblmvideo(adCode).then((res) => {
- _self.questionVideoList = res.data;
- });
- },
- dateChange(name,value){
- this.selectDate = value;
- this.selectDateName = name;
- this.iconDate = this.iconDown;
- this.isDateVisible = false;
- this.initBatch();
- this.initData();
- this.initData1();
- this.initStatiscsData(null);
- this.getProjectList(null);
- this.adCode = "";
- },
- batchChange(name,value){
- this.selectBatch = (value=="全部"?"":value);
- this.selectBatchName = value=="全部"?"全部":(value+" "+"("+name+")");
- this.iconBatch = this.iconDown;
- this.isBatchVisible = false;
- this.initData();
- this.initData1();
- this.initStatiscsData(null);
- this.getProjectList(null);
- this.adCode = "";
- // this.initNearFace(this.organCode);
- // this.initQuestionImg(this.organCode);
- // this.initQuestionVideo(this.organCode);
- },
- toVal(val){
- if(val!=null && val!=""){
- return val.toFixed(2)
- }
- return 0;
- },
- initData(){
- var _self = this;
- _self.chartPblmTypeData.info = 0;
- _self.chartPblmTypeData.warn = 0;
- _self.chartPblmTypeData.fatal = 0;
- _self.chartPblmTypeData.error = 0;
- _self.chartObjData.xData = [];
- _self.chartObjData.dataList = [];
- _self.chartPblmData.xData = [];
- _self.chartPblmData.dataList = [];
- _self.chartMendPblmData.xData = [];
- _self.chartMendPblmData.dataList = [];
- _self.chartMapData.mapPercent = [];
- _self.chartMapData.geoCoordMap = [];
- _self.chartMapData.geoCoordMapList = [];
- _self.addvcdList = [];
- getJcData({year:_self.selectDate,batch:_self.selectBatch,objType:"008"}).then((res) => {
- if(res.data!=null && res.data.length>0){
- for(var i = 0;i<res.data.length;i++){
- if(res.data[i].adName!="合计"){
- _self.chartObjData.xData.push(res.data[i].adName);
- _self.chartObjData.dataList.push(res.data[i].objSize);
- _self.chartPblmData.xData.push(res.data[i].adName);
- _self.chartPblmData.dataList.push(res.data[i].pblmSize);
- _self.chartMendPblmData.xData.push(res.data[i].adName);
- _self.chartMendPblmData.dataList.push(res.data[i].mendSize);
- var obj = {
- name:res.data[i].adName,
- value:_self.toVal(res.data[i].mendSizeRant)
- }
- _self.addvcdList.push({
- name:res.data[i].adName,
- value:res.data[i].adCode,
- });
- _self.chartMapData.mapPercent.push(obj);
- _self.chartMapData.geoCoordMap[res.data[i].adName] = [res.data[i].lgtd,res.data[i].lttd];
- _self.chartMapData.geoCoordMapList.push({
- name:res.data[i].adName,
- value:res.data[i].pblmSize
- });
- }else{
- _self.chartPblmTypeData.info = res.data[i].infoPlbm;
- _self.chartPblmTypeData.warn = res.data[i].warmPlbm;
- _self.chartPblmTypeData.fatal = res.data[i].errorPlbm;
- _self.chartPblmTypeData.error = res.data[i].errorsPlbm;
- }
- }
- }
- _self.initChart1();
- // _self.initChart3();
- _self.initChart4();
- _self.initChart5();
- });
- },
- initDataCity(adCode){
- var _self = this;
- _self.chartPblmTypeData.info = 0;
- _self.chartPblmTypeData.warn = 0;
- _self.chartPblmTypeData.fatal = 0;
- _self.chartPblmTypeData.error = 0;
- _self.chartObjData.xData = [];
- _self.chartObjData.dataList = [];
- getJcData({year:_self.selectDate,batch:_self.selectBatch,adCode:adCode,objType:"008"}).then((res) => {
- if(res.data!=null && res.data.length>0){
- for(var i = 0;i<res.data.length;i++){
- if(res.data[i].adName!="合计"){
- _self.chartObjData.xData.push(res.data[i].adName);
- _self.chartObjData.dataList.push(res.data[i].objSize);
- }else{
- _self.chartPblmTypeData.info = res.data[i].infoPlbm;
- _self.chartPblmTypeData.warn = res.data[i].warmPlbm;
- _self.chartPblmTypeData.fatal = res.data[i].errorPlbm;
- _self.chartPblmTypeData.error = res.data[i].errorsPlbm;
- }
- }
- }
- // _self.initChart3();
- // _self.initChart4();
- _self.initChart5();
- });
- },
- getDataProjectPblm(adCode){
- var _self = this;
- _self.chartPblmData.xData = [];
- _self.chartPblmData.dataList = [];
- _self.chartMendPblmData.xData = [];
- _self.chartMendPblmData.dataList = [];
- getJcDataProject({year:_self.selectDate,batch:_self.selectBatch,adCode:adCode,objType:"008"}).then((res) => {
- if(res.data!=null && res.data.length>0){
- for(var i = 0;i<res.data.length;i++){
- if(res.data[i].name!="合计"){
- _self.chartPblmData.xData.push(res.data[i].name);
- _self.chartPblmData.dataList.push(res.data[i].count);
- _self.chartMendPblmData.xData.push(res.data[i].name);
- _self.chartMendPblmData.dataList.push(res.data[i].mendSize==undefined?0:res.data[i].mendSize);
- }
- }
- }
- // _self.initChart3();
- _self.initChart4();
- });
- },
- initData1(){
- var _self = this;
- _self.chartDcTypeData.dataList = [];
- _self.chartDcTypeData.count = 0;
- getJcPblmCount(_self.selectDate,_self.selectBatch,_self.organCode).then((res) => {
- if(res.data!=null && res.data.length>0){
- for(var i = 0;i<res.data.length;i++){
- var obj = {
- name: res.data[i].NAME+""+res.data[i].VALUE+"个",
- value: res.data[i].VALUE
- }
- _self.chartDcTypeData.dataList.push(obj);
- _self.chartDcTypeData.count+=res.data[i].VALUE;
- }
- }
- _self.initChart2();
- });
- },
- initData1City(adCode){
- var _self = this;
- _self.chartDcTypeData.dataList = [];
- _self.chartDcTypeData.count = 0;
- getJcPblmCount(_self.selectDate,_self.selectBatch,adCode).then((res) => {
- if(res.data!=null && res.data.length>0){
- for(var i = 0;i<res.data.length;i++){
- var obj = {
- name: res.data[i].NAME+""+res.data[i].VALUE+"个",
- value: res.data[i].VALUE
- }
- _self.chartDcTypeData.dataList.push(obj);
- _self.chartDcTypeData.count+=res.data[i].VALUE;
- }
- }
- _self.initChart2();
- });
- },
- initStatiscsData(adCode){
- var _self = this;
- var obj = {
- year:_self.selectDate,
- batch:_self.selectBatch,
- adCode:adCode
- }
- _self.statiscsData = {
- GROUPSIZE: 0,//组
- MENDSIZE: 0,//整改
- OBJSIZE: 0,//工程
- PBLMLOGSIZE: 0,//归档数
- PBLMSIZE: 0,//问题数
- PERSIZE: 0//人员个数
- }
- getJcTotalData(obj).then((res) => {
- if(res.data!=null){
- _self.statiscsData.GROUPSIZE = parseInt(res.data.GROUPSIZE==null?0:res.data.GROUPSIZE);
- _self.statiscsData.MENDSIZE = parseInt(res.data.MENDSIZE==null?0:res.data.MENDSIZE);
- _self.statiscsData.OBJSIZE = parseInt(res.data.OBJSIZE==null?0:res.data.OBJSIZE);
- _self.statiscsData.PBLMLOGSIZE = parseInt(res.data.PBLMLOGSIZE==null?0:res.data.PBLMLOGSIZE);
- _self.statiscsData.PBLMSIZE = parseInt(res.data.PBLMSIZE==null?0:res.data.PBLMSIZE);
- _self.statiscsData.PERSIZE = parseInt(res.data.PERSIZE==null?0:res.data.PERSIZE);
- }
- });
- },
- initYear(){
- var _self = this;
- _self.yearList = [];
- getYear().then((res) => {
- if(res.data!=null && res.data.length>0){
- _self.yearList = res.data;
- }
- });
- },
- initBatch(){
- var _self = this;
- _self.batchList = [];
- // getBatch().then((res) => {
- // if(res.data!=null && res.data.length>0){
- // _self.batchList = res.data;
- // _self.batchList.push({batch:"全部",id:""})
- // }
- // });
- var params = {
- year:this.selectDate,
- }
- request.post(`/tac/insp/year/batch/area/areasListByBatch`,params).then(res=>{
- if(res.success){
- if(res.data!=null && res.data.length>0){
- _self.batchList = res.data;
- }
- _self.batchList.push({batch:"全部",adName:""})
- }else{
- }
- })
- },
- slideHeader(){
- if(this.turnvalue=='0'){
- var docElm = document.documentElement;
- //W3C
- if(docElm.requestFullscreen) {
- docElm.requestFullscreen();
- }
- //FireFox
- else if(docElm.mozRequestFullScreen) {
- docElm.mozRequestFullScreen();
- }
- //Chrome等
- else if(docElm.webkitRequestFullScreen) {
- docElm.webkitRequestFullScreen();
- }
- //IE11
- else if(docElm.msRequestFullscreen) {
- docElm.msRequestFullscreen();
- }
- document.getElementById("mainBox").style.height = window.screen.height+"px";
- this.turnvalue = "1";
- this.turnName = "收缩";
- this.$emit('turnHandle',"1");
- this.resizeCharts();
- }else{
- this.$nextTick(function () {
- // //W3C
- if (document.exitFullscreen) {
- document.exitFullscreen();
- }
- //FireFox
- else if (document.mozCancelFullScreen) {
- document.mozCancelFullScreen();
- }
- //Chrome等
- else if (document.webkitCancelFullScreen) {
- document.webkitCancelFullScreen();
- }
- //IE11
- else if (document.msExitFullscreen) {
- document.msExitFullscreen();
- }
- })
- document.getElementById("mainBox").style.height = (this.currentHeight-86)+"px";
- this.turnvalue = "0";
- this.$emit('turnHandle',"0");
- this.turnName = "全屏";
- }
- },
- initAddVcdFeatures(){
- let geoJsonName = this.organCode.substr(0, 6) + ".json";
- return axios.get('/src/assets/addvGeoData/' + geoJsonName);
- },
- async initChart1() {
- var _self = this;
- var convertData = function () {
- var res = [];
- for (var i = 0; i < _self.chartMapData.geoCoordMapList.length; i++) {
- var geoCoord = _self.chartMapData.geoCoordMap[_self.chartMapData.geoCoordMapList[i].name];
- if (geoCoord) {
- res.push({
- name: _self.chartMapData.geoCoordMapList[i].name,
- value: geoCoord.concat(_self.chartMapData.geoCoordMapList[i].value)
- });
- }
- }
- return res;
- };
- this.chart1 = echarts.init(document.getElementById('chart1'));
- var jsonAddvcd = await this.initAddVcdFeatures();
- echarts.registerMap(this.organNm, jsonAddvcd.data);
- let option = {
- title:{
- text:this.organCode.substr(0, 2)=="66"?'各师问题数量分布':'各市问题数量分布',
- left:'center',
- padding: 20,
- textStyle:{
- color:'rgb(62,215,213)',
- }
- },
- tooltip: {
- trigger: 'axis',
- },
- geo3D: {
- map: this.organNm,
- show: true,
- zlevel: 15,
- boxWidth:80,
- boxHeight:30,
- label: {
- show:true,
- formatter:function(params){
- var content='',
- content=params.name;
- return content;
- },
- distance:0,
- textStyle:{
- color:'#ffffff',
- fontWeight : 'bold',
- fontSize :17,
- backgroundColor: 'rgba(255,255,255,0)'
- },
- },
- viewControl: { // 用于鼠标的旋转,缩放等视角控制。
- distance: 100, // [ default: 100 ] 默认视角距离主体的距离,对于 grid3D 和 geo3D 等其它组件来说是距离中心原点的距离,对于 globe 来说是距离地球表面的距离。在 projection 为'perspective'的时候有效。
- minDistance: 40, // [ default: 40 ] 视角通过鼠标控制能拉近到主体的最小距离。在 projection 为'perspective'的时候有效。
- maxDistance: 400, // [ default: 400 ] 视角通过鼠标控制能拉远到主体的最大距离。在 projection 为'perspective'的时候有效。
- alpha: 40, // 视角绕 x 轴,即上下旋转的角度。配合 beta 可以控制视角的方向。[ default: 40 ]
- beta: 15, // 视角绕 y 轴,即左右旋转的角度。[ default: 0 ]
- minAlpha: -360, // 上下旋转的最小 alpha 值。即视角能旋转到达最上面的角度。[ default: 5 ]
- maxAlpha: 360, // 上下旋转的最大 alpha 值。即视角能旋转到达最下面的角度。[ default: 90 ]
- minBeta: -360, // 左右旋转的最小 beta 值。即视角能旋转到达最左的角度。[ default: -80 ]
- maxBeta: 360, // 左右旋转的最大 beta 值。即视角能旋转到达最右的角度。[ default: 80 ]
- center: [0,0,0], // 视角中心点,旋转也会围绕这个中心点旋转,默认为[0,0,0]。
- animation: true, // 是否开启动画。[ default: true ]
- animationDurationUpdate: 1000, // 过渡动画的时长。[ default: 1000 ]
- animationEasingUpdate: 'cubicInOut' // 过渡动画的缓动效果。[ default: cubicInOut ]
- },
- light: {
- main: {
- shadow: true,
- shadowQuality: 'ultra',
- },
- },
- //地面的背景颜色
- groundPlane: {
- show: true,
- color:'transparent'
- },
- //特效设置
- postEffect: {
- enable:false
- },
- itemStyle: {
- areaColor: '#1b4474',
- color:'#1b4474',
- borderColor: 'rgb(62,215,213)',
- borderWidth: 1
- },
- //鼠标 hover 高亮时图形和标签的样式
- emphasis:{
- label:{
- show:true,
- distance:10
- },
- itemStyle: {
- color:'#15244a',
- }
- }
- },
- series: [
- {
- type: 'bar3D',
- coordinateSystem: 'geo3D',
- zlevel: 1,
- barSize: 0.5,
- shading: 'lambert',
- itemStyle: {
- color: '#c2f151'
- },
- label: {
- show: true,
- position: 'top',
- textStyle: {
- color: '#c2f151',
- backgroundColor: 'transparent'
- },
- formatter: function(params) {
- return params.value[2]
- }
- },
- data:convertData()
- }
- ]
- };
- this.chart1.clear()
- this.chart1.setOption(option);
- var _self = this;
- this.chart1.on('click', function (params) {
- if(params.name!=_self.adName){
- _self.adName = params.name;
- for(var i = 0;i<_self.addvcdList.length;i++){
- if(_self.addvcdList[i].name==params.name){
- _self.initDataCity(_self.addvcdList[i].value);
- _self.initData1City(_self.addvcdList[i].value);
- _self.initNearFace(_self.addvcdList[i].value);
- _self.initQuestionImg(_self.addvcdList[i].value);
- _self.initQuestionVideo(_self.addvcdList[i].value);
- _self.getProjectList(_self.addvcdList[i].value);
- _self.getDataProjectPblm(_self.addvcdList[i].value);
- _self.initStatiscsData(_self.addvcdList[i].value);
- _self.adCode = _self.addvcdList[i].value
- }
- }
- }
- });
- },
- myTimer(){
- var d = new Date();
- this.currentTimestap = (d.getHours()<=9?'0'+d.getHours():d.getHours())+":"+(d.getMinutes()<=9?'0'+d.getMinutes():d.getMinutes())+":"+(d.getSeconds()<=9?'0'+d.getSeconds():d.getSeconds());
- this.currentTime = d.getFullYear()+"/"+(d.getMonth()+1)+"/"+d.getDate();
- var weeks = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
- this.currentWeek = weeks[d.getDay()];
- },
- initChart2(){
- this.chart2 = echarts.init(document.getElementById('chart2'));
- var option = {
- tooltip: {
- trigger: 'axis',
- },
- title: {
- text: this.chartDcTypeData.count,
- textStyle: {
- color: '#ffffff',
- fontSize: 14
- },
- subtext: '问题总数',
- subtextStyle: {
- color: '#ffffff',
- fontSize: 14
- },
- itemGap: 10,
- left: '13%',
- top: '40%'
- },
- // color: ['#2872ea','#95ff2b','#01dc8a','#02f5e9'],
- color:[
- '#2872ea','#95ff2b','#01dc8a','#02f5e9',
- '#3593ff', '#5587d3', '#679ccd', '#41afff', '#40e0d0',
- '#4b3eff', '#0cffd5', '#afeea7', '#05d089', '#ffd700',
- '#6c8e37', '#4ea397', '#3cb371', '#6db8a9', '#7bd9a5',
- '#15a7ff', '#9de0ff', '#9da7ff', '#4cbbfe', '#7dc3fe',
- '#1658bb', '#433e7c', '#11ddf4', '#009db2', '#024b51',
- '#0d61cf', '#127619', '#e7be36', '#26ccd8', '#3685fe',
- '#4065ef', '#5160f5', '#f7b13f', '#f9e264', '#50c48f'
- ],
- tooltip: {
- trigger: "item",
- formatter: "{b}"
- },
- legend: {
- selectedMode:false,
- type: 'scroll',
- orient:'vertical',
- icon: 'circle', //图例形状
- top:'15%',
- bottom:'15%',
- left:'55%',
- itemWidth: 10, // 图例标记的图形宽度。[ default: 25 ]
- itemHeight: 10, // 图例标记的图形高度。[ default: 14 ]
- itemGap: 10, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
- textStyle: {
- fontSize: 14,
- color: '#ffffff',
- },
- pageButtonPosition:'start',
- pageIconColor: '#31586C', //翻页下一页的三角按钮颜色
- pageIconInactiveColor: '#31586C', //翻页(即翻页到头时)
- pageIconSize: 10, //翻页按钮大小
- pageFormatter: '',//隐藏翻页的数字
- pageButtonItemGap: -6,//翻页按钮的两个之间的间距
- label: {
- normal: {
- show: true,
- position: 'inner',
- formatter: function (name) {
- return (name.length > 8 ? (name.slice(0, 8) + "...") : name);
- },
- fontSize: 12
- }
- }
- },
- series: [{
- type: "pie",
- data: this.chartDcTypeData.dataList,
- radius: ['45%', '52%'],
- center: ["20%", "50%"],
- labelLine: {
- show: false
- },
- label:{
- show: false
- }
- }]
- };
- this.chart2.clear();
- this.chart2.setOption(option);
- },
- // initChart3(){
- // this.chart3 = echarts.init(document.getElementById('chart3'));
- // var option= {
- // tooltip: {
- // trigger: 'axis',
- // },
- // grid: {
- // top: '20%',
- // left: '7%',
- // right: '2%',
- // bottom: '10%',
- // containLabel: true
- // },
- // dataZoom: [{
- // borderColor:'#3e7b92',
- // backgroundColor:'rgba(108,217,255,0)', //组件的背景
- // type: 'slider', //图表下方的伸缩条
- // show: true, //是否显示
- // height:8,
- // realtime: true, //拖动时,是否实时更新系列的视图
- // start: 0, //伸缩条开始位置(1-100),可以随时更改
- // end: 99, //伸缩条结束位置(1-100),可以随时更改
- // bottom:"5",
- // textStyle:{
- // color:'#31586C'
- // }
- // }],
- // // legend: {
- // // data: ['未督察','已督察'],
- // // right: "3%",
- // // top:"4%",
- // // textStyle: {
- // // color: "#AAE0FC",
- // // fontSize: 12
- // // },
- // // itemWidth: 5, // 设置宽度
- // // itemHeight:10, // 设置高度
- // // itemGap: 10 // 设置间距
- // // },
- // xAxis: [{
- // data: this.chartObjData.xData,
- // axisLabel: {
- // margin: 10,
- // color: '#437d9b',
- // textStyle: {
- // fontSize: 12
- // },
- // },
- // axisLine: {
- // lineStyle: {
- // color: '#437d9b',
- // }
- // },
- // axisTick: {
- // show: false
- // },
- // }],
- // yAxis: [{
- // name:"督察对象/个",
- // type:'value',
- // axisLabel: {
- // color: '#437d9b',
- // textStyle: {
- // fontSize: 12
- // },
- // },
- // axisLine: {
- // show:true,
- // lineStyle:{
- // color:'#437d9b' //更改坐标轴颜色
- // }
- // },
- // axisTick: {
- // show: false
- // },
- // splitLine: {
- // lineStyle: {
- // color: '#31586C',
- // }
- // }
- // }],
- // series: [
- // {
- // name: "对象数",
- // type: 'bar',
- // data: this.chartObjData.dataList,
- // barWidth: '8px',
- // itemStyle: {
- // normal: {
- // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
- // offset: 0,
- // color: '#72FAFE' // 0% 处的颜色
- // }, {
- // offset: 1,
- // color: '#04BEFE' // 100% 处的颜色
- // }], false)
- // }
- // },
- // }
- // // ,{
- // // name: "已督察",
- // // type: 'bar',
- // // data: getlkrs,
- // // barWidth: '8px',
- // // itemStyle: {
- // // normal: {
- // // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
- // // offset: 0,
- // // color: '#06DD8D' // 0% 处的颜色
- // // }, {
- // // offset: 1,
- // // color: '#78FFCF' // 100% 处的颜色
- // // }], false)
- // // }
- // // },
- // // }
- // ]
- // }
- // this.chart3.clear();
- // this.chart3.setOption(option);
- // },
- initChart4(){
- this.chart4 = echarts.init(document.getElementById('chart4'));
- var option= {
- tooltip: {
- trigger: 'axis',
- },
- grid: {
- top: '20%',
- left: '0%',
- right: '0%',
- bottom: '10%',
- containLabel: true
- },
- dataZoom: [{
- borderColor:'#3e7b92',
- backgroundColor:'rgba(107,219,255,0)', //组件的背景
- type: 'slider', //图表下方的伸缩条
- show: true, //是否显示
- height:12,
- realtime: true, //拖动时,是否实时更新系列的视图
- start: 0, //伸缩条开始位置(1-100),可以随时更改
- end: 99, //伸缩条结束位置(1-100),可以随时更改
- bottom:"5",
- textStyle:{
- color:'#ffffff'
- }
- }],
- xAxis: [{
- data:this.chartPblmData.xData,
- axisLabel: {
- margin: 10,
- color: '#ffffff',
- textStyle: {
- fontSize: 16
- },
- },
- axisLine: {
- lineStyle: {
- color: '#437d9b',
- }
- },
- axisTick: {
- show: false
- },
- }],
- yAxis: [{
- name:"问题/个",
- type:'value',
- nameTextStyle:{
- color:"#ffffff",
- fontSize:16,
- },
- axisLabel: {
- color: '#ffffff',
- textStyle: {
- fontSize: 16
- },
- },
- axisLine: {
- show:true,
- lineStyle:{
- color:'#437d9b', //更改坐标轴颜色
- }
- },
- axisTick: {
- show: false
- },
- splitLine: {
- lineStyle: {
- color: '#31586C',
- }
- }
- }],
- series: [
- {
- name: "问题数",
- type: 'bar',
- data: this.chartPblmData.dataList,
- barWidth: '12px',
- itemStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
- offset: 0,
- color: '#72FAFE' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#04BEFE' // 100% 处的颜色
- }], false)
- }
- }
- },
- {
- name: "整改数",
- type: 'bar',
- data: this.chartMendPblmData.dataList,
- barWidth: '12px',
- itemStyle: {
- normal: {
- color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
- offset: 0,
- color: '#72fefb' // 0% 处的颜色
- }, {
- offset: 1,
- color: '#98cdfe' // 100% 处的颜色
- }], false)
- }
- }
- }
- ]
- }
- this.chart4.clear();
- this.chart4.setOption(option);
- },
- initChart5(){
- this.chart5 = echarts.init(document.getElementById('chart5'));
- // var data = [
- // {
- // name: "一般问题"+this.chartPblmTypeData.info+"(个)",
- // value: this.chartPblmTypeData.info
- // },
- // {
- // name: "较严重问题"+this.chartPblmTypeData.warn+"(个)",
- // value: this.chartPblmTypeData.warn
- // },
- // {
- // name: "严重问题"+this.chartPblmTypeData.fatal+"(个)",
- // value: this.chartPblmTypeData.fatal
- // },
- // {
- // name: "特别严重问题"+this.chartPblmTypeData.error+"(个)",
- // value: this.chartPblmTypeData.error
- // }
- // ];
- // var sumValue = this.chartPblmTypeData.info+this.chartPblmTypeData.warn+this.chartPblmTypeData.fatal+this.chartPblmTypeData.error;
- // var optionData = {
- // series: [],
- // yAxis: []
- // };
- // for (let i = 0; i < data.length; i++) {
- // optionData.series.push({
- // name: '个数',
- // type: 'pie',
- // clockWise: true,
- // z: 2,
- // hoverAnimation: false,
- // radius: [83 - i * 15 + '%', 77 - i * 15 + '%'],
- // center: ["50%", "55%"],
- // label: {
- // show: true,
- // formatter: '{d}%',
- // color: 'RGB(246,175,101)',
- // fontSize: 10,
- // position: 'inside'
- // },
- // labelLine: {
- // show: false
- // },
- // data: [{
- // value: data[i].value,
- // name: data[i].name
- // }, {
- // value: sumValue - data[i].value,
- // name: '',
- // itemStyle: {
- // color: "rgba(0,0,0,0)",
- // borderWidth: 0
- // },
- // tooltip: {
- // show: false
- // },
- // label: {
- // show: false
- // },
- // hoverAnimation: false
- // }]
- // });
- // optionData.series.push({
- // name: '背景线',
- // type: 'pie',
- // silent: true,
- // z: 1,
- // clockWise: true,
- // hoverAnimation: false,
- // radius: [81 - i * 15 + '%', 79 - i * 15 + '%'],
- // center: ["50%", "55%"],
- // label: {
- // show: false
- // },
- // itemStyle: {
- // label: {
- // show: false,
- // },
- // labelLine: {
- // show: false
- // },
- // borderWidth: 5,
- // },
- // data: [{
- // value: 100,
- // itemStyle: {
- // color: "#003a5c",
- // borderWidth: 0
- // },
- // tooltip: {
- // show: false
- // },
- // hoverAnimation: false
- // }]
- // });
- // optionData.yAxis.push(data[i].name);
- // }
- // var option = {
- // color: [{
- // type: 'linear',
- // x: 0,
- // y: 0,
- // x2: 1,
- // y2: 1,
- // colorStops: [{
- // offset: 0,
- // color: '#00385e'
- // }, {
- // offset: 1,
- // color: 'rgba(1,232,254,1)'
- // }],
- // global: false
- // }],
- // grid: {
- // top: '10%',
- // bottom: '54%',
- // left: "50%",
- // containLabel: false
- // },
- // yAxis: [{
- // type: 'category',
- // inverse: true,
- // z: 3,
- // axisLine: {
- // show: false
- // },
- // axisTick: {
- // show: false
- // },
- // axisLabel: {
- // interval: 0,
- // inside: false,
- // textStyle: {
- // color: "#437d9b",
- // fontSize: 12,
- // },
- // show: true
- // },
- // data: optionData.yAxis
- // }],
- // xAxis: [{
- // show: false
- // }],
- // series: optionData.series
- // };
- // var option = {
- // tooltip: {
- // trigger: 'item'
- // },
- // legend: {
- // orient:'vertical',
- // icon: 'circle', //图例形状
- // bottom:'20%',
- // right:'3%',
- // itemWidth: 10, // 图例标记的图形宽度。[ default: 25 ]
- // itemHeight: 10, // 图例标记的图形高度。[ default: 14 ]
- // itemGap: 10, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
- // textStyle: {
- // fontSize: 12,
- // color: '#66FBF9',
- // }
- // },
- // series: [
- // {
- // name:'问题严重程度',
- // type:'funnel',
- // left: '5%',
- // width: '50%',
- // minSize: '0%',
- // maxSize: '100%',
- // sort: 'ascending',
- // top:20,
- // bottom:20,
- // label: {
- // show:false,
- // position: 'inside'
- // },
- // itemStyle: {
- // borderColor: '#fff',
- // borderWidth: 1
- // },
- // emphasis: {
- // label: {
- // show:false,
- // fontSize: 20
- // }
- // },
- // data: [
- // {value:this.chartPblmTypeData.info, name: '一般问题',itemStyle:{normal:{color:'#95ff2b'}}},
- // {value:this.chartPblmTypeData.warn, name: '较严重问题',itemStyle:{normal:{color:'#00dd8a'}}},
- // {value:this.chartPblmTypeData.fatal, name: '严重问题',itemStyle:{normal:{color:'#ffe425'}}},
- // {value:this.chartPblmTypeData.error, name: '特别严重问题',itemStyle:{normal:{color:'#01d8da'}}},
- // ]
- // }
- // ]
- // };
- var option = {
- color: ['#56dcfd', '#ffeb3b', '#f2c5ff', '#f5839e'],
- tooltip : {
- trigger: 'item',
- formatter: "{a} <br/>{b} : {c} ({d}%)"
- },
- series : [
- {
- name:'问题严重程度',
- type:'pie',
- labelLine:{
- normal:{
- length:1
- }
- },
- label: {
- normal: {
- // position: 'inside',
- formatter: function(params) {
- return params.name+" ("+params.value+"个)"
- },
- }
- },
- radius : ['45%', '52%'],
- data:[
- {value:this.chartPblmTypeData.info, name:'一般'},
- {value:this.chartPblmTypeData.warn, name:'较重'},
- {value:this.chartPblmTypeData.fatal, name:'严重'}
- /* , {value:this.chartPblmTypeData.error, name:'特重'}*/
- ]
- }
- ]
- };
- this.chart5.setOption(option);
- }
- },
- beforeCreate() {
- }, //生命周期 - 创建之前
- beforeMount() {
- }, //生命周期 - 挂载之前
- beforeUpdate() {
- }, //生命周期 - 更新之前
- updated() {
- }, //生命周期 - 更新之后
- beforeDestroy() {
- clearInterval(this.timerData);
- }, //生命周期 - 销毁之前
- destroyed() {
- }, //生命周期 - 销毁完成
- activated() {
- } //如果页面有keep-alive缓存功能,这个函数会触发
- };
- </script>
- <style scoped>
- .mainBox{
- width: 100%;
- height:100%;
- background: url("../../assets/bjdc.png") no-repeat;
- background-size: 100% 100%;
- }
- .mainHeader{
- width: 100%;
- height:65px;
- background: url("../../assets/headerdc.png") no-repeat;
- background-size: 100% 100%;
- min-width:1366px ;
- min-height:65px ;
- border-bottom: 1px dashed grey;
- display: flex;
- }
- .header-left{
- width:30%;
- height:100%;
- display: flex;
- align-items: center;
- }
- .proPblm{
- overflow: auto;
- }
- .proPblm ul{
- list-style: none;
- }
- .proPblm ul li{
- width: 100%;
- height:40px;
- display: flex;
- align-items: center;
- color:#fffffa;
- font-size: 15px;
- border-bottom:1px solid #003d5e;
- cursor: pointer;
- }
- .proPblm ul li div{
- width: calc(100% - 110px);
- height:100%;
- line-height: 40px;
- padding-left: 5px;
- padding-right: 5px;
- text-overflow:ellipsis;
- overflow:hidden;
- white-space:nowrap;
- }
- .proPblm ul li i{
- color: #c2f151;
- font-size: 16px;
- }
- .proPblm ul li:hover{
- color: #1890ff !important;
- }
- /*.header-left .el-select{*/
- /* padding-left: 20px !important;*/
- /* border-radius: 10px !important;*/
- /*}*/
- /*.header-left .el-input__inner{*/
- /* border: 1px solid #001C2E;*/
- /* outline: none !important;*/
- /* background: #001C2E;*/
- /* box-shadow: 0px 0px 32px 0px rgba(131, 219, 255, 0.3);*/
- /* border-radius: 16px;*/
- /*}*/
- /*.el-scrollbar{*/
- /* background: #001C2E !important;*/
- /*}*/
- /*.el-select-dropdown {*/
- /* border: 1px solid #004266 !important;*/
- /*}*/
- /*.el-select-dropdown__item.hover, .el-select-dropdown__item:hover {*/
- /* background-color: #002e4e !important;*/
- /*}*/
- /*.header-left .el-select .el-input.is-focus .el-input__inner {*/
- /* border-color: #001C2E;*/
- /*}*/
- .header-middle{
- width:40%;
- height:100%;
- font-size: 32px;
- font-family: Microsoft YaHei;
- font-weight: bold;
- color: #5D9AF5;
- line-height: 44px;
- background: linear-gradient(180deg, #EFF3F5 0%, #8AC5CF 100%);
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- line-height: 65px;
- text-align: center;
- }
- .header-right{
- width:30%;
- height:100%;
- display: flex;
- align-items: center;
- justify-content: center;
- }
- .hourMs{
- width: 100px;
- height:100%;
- line-height: 65px;
- font-size: 24px;
- font-family: Microsoft YaHei;
- font-weight: bold;
- color: #FFFFFF;
- }
- .timeContent{
- height:100%;
- margin-left: 15px;
- display: flex;
- }
- .timeOrWeek{
- height:100%;
- line-height:65px;
- }
- .times{
- font-size: 24px;
- font-family: Microsoft YaHei;
- font-weight: bold;
- color: #5D9AF5;
- line-height: 65px;
- }
- .weeks{
- font-size: 24px;
- font-family: Microsoft YaHei;
- font-weight: bold;
- color: #C1F051;
- line-height: 65px;
- margin-left: 20px;
- }
- /*.el-popper[x-placement^=bottom] .popper__arrow::after {*/
- /* border-bottom-color: #01456a !important;*/
- /*}*/
- /*.el-popper[x-placement^=bottom] .popper__arrow {*/
- /* border-bottom-color: #01456a !important;*/
- /*}*/
- .mainContent{
- width: 100%;
- height:calc(100% - 64px);
- display: flex;
- }
- .mainContent-left{
- width: calc(100% - 315px);
- height:100%;
- }
- .mainContent-right{
- width: 315px;
- height:100%;
- }
- .mainContent-left-top{
- width: 100%;
- height:60%;
- display: flex;
- }
- .mainContent-left-bottom{
- width: 100%;
- height:40%;
- display: flex;
- }
- .mainContent-left-top-left{
- width: 400px;
- height:100%;
- }
- .mainContent-left-top-right{
- width: calc(100% - 400px);
- height:100%;
- position: relative;
- }
- .summary-item {
- width: 100%;
- height: calc(33.33% - 20px);
- margin-top: 20px;
- display: flex;
- }
- .summary-item div.summary-item-col:first-child{
- margin-left: 15px;
- }
- .summary-item div.summary-item-col:nth-child(2){
- margin-left: 100px;
- }
- .summary-item-col{
- width: 140px;
- height:100%;
- }
- .summary-title{
- width: 140px;
- height:50px;
- display: flex;
- }
- .summary-title img:first-child{
- width: 40px;
- height:40px;
- border:1px dashed #66FBF9
- }
- .summary-text{
- width: 80px;
- height:50px;
- text-align: center;
- display: grid;
- }
- .summary-title img:nth-child(3){
- width: 20px;
- height:20px;
- border:1px dashed #66FBF9
- }
- .summary-pointer{
- font-size: 20px;
- font-family: Microsoft YaHei;
- font-weight: bold;
- color: #66FBF9;
- line-height: 20px;
- background: linear-gradient(180deg, #FFFFFF 0%, #ADE8FA 100%);
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- }
- .summary-group{
- font-size: 12px;
- font-family: Microsoft YaHei;
- font-weight: 400;
- color: #C1F053;
- line-height: 0px;
- }
- .summary-content{
- font-size: 30px;
- font-family: Bahnschrift;
- font-weight: bold;
- color: #C2F151;
- height: calc(100% - 50px);
- text-align: center;
- display: flex;
- align-items: center;
- justify-content: center;
- }
- .echarts-bottom:first-child{
- width: calc(25% - 15px);
- height:100%;
- margin-left: 15px;
- }
- /*.echarts-bottom:nth-child(2){*/
- /* width: calc(30% - 15px);*/
- /* height:100%;*/
- /* margin-left: 15px;*/
- /*}*/
- .echarts-bottom:nth-child(2){
- width: calc(50% - 15px);
- height:100%;
- margin-left: 15px;
- }
- .echarts-bottom:nth-child(3){
- width: calc(25% - 20px);
- height:100%;
- margin-left: 15px;
- }
- .echarts-bottom-title{
- width: 100%;
- height:20px;
- border-bottom: 5px solid #003d5e;
- font-size: 20px;
- font-family: Microsoft YaHei;
- font-weight: bold;
- color: #FFFFFF;
- background: linear-gradient(180deg, #FFFFFF 0%, #ADE8FA 100%);
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- display: flex;
- align-items: center;
- background: url("../../assets/echart-title.png") no-repeat ;
- background-size: 70px 20px;
- }
- .echarts-bottom-title span{
- font-size: 20px;
- font-family: Microsoft YaHei;
- font-weight: bold;
- color: #FFFFFF;
- background: linear-gradient(180deg, #FFFFFF 0%, #ADE8FA 100%);
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- text-indent: 20px;
- }
- .echarts-bottom-title img{
- width: 12px;
- height:20px;
- }
- .echarts-bottom-content{
- width: 100%;
- height:calc(100% - 25px);
- }
- .echarts-bottom-content img{
- border:5px solid #01456a;
- }
- .mainContent-right-top{
- width: 100%;
- height:50%;
- }
- .mainContent-right-bottom{
- width: 100%;
- height:50%;
- }
- /*.mainContent-right-style1{*/
- /* width: 100%;*/
- /* height:50%;*/
- /*}*/
- /*.mainContent-right-style2{*/
- /* width: 100%;*/
- /* height:250px;*/
- /*}*/
- .cms-news{
- width: 100%;
- list-style: none;
- margin: 0;
- padding: 0;
- }
- .cms-news li{
- width: 100%;
- height:30px;
- line-height: 30px;
- margin-top: 10px;
- font-size: 14px;
- font-family: Microsoft YaHei;
- font-weight: 400;
- color: #AAE0FC;
- text-indent: 10px;
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- }
- .cms-news li:nth-child(odd){
- background: #294658;
- }
- .cms-news li:nth-child(even){
- background: #003c5e;
- }
- .turnBtn{
- color:#64bfc1;
- width: 35px;
- height:35px;
- line-height: 35px;
- border-radius: 20px;
- background: #294658;
- position: absolute;
- z-index: 100;
- right:5px;
- font-size: 10px;
- box-shadow: 0 1px 10px 0 #5fb6e6;
- text-align: center;
- cursor: pointer;
- }
- .tzgg{
- overflow:auto;
- }
- .tzgg::-webkit-scrollbar {
- /*滚动条整体样式*/
- width : 3px; /*高宽分别对应横竖滚动条的尺寸*/
- height: 10px;
- }
- .tzgg::-webkit-scrollbar-thumb {
- /*滚动条里面小方块*/
- border-radius: 10px;
- box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
- background : #006397;
- }
- .tzgg::-webkit-scrollbar-track {
- /*滚动条里面轨道*/
- box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
- border-radius: 10px;
- background : #003c5e;
- }
- .el-carousel__button {
- display: block;
- opacity: .48;
- width: 10px !important;
- height: 10px !important;
- border-radius: 10px !important;
- }
- .mainContent-right-style a{
- width: 100%;
- height:100%;
- display: block;
- }
- .mainContent-right-style img{
- width: 100%;
- height:100%;
- }
- .titleCar{
- width: 100%;
- top:0;
- position: absolute;
- z-index:100;
- height:30px;
- line-height: 30px;
- text-align: center;
- color:#fff;
- font-size: 12px;
- font-weight: bold;
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- }
- .date-down{
- width: 202px;
- display: flex;
- background: #001C2E;
- box-shadow: 0px 0px 32px 0px rgba(131, 219, 255, 0.3);
- border-radius: 15px;
- margin-left: 20px;
- position: relative;
- cursor:pointer;
- }
- .date-down div:first-child{
- width: 50px;
- height:30px;
- border-right: 1px solid #002d49;
- border-bottom-left-radius: 15px;
- border-top-left-radius: 15px;
- font-size:12px;
- color:#01c3dc;
- text-align: center;
- line-height: 30px;
- }
- .date-down div:nth-child(2){
- width: 120px;
- height:30px;
- color:#01c3dc;
- text-align: center;
- line-height: 30px;
- font-size:12px;
- }
- .date-down div:nth-child(3){
- width: 30px;
- height:30px;
- border-bottom-right-radius: 15px;
- border-top-right-radius: 15px;
- border-left: 1px solid #002d49;
- font-size:16px;
- text-align: center;
- line-height: 30px;
- color: #01c3dc;
- }
- .date-down ul{
- width: 90%;
- overflow: auto;
- max-height: 300px;
- list-style: none;
- position: absolute;
- z-index:100;
- top:32px;
- left:5%;
- background: #001C2E;
- border:1px solid #07537b;
- scrollbar-color: #006397 #001C2E;
- }
- .date-down ul li{
- width: 100%;
- height:30px;
- line-height: 30px;
- border-bottom:1px solid #073a5e;
- color: #01c3dc;
- font-size: 12px;
- text-align: center;
- cursor:pointer;
- }
- .date-down ul li:hover{
- background: #07537b!important;
- color: #64b2ba !important;
- }
- .date-down ul::-webkit-scrollbar {
- /*滚动条整体样式*/
- width : 3px; /*高宽分别对应横竖滚动条的尺寸*/
- height: 10px;
- }
- .date-down ul::-webkit-scrollbar-thumb {
- /*滚动条里面小方块*/
- border-radius: 10px;
- box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
- background : #006397;
- }
- .date-down ul::-webkit-scrollbar-track {
- /*滚动条里面轨道*/
- box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
- border-radius: 10px;
- background : #003c5e;
- }
- video {
- object-fit:fill;
- width:100%;
- height:100%;
- }
- .shortcutkey{
- width: 120px;
- position: absolute;
- z-index: 100;
- right:50px;
- top:50px;
- }
- .shortcutkey ul{
- width: 100%;
- height:100%;
- }
- .shortcutkey ul li{
- width: 100%;
- height:30px;
- line-height: 30px;
- display: flex;
- align-items: center;
- justify-content: center;
- margin-top: 10px;
- background: #094d70;
- cursor: pointer;
- background: #00213a;
- color: #2682b4;
- box-shadow: 0px 0px 30px 0px rgb(255 255 255 / 28%)
- }
- .shortcutkey ul li:hover{
- color:#9ccc47;
- }
- .mapEchart{
- width: 100%;
- height:100%;
- }
- </style>
|