diff --git a/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordAlarmRuleController.java b/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordAlarmRuleController.java index 34ef5e3e..adf4498d 100644 --- a/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordAlarmRuleController.java +++ b/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordAlarmRuleController.java @@ -58,6 +58,12 @@ public class RecordAlarmRuleController extends BaseController { public AjaxResult getInfo(@PathVariable("objId") Long objId) { return success(recordAlarmRuleService.selectRecordAlarmRuleByObjId(objId)); } + @GetMapping(value = "/energyType/{energyType}") + public AjaxResult getInfoList(@PathVariable("energyType") Long energyType) { + RecordAlarmRule rule = new RecordAlarmRule(); + rule.setEnergyType(energyType); + return success(recordAlarmRuleService.selectRecordAlarmRuleList(rule)); + } /** * 新增异常告警规则 diff --git a/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordDnbInstantController.java b/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordDnbInstantController.java index f8fde580..bc9a34f0 100644 --- a/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordDnbInstantController.java +++ b/hw-modules/hw-ems/src/main/java/com/hw/ems/record/controller/RecordDnbInstantController.java @@ -77,6 +77,15 @@ public class RecordDnbInstantController extends BaseController { return getDataTable(list); } + @PostMapping("/listLine") + @ResponseBody + public List listLine(@RequestBody RecordDnbInstant recordDnbInstant) + { +// startPage(); + List list = recordDnbInstantService.selectRecordDnbInstantList(recordDnbInstant); + return list; + } + /** * 获取最新实时电数据 */ diff --git a/hw-modules/hw-ems/src/main/java/com/hw/ems/report/controller/dataAnalysisController.java b/hw-modules/hw-ems/src/main/java/com/hw/ems/report/controller/dataAnalysisController.java index 57e97c13..cba8814f 100644 --- a/hw-modules/hw-ems/src/main/java/com/hw/ems/report/controller/dataAnalysisController.java +++ b/hw-modules/hw-ems/src/main/java/com/hw/ems/report/controller/dataAnalysisController.java @@ -6,6 +6,7 @@ import com.hw.common.core.web.domain.AjaxResult; import com.hw.common.core.web.page.TableDataInfo; import com.hw.ems.base.domain.BaseLineLoss; import com.hw.ems.base.utils.ExportExcelUtil; +import com.hw.ems.record.domain.RecordDnbInstant; import com.hw.ems.report.domain.ExportReport; import com.hw.ems.report.service.IDataAnalysisService; import org.springframework.beans.factory.annotation.Autowired; @@ -57,6 +58,12 @@ public class dataAnalysisController extends BaseController Map result = dataAnalysisService.energyMomAnalysisData(paramMap); return AjaxResult.success(result); } +// @ResponseBody + @GetMapping("/queryData") + public AjaxResult queryData(@RequestParam(required = false) Map paramMap){ + List list = dataAnalysisService.queryData(paramMap); + return AjaxResult.success(list); + } /** * 同比分析 diff --git a/hw-modules/hw-ems/src/main/java/com/hw/ems/report/mapper/ReportPointDnbMapper.java b/hw-modules/hw-ems/src/main/java/com/hw/ems/report/mapper/ReportPointDnbMapper.java index eb53f103..ce498f28 100644 --- a/hw-modules/hw-ems/src/main/java/com/hw/ems/report/mapper/ReportPointDnbMapper.java +++ b/hw-modules/hw-ems/src/main/java/com/hw/ems/report/mapper/ReportPointDnbMapper.java @@ -1,6 +1,7 @@ package com.hw.ems.report.mapper; +import com.hw.ems.record.domain.RecordDnbInstant; import com.hw.ems.report.domain.ReportPointDnb; import com.hw.ems.report.domain.ReportPointDnbDTO; @@ -78,6 +79,8 @@ public interface ReportPointDnbMapper */ List> energyStatisticsData(Map map); + List queryData(Map paramMap); + /** * 能耗统计返回数据 * @param map diff --git a/hw-modules/hw-ems/src/main/java/com/hw/ems/report/service/impl/DataAnalysisServiceImpl.java b/hw-modules/hw-ems/src/main/java/com/hw/ems/report/service/impl/DataAnalysisServiceImpl.java index e1625f99..d5431349 100644 --- a/hw-modules/hw-ems/src/main/java/com/hw/ems/report/service/impl/DataAnalysisServiceImpl.java +++ b/hw-modules/hw-ems/src/main/java/com/hw/ems/report/service/impl/DataAnalysisServiceImpl.java @@ -13,6 +13,7 @@ import com.hw.ems.base.mapper.BaseLineMonitorMapper; import com.hw.ems.base.mapper.BaseMonitorInfo1Mapper; import com.hw.ems.base.mapper.BaseTypeRelationMapper; import com.hw.ems.base.service.IBaseMonitorInfoService; +import com.hw.ems.record.domain.RecordDnbInstant; import com.hw.ems.report.domain.ExportReport; import com.hw.ems.report.domain.ReportPointDnb; import com.hw.ems.report.domain.ReportPointWater; @@ -955,6 +956,11 @@ public class DataAnalysisServiceImpl implements IDataAnalysisService { return result; } + @Override + public List queryData(Map paramMap) { + return reportPointDnbMapper.queryData(paramMap); + } + /** * 层级导出报表 * @param paramMap diff --git a/hw-modules/hw-ems/src/main/resources/mapper/report/ReportPointDnbMapper.xml b/hw-modules/hw-ems/src/main/resources/mapper/report/ReportPointDnbMapper.xml index 14eceda9..04807226 100644 --- a/hw-modules/hw-ems/src/main/resources/mapper/report/ReportPointDnbMapper.xml +++ b/hw-modules/hw-ems/src/main/resources/mapper/report/ReportPointDnbMapper.xml @@ -397,6 +397,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ) ert group by pointTime, priceType + diff --git a/hw-ui/src/api/ems/base/RingCounty.js b/hw-ui/src/api/ems/base/RingCounty.js index aac19b4d..62db45f2 100644 --- a/hw-ui/src/api/ems/base/RingCounty.js +++ b/hw-ui/src/api/ems/base/RingCounty.js @@ -9,6 +9,13 @@ export function dnbCountingData(query) { params: query }) } +export function queryData1(query) { + return request({ + url: '/ems/report/analysis/queryData', + method: 'get', + params: query + }) +} // 查询部门下拉树结构 export function deptTreeSelect() { diff --git a/hw-ui/src/api/ems/base/exception/rule.js b/hw-ui/src/api/ems/base/exception/rule.js index fa13e40a..8d2ae246 100644 --- a/hw-ui/src/api/ems/base/exception/rule.js +++ b/hw-ui/src/api/ems/base/exception/rule.js @@ -8,6 +8,12 @@ export function listRule(query) { params: query }) } +export function energyType(energyType) { + return request({ + url: '/ems/record/alarmRule/energyType/' + energyType, + method: 'get' + }) +} // 查询异常告警规则详细 export function getRule(objId) { diff --git a/hw-ui/src/views/ems/base/Energystatistics/index.vue b/hw-ui/src/views/ems/base/Energystatistics/index.vue index 06c7b62e..c3ee967b 100644 --- a/hw-ui/src/views/ems/base/Energystatistics/index.vue +++ b/hw-ui/src/views/ems/base/Energystatistics/index.vue @@ -85,16 +85,16 @@ >筛选计量设备 - - - - - - - - - - + + 导出 +
合计电量:
@@ -639,7 +639,10 @@ export default { /** 导出按钮操作 */ handleExport() { - handleExport("bootstrap-table", "能耗统计", true); + // handleExport("bootstrap-table", "能耗统计", true); + this.download('ems/report/analysis/classificationExport', { + ...this.queryParams + }, `energyStatistics${new Date().getTime()}.xlsx`) }, }, }; diff --git a/hw-ui/src/views/ems/base/HistoryElectricity/index.vue b/hw-ui/src/views/ems/base/HistoryElectricity/index.vue index 234769cb..37d823d9 100644 --- a/hw-ui/src/views/ems/base/HistoryElectricity/index.vue +++ b/hw-ui/src/views/ems/base/HistoryElectricity/index.vue @@ -459,9 +459,9 @@ export default { let paramsexport = JSON.parse(JSON.stringify(this.queryParams)); delete paramsexport.pageSize; delete paramsexport.pageNum; - this.download('/energy/record/dnbInstant/export', { + this.download('/ems/record/dnbInstant/export', { ...paramsexport - }, `user_${new Date().getTime()}.xlsx`) + }, `historyElectricity_${new Date().getTime()}.xlsx`) }, } }; diff --git a/hw-ui/src/views/ems/base/iAnalysis/index.vue b/hw-ui/src/views/ems/base/iAnalysis/index.vue new file mode 100644 index 00000000..8d2a655d --- /dev/null +++ b/hw-ui/src/views/ems/base/iAnalysis/index.vue @@ -0,0 +1,577 @@ + + + + diff --git a/hw-ui/src/views/ems/base/vAnalysis/index.vue b/hw-ui/src/views/ems/base/vAnalysis/index.vue new file mode 100644 index 00000000..8de95d88 --- /dev/null +++ b/hw-ui/src/views/ems/base/vAnalysis/index.vue @@ -0,0 +1,577 @@ + + + + diff --git a/hw-ui/src/views/ems/report/currentIOTCurve/index.vue b/hw-ui/src/views/ems/report/currentIOTCurve/index.vue index 22b48856..1e6bc6b0 100644 --- a/hw-ui/src/views/ems/report/currentIOTCurve/index.vue +++ b/hw-ui/src/views/ems/report/currentIOTCurve/index.vue @@ -75,6 +75,7 @@ import '@riophae/vue-treeselect/dist/vue-treeselect.css' import {parseTime} from '@/utils/ruoyi' import Chart from '@/components/Charts/Chart' import * as echarts from 'echarts' +import {energyType, listRule} from "@/api/ems/base/exception/rule"; export default { name: 'CurrentIOTCurve', @@ -130,6 +131,12 @@ export default { reactivePower: null, collectType: null }, + queryParamsType: { + energyType: null + }, + pm:{}, + noiseItem:{}, + tempretureItem:{}, // 表单参数 form: {}, monitorProps: { @@ -266,10 +273,37 @@ export default { /** 物联网设备曲线 */ async getChart() { + energyType(4).then(response => { + this.pm = response.data[0]; + console.log(this.pm) + this.loading = false; + }); + + energyType(6).then(response => { + this.noiseItem = response.data[0]; + console.log(this.noiseItem) + this.loading = false; + }); + energyType(7).then(response => { + this.tempretureItem = response.data[0]; + this.loading = false; + }); console.log(this.queryParams.monitorId) if (this.queryParams.monitorId == null) { return } + let pm1 = this.pm.pm1; + let pm2 = this.pm.pm2; + let pm10 = this.pm.pm10; + let nois = this.noiseItem.noise; + let tem = this.tempretureItem.temperature; + let hum = this.tempretureItem.humidity; + console.log(pm1); + console.log(pm2); + console.log(pm10); + console.log(nois); + console.log(tem); + console.log(hum); let query = JSON.parse(JSON.stringify(this.queryParams)) const {data} = await iotInstantList(query) let option1 = { @@ -366,7 +400,27 @@ export default { // areaStyle: { // color: "rgba(5,140,255, 0.2)", // }, - data: data.monitorTypeArr.includes('温度') ? data.dataList.map(e => e.tempreture) : [] + data: data.monitorTypeArr.includes('温度') ? data.dataList.map(e => e.tempreture) : [], + markLine: { + symbol: "none",//去掉警戒线最后面的箭头 + label: {position: "middle",show: true,formatter:'温度告警值: '+tem,textStyle: { + fontSize: 18, // 字体大小 + fontWeight: 'bold' // 字体粗细 + }},//将警示值放在哪个位置,三个值“start”,"middle","end" 开始 中点 结束 + data: [ + { + name: 'y轴为15的直线', + yAxis: tem, + // silent: true, //鼠标悬停事件 true没有,false有 + lineStyle: { //警戒线的样式 ,虚实 颜色 + opacity: data.monitorTypeArr.includes('温度') ? 10 : 0, + type: "solid", + width: 3, + color: "#FA3934", + }, + }, + ] + } }, { tooltip: { @@ -388,7 +442,27 @@ export default { // areaStyle: { // color: "rgba(5,140,255, 0.2)", // }, - data: data.monitorTypeArr.includes('湿度') ? data.dataList.map(e => e.humidity) : [] + data: data.monitorTypeArr.includes('湿度') ? data.dataList.map(e => e.humidity) : [], + markLine: { + symbol: "none",//去掉警戒线最后面的箭头 + label: {position: "middle",show: true,formatter:'湿度告警值: '+hum,textStyle: { + fontSize: 18, // 字体大小 + fontWeight: 'bold' // 字体粗细 + }},//将警示值放在哪个位置,三个值“start”,"middle","end" 开始 中点 结束 + data: [ + { + name: 'y轴为15的直线', + yAxis: hum, + // silent: true, //鼠标悬停事件 true没有,false有 + lineStyle: { //警戒线的样式 ,虚实 颜色 + width: 3, + opacity: data.monitorTypeArr.includes('湿度') ? 10 : 0, + type: "solid", + color: "#FA3934", + }, + }, + ] + } }, { tooltip: { @@ -410,7 +484,27 @@ export default { // areaStyle: { // color: "rgba(5,140,255, 0.2)", // }, - data: data.monitorTypeArr.includes('噪声') ? data.dataList.map(e => e.noise) : [] + data: data.monitorTypeArr.includes('噪声') ? data.dataList.map(e => e.noise) : [], + markLine: { + symbol: "none",//去掉警戒线最后面的箭头 + label: {position: "middle",show: true,formatter:'噪声告警值: '+nois,textStyle: { + fontSize: 18, // 字体大小 + fontWeight: 'bold' // 字体粗细 + }},//将警示值放在哪个位置,三个值“start”,"middle","end" 开始 中点 结束 + data: [ + { + name: 'y轴为15的直线', + yAxis: nois, + // silent: true, //鼠标悬停事件 true没有,false有 + lineStyle: { //警戒线的样式 ,虚实 颜色 + width: 3, + opacity: data.monitorTypeArr.includes('噪声') ? 10 : 0, + type: "solid", + color: "#FA3934", + }, + }, + ] + } }, { tooltip: { @@ -475,7 +569,28 @@ export default { // areaStyle: { // color: "rgba(5,140,255, 0.2)", // }, - data: data.monitorTypeArr.includes('pm1') ? data.dataList.map(e => e.pm1) : [] + data: data.monitorTypeArr.includes('pm1') ? data.dataList.map(e => e.pm1) : [], + markLine: { + silent: true, + symbol: "none",//去掉警戒线最后面的箭头 + label: {position: "middle",show: true,formatter:'pm1告警值: '+pm1,textStyle: { + fontSize: 18, // 字体大小 + fontWeight: 'bold' // 字体粗细 + }},//将警示值放在哪个位置,三个值“start”,"middle","end" 开始 中点 结束 + data: [ + { + name: 'y轴为15的直线', + yAxis: pm1, + // silent: true, //鼠标悬停事件 true没有,false有 + lineStyle: { //警戒线的样式 ,虚实 颜色 + width: 3, + opacity: data.monitorTypeArr.includes('pm1') ? 10 : 0, + type: "solid", + color: "#FA3934", + }, + }, + ] + } },{ tooltip: { show: data.monitorTypeArr.includes('pm2') ? true : false @@ -496,7 +611,27 @@ export default { // areaStyle: { // color: "rgba(5,140,255, 0.2)", // }, - data: data.monitorTypeArr.includes('pm2') ? data.dataList.map(e => e.pm2) : [] + data: data.monitorTypeArr.includes('pm2') ? data.dataList.map(e => e.pm2) : [], + markLine: { + symbol: "none",//去掉警戒线最后面的箭头 + label: {position: "middle",show: true,formatter:'pm2告警值: '+pm2,textStyle: { + fontSize: 18, // 字体大小 + fontWeight: 'bold' // 字体粗细 + }},//将警示值放在哪个位置,三个值“start”,"middle","end" 开始 中点 结束 + data: [ + { + name: 'y轴为15的直线', + yAxis: pm2, + // silent: true, //鼠标悬停事件 true没有,false有 + lineStyle: { //警戒线的样式 ,虚实 颜色 + width: 3, + opacity: data.monitorTypeArr.includes('pm2') ? 10 : 0, + type: "solid", + color: "#FA3934", + }, + }, + ] + } },{ tooltip: { show: data.monitorTypeArr.includes('pm10') ? true : false @@ -517,7 +652,27 @@ export default { // areaStyle: { // color: "rgba(5,140,255, 0.2)", // }, - data: data.monitorTypeArr.includes('pm10') ? data.dataList.map(e => e.pm10) : [] + data: data.monitorTypeArr.includes('pm10') ? data.dataList.map(e => e.pm10) : [], + markLine: { + symbol: "none",//去掉警戒线最后面的箭头 + label: {position: "middle",show: true,formatter:'pm10告警值:'+pm10,textStyle: { + fontSize: 18, // 字体大小 + fontWeight: 'bold' // 字体粗细 + }},//将警示值放在哪个位置,三个值“start”,"middle","end" 开始 中点 结束 + data: [ + { + name: 'y轴为15的直线', + yAxis: pm10, + // silent: true, //鼠标悬停事件 true没有,false有 + lineStyle: { //警戒线的样式 ,虚实 颜色 + width: 3, + opacity: data.monitorTypeArr.includes('pm10') ? 10 : 0, + type: "solid", + color: "#fa3434", + }, + }, + ] + } } ] }