{"remainingRequest":"D:\\jenkins\\workspace\\reform-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\reform-fvue\\src\\views\\BigScreen\\MajorProjectsView.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\reform-fvue\\src\\views\\BigScreen\\MajorProjectsView.vue","mtime":1685953070058},{"path":"D:\\jenkins\\workspace\\reform-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\reform-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\reform-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport * as echarts from 'echarts'\r\nimport 'echarts-liquidfill'\r\nimport {mapState} from 'vuex'\r\nimport VueSeamlessScroll from 'vue-seamless-scroll'\r\nimport EasyDialog from '@/views/BigScreen/components/easy-dialog/index.vue'\r\nimport dialogComponents from '@/views/BigScreen/js/major_dialog_components.js'\r\nimport dialogConfig from '@/views/BigScreen/js/MajorProjectsDialogConfig.js'\r\nimport bigScreenMixin from '@/mixins/bigScreenMixin.js'\r\nimport apiList from '@/api/bigScreen/majorView.js'\r\nimport screenHeader from '@/views/BigScreen/components/screenHeader.vue'\r\nimport utils from '@/utils.js'\r\nexport default {\r\n name: 'MajorProjectsView',\r\n mixins: [bigScreenMixin],\r\n components: {\r\n screenHeader,\r\n EasyDialog,\r\n VueSeamlessScroll,\r\n ...dialogComponents\r\n },\r\n data() {\r\n return {\r\n // 成果榜加载遮罩\r\n numLoading: false,\r\n listLoading: false,\r\n // 需求热力榜 ------5.4\r\n scrollheaderBottom: [\r\n {\r\n name: '部门',\r\n width: '16%'\r\n },\r\n {\r\n name: '提出需求',\r\n width: '18%'\r\n },\r\n {\r\n name: '转化重大项目',\r\n width: '26%'\r\n },\r\n {\r\n name: '转化为清单',\r\n width: '23%'\r\n },\r\n {\r\n name: '质效指数',\r\n width: '18%'\r\n }\r\n // {\r\n // name: '排名',\r\n // width: '20%'\r\n // }\r\n ],\r\n scrollListDataBottom: [],\r\n heatBarChart: null,\r\n heatBarOption: null,\r\n heatBarData: [],\r\n legendTop: [\r\n {name: '党中央国务院有要求'},\r\n {name: '群众企业基层有期盼'},\r\n {name: '重庆发展有堵点'},\r\n {name: '先进省市有经验'}\r\n ],\r\n legendBottom: [{name: '群众企业基层有期盼'}, {name: '先进省市有经验'}],\r\n // 需求热力榜 ------5.4\r\n showWorkPlat: false,\r\n workPlatMenu: [],\r\n currentMenu: {\r\n name: ''\r\n },\r\n pieLoading: false,\r\n showEasy: false, // 弹层显隐控制\r\n dialogOption: {\r\n dialogTitle: '',\r\n width: '50%',\r\n top: ''\r\n },\r\n tableOptions: {},\r\n currentTabComponent: null,\r\n currentKey: 'MajorProjectsView',\r\n menuData: [],\r\n activeBtn: 1,\r\n // 单项指数\r\n singleRankData: [],\r\n // 成果趋势\r\n resultTrend: {\r\n // platformNum: 0,\r\n // platormTrendNum: 0,\r\n // appNum: 0,\r\n // appTrendNum: 0,\r\n // regimeNum: 0,\r\n // regimeTrendNum: 0,\r\n },\r\n // 成果排行榜\r\n resultsRanking1: [],\r\n resultsRanking2: [],\r\n resultsRanking3: [],\r\n resultsRanking1: [\r\n // {\r\n // id: 1,\r\n // projectName: '推动数字重庆建设',\r\n // score: 31,\r\n // sn: 1,\r\n // trend: 0,\r\n // },\r\n // {\r\n // id: 2,\r\n // projectName: '全市开发区(园区)数',\r\n // score: 26,\r\n // sn: 2,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 3,\r\n // projectName: '探索制造业“亩均论英雄”改革',\r\n // score: 23,\r\n // sn: 3,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 4,\r\n // projectName: '实施国企战略性重组和专业化整合',\r\n // score: 22,\r\n // sn: 4,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 5,\r\n // projectName: '建立企业上市助推机制',\r\n // score: 21,\r\n // sn: 5,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 6,\r\n // projectName: '探索强村富民综合改革',\r\n // score: 15,\r\n // sn: 6,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 7,\r\n // projectName: '探索经济区与行政区适度分离改革',\r\n // score: 13,\r\n // sn: 7,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 8,\r\n // projectName: '推进涉企涉民服务全生命周期“一件事一次办”',\r\n // score: 12,\r\n // sn: 8,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 9,\r\n // projectName: '打造“信用重庆”升级版',\r\n // score: 11,\r\n // sn: 9,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 10,\r\n // projectName: '建设政企学研深度融合的现代职教体系',\r\n // score: 9,\r\n // sn: 10,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 11,\r\n // projectName: '健全平安重庆风险闭环管控机制',\r\n // score: 7,\r\n // sn: 11,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 12,\r\n // projectName: '推进渝警数智“情指行”一体化现代警务改革',\r\n // score: 5,\r\n // sn: 12,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 13,\r\n // projectName: '建立领导班子运行评估和群众口碑评价机制',\r\n // score: 4,\r\n // sn: 13,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 14,\r\n // projectName: '推进“党建扎桩·治理结网”基层治理现代化改革',\r\n // score: 3,\r\n // sn: 14,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 15,\r\n // projectName: '实施投融资多元化改革',\r\n // score: 2,\r\n // sn: 15,\r\n // trend: 1,\r\n // },\r\n ],\r\n resultsRanking2: [\r\n // {\r\n // id: 1,\r\n // projectName: '推动数字重庆建设',\r\n // score: 31,\r\n // sn: 1,\r\n // trend: 0,\r\n // },\r\n // {\r\n // id: 2,\r\n // projectName: '实施国企战略性重组和专业化整合',\r\n // score: 26,\r\n // sn: 2,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 3,\r\n // projectName: '建立企业上市助推机制',\r\n // score: 23,\r\n // sn: 3,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 4,\r\n // projectName: '全市开发区(园区)数',\r\n // score: 22,\r\n // sn: 4,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 5,\r\n // projectName: '探索制造业“亩均论英雄”改革',\r\n // score: 21,\r\n // sn: 5,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 6,\r\n // projectName: '打造“信用重庆”升级版',\r\n // score: 15,\r\n // sn: 6,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 7,\r\n // projectName: '探索经济区与行政区适度分离改革',\r\n // score: 13,\r\n // sn: 7,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 8,\r\n // projectName: '推进涉企涉民服务全生命周期“一件事一次办”',\r\n // score: 12,\r\n // sn: 8,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 9,\r\n // projectName: '探索强村富民综合改革',\r\n // score: 11,\r\n // sn: 9,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 10,\r\n // projectName: '实施投融资多元化改革',\r\n // score: 9,\r\n // sn: 10,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 11,\r\n // projectName: '健全平安重庆风险闭环管控机制',\r\n // score: 7,\r\n // sn: 11,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 12,\r\n // projectName: '建设政企学研深度融合的现代职教体系',\r\n // score: 5,\r\n // sn: 12,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 13,\r\n // projectName: '建立领导班子运行评估和群众口碑评价机制',\r\n // score: 4,\r\n // sn: 13,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 14,\r\n // projectName: '推进“党建扎桩·治理结网”基层治理现代化改革',\r\n // score: 3,\r\n // sn: 14,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 15,\r\n // projectName: '推进渝警数智“情指行”一体化现代警务改革',\r\n // score: 2,\r\n // sn: 15,\r\n // trend: 1,\r\n // },\r\n ],\r\n\r\n resultsRanking3: [\r\n // {\r\n // id: 1,\r\n // projectName: '推动数字重庆建设',\r\n // score: 31,\r\n // sn: 1,\r\n // trend: 0,\r\n // },\r\n // {\r\n // id: 2,\r\n // projectName: '探索经济区与行政区适度分离改革',\r\n // score: 26,\r\n // sn: 2,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 3,\r\n // projectName: '探索制造业“亩均论英雄”改革',\r\n // score: 23,\r\n // sn: 3,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 4,\r\n // projectName: '实施国企战略性重组和专业化整合',\r\n // score: 22,\r\n // sn: 4,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 5,\r\n // projectName: '建立企业上市助推机制',\r\n // score: 21,\r\n // sn: 5,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 6,\r\n // projectName: '探索强村富民综合改革',\r\n // score: 15,\r\n // sn: 6,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 7,\r\n // projectName: '全市开发区(园区)数',\r\n // score: 13,\r\n // sn: 7,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 8,\r\n // projectName: '推进涉企涉民服务全生命周期“一件事一次办”',\r\n // score: 12,\r\n // sn: 8,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 9,\r\n // projectName: '打造“信用重庆”升级版',\r\n // score: 11,\r\n // sn: 9,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 10,\r\n // projectName: '探索制造业“亩均论英雄”改革',\r\n // score: 9,\r\n // sn: 10,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 11,\r\n // projectName: '健全平安重庆风险闭环管控机制',\r\n // score: 7,\r\n // sn: 11,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 12,\r\n // projectName: '推进渝警数智“情指行”一体化现代警务改革',\r\n // score: 5,\r\n // sn: 12,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 13,\r\n // projectName: '建立领导班子运行评估和群众口碑评价机制',\r\n // score: 4,\r\n // sn: 13,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 14,\r\n // projectName: '推进“党建扎桩·治理结网”基层治理现代化改革',\r\n // score: 3,\r\n // sn: 14,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 15,\r\n // projectName: '实施投融资多元化改革',\r\n // score: 2,\r\n // sn: 15,\r\n // trend: 1,\r\n // },\r\n ],\r\n // 迭代榜列表\r\n\r\n iterationList: [\r\n // {\r\n // id: 1,\r\n // name: '推动数字重庆建设',\r\n // score: 31,\r\n // sn: 1,\r\n // trend: 0,\r\n // },\r\n // {\r\n // id: 2,\r\n // name: '探索经济区与行政区适度分离改革',\r\n // score: 26,\r\n // sn: 2,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 3,\r\n // name: '探索制造业“亩均论英雄”改革',\r\n // score: 23,\r\n // sn: 3,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 4,\r\n // name: '实施国企战略性重组和专业化整合',\r\n // score: 22,\r\n // sn: 4,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 5,\r\n // name: '建立企业上市助推机制',\r\n // score: 21,\r\n // sn: 5,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 6,\r\n // name: '探索强村富民综合改革',\r\n // score: 15,\r\n // sn: 6,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 7,\r\n // name: '全市开发区(园区)数',\r\n // score: 13,\r\n // sn: 7,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 8,\r\n // name: '推进涉企涉民服务全生命周期“一件事一次办”',\r\n // score: 12,\r\n // sn: 8,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 9,\r\n // name: '打造“信用重庆”升级版',\r\n // score: 11,\r\n // sn: 9,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 10,\r\n // name: '探索制造业“亩均论英雄”改革',\r\n // score: 9,\r\n // sn: 10,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 11,\r\n // name: '健全平安重庆风险闭环管控机制',\r\n // score: 7,\r\n // sn: 11,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 12,\r\n // name: '推进渝警数智“情指行”一体化现代警务改革',\r\n // score: 5,\r\n // sn: 12,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 13,\r\n // name: '建立领导班子运行评估和群众口碑评价机制',\r\n // score: 4,\r\n // sn: 13,\r\n // trend: 2,\r\n // },\r\n // {\r\n // id: 14,\r\n // name: '推进“党建扎桩·治理结网”基层治理现代化改革',\r\n // score: 3,\r\n // sn: 14,\r\n // trend: 1,\r\n // },\r\n // {\r\n // id: 15,\r\n // name: '实施投融资多元化改革',\r\n // score: 2,\r\n // sn: 15,\r\n // trend: 1,\r\n // },\r\n ],\r\n // 指数排行榜\r\n scrollheader1: [\r\n {\r\n name: '项目',\r\n width: '55%'\r\n },\r\n {\r\n name: '得分',\r\n width: '15%'\r\n },\r\n {\r\n name: '排位',\r\n width: '15%'\r\n },\r\n {\r\n name: '变化',\r\n width: '15%'\r\n }\r\n ],\r\n scrollListData1: [],\r\n // 迭代排行\r\n scrollheader2: [\r\n {\r\n name: '项目',\r\n width: '50%'\r\n },\r\n {\r\n name: '迭代举措数',\r\n width: '17.5%'\r\n },\r\n {\r\n name: '新增举措数',\r\n width: '17.5%'\r\n },\r\n {\r\n name: '排位',\r\n width: '15%'\r\n }\r\n ],\r\n scrollListData2: [],\r\n scrollListData2: [\r\n // {\r\n // id: 1,\r\n // projectName: '推动数字重庆建设',\r\n // addNum: 31,\r\n // iterationSn: 1,\r\n // updateNum: 23,\r\n // },\r\n // {\r\n // id: 2,\r\n // projectName: '探索经济区与行政区适度分离改革',\r\n // addNum: 26,\r\n // iterationSn: 2,\r\n // updateNum: 27,\r\n // },\r\n // {\r\n // id: 3,\r\n // projectName: '探索制造业“亩均论英雄”改革',\r\n // addNum: 23,\r\n // iterationSn: 3,\r\n // updateNum: 29,\r\n // },\r\n // {\r\n // id: 4,\r\n // projectName: '实施国企战略性重组和专业化整合',\r\n // addNum: 22,\r\n // iterationSn: 4,\r\n // updateNum: 26,\r\n // },\r\n // {\r\n // id: 5,\r\n // projectName: '建立企业上市助推机制',\r\n // addNum: 21,\r\n // iterationSn: 5,\r\n // updateNum: 15,\r\n // },\r\n // {\r\n // id: 6,\r\n // projectName: '探索强村富民综合改革',\r\n // addNum: 15,\r\n // iterationSn: 6,\r\n // updateNum: 19,\r\n // },\r\n // {\r\n // id: 7,\r\n // projectName: '全市开发区(园区)数',\r\n // addNum: 13,\r\n // iterationSn: 7,\r\n // updateNum: 20,\r\n // },\r\n // {\r\n // id: 8,\r\n // projectName: '推进涉企涉民服务全生命周期“一件事一次办”',\r\n // addNum: 12,\r\n // iterationSn: 8,\r\n // updateNum: 16,\r\n // },\r\n // {\r\n // id: 9,\r\n // projectName: '打造“信用重庆”升级版',\r\n // addNum: 11,\r\n // iterationSn: 9,\r\n // updateNum: 12,\r\n // },\r\n // {\r\n // id: 10,\r\n // projectName: '探索制造业“亩均论英雄”改革',\r\n // addNum: 9,\r\n // iterationSn: 10,\r\n // updateNum: 8,\r\n // },\r\n // {\r\n // id: 11,\r\n // projectName: '健全平安重庆风险闭环管控机制',\r\n // addNum: 7,\r\n // iterationSn: 11,\r\n // updateNum: 7,\r\n // },\r\n // {\r\n // id: 12,\r\n // projectName: '推进渝警数智“情指行”一体化现代警务改革',\r\n // addNum: 5,\r\n // iterationSn: 12,\r\n // updateNum: 4,\r\n // },\r\n // {\r\n // id: 13,\r\n // projectName: '建立领导班子运行评估和群众口碑评价机制',\r\n // addNum: 4,\r\n // iterationSn: 13,\r\n // updateNum: 4,\r\n // },\r\n // {\r\n // id: 14,\r\n // projectName: '推进“党建扎桩·治理结网”基层治理现代化改革',\r\n // addNum: 3,\r\n // iterationSn: 14,\r\n // updateNum: 3,\r\n // },\r\n // {\r\n // id: 15,\r\n // projectName: '实施投融资多元化改革',\r\n // addNum: 2,\r\n // iterationSn: 15,\r\n // updateNum: 2,\r\n // },\r\n ],\r\n\r\n // 品牌排行\r\n scrollheader3: [\r\n {\r\n name: '项目',\r\n width: '45%'\r\n },\r\n {\r\n name: '获全国肯定性
评价(次)',\r\n width: '20%',\r\n type: 'l'\r\n },\r\n {\r\n name: '获中央媒体深度
专题报道(次)',\r\n width: '20%',\r\n type: 'l'\r\n },\r\n {\r\n name: '排位',\r\n width: '15%'\r\n }\r\n ],\r\n // 单项指数排行榜\r\n singleheader: [\r\n {\r\n name: '指数',\r\n width: '28%'\r\n },\r\n {\r\n name: '项目',\r\n width: '42%'\r\n },\r\n {\r\n name: '入榜形式',\r\n width: '30%'\r\n }\r\n ],\r\n scrollListData3: [],\r\n // scrollListData3: [\r\n // {\r\n // id: 1,\r\n // projectName: '推动数字重庆建设',\r\n // nationwideNum: 5,\r\n // brandAllSn: 1,\r\n // mediaNum: 17,\r\n // },\r\n // {\r\n // id: 2,\r\n // projectName: '全市开发区(园区)数',\r\n // nationwideNum: 3,\r\n // brandAllSn: 2,\r\n // mediaNum: 13,\r\n // },\r\n // {\r\n // id: 3,\r\n // projectName: '探索制造业“亩均论英雄”改革',\r\n // nationwideNum: 2,\r\n // brandAllSn: 3,\r\n // mediaNum: 9,\r\n // },\r\n // {\r\n // id: 4,\r\n // projectName: '实施国企战略性重组和专业化整合',\r\n // nationwideNum: 4,\r\n // brandAllSn: 4,\r\n // mediaNum: 14,\r\n // },\r\n // {\r\n // id: 5,\r\n // projectName: '建立企业上市助推机制',\r\n // nationwideNum: 3,\r\n // brandAllSn: 5,\r\n // mediaNum: 14,\r\n // },\r\n // {\r\n // id: 6,\r\n // projectName: '探索强村富民综合改革',\r\n // nationwideNum: 3,\r\n // brandAllSn: 6,\r\n // mediaNum: 14,\r\n // },\r\n // {\r\n // id: 7,\r\n // projectName: '探索经济区与行政区适度分离改革',\r\n // nationwideNum: 5,\r\n // brandAllSn: 7,\r\n // mediaNum: 13,\r\n // },\r\n // {\r\n // id: 8,\r\n // projectName: '推进涉企涉民服务全生命周期“一件事一次办”',\r\n // nationwideNum: 2,\r\n // brandAllSn: 8,\r\n // mediaNum: 16,\r\n // },\r\n // {\r\n // id: 9,\r\n // projectName: '打造“信用重庆”升级版',\r\n // nationwideNum: 5,\r\n // brandAllSn: 9,\r\n // mediaNum: 12,\r\n // },\r\n // {\r\n // id: 10,\r\n // projectName: '建设政企学研深度融合的现代职教体系',\r\n // nationwideNum: 3,\r\n // brandAllSn: 10,\r\n // mediaNum: 17,\r\n // },\r\n // {\r\n // id: 11,\r\n // projectName: '健全平安重庆风险闭环管控机制',\r\n // nationwideNum: 2,\r\n // brandAllSn: 11,\r\n // mediaNum: 14,\r\n // },\r\n\r\n // {\r\n // id: 12,\r\n // projectName: '推进渝警数智“情指行”一体化现代警务改革',\r\n // nationwideNum: 3,\r\n // brandAllSn: 12,\r\n // mediaNum: 13,\r\n // },\r\n // {\r\n // id: 13,\r\n // projectName: '建立领导班子运行评估和群众口碑评价机制',\r\n // nationwideNum: 3,\r\n // brandAllSn: 13,\r\n // mediaNum: 15,\r\n // },\r\n // {\r\n // id: 14,\r\n // projectName: '推进“党建扎桩·治理结网”基层治理现代化改革',\r\n // nationwideNum: 3,\r\n // brandAllSn: 14,\r\n // mediaNum: 14,\r\n // },\r\n // {\r\n // id: 15,\r\n // projectName: '实施投融资多元化改革',\r\n // nationwideNum: 4,\r\n // brandAllSn: 15,\r\n // mediaNum: 16,\r\n // },\r\n // ],\r\n\r\n pieChart1: null, // 改革举措表现情况总览饼图实例\r\n pieChartDataOriginRight: [],\r\n pieChartData2: [\r\n {value: 0, name: '优秀'},\r\n {value: 0, name: '良好'},\r\n {value: 0, name: '一般'}\r\n ], // 改革举措表现情况总览饼图数据\r\n pieChart2: null, // 量化目标达标情况总览饼图实例\r\n pieChartDataOrigin: [],\r\n pieChartData1: [\r\n {value: 0, name: '优秀'},\r\n {value: 0, name: '良好'},\r\n {value: 0, name: '一般'}\r\n ], // 量化目标达标情况总览饼图数据\r\n speedListDataTemp: [\r\n {\r\n projectName: '推动数字重庆建设',\r\n reachRate: 0,\r\n bgColor1: 'rgba(137, 248, 158, 1)',\r\n bgColor2: 'rgba(137, 248, 158, 0.3)',\r\n Gradient: ['#59C06C', '#35D0E9'],\r\n instance: null\r\n },\r\n {\r\n projectName: '全市开发区(园区)数',\r\n reachRate: 0.45,\r\n bgColor1: 'rgba(23, 144, 255, 1)',\r\n bgColor2: 'rgba(23, 144, 255, 0.3)',\r\n Gradient: ['#0A7BE9', '#35D0E9'],\r\n instance: null\r\n },\r\n {\r\n projectName: '探索制造业“亩均论英雄”改革',\r\n reachRate: 0.39,\r\n bgColor1: 'rgba(255,152,0,1)',\r\n bgColor2: 'rgba(255,152,0,0.3)',\r\n Gradient: ['#FF9800', '#8F3E1D'],\r\n instance: null\r\n }\r\n ],\r\n speedListData: [\r\n {\r\n projectName: '推动数字重庆建设',\r\n reachRate: 0.54,\r\n bgColor1: 'rgba(137, 248, 158, 1)',\r\n bgColor2: 'rgba(137, 248, 158, 0.3)',\r\n Gradient: ['#59C06C', '#35D0E9'],\r\n instance: null\r\n },\r\n {\r\n projectName: '全市开发区(园区)数',\r\n reachRate: 0.45,\r\n bgColor1: 'rgba(23, 144, 255, 1)',\r\n bgColor2: 'rgba(23, 144, 255, 0.3)',\r\n Gradient: ['#0A7BE9', '#35D0E9'],\r\n instance: null\r\n },\r\n {\r\n projectName: '探索制造业“亩均论英雄”改革',\r\n reachRate: 0.39,\r\n bgColor1: 'rgba(255,152,0,1)',\r\n bgColor2: 'rgba(255,152,0,0.3)',\r\n Gradient: ['#FF9800', '#8F3E1D'],\r\n instance: null\r\n }\r\n ],\r\n // speedListData: [],\r\n reformBrandChart: null,\r\n porjectList: {\r\n 良好: [\r\n {\r\n id: 1,\r\n name: '良好',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 1,\r\n name: '良好',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 1,\r\n name: '良好',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 1,\r\n name: '良好',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n }\r\n ],\r\n 一般: [\r\n {\r\n id: 1,\r\n name: '一般',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 1,\r\n name: '一般',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 1,\r\n name: '一般',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 1,\r\n name: '一般',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n }\r\n ],\r\n 优秀: [\r\n {\r\n id: 1,\r\n name: '优秀',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 2,\r\n name: '优秀',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 3,\r\n name: '优秀',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 4,\r\n name: '优秀',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 5,\r\n name: '优秀',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 6,\r\n name: '优秀',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n },\r\n {\r\n id: 7,\r\n name: '优秀',\r\n projectName: '项目名称',\r\n finish: '50%'\r\n }\r\n ]\r\n },\r\n reformBrandData: [],\r\n reformBrandData1: [12, 24, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0],\r\n reformBrandData2: [9, 41, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0],\r\n loadingColor: 'rgba(6, 46, 106, 0.01)',\r\n loadObj: {\r\n scrollListData1: false,\r\n scrollListData2: false,\r\n brandList: false,\r\n speedListData: false\r\n },\r\n numIndex: {\r\n totalNum: 0,\r\n finishNum: 0,\r\n finishRate: 0\r\n },\r\n targetIndex: {\r\n // monthNum: 0,\r\n // allNum: 0,\r\n // rate: 0\r\n },\r\n month: '',\r\n year: ''\r\n }\r\n },\r\n computed: {\r\n ...mapState({\r\n frontMenus: state => {\r\n return state.menu.frontMenus\r\n }\r\n }),\r\n optionSingleHeightTime() {\r\n return {\r\n step: 0.25\r\n }\r\n }\r\n },\r\n mounted() {\r\n this.initPieChart2()\r\n\r\n this.initBarChart()\r\n // 初始化时间 初始请求\r\n let searchDate = sessionStorage.getItem('searchDate')\r\n if (searchDate) {\r\n searchDate = JSON.parse(searchDate)\r\n this.month = searchDate.month\r\n this.year = searchDate.year\r\n } else {\r\n this.checkMonth()\r\n }\r\n this.loadData('init')\r\n\r\n this.$bus.$on('changeDate', searchDate => {\r\n this.month = searchDate.month\r\n this.year = searchDate.year\r\n this.loadData()\r\n })\r\n },\r\n methods: {\r\n handleDetail(comp, type, title) {\r\n this.$router.push({\r\n path: '/DetailComponent',\r\n name: 'DetailComponent',\r\n query: {\r\n comp,\r\n type,\r\n title\r\n }\r\n })\r\n },\r\n checkMonth() {\r\n this.year = new Date().getFullYear()\r\n this.month = new Date().getMonth() + 1\r\n },\r\n getDemandHeatList(type) {\r\n this.loadObj.scrollListDataBottom = true\r\n let data = JSON.parse(sessionStorage.getItem('searchDate'))\r\n // 综合\r\n apiList.getDemandHeatList(data, res => {\r\n console.log(res)\r\n if (res.chart) {\r\n res.chart.sort((a, b) => a.x - b.x)\r\n let arr = res.chart.map(item => {\r\n let type =\r\n item.x == 1\r\n ? '党中央国务院有要求'\r\n : item.x == 2\r\n ? '重庆发展有堵点'\r\n : item.x == 3\r\n ? '群众企业基层有期盼'\r\n : '先进省市有经验'\r\n return {type, value: item.y}\r\n })\r\n console.log(arr)\r\n this.heatBarData = arr\r\n if (type) {\r\n this.initBarChart()\r\n } else {\r\n this.heatBarOption.dataset.source = this.heatBarData\r\n this.heatBarOption.legend[0].data = this.legendTop\r\n this.heatBarChart.setOption(this.heatBarOption)\r\n }\r\n }\r\n\r\n this.scrollListDataBottom = res.demandRank || []\r\n this.loadObj.scrollListDataBottom = false\r\n })\r\n },\r\n initBarChart() {\r\n const chartDom = document.getElementById('heat-bar-chart')\r\n this.heatBarChart = echarts.init(chartDom)\r\n const colorList = [\r\n new echarts.graphic.LinearGradient(0, 0, 0, 1, [\r\n {offset: 0, color: '#59C06C'},\r\n {offset: 1, color: 'rgba(89,192,108,0.3)'}\r\n ]),\r\n new echarts.graphic.LinearGradient(0, 0, 0, 1, [\r\n {offset: 0, color: '#386A97'},\r\n {offset: 1, color: 'rgba(56,106,151,0.3)'}\r\n ]),\r\n new echarts.graphic.LinearGradient(0, 0, 0, 1, [\r\n {offset: 0, color: '#F8B551'},\r\n {offset: 1, color: 'rgba(248,181,81,0.3)'}\r\n ]),\r\n new echarts.graphic.LinearGradient(0, 0, 0, 1, [\r\n {offset: 0, color: '#FFBBC9'},\r\n {offset: 1, color: 'rgba(255,187,201,0.3)'}\r\n ]),\r\n new echarts.graphic.LinearGradient(0, 0, 0, 1, [\r\n {offset: 0, color: '#386A97'},\r\n {offset: 1, color: 'rgba(56,106,151,0.3)'}\r\n ])\r\n ]\r\n const colorArr = ['#3e8c5b', '#22466f', '#b28849', '#b78c9f']\r\n let seriesArr = [] //series\r\n let XLabel = [] //x轴数据\r\n this.heatBarData.forEach((item, index) => {\r\n XLabel.push(item.type)\r\n let obj = {}\r\n obj.name = item.type\r\n obj.type = 'bar'\r\n obj.stack = '需求来源'\r\n obj.data = []\r\n obj.seriesLayoutBy = 'row'\r\n obj.barWidth = 8\r\n obj.barGap = '80%'\r\n obj.itemStyle = {\r\n normal: {\r\n borderRadius: 5,\r\n color: function(params) {\r\n return colorList[params.dataIndex]\r\n }\r\n }\r\n }\r\n for (var i = 0; i <= index; i++) {\r\n if (i != index) {\r\n obj.data.push(0)\r\n } else {\r\n obj.data.push(item.value)\r\n }\r\n // obj.encode= {\r\n // tooltip: ['name','value']}\r\n }\r\n seriesArr.push(obj)\r\n })\r\n this.heatBarOption = {\r\n dataset: {\r\n source: this.heatBarData\r\n },\r\n grid: {\r\n //图表离外层盒子的距离\r\n top: '5%',\r\n // top: '10%',\r\n bottom: '2%',\r\n left: '1%',\r\n right: '50%',\r\n containLabel: true\r\n },\r\n xAxis: {\r\n type: 'category',\r\n show: false,\r\n data: XLabel,\r\n boundaryGap: true,\r\n axisTick: false,\r\n axisLine: {\r\n lineStyle: {\r\n color: 'rgba(154,199,220, 0.2)'\r\n }\r\n },\r\n axisLabel: {\r\n color: '#D7F1FF'\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n // min: 0,\r\n // splitNumber: 5,\r\n // interval: 1,\r\n axisLabel: {\r\n color: '#D7F1FF',\r\n formatter: val => {\r\n if ((val >= 1 && parseInt(val, 10) === val) || val == 0) {\r\n return val\r\n } else {\r\n return\r\n }\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: 'rgba(154,199,220, 0.2)'\r\n }\r\n },\r\n splitLine: {\r\n lineStyle: {\r\n color: 'rgba(154,199,220, 0.2)'\r\n }\r\n }\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n backgroundColor: 'rgba(6, 47, 107, 1)',\r\n borderColor: 'rgba(2, 115, 233, 1)',\r\n textStyle: {\r\n color: '#fff'\r\n },\r\n formatter: function(params) {\r\n var html = '
'\r\n var colorSpan =\r\n ''\r\n html +=\r\n colorSpan +\r\n ' ' +\r\n params[0].seriesName +\r\n '  ' +\r\n params[0].value +\r\n '
'\r\n html += '
'\r\n return html\r\n }\r\n },\r\n legend: [\r\n {\r\n right: 10,\r\n orient: 'vertical',\r\n data: this.legendTop,\r\n inactiveColor: '#333333',\r\n borderRadius: 6,\r\n itemWidth: 14,\r\n itemHeight: 6,\r\n textStyle: {\r\n color: '#B1E3FF'\r\n }\r\n }\r\n // {\r\n // left: 'center',\r\n // top: '14%',\r\n // data: this.legendBottom,\r\n // inactiveColor: '#333333',\r\n // borderRadius: 6,\r\n // itemWidth: 14,\r\n // itemHeight: 6,\r\n // itemGap: 40,\r\n // textStyle: {\r\n // color: '#B1E3FF',\r\n // },\r\n // },\r\n ],\r\n color: ['#3e8c5b', '#22466f', '#b28849', '#b78c9f'],\r\n series: seriesArr\r\n }\r\n this.heatBarOption && this.heatBarChart.setOption(this.heatBarOption)\r\n window.addEventListener('resize', () => this.heatBarChart.resize())\r\n },\r\n //--------数据-----------\r\n loadData(type) {\r\n this.getProjectBrand()\r\n this.getRankData()\r\n this.getDemandHeatList(type)\r\n this.getBattleChart()\r\n this.getIteration()\r\n // //-----\r\n // this.getBattleChart()\r\n // this.getDemandHeatList(type)\r\n // //---------\r\n // this.getProjectBrand()\r\n\r\n this.getProjectSpeed()\r\n // this.getRankData()\r\n this.getResultTrend()\r\n this.getResultList()\r\n // this.getNumIndex()\r\n this.getTargetIndex()\r\n // this.getProjectFinish()\r\n },\r\n // 品牌榜\r\n getProjectBrand() {\r\n this.loadObj.brandList = true\r\n let data = {\r\n month: this.month,\r\n year: this.year\r\n }\r\n apiList.getBrandMonthDate(data, res => {\r\n this.loadObj.brandList = false\r\n if (res) {\r\n this.reformBrandData = res\r\n if (this.reformBrandData.length) {\r\n this.reformBrandData.forEach((item, i) => {\r\n this.reformBrandData1[i] = item.nationwideNum\r\n this.reformBrandData2[i] = item.mediaNum\r\n })\r\n }\r\n\r\n this.initReformBrand()\r\n } else {\r\n this.initReformBrand()\r\n }\r\n })\r\n },\r\n // 迭代榜\r\n getIteration() {\r\n this.loadObj.scrollListData2 = true\r\n let data = {\r\n month: this.month,\r\n year: this.year\r\n }\r\n apiList.getIteration(data, res => {\r\n if (res) {\r\n this.scrollListData2 = res\r\n }\r\n this.loadObj.scrollListData2 = false\r\n })\r\n },\r\n // 竞速榜 指标库\r\n getProjectSpeed() {\r\n this.loadObj.speedListData = true\r\n let data = JSON.parse(sessionStorage.getItem('searchDate'))\r\n apiList.getIndexPieChartData(data, res => {\r\n if (res) {\r\n let arr = []\r\n for(let obj in res.overViewComplianceStatusCountVo) {\r\n if (obj == 'excessCount') {\r\n arr.push({value: res.overViewComplianceStatusCountVo.excessCount,name:'优秀'})\r\n } else if (obj == 'reachedCount') {\r\n arr.push({value: res.overViewComplianceStatusCountVo.reachedCount,name:'良好'})\r\n } else if (obj == 'notReachedCount') {\r\n arr.push({value: res.overViewComplianceStatusCountVo.notReachedCount,name:'一般'})\r\n }\r\n }\r\n this.pieChartData2 = arr\r\n this.initPieChart2()\r\n }\r\n this.loadObj.speedListData = false\r\n })\r\n // let data = {\r\n // pageBean: {\r\n // page: 1,\r\n // pageSize: -1,\r\n // showTotal: true\r\n // },\r\n // sorter: [\r\n // {\r\n // direction: 'ASC',\r\n // property: 'targetSn'\r\n // }\r\n // ]\r\n // }\r\n // apiList.getProjectSpeed(data, res => {\r\n // console.log(res,\"========\");\r\n // if (res && res.rows) {\r\n // let dataTemp = res.rows\r\n // this.pieChartDataOriginRight = dataTemp\r\n // this.mathTargetIndexFinish()\r\n // let data = dataTemp.splice(0, 3)\r\n // data.forEach((item, i) => {\r\n // this.speedListDataTemp[i].projectName = item.projectName\r\n // this.speedListDataTemp[i].reachRate = parseInt(item.reachRate) / 100\r\n // })\r\n // this.speedListDataTemp.length = data.length\r\n // this.speedListData = this.speedListDataTemp\r\n // this.$nextTick(() => {\r\n // this.initLiquidfill()\r\n // })\r\n // }\r\n // this.loadObj.speedListData = false\r\n // })\r\n },\r\n // 计算优良一般比例 排名的\r\n // 排名的20% 优\r\n // 排名的30% 良\r\n // 排名的50% 一般\r\n // mathTargetIndexFinish() {\r\n // let targetSn = 0\r\n // this.pieChartDataOriginRight.forEach(item => {\r\n // if (targetSn < item.targetSn) {\r\n // targetSn = item.targetSn\r\n // }\r\n // })\r\n // let level1 = targetSn * 0.2\r\n // let level2 = targetSn * 0.5\r\n\r\n // let level1Num = 0\r\n // let level2Num = 0\r\n // let level3Num = 0\r\n // this.pieChartDataOriginRight.forEach(item => {\r\n // if (item.targetSn <= level1) {\r\n // level1Num++\r\n // } else if (item.targetSn <= level2) {\r\n // level2Num++\r\n // } else {\r\n // level3Num++\r\n // }\r\n // })\r\n // this.pieChartData2[0].value = level1Num\r\n // this.pieChartData2[1].value = level2Num\r\n // this.pieChartData2[2].value = level3Num\r\n\r\n // this.initPieChart2()\r\n // },\r\n // 指数榜 综合 + 单项\r\n getRankData() {\r\n this.loadObj.scrollListData1 = true\r\n this.singleRankData = []\r\n this.scrollListData1 = []\r\n // 指数榜 单项\r\n apiList.getRank(\r\n this.qs.stringify({\r\n type: 'single',\r\n year: this.year,\r\n month: this.month\r\n }),\r\n res => {\r\n if (res && res.value) {\r\n let dataTemp = res.value\r\n dataTemp.forEach(item => {\r\n this.singleRankData.push({\r\n key: item.index,\r\n county: item.county ? item.county : '暂无数据',\r\n holdNum: item.holdNum\r\n })\r\n })\r\n }\r\n }\r\n )\r\n // 指数榜 综合\r\n apiList.getRank(\r\n this.qs.stringify({\r\n type: 'composite',\r\n year: this.year,\r\n month: this.month\r\n }),\r\n res => {\r\n if (res && res.value) {\r\n this.scrollListData1 = res.value\r\n }\r\n this.loadObj.scrollListData1 = false\r\n }\r\n )\r\n },\r\n // 成果榜 趋势对比\r\n getResultTrend() {\r\n this.numLoading = true\r\n let data = {month: this.month, year: this.year}\r\n apiList.getResultTrend(data, res => {\r\n if (res) {\r\n this.resultTrend = res\r\n }\r\n this.numLoading = false\r\n })\r\n },\r\n // 成果 详情\r\n getResultList() {\r\n // let reqDate = JSON.parse(sessionStorage.getItem('searchDate'))\r\n let data = {\r\n pageBean: {\r\n page: 1,\r\n pageSize: -1,\r\n showTotal: true\r\n },\r\n querys: [\r\n {\r\n group: 'main',\r\n operation: 'EQUAL',\r\n parentGroup: '',\r\n property: 's.PLAN_YEAR_', // 字段名\r\n relation: 'AND',\r\n value: this.year\r\n },\r\n {\r\n group: 'main',\r\n operation: 'LESS_EQUAL',\r\n parentGroup: '',\r\n property: 's.PLAN_MONTH_', // 字段名\r\n relation: 'AND',\r\n value: this.month\r\n },\r\n {\r\n group: 'main',\r\n operation: 'EQUAL',\r\n parentGroup: '',\r\n property: 's.PLAN_type_',\r\n relation: 'AND',\r\n value: ''\r\n }\r\n ]\r\n }\r\n // 1.制度成果\r\n // 2.工作平台\r\n // 3.应用场景\r\n let data1 = JSON.parse(JSON.stringify(data))\r\n data1.querys[2].value = 6\r\n let data2 = JSON.parse(JSON.stringify(data))\r\n data2.querys[2].value = 5\r\n let data3 = JSON.parse(JSON.stringify(data))\r\n data3.querys[2].value = 7\r\n let arr = [\r\n this.reqResultList(data1, 1),\r\n this.reqResultList(data2, 2),\r\n this.reqResultList(data3, 3)\r\n ]\r\n Promise.all(arr).then(() => {\r\n this.listLoading = false\r\n })\r\n // apiList.getResultList(data1, res => {\r\n // if (res) {\r\n // this.resultsRanking1 = res.rows\r\n // }\r\n // })\r\n // apiList.getResultList(data2, res => {\r\n // if (res) {\r\n // this.resultsRanking2 = res.rows\r\n // }\r\n // })\r\n // apiList.getResultList(data3, res => {\r\n // if (res) {\r\n // this.resultsRanking3 = res.rows\r\n // }\r\n // })\r\n },\r\n //\r\n reqResultList(data, num) {\r\n this.listLoading = true\r\n return new Promise(reslove => {\r\n apiList.getResultList(data, res => {\r\n if (res) {\r\n num === 1\r\n ? (this.resultsRanking1 = res.rows)\r\n : num === 2\r\n ? (this.resultsRanking2 = res.rows)\r\n : (this.resultsRanking3 = res.rows)\r\n }\r\n reslove()\r\n })\r\n })\r\n },\r\n // 举措指标\r\n getNumIndex() {\r\n apiList.getNumIndex(res => {\r\n if (res) {\r\n this.numIndex = res\r\n }\r\n })\r\n },\r\n // 获取作战图统计数据\r\n getBattleChart() {\r\n this.pieLoading = true\r\n let data = JSON.parse(sessionStorage.getItem('searchDate'))\r\n apiList.getBattleChart(data, res => {\r\n if (res.state) {\r\n this.$nextTick(() => {\r\n this.numIndex = res.value.total\r\n const data = res.value.degree\r\n\r\n // 将对象转化为数组并排序\r\n const dataArray = Object.entries(data)\r\n // 根据排序后的数组重新构造为新的数组\r\n const chartData = dataArray.map(([name, value]) => {\r\n name = name == '1' ? '优秀' : name == '2' ? '良好' : '一般'\r\n return {\r\n name,\r\n value\r\n }\r\n })\r\n if (chartData.length) {\r\n this.pieChartData1 = chartData\r\n }\r\n this.initPieChart1()\r\n })\r\n }\r\n this.pieLoading = false\r\n })\r\n },\r\n // 举措环形图\r\n getProjectFinish() {\r\n apiList.getProjectFinish(res => {\r\n if (res) {\r\n this.pieChartDataOrigin = res\r\n this.mathProjectFinish()\r\n }\r\n })\r\n },\r\n // 计算优良一般比例\r\n // 100% 优\r\n // 70%-100% 良\r\n // 70%以下 一般\r\n mathProjectFinish() {\r\n let level1 = 0\r\n let level2 = 0\r\n let level3 = 0\r\n this.pieChartDataOrigin.forEach(item => {\r\n if (item.rate == 100) {\r\n item.type = 1\r\n level1++\r\n } else if (item.rate >= 70) {\r\n item.type = 2\r\n level2++\r\n } else {\r\n item.type = 3\r\n level3++\r\n }\r\n })\r\n this.pieChartData1[0].value = level1\r\n this.pieChartData1[1].value = level2\r\n this.pieChartData1[2].value = level3\r\n\r\n this.initPieChart1()\r\n },\r\n // 量化目标\r\n getTargetIndex() {\r\n let data = {year:this.year,month:this.month}\r\n apiList.getIndexLibrary(data,res => {\r\n // console.log(res);\r\n if (res) {\r\n this.targetIndex = res\r\n }\r\n })\r\n },\r\n //--------数据-----------\r\n openSubView() {\r\n this.$router.push('/MajorProjectsSubView')\r\n },\r\n // // 菜单切换\r\n // changeTab(item) {\r\n // this.$router.push({\r\n // path: `/${item.alias}`,\r\n // })\r\n // },\r\n // 按钮切换内容\r\n changeBtnTab(item) {\r\n this.activeBtn = item\r\n },\r\n\r\n // Pie Chart 1\r\n initPieChart1() {\r\n let colorList = [\r\n {\r\n colorStart: '#53CD67',\r\n colorEnd: '#2F733A'\r\n },\r\n {\r\n colorStart: '#1790FF',\r\n colorEnd: '#1161AA'\r\n },\r\n {\r\n colorStart: '#FF9800',\r\n colorEnd: '#8F3E1D'\r\n },\r\n {\r\n colorStart: '#FFC000',\r\n colorEnd: '#975A01'\r\n }\r\n ]\r\n let option = {\r\n // 调整图例位置\r\n legend: {\r\n top: 0,\r\n orient: 'vertical',\r\n x: 'right',\r\n // y: 'bottom',\r\n // width: '100',\r\n // padding: [0, 0, 5, 0], //上右下左\r\n itemWidth: 12, // 设置图例图形的宽\r\n itemHeight: 8, // 设置图例图形的高\r\n icon: 'roundRect',\r\n itemGap: 10,\r\n textStyle: {\r\n //图例字体样式\r\n fontSize: 13,\r\n fontFamily: 'SimHei',\r\n color: '#B1E3FF'\r\n }\r\n },\r\n // tooltip: {\r\n // show: true,\r\n // backgroundColor: 'rgba(6, 47, 107, 1)',\r\n // borderColor: 'rgba(2, 115, 233, 1)',\r\n // textStyle: {\r\n // color: '#fff',\r\n // },\r\n // confine: true,\r\n // position: 'bottom',\r\n // formatter: (data) => {\r\n // let repeat = ''\r\n // this.porjectList[data.name].forEach((item) => {\r\n // repeat += `\r\n //
项目:${item.projectName}完成率:${item.finish}
\r\n // `\r\n // })\r\n // let str = `
\r\n //
${data.name}
\r\n // ${repeat}\r\n //
`\r\n // return str\r\n // },\r\n // },\r\n series: [\r\n {\r\n name: '改革举措表现情况',\r\n type: 'pie',\r\n radius: ['35%', '60%'],\r\n center: ['40%', '56%'],\r\n labelLine: {\r\n //指示线样式设置\r\n length: 15, //设置指示线的长度\r\n length2: 50, //横线宽度\r\n lineStyle: {\r\n color: '#B1E3FF' // 设置标示线的颜色\r\n }\r\n },\r\n label: {\r\n textStyle: {\r\n color: '#B1E3FF', // 改变标示文字的颜色\r\n fontSize: 10 //文字大小\r\n },\r\n formatter: '{c}项 {d}% \\n\\n',\r\n padding: [0, -60],\r\n alignTo: 'labelLine'\r\n },\r\n itemStyle: {\r\n color: list => {\r\n // 注意 !!!!! 这里的数组一定要和实际的类目长度相等或大于,不然会缺少颜色报错\r\n return new echarts.graphic.LinearGradient(1, 0, 0, 0, [\r\n {\r\n //左、下、右、上\r\n offset: 0,\r\n color: colorList[list.dataIndex]['colorStart']\r\n },\r\n {\r\n offset: 1,\r\n color: colorList[list.dataIndex]['colorEnd']\r\n }\r\n ])\r\n }\r\n },\r\n data: this.pieChartData1\r\n }\r\n ]\r\n }\r\n this.pieChart1 = echarts.init(document.getElementById('pieChart1'))\r\n option && this.pieChart1.setOption(option)\r\n window.addEventListener('resize', () => this.pieChart1.resize())\r\n this.pieChart1.on('click', params => {\r\n // this.openSubDialog('monthPlan')\r\n this.handleDetail('projectTable2')\r\n })\r\n },\r\n\r\n initPieChart2() {\r\n let colorList = [\r\n {\r\n colorStart: '#53CD67',\r\n colorEnd: '#2F733A'\r\n },\r\n {\r\n colorStart: '#1790FF',\r\n colorEnd: '#1161AA'\r\n },\r\n {\r\n colorStart: '#FF9800',\r\n colorEnd: '#8F3E1D'\r\n },\r\n {\r\n colorStart: '#FFC000',\r\n colorEnd: '#975A01'\r\n }\r\n ]\r\n let option = {\r\n // 调整图例位置\r\n legend: {\r\n top: 0,\r\n orient: 'vertical',\r\n x: 'right',\r\n // y: 'bottom',\r\n // width: '100',\r\n // padding: [0, 0, 5, 0], //上右下左\r\n itemWidth: 12, // 设置图例图形的宽\r\n itemHeight: 8, // 设置图例图形的高\r\n icon: 'roundRect',\r\n itemGap: 10,\r\n textStyle: {\r\n //图例字体样式\r\n fontSize: 13,\r\n fontFamily: 'SimHei',\r\n color: '#B1E3FF'\r\n }\r\n },\r\n // tooltip: {\r\n // show: true,\r\n // backgroundColor: 'rgba(6, 47, 107, 1)',\r\n // borderColor: 'rgba(2, 115, 233, 1)',\r\n // textStyle: {\r\n // color: '#fff',\r\n // },\r\n // confine: true,\r\n // position: 'bottom',\r\n // formatter: (data) => {\r\n // let repeat = ''\r\n // this.porjectList[data.name].forEach((item) => {\r\n // repeat += `\r\n //
项目:${item.projectName}完成率:${item.finish}
\r\n // `\r\n // })\r\n // let str = `
\r\n //
${data.name}
\r\n // ${repeat}\r\n //
`\r\n // return str\r\n // },\r\n // },\r\n series: [\r\n {\r\n name: '改革举措表现情况',\r\n type: 'pie',\r\n radius: ['35%', '60%'],\r\n center: ['40%', '56%'],\r\n left: 0,\r\n top: 0,\r\n labelLine: {\r\n //指示线样式设置\r\n length: 15, //设置指示线的长度\r\n length2: 50, //横线宽度\r\n lineStyle: {\r\n color: '#B1E3FF' // 设置标示线的颜色\r\n }\r\n },\r\n label: {\r\n textStyle: {\r\n color: '#B1E3FF', // 改变标示文字的颜色\r\n fontSize: 10 //文字大小\r\n },\r\n formatter: '{c}项\\n\\n',\r\n // formatter: '{c}项 {d}% \\n\\n',\r\n padding: [0, 0],\r\n alignTo: 'labelLine'\r\n },\r\n itemStyle: {\r\n color: list => {\r\n // 注意 !!!!! 这里的数组一定要和实际的类目长度相等或大于,不然会缺少颜色报错\r\n return new echarts.graphic.LinearGradient(1, 0, 0, 0, [\r\n {\r\n //左、下、右、上\r\n offset: 0,\r\n color: colorList[list.dataIndex]['colorStart']\r\n },\r\n {\r\n offset: 1,\r\n color: colorList[list.dataIndex]['colorEnd']\r\n }\r\n ])\r\n }\r\n },\r\n data: this.pieChartData2\r\n }\r\n ]\r\n }\r\n this.pieChart2 = echarts.init(document.getElementById('pieChart2'))\r\n option && this.pieChart2.setOption(option)\r\n window.addEventListener('resize', () => this.pieChart2.resize())\r\n this.pieChart2.on('click', params => {\r\n // this.openSubDialog('targetDetail')\r\n this.handleDetail('projectTable3')\r\n })\r\n },\r\n\r\n initLiquidfill() {\r\n let option = {}\r\n this.speedListData.forEach((item, index) => {\r\n option = {\r\n series: [\r\n {\r\n type: 'liquidFill', //水位图\r\n radius: '98%', //显示比例\r\n center: ['50%', '50%'], //中心点\r\n amplitude: 3, //水波振幅\r\n animationDuration: 1000,\r\n data: [item.reachRate], // data个数代表波浪数\r\n color: [\r\n {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: item.Gradient.map((color, offset) => {\r\n return {offset, color}\r\n }),\r\n globalCoord: false\r\n }\r\n ], //波浪颜色\r\n backgroundStyle: {\r\n color: item.bgColor2 //边框内部填充部分颜色\r\n },\r\n label: {\r\n //标签设置\r\n position: ['50%', '45%'],\r\n formatter: `${Math.ceil(item.reachRate * 100)}%`, //显示文本,\r\n textStyle: {\r\n fontSize: '16', //文本字号,\r\n color: '#fff'\r\n }\r\n },\r\n outline: {\r\n borderDistance: 0,\r\n itemStyle: {\r\n borderWidth: 0,\r\n opacity: 0.95,\r\n shadowColor: 'rgba(0, 0, 0, 0)'\r\n }\r\n }\r\n }\r\n ]\r\n }\r\n item.instance = echarts.init(\r\n document.getElementById(`liquidFill${index}`)\r\n )\r\n option && item.instance.setOption(option)\r\n window.addEventListener('resize', () => item.instance.resize())\r\n })\r\n },\r\n\r\n initReformBrand() {\r\n const chartDom = document.getElementById('reform-brand')\r\n this.reformBrandChart = echarts.init(chartDom)\r\n this.reformBrandOption = {\r\n grid: {\r\n //图表离外层盒子的距离\r\n top: '25%',\r\n bottom: 0,\r\n left: '1%',\r\n right: '2%',\r\n containLabel: true\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n backgroundColor: 'rgba(6, 47, 107, 1)',\r\n borderColor: 'rgba(2, 115, 233, 1)',\r\n textStyle: {\r\n color: '#fff'\r\n }\r\n },\r\n legend: {\r\n position: 'top',\r\n data: ['获全国肯定性评价', '获中央媒体深度专题报道'],\r\n inactiveColor: '#333333',\r\n borderRadius: 6,\r\n itemWidth: 20,\r\n itemHeight: 6,\r\n textStyle: {\r\n color: '#B1E3FF'\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n boundaryGap: true,\r\n axisTick: false,\r\n axisLine: {\r\n lineStyle: {\r\n color: 'rgba(154,199,220, 0.2)'\r\n }\r\n },\r\n axisLabel: {\r\n color: '#D7F1FF'\r\n },\r\n data: [\r\n '1月',\r\n '2月',\r\n '3月',\r\n '4月',\r\n '5月',\r\n '6月',\r\n '7月',\r\n '8月',\r\n '9月',\r\n '10月',\r\n '11月',\r\n '12月'\r\n ]\r\n },\r\n yAxis: {\r\n type: 'value',\r\n min: 0,\r\n splitNumber: 5,\r\n axisLabel: {\r\n color: '#D7F1FF'\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: 'rgba(154,199,220, 0.2)'\r\n }\r\n },\r\n splitLine: {\r\n lineStyle: {\r\n color: 'rgba(154,199,220, 0.2)'\r\n }\r\n }\r\n },\r\n color: ['#59C06C', 'rgba(255,152,0,1)'],\r\n series: [\r\n {\r\n name: '获全国肯定性评价',\r\n data: this.reformBrandData1,\r\n type: 'bar',\r\n barWidth: 6,\r\n itemStyle: {\r\n borderRadius: 5\r\n }\r\n },\r\n {\r\n name: '获中央媒体深度专题报道',\r\n data: this.reformBrandData2,\r\n type: 'line',\r\n symbol: 'emptyCircle',\r\n symbolSize: 4,\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: 'rgba(255,152,0,1)' // 0% 处的颜色\r\n },\r\n {\r\n offset: 0.4,\r\n color: 'rgba(255,152,0,0.3)' // 0% 处的颜色\r\n },\r\n {\r\n offset: 1,\r\n color: 'rgba(255, 181, 31, 0)' // 100% 处的颜色\r\n }\r\n ],\r\n global: false // 缺省为 false\r\n }\r\n }\r\n }\r\n ]\r\n }\r\n this.reformBrandOption &&\r\n this.reformBrandChart.setOption(this.reformBrandOption)\r\n window.addEventListener('resize', () => this.reformBrandChart.resize())\r\n },\r\n\r\n // 打开弹层\r\n openSubDialog(componentName, type) {\r\n this.currentTabComponent = dialogConfig.dialogOption[componentName]\r\n .componentName\r\n ? dialogConfig.dialogOption[componentName].componentName\r\n : componentName // 动态组件名称\r\n this.tableOptions = {\r\n ...dialogConfig.dialogOption[componentName].dataOptions,\r\n type\r\n } //table的查询参数\r\n this.dialogOption = dialogConfig.dialogOption[componentName].option //弹窗配置参数\r\n this.showEasy = true\r\n }\r\n }\r\n}\r\n",null]}