+
+
+
+
+
+
-
-
-
-
-
-
-
-
预警概况
+
+
+
+
项目总数:{{100}} 个
+
在建项目数:{{86}} 个
-
-
正在发生
+
+
+
+
+
+
+ 今日
+
+
+ 近七天
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 今日
+
+
+ 近七天
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{it.title}}
+ {{it.count}}次
+
+
+
+
+
+
+
暂无预警数据
+
+
+
+
+
+
+
+
+
+
+ 今日
+
+
+ 近七天
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
-
-
+
@@ -123,33 +273,407 @@
-
+
+
\ No newline at end of file
diff --git a/power/power.css b/power/power.css
index 04bf1e6..b517a7d 100644
--- a/power/power.css
+++ b/power/power.css
@@ -4,3 +4,185 @@
.app-power .power-center .screen-module .screen-two-2-2 {
height: 100%;
}
+.app-power .mon-over {
+ position: relative;
+}
+.app-power .mon-over .mon-over-bg {
+ position: absolute;
+ width: 100%;
+ height: 240px;
+}
+.app-power .mon-over .mon-over-bg svg {
+ position: absolute;
+ left: calc(50% - 20px);
+ top: 100px;
+ width: 40px;
+ height: 40px;
+ vertical-align: middle;
+ fill: currentColor;
+ overflow: hidden;
+}
+.app-power .mon-over .mon-over-bg .chart-gif {
+ width: 180px;
+ height: 180px;
+ top: 30px;
+ left: calc(50% - 90px);
+}
+.app-power .mon-over .mon-over-content .mon-over-content-item {
+ display: inline-flex;
+ width: calc(48% - 90px);
+ height: 115px;
+ justify-content: center;
+ flex-flow: column;
+}
+.app-power .mon-over .mon-over-content .mon-over-content-item.one {
+ align-items: end;
+ padding-right: 90px;
+}
+.app-power .mon-over .mon-over-content .mon-over-content-item.two {
+ align-items: start;
+ padding-left: 90px;
+}
+.app-power .mon-over .mon-over-content .mon-over-content-item .mv-title {
+ color: #a2c8f9;
+ line-height: 30px;
+ font-size: 16px;
+}
+.app-power .mon-over .mon-over-content .mon-over-content-item .mv-num {
+ color: #63baff;
+ font-size: 24px;
+ font-weight: bold;
+ font-style: italic;
+}
+.app-power .mon-over .mon-over-content .mon-over-content-item .mv-unit {
+ margin-left: 4px;
+ color: #a2c8f9;
+}
+.app-power .ele-load .ele-load-title {
+ position: relative;
+}
+.app-power .ele-load .ele-load-title .ele-load-area-sel {
+ position: absolute;
+ right: 0px;
+}
+.app-power .ele-trend .ele-trend-title {
+ position: relative;
+}
+.app-power .ele-trend .ele-trend-title .ele-trend-area-sel {
+ position: absolute;
+ right: 0px;
+}
+.app-power .current-trend .current-trend-title {
+ position: relative;
+}
+.app-power .current-trend .current-trend-title .current-trend-area-sel {
+ position: absolute;
+ right: 0px;
+}
+.app-power .warning-list .warning-item {
+ line-height: 36px;
+}
+.app-power .warning-list .warning-item .warning-text {
+ position: relative;
+ color: #a2c8f9;
+}
+.app-power .warning-list .warning-item .warning-text i {
+ color: yellow;
+}
+.app-power .warning-list .warning-item .warning-text .w-data {
+ position: absolute;
+ right: 0px;
+ font-style: italic;
+}
+.app-power .warning-list .warning-item .warning-text .w-data span {
+ font-size: 18px;
+ font-style: normal;
+ font-weight: bold;
+}
+.app-power .warning-list .warning-item .warning-chart {
+ position: relative;
+}
+.app-power .warning-list .warning-item .warning-chart .w-chart-bg {
+ background: #192c64c7;
+ border-radius: 4px;
+ height: 8px;
+}
+.app-power .warning-list .warning-item .warning-chart .w-chart-bg .w-chart-prc {
+ position: absolute;
+ height: 8px;
+ border-radius: 4px;
+ background: #810707;
+}
+.app-power .warn-list {
+ max-height: 310px;
+ overflow-y: auto;
+ margin-top: 20px;
+}
+.app-power .warn-list .warn-item {
+ color: #c0dafb9c;
+ padding: 0px 10px;
+ cursor: pointer;
+}
+.app-power .warn-list .warn-item.active {
+ background: #097fca3b;
+}
+.app-power .warn-list .warn-item .warn-item-title {
+ font-size: 18px;
+ margin: 10px 0px;
+ color: #a2c8f9;
+ font-weight: bold;
+ text-shadow: 1px -1px 1px #e11f1f;
+}
+.app-power .warn-list .warn-item .w-c-row1 {
+ display: flex;
+ margin-bottom: 10px;
+}
+.app-power .warn-list .warn-item .w-c-row1 .w-c-bg {
+ background: url("wc_bg.png") no-repeat;
+ background-size: 100%;
+ width: 80px;
+ height: 80px;
+ position: relative;
+}
+.app-power .warn-list .warn-item .w-c-row1 .w-c-bg .icon {
+ position: absolute;
+ top: 15px;
+ left: 15px;
+ width: 50px !important;
+ height: 50px !important;
+}
+.app-power .warn-list .warn-item .w-c-row1 .w-c-bg .icon path {
+ fill: #32aabf !important;
+}
+.app-power .warn-list .warn-item .w-c-row1 .w-c-row1-t {
+ color: #a15050;
+ font-size: 16px;
+ font-weight: bold;
+}
+.app-power .warn-list .warn-item .w-c-row2 {
+ line-height: 24px;
+}
+.app-power .warn-list .warn-item .w-c-row2 .w-c-row2-l {
+ display: inline-block;
+ overflow: hidden;
+}
+.app-power .warn-list .warn-item .w-c-row2 .w-c-row2-t {
+ display: inline-block;
+ width: calc(100% - 100px);
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
+.app-power .el-select .el-input__inner {
+ background: transparent;
+ border: none;
+ color: #a2c8f9;
+}
+.app-power .scroll::-webkit-scrollbar {
+ width: 8px;
+ height: 8px;
+}
+.app-power .scroll::-webkit-scrollbar-thumb {
+ background-color: #01a9ff;
+ border-radius: 4px;
+}
diff --git a/power/power.less b/power/power.less
index 17bc33e..8598696 100644
--- a/power/power.less
+++ b/power/power.less
@@ -7,4 +7,202 @@
}
}
}
+ .mon-over {
+ position: relative;
+ .mon-over-bg {
+ position: absolute;
+ width: 100%;
+ height: 240px;
+ svg {
+ position: absolute;
+ left: calc(50% - 20px);
+ top: 100px;
+ width: 40px;
+ height: 40px;
+ vertical-align: middle;
+ fill: currentColor;
+ overflow: hidden;
+ }
+ .chart-gif {
+ width: 180px;
+ height: 180px;
+ top: 30px;
+ left: calc(50% - 90px);
+ }
+ }
+ .mon-over-content {
+ .mon-over-content-item {
+ display: inline-flex;
+ width: calc(48% - 90px);
+ height: 115px;
+ justify-content: center;
+ flex-flow: column;
+
+ &.one {
+ align-items: end;
+ padding-right: 90px;
+ }
+ &.two {
+ align-items: start;
+ padding-left: 90px;
+ }
+ .mv-title {
+ color: #a2c8f9;
+ line-height: 30px;
+ font-size: 16px;
+ }
+ .mv-num {
+ color: #63baff;
+ font-size: 24px;
+ font-weight: bold;
+ font-style: italic;
+ }
+ .mv-unit {
+ margin-left: 4px;
+ color: #a2c8f9;
+ }
+ }
+ }
+ }
+ .ele-load {
+ .ele-load-title {
+ position: relative;
+ .ele-load-area-sel {
+ position: absolute;
+ right: 0px;
+ }
+ }
+ }
+ .ele-trend {
+ .ele-trend-title {
+ position: relative;
+ .ele-trend-area-sel {
+ position: absolute;
+ right: 0px;
+ }
+ }
+ }
+ .current-trend {
+ .current-trend-title {
+ position: relative;
+ .current-trend-area-sel {
+ position: absolute;
+ right: 0px;
+ }
+ }
+ }
+ .warning-list {
+ .warning-item {
+ line-height: 36px;
+ .warning-text {
+ position: relative;
+ color: #a2c8f9;
+ i {
+ color: yellow;
+ }
+ .w-data {
+ position: absolute;
+ right: 0px;
+ font-style: italic;
+ span {
+ font-size: 18px;
+ font-style: normal;
+ font-weight: bold;
+ }
+ }
+ }
+ .warning-chart {
+ position: relative;
+ .w-chart-bg {
+ background: #192c64c7;
+ border-radius: 4px;
+ height: 8px;
+ .w-chart-prc {
+ position: absolute;
+ height: 8px;
+ border-radius: 4px;
+ background: #810707;
+ }
+ }
+ }
+ }
+ }
+
+ .warn-list {
+ max-height: 310px;
+ overflow-y: auto;
+ margin-top: 20px;
+
+ .warn-item {
+ color: #c0dafb9c;
+ padding:0px 10px;
+ cursor: pointer;
+ &.active{
+ background: #097fca3b;
+ }
+ .warn-item-title {
+ font-size: 18px;
+ margin: 10px 0px;
+ color: #a2c8f9;
+ font-weight: bold;
+ text-shadow: 1px -1px 1px #e11f1f;
+ }
+ .w-c-row1 {
+ display: flex;
+ margin-bottom: 10px;
+ .w-c-bg {
+ background: url("./wc_bg.png") no-repeat;
+ background-size: 100%;
+ width: 80px;
+ height: 80px;
+ position: relative;
+ .icon {
+ position: absolute;
+ top: 15px;
+ left: 15px;
+ width: 50px !important;
+ height: 50px !important;
+ path {
+ fill: #32aabf !important;
+ }
+ }
+ }
+ .w-c-row1-t {
+ color: #a15050;
+ font-size: 16px;
+ font-weight: bold;
+ }
+ }
+ .w-c-row2 {
+ line-height: 24px;
+ .w-c-row2-l {
+ display: inline-block;
+ overflow: hidden;
+ }
+ .w-c-row2-t {
+ display: inline-block;
+ width: calc(100% - 100px);
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+ }
+ }
+ }
+ .el-select {
+ .el-input__inner {
+ background: transparent;
+ border: none;
+ color: #a2c8f9;
+ }
+ }
+
+ .scroll::-webkit-scrollbar {
+ width: 8px;
+ height: 8px;
+ }
+ .scroll::-webkit-scrollbar-thumb {
+ background-color: rgb(1, 169, 255);
+ border-radius: 4px;
+ }
}
diff --git a/power/powerChart.js b/power/powerChart.js
new file mode 100644
index 0000000..e2d8868
--- /dev/null
+++ b/power/powerChart.js
@@ -0,0 +1,51 @@
+Vue.component("power-chart", {
+ template: `
+
+ `,
+ props: {
+ id: {
+ type: String,
+ default: "barChart1",
+ },
+ className: {
+ type: String,
+ default: "",
+ },
+ width: {
+ type: String,
+ default: "400px",
+ },
+ height: {
+ type: String,
+ default: "400px",
+ },
+ render: {
+ type: Function,
+ },
+ },
+ data() {
+ return {
+ chart: null,
+ };
+ },
+ mounted() {
+ this.chart = window.echarts.init(document.getElementById(this.id));
+ setTimeout(() => {
+ this.setOption({});
+ }, 400);
+ // 大小自适应
+ window.addEventListener("resize", () => {
+ this.chart.resize();
+ });
+ },
+ methods: {
+ setOption(opt) {
+ if (this.render) {
+ opt = this.render(opt);
+ }
+ this.chart.setOption(opt);
+ },
+ },
+});
diff --git a/power/wc_bg.png b/power/wc_bg.png
new file mode 100644
index 0000000..2dbc1d1
Binary files /dev/null and b/power/wc_bg.png differ
diff --git a/projectOverviewProject.html b/projectOverviewProject.html
deleted file mode 100644
index 65779d4..0000000
--- a/projectOverviewProject.html
+++ /dev/null
@@ -1,2160 +0,0 @@
-
-
-
-
-
-
-
-
-
数字化集成管控平台
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
项目简介
-

-
-
-
-
-
-
-
建设单位
-
- {{buildUnit}}
- {{buildUnit}}
-
-
{{buildUnitManagerName}}
- {{phone_show == 0 ? buildUnitManagerPhone : ''}}
-
-
-
-
-
-
-
-
-
设计单位
-
- {{designUnit}}
-
- {{designUnit}}
-
-
{{designUnitManagerName}}
- {{phone_show == 0 ? designUnitManagerPhone : ''}}
-
-
-
-
-
-
-
-
-
-
-
总包单位
-
- {{allUnit}}
- {{allUnit}}
-
-
{{allUnitManagerName}}
- {{phone_show == 0 ? allUnitManagerPhone : ''}}
-
-
-
-
-
-
-
-
-
监理单位
-
-
- {{supervisorUnit}}
-
- {{supervisorUnit}}
-
-
{{supervisorUnitManagerName}}
- {{phone_show == 0 ? supervisorUnitManagerPhone : ''}}
-
-
-
-
-
-
-
-
-
-
-
检测机构
-
- {{testingUnit}}
-
- {{testingUnit}}
-
-
{{testingUnitManagerName}}
- {{phone_show == 0 ? testingUnitManagerPhone : ''}}
-
-
-
-
-
-
-
-
-
勘察单位
-
- {{surveyUnit}}
-
- {{surveyUnit}}
-
-
{{surveyUnitManagerName}}
- {{phone_show == 0 ? surveyUnitManagerPhone : ''}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
![]()
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
![]()
-
-
-
{{showOverviewLabel}}
-
{{showOverviewData.countNum}} 台
-
-
-
-
-
-
-
自有
-
{{showOverviewData.zyNum}}
-
-
-
-
-
-
租赁
-
{{showOverviewData.zlNum}}
-
-
-
-
-
-
分包
-
{{showOverviewData.fbNum}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
计划开工日期/实际开工日期
-
{{projectOverview.planStartTime}}/{{projectOverview.actualStartDate}}
-
-
暂无数据
-
-
-
-
-
-
-
-
-
计划竣工日期
-
{{projectOverview.planEndDate}}
-
-
暂无数据
-
-
-
-
-
-
-
合同工期
-
{{projectOverview.contractMoney}}
- 天
-
-
暂无数据
-
-
-
-
-
-
-
-
-
本月完成
-
{{projectOverview.monthMoney}}
- 万元
-
-
暂无数据
-
-
-
-
-
-
-
年累完成
-
{{projectOverview.yearMoney}}
- 万元
-
-
暂无数据
-
-
-
-
-
-
-
开累完成
-
{{projectOverview.kaileiMoney}}
- 万元
-
-
暂无数据
-
-
-
-
-
-
-
-
-
工程造价
-
{{projectOverview.allMoney}}
- 万元
-
-
暂无数据
-
-
-
-
-
-
-
建筑面积
-
{{projectOverview.allArea}}
- 平方米
-
-
暂无数据
-
-
-
-
-
-
-
占地面积
-
{{projectOverview.floorArea}}
- 平方米
-
-
暂无数据
-
-
-
-
-
-
-
-
-
-
计划开工日期/实际开工日期
-
{{projectOverview.planStartTime}}/{{projectOverview.actualStartDate}}
-
-
暂无数据
-
-
-
-
-
-
-
-
-
计划竣工日期
-
{{projectOverview.planEndDate}}
-
-
暂无数据
-
-
-
-
-
-
-
合同工期
-
{{projectOverview.contractMoney}}
- 天
-
-
暂无数据
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
{{item.danger_name}}
-
-
-
-
-
-
{{item.title}}
-
-
-
计划:{{item.planTime}}
-
实际:{{item.actualTime ==
- ''?'--':item.actualTime}}
-
-
正常完成
-
-
逾期{{item.expectDays}}天
-
-
-
-
-
-
-
-
-
-
-
-
-
-
第
-
-
{{workSafetyTime}}
-
-
-
-
-
-
{{showDay(0)}}
-
-
![]()
-
-
- {{(cityWeather.showapi_res_body ? cityWeather.showapi_res_body.f1.night_air_temperature : 0) + ' ℃ ~ '
- + (cityWeather.showapi_res_body? cityWeather.showapi_res_body.f1.day_air_temperature : 0) + " ℃"}}
-
-
-
-
{{showDay(1)}}
-
-
![]()
-
-
- {{(cityWeather.showapi_res_body ? cityWeather.showapi_res_body.f2.night_air_temperature : 0) + ' ℃ ~ '
- + (cityWeather.showapi_res_body ? cityWeather.showapi_res_body.f2.day_air_temperature : 0) + " ℃"}}
-
-
-
-
{{showDay(2)}}
-
-
![]()
-
-
- {{(cityWeather.showapi_res_body ? cityWeather.showapi_res_body.f3.night_air_temperature : 0) + ' ℃ ~ '
- + (cityWeather.showapi_res_body ? cityWeather.showapi_res_body.f3.day_air_temperature : 0) + " ℃"}}
-
-
-
-
-
-
-
-
-
-

-
-
-
-
当前气压
-
{{cityWeather.environment ? cityWeather.environment.hpa : 0}} hPa
-
-
-
-
-
-
-
-

-
-
-
-
当前PM10
-
{{cityWeather.environment ? cityWeather.environment.pm10 : 0}} ug/m³
-
-
-
-
-
-
-
-

-
-
-
-
当前温度
-
{{cityWeather.environment ? cityWeather.environment.temperature : 0}} ℃
-
-
-
-
-
-
-
-

-
-
-
-
当前湿度
-
{{cityWeather.environment ? cityWeather.environment.humidity : 0}} %RH
-
-
-
-
-
-
-
-
-
-
-
今日告警数
-
-
{{showWarnDeviceNum}} 条
-
-
-
本周告警数
-
-
{{showWarnNum}} 条
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file