diff --git a/package.json b/package.json index d3c7a53e..14cd1c3b 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "babylonjs": "^6.16.0", "babylonjs-gui": "^6.16.0", "babylonjs-loaders": "^6.16.0", + "cesium": "1.75", "codemirror": "5.65.5", "core-js": "3.29.0", "cropperjs": "1.5.13", diff --git a/public/img/enp_blue/CEMS.png b/public/img/enp_blue/CEMS.png new file mode 100644 index 00000000..c3a0d43c Binary files /dev/null and b/public/img/enp_blue/CEMS.png differ diff --git a/public/img/enp_blue/TSP.png b/public/img/enp_blue/TSP.png new file mode 100644 index 00000000..8608421f Binary files /dev/null and b/public/img/enp_blue/TSP.png differ diff --git a/public/img/enp_blue/ccq.png b/public/img/enp_blue/ccq.png new file mode 100644 index 00000000..35fde238 Binary files /dev/null and b/public/img/enp_blue/ccq.png differ diff --git a/public/img/enp_blue/dxscsb.png b/public/img/enp_blue/dxscsb.png new file mode 100644 index 00000000..6c236846 Binary files /dev/null and b/public/img/enp_blue/dxscsb.png differ diff --git a/public/img/enp_blue/gwfkx.png b/public/img/enp_blue/gwfkx.png new file mode 100644 index 00000000..0583ce6e Binary files /dev/null and b/public/img/enp_blue/gwfkx.png differ diff --git a/public/img/enp_blue/gxswq.png b/public/img/enp_blue/gxswq.png new file mode 100644 index 00000000..3c9068dc Binary files /dev/null and b/public/img/enp_blue/gxswq.png differ diff --git a/public/img/enp_blue/hwc.png b/public/img/enp_blue/hwc.png new file mode 100644 index 00000000..e22979ae Binary files /dev/null and b/public/img/enp_blue/hwc.png differ diff --git a/public/img/enp_blue/jcwz.png b/public/img/enp_blue/jcwz.png new file mode 100644 index 00000000..9b493c76 Binary files /dev/null and b/public/img/enp_blue/jcwz.png differ diff --git a/public/img/enp_blue/jksb.png b/public/img/enp_blue/jksb.png new file mode 100644 index 00000000..8a7fae09 Binary files /dev/null and b/public/img/enp_blue/jksb.png differ diff --git a/public/img/enp_blue/sssb.png b/public/img/enp_blue/sssb.png new file mode 100644 index 00000000..5b21cbc6 Binary files /dev/null and b/public/img/enp_blue/sssb.png differ diff --git a/public/img/enp_blue/tltx.png b/public/img/enp_blue/tltx.png new file mode 100644 index 00000000..acaa619a Binary files /dev/null and b/public/img/enp_blue/tltx.png differ diff --git a/public/img/enp_blue/xct.png b/public/img/enp_blue/xct.png new file mode 100644 index 00000000..10e9aff5 Binary files /dev/null and b/public/img/enp_blue/xct.png differ diff --git a/public/img/enp_blue/zyscsb.png b/public/img/enp_blue/zyscsb.png new file mode 100644 index 00000000..f7d811b4 Binary files /dev/null and b/public/img/enp_blue/zyscsb.png differ diff --git a/public/index.html b/public/index.html index ce6b7b5f..aac5a132 100644 --- a/public/index.html +++ b/public/index.html @@ -14,18 +14,11 @@ <%= VUE_APP_TITLE %> + - + - - - - - - + diff --git a/src/App.vue b/src/App.vue index 154dd623..a43584e2 100644 --- a/src/App.vue +++ b/src/App.vue @@ -156,19 +156,19 @@ export default { .enpMenu.el-dropdown-menu { padding: 0.7vh 0.7vh 0.2vh; - background: linear-gradient(to right, #10608e, #1dabfd); - // background: linear-gradient(to right, #053949, #107b90); + //background: linear-gradient(to right, #10608e, #1dabfd); + background: linear-gradient(to right, #053949, #107b90); } .enpMenu>.el-dropdown-menu__item { margin-bottom: 0.5vh; - background: linear-gradient(to right, #29d, #1dabfd); - // background: linear-gradient(to right, #1b8fa4, #107b90); + //background: linear-gradient(to right, #29d, #1dabfd); + background: linear-gradient(to right, #1b8fa4, #107b90); } .enpMenu>.el-dropdown-menu__item:not(.is-disabled):focus { - background: linear-gradient(to right, #10608e, #1dabfd); - // background: linear-gradient(to right, #053949, #107b90); + //background: linear-gradient(to right, #10608e, #1dabfd); + background: linear-gradient(to right, #053949, #107b90); color: #ffffff; } diff --git a/src/main.js b/src/main.js index e8a9f3f6..df287b36 100644 --- a/src/main.js +++ b/src/main.js @@ -13,9 +13,8 @@ import preventReClick from './utils/preventReClick' import Print from './utils/print2' import Xlsx from './utils/xlsx' import DataVVue3 from '@kjgl77/datav-vue3' -import * as Cesium from '../public/cesium/Cesium.js' -import '../public/cesium/Widgets/widgets.css' -// Vue.prototype.Cesium = Cesium +import * as Cesium from 'cesium' +// import 'cesium/Source/Widgets/widgets.css' const app = createApp(App); diff --git a/src/views/bigScreen/cesiumtest.vue b/src/views/bigScreen/cesiumtest.vue index 0cd0d359..345703ef 100644 --- a/src/views/bigScreen/cesiumtest.vue +++ b/src/views/bigScreen/cesiumtest.vue @@ -1,14 +1,51 @@ - - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/bigScreen/index_enp_blue.vue b/src/views/bigScreen/index_enp_blue.vue index 2c3aa04c..7e2c78a9 100644 --- a/src/views/bigScreen/index_enp_blue.vue +++ b/src/views/bigScreen/index_enp_blue.vue @@ -103,7 +103,7 @@
- +
@@ -114,9 +114,7 @@
- - -
@@ -259,7 +235,11 @@
-
+
+
+ {{ item.name }} + {{ item.value }} +
@@ -275,13 +255,12 @@ -
-
生产设备
-
治理设备
-
监测设备
-
监控设备
- -
+
@@ -374,7 +353,7 @@ export default { loadedPercent: 0, showKgcet: true, currentLightMesh: null, - activeBtns: 0, + // activeBtns: 10, activeDrawerName: '', activeIndex: 0, activeSection: 2, @@ -392,7 +371,7 @@ export default { }, legend: { // orient: 'vertical', - right: 10, + center:true, bottom: 1, data: ['新能源', '其他'] }, @@ -438,25 +417,21 @@ export default { table1Visible: true, lineData: [], liData1: ['', '设备名称', '颗粒物', 'SO₂', 'NOx'], - refValue2: 'moocBox2', table2Visible: true, lineData2: [], liData2: ['', '设备名称', 'TSP测量值'], - refValue3: 'moocBox3', table3Visible: true, lineData3: [], liData3: ['', '设备名称', 'PM10', 'PM2.5'], - - eqNumData: { sc: 0, jc: 0, zl: 0, jk: 0 - }, + cemsDataList:[], cemsData: [], tspData: [], wData: [], @@ -493,7 +468,7 @@ export default { //有组织排放口实时监测清单数据( CEMS) getleft1Data() { let that = this; - that.$API.em.equipment.list.req({ type: 20, cate__code: 'cems', has_envdata: 'yes' }).then(res => { + that.$API.em.equipment.list.req({ type: 40, cate__code: 'cems', has_envdata: 'yes' }).then(res => { that.cemsDataList = res.results; that.cemsData = res.results[0]; let lineData = []; @@ -518,19 +493,23 @@ export default { }, //接入设备数量 getleft2Data() { + //生产 this.$API.em.equipment.list.req({ type: 10, query: {} }).then((res1) => { // console.log(res1) this.eqNumData.sc = res1.count; }) - this.$API.em.equipment.list.req({ type: 20, query: {} }).then((res2) => { + //监测 + this.$API.em.equipment.list.req({ type: 40, query: {} }).then((res2) => { // console.log(res2) this.eqNumData.jc = res2.count; }) + //治理 this.$API.em.equipment.list.req({ type: 30, query: {} }).then((res3) => { // console.log(res3) this.eqNumData.zl = res3.count; }) - this.$API.em.equipment.list.req({ type: 40, query: {} }).then((res4) => { + //监控 + this.$API.em.equipment.list.req({ type: 50, query: {} }).then((res4) => { // console.log(res4) this.eqNumData.jk = res4.count; }) @@ -538,7 +517,7 @@ export default { //无组织排放口实时监测数据(TSP) getleft3Data() { let that = this; - that.$API.em.equipment.list.req({ type: 20, cate__code: 'tsp', has_envdata: 'yes' }).then(res => { + that.$API.em.equipment.list.req({ type: 40, cate__code: 'tsp', has_envdata: 'yes' }).then(res => { that.tspDataList = res.results; that.tspData = res.results[0]; let lineData = []; @@ -558,9 +537,8 @@ export default { //空气微站实时监测---(小微站) getright1Data() { let that = this; - that.$API.em.equipment.list.req({ type: 20, cate__code: 'aqms', has_envdata: 'yes' }).then(res => { + that.$API.em.equipment.list.req({ type: 40, cate__code: 'aqms', has_envdata: 'yes' }).then(res => { that.wData = res.results; - // console.log('wData', this.wData) let lineData = []; res.results.forEach((item, index) => { let arr = [], obj1 = {}, obj2 = {}, obj3 = {}; @@ -673,13 +651,20 @@ export default { this.engine.resize(); } }, - bindBtnClass(index) { - let classInfo = { btns: true, btnsActive: false }; - if (index == this.activeBtns) { - classInfo.btnsActive = true; - } - return classInfo; - }, + // bindBtnClass(index) { + // let classInfo = { btns: true, btnsActive: false }; + // if (index == this.activeBtns) { + // classInfo.btnsActive = true; + // } + // return classInfo; + // }, + //切换设备类型 + // equipmentTypeChange(index) { + // let that = this; + // that.activeBtns = index; + // // this.$refs.typeChange.setData(index); + // // this.$refs.cesiumDiv.typeChange(index); + // }, // 动态绑定Class bindClass(index) { let that = this; @@ -832,32 +817,6 @@ header { padding-left: 1vw; font-size: 2vh; } - -.btns_enp { - bottom: 7vh; - left: 28.7vw; - width: 42.6vw; - height: 4.3vh; - position: absolute; - display: flex; - justify-content: space-between; -} - -.btns { - width: 8vw; - height: 5vh; - font-size: 2vh; - line-height: 4.9vh; - background-image: url('/public/img/enp_blue/btn.png'); - background-size: 100% 100%; - text-align: center; - color: #ffffff; -} - -.btns.btnsActive { - background-image: url('/public/img/enp_blue/btn_active.png'); -} - .bottom_enp { left: 0; bottom: 0; @@ -1071,12 +1030,14 @@ header { } #pieChart { - /* background-image: url('/public/img/enp_blue/huan_bg.png'); - background-size: 75%; - background-repeat: no-repeat; - background-position: center; */ + flex: 1; +} +.todyCarItem{ + color: white; + font-size: 16px; + display: flex; + flex-direction: column; } - .pieDataItem { width: 50%; height: 49%; @@ -1095,73 +1056,6 @@ header { padding-left: 0.2vw; } -.pieDataItem:nth-of-type(1) { - .pieDataText { - border-left: 0.5vh solid #0091ff; - } - - .pieDataNumber { - border-left: 0.1vh solid #0091ff; - } -} - -.pieDataItem:nth-of-type(2) { - .pieDataText { - border-left: 0.5vh solid #0Ed877; - } - - .pieDataNumber { - border-left: 0.1vh solid #0Ed877; - } -} - -.pieDataItem:nth-of-type(3) { - .pieDataText { - border-left: 0.5vh solid #ffbf60; - } - - .pieDataNumber { - border-left: 0.1vh solid #ffbf60; - } -} - -.pieDataItem:nth-of-type(4) { - .pieDataText { - border-left: 0.5vh solid #67dbff; - } - - .pieDataNumber { - border-left: 0.1vh solid #67dbff; - } -} - -.pieDataNumber { - height: 3vh; - line-height: 2.9vh; - font-size: 2vh; - color: #ffffff; - padding-left: 0.2vw; - border-left: 0.1vh solid #0070FF; -} - -.beforeLine { - width: 2px; - height: 30%; - position: absolute; - background: #0070FF; -} - - -.title_s { - height: 3.7vh; - line-height: 3.7vh; - color: #ffffff; - margin-top: 1vh; - font-size: 1.4vh; - text-align: center; - background-image: url('/public/img/enp_blue/little_title.png'); -} - .status { height: 2.6vh; display: flex; @@ -1170,13 +1064,25 @@ header { color: #ffffff; justify-content: space-between; } - +/* table相关样式 */ .tableHear { display: flex; color: #ffffff; margin-bottom: 0.5vh; } - +.tableBody { + padding: 0 1vh; +} +.badyItem { + height: 4.6vh; + line-height: 4.6vh; + margin-bottom: 1.4vh; + border-radius: 3px; + color: #ffffff; + font-size: 1.4vh; + display: flex; + border: 1px solid #0091ff; +} .rowItem { display: flex; color: #ffffff; @@ -1212,92 +1118,9 @@ header { box-sizing: border-box; background: rgba(255, 255, 255, .1); } +/* table */ -.right_one { - height: 100%; - display: flex; - color: #ffffff; - position: relative; - justify-content: space-between; - background: url('/public/img/enp_blue/right_one.svg') no-repeat; - background-size: 100% 100%; -} - -.leftNumbers { - padding: 2.5vh 1vh; -} - -.rightNumbers { - padding: 2.5vh 1vh; - text-align: right; -} - -.numberItem { - height: 33.3%; - line-height: 1.6vh; -} - -.numberItemName { - font-size: 1.4vh; - line-height: 4vh; -} - -.numberItemNum { - font-size: 1.6vh; -} - -.numberItemUnit { - font-size: 1.2vh; -} - -.ballImg { - position: absolute; - width: 5vw; - height: 5vw; - background-image: url('/public/img/enp_blue/ball.png'); - background-size: cover; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); -} - -.right_one_status { - top: 50%; - left: 50%; - width: 100%; - z-index: 10; - color: #ffffff; - font-size: 2vh; - text-align: center; - position: absolute; - transform: translate(-50%, -50%); -} - -/* right2 */ -.tableBody { - padding: 0 1vh; -} - -.badyItem { - height: 4.6vh; - line-height: 4.6vh; - margin-bottom: 1.4vh; - border-radius: 3px; - color: #ffffff; - font-size: 1.4vh; - display: flex; - border: 1px solid #0091ff; -} - -/* right2 */ - -/* 表格 */ -.drawer_container { - background-image: url('/public/img/enp_blue/tableBg.png'); -} - -/* 表格 */ - +/* 左右两边border,暂时没展示 */ .left_border { width: 1vh; height: 70vh; @@ -1317,12 +1140,6 @@ header { background-size: cover; background-image: url('/public/img/enp_blue/right_border.png'); } +/* 左右两边border,暂时没展示 */ -.pageClass { - width: 100%; - height: 89vh; - position: absolute; - bottom: 0; - left: 0; -} \ No newline at end of file