From e6d6f806e477d0f121dfde66c714f3d36f92fe63 Mon Sep 17 00:00:00 2001 From: mashili Date: Tue, 15 Jul 2025 12:57:00 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AD=96=E7=95=A5=E9=85=8D=E7=BD=AE-=E6=9B=B2?= =?UTF-8?q?=E7=BA=BF=E5=9B=BE=E6=A8=A1=E5=9E=8B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ems/EmsStrategyCurveController.java | 13 ++++- .../com/xzzn/ems/domain/EmsStrategyCurve.java | 13 +++++ .../xzzn/ems/domain/vo/StrategyCurveVo.java | 47 +++++++++++++++++++ .../ems/mapper/EmsStrategyCurveMapper.java | 7 +++ .../ems/service/IEmsStrategyCurveService.java | 5 ++ .../impl/EmsStrategyCurveServiceImpl.java | 35 ++++++++++++++ .../service/impl/SingleSiteServiceImpl.java | 6 ++- .../mapper/ems/EmsStrategyCurveMapper.xml | 13 ++++- 8 files changed, 135 insertions(+), 4 deletions(-) create mode 100644 ems-system/src/main/java/com/xzzn/ems/domain/vo/StrategyCurveVo.java diff --git a/ems-admin/src/main/java/com/xzzn/web/controller/ems/EmsStrategyCurveController.java b/ems-admin/src/main/java/com/xzzn/web/controller/ems/EmsStrategyCurveController.java index f66bcc1..6761295 100644 --- a/ems-admin/src/main/java/com/xzzn/web/controller/ems/EmsStrategyCurveController.java +++ b/ems-admin/src/main/java/com/xzzn/web/controller/ems/EmsStrategyCurveController.java @@ -2,6 +2,9 @@ package com.xzzn.web.controller.ems; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.xzzn.ems.domain.EmsStrategyTemp; +import com.xzzn.ems.domain.EmsStrategyTimeConfig; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -19,7 +22,6 @@ import com.xzzn.common.enums.BusinessType; import com.xzzn.ems.domain.EmsStrategyCurve; import com.xzzn.ems.service.IEmsStrategyCurveService; import com.xzzn.common.utils.poi.ExcelUtil; -import com.xzzn.common.core.page.TableDataInfo; /** * 策曲线Controller @@ -99,4 +101,13 @@ public class EmsStrategyCurveController extends BaseController { return toAjax(emsStrategyCurveService.deleteEmsStrategyCurveByIds(ids)); } + + /** + * 获取策略曲线图数据 + */ + @GetMapping("/curveList") + public AjaxResult getCurveList(EmsStrategyTemp tempConfig) + { + return success(emsStrategyCurveService.getStrategyCurveList(tempConfig)); + } } diff --git a/ems-system/src/main/java/com/xzzn/ems/domain/EmsStrategyCurve.java b/ems-system/src/main/java/com/xzzn/ems/domain/EmsStrategyCurve.java index dff611c..8c3bc3a 100644 --- a/ems-system/src/main/java/com/xzzn/ems/domain/EmsStrategyCurve.java +++ b/ems-system/src/main/java/com/xzzn/ems/domain/EmsStrategyCurve.java @@ -46,6 +46,10 @@ public class EmsStrategyCurve extends BaseEntity @Excel(name = "站点id") private String siteId; + /** 模板id */ + @Excel(name = "模板id") + private String templateId; + public void setId(Long id) { this.id = id; @@ -116,6 +120,14 @@ public class EmsStrategyCurve extends BaseEntity return siteId; } + public String getTemplateId() { + return templateId; + } + + public void setTemplateId(String templateId) { + this.templateId = templateId; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -131,6 +143,7 @@ public class EmsStrategyCurve extends BaseEntity .append("updateTime", getUpdateTime()) .append("remark", getRemark()) .append("siteId", getSiteId()) + .append("templateId", getTemplateId()) .toString(); } } diff --git a/ems-system/src/main/java/com/xzzn/ems/domain/vo/StrategyCurveVo.java b/ems-system/src/main/java/com/xzzn/ems/domain/vo/StrategyCurveVo.java new file mode 100644 index 0000000..4108c50 --- /dev/null +++ b/ems-system/src/main/java/com/xzzn/ems/domain/vo/StrategyCurveVo.java @@ -0,0 +1,47 @@ +package com.xzzn.ems.domain.vo; + +import com.xzzn.ems.domain.EmsStrategyCurve; + +import java.util.List; + +/** + *策略模块曲线图 + * + * @author xzzn + * @date 2025-07-13 + */ +public class StrategyCurveVo +{ + + /** 模板名称 */ + private String templateName; + + /** 模板id */ + private String templateId; + + List cureList; + + public String getTemplateName() { + return templateName; + } + + public void setTemplateName(String templateName) { + this.templateName = templateName; + } + + public List getCureList() { + return cureList; + } + + public void setCureList(List cureList) { + this.cureList = cureList; + } + + public String getTemplateId() { + return templateId; + } + + public void setTemplateId(String templateId) { + this.templateId = templateId; + } +} diff --git a/ems-system/src/main/java/com/xzzn/ems/mapper/EmsStrategyCurveMapper.java b/ems-system/src/main/java/com/xzzn/ems/mapper/EmsStrategyCurveMapper.java index 9776cd1..9157524 100644 --- a/ems-system/src/main/java/com/xzzn/ems/mapper/EmsStrategyCurveMapper.java +++ b/ems-system/src/main/java/com/xzzn/ems/mapper/EmsStrategyCurveMapper.java @@ -58,4 +58,11 @@ public interface EmsStrategyCurveMapper * @return 结果 */ public int deleteEmsStrategyCurveByIds(Long[] ids); + + /** + * 根据模板id获取曲线图数据 + * @param templateId + * @return + */ + public List getTemplateCurve(String templateId); } diff --git a/ems-system/src/main/java/com/xzzn/ems/service/IEmsStrategyCurveService.java b/ems-system/src/main/java/com/xzzn/ems/service/IEmsStrategyCurveService.java index 74e883a..d5510bb 100644 --- a/ems-system/src/main/java/com/xzzn/ems/service/IEmsStrategyCurveService.java +++ b/ems-system/src/main/java/com/xzzn/ems/service/IEmsStrategyCurveService.java @@ -2,6 +2,8 @@ package com.xzzn.ems.service; import java.util.List; import com.xzzn.ems.domain.EmsStrategyCurve; +import com.xzzn.ems.domain.EmsStrategyTemp; +import com.xzzn.ems.domain.vo.StrategyCurveVo; /** * 策曲线Service接口 @@ -58,4 +60,7 @@ public interface IEmsStrategyCurveService * @return 结果 */ public int deleteEmsStrategyCurveById(Long id); + + // 获取站点策略的运行曲线数据 + public List getStrategyCurveList(EmsStrategyTemp tempConfig); } diff --git a/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsStrategyCurveServiceImpl.java b/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsStrategyCurveServiceImpl.java index 62a0bb2..bb5088e 100644 --- a/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsStrategyCurveServiceImpl.java +++ b/ems-system/src/main/java/com/xzzn/ems/service/impl/EmsStrategyCurveServiceImpl.java @@ -1,7 +1,14 @@ package com.xzzn.ems.service.impl; +import java.util.ArrayList; import java.util.List; +import java.util.Map; + import com.xzzn.common.utils.DateUtils; +import com.xzzn.common.utils.StringUtils; +import com.xzzn.ems.domain.EmsStrategyTemp; +import com.xzzn.ems.domain.vo.StrategyCurveVo; +import com.xzzn.ems.mapper.EmsStrategyTempMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.xzzn.ems.mapper.EmsStrategyCurveMapper; @@ -19,6 +26,8 @@ public class EmsStrategyCurveServiceImpl implements IEmsStrategyCurveService { @Autowired private EmsStrategyCurveMapper emsStrategyCurveMapper; + @Autowired + private EmsStrategyTempMapper emsStrategyTempMapper; /** * 查询策曲线 @@ -93,4 +102,30 @@ public class EmsStrategyCurveServiceImpl implements IEmsStrategyCurveService { return emsStrategyCurveMapper.deleteEmsStrategyCurveById(id); } + + @Override + public List getStrategyCurveList(EmsStrategyTemp tempConfig) { + List dataList = new ArrayList(); + String siteId = tempConfig.getSiteId(); + Long strategyId = tempConfig.getStrategyId(); + // 获取该策略的所有模板配置 + List> tempList = emsStrategyTempMapper.getTempNameList(strategyId, siteId); + + if (tempList != null && !tempList.isEmpty()) { + for (Map map : tempList) { + StrategyCurveVo vo = new StrategyCurveVo(); + String tempName = map.get("templateName"); + String tempId = map.get("templateId"); + vo.setTemplateName(tempName); + vo.setTemplateId(tempId); + + if (StringUtils.isNotEmpty(tempId)) { + List taskList = emsStrategyCurveMapper.getTemplateCurve(tempId); + vo.setCureList(taskList); + } + dataList.add(vo); + } + } + return dataList; + } } diff --git a/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java b/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java index a67127e..f7aa66e 100644 --- a/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java +++ b/ems-system/src/main/java/com/xzzn/ems/service/impl/SingleSiteServiceImpl.java @@ -197,7 +197,8 @@ public class SingleSiteServiceImpl implements ISingleSiteService { for (Map pcsDevice : pcsIds) { PcsDetailInfoVo pcsDetailInfoVo = new PcsDetailInfoVo(); pcsDetailInfoVo.setDeviceName(pcsDevice.get("deviceName").toString()); - pcsDetailInfoVo.setCommunicationStatus(pcsDevice.get("communicationStatus").toString()); + pcsDetailInfoVo.setCommunicationStatus(pcsDevice.get("communicationStatus") == null ? + "" :pcsDevice.get("communicationStatus").toString()); // 从redis取pcs单个详细数据 String pcsId = pcsDevice.get("id").toString(); EmsPcsData pcsData = redisCache.getCacheObject(RedisKeyConstants.PCS +siteId+"_"+pcsId); @@ -395,7 +396,8 @@ public class SingleSiteServiceImpl implements ISingleSiteService { if (AMMETER_DEVICE_LOAD.equals(ammeterId)) { AmmeterLoadDataVo ammeterLoadDataVo = new AmmeterLoadDataVo(); ammeterLoadDataVo.setDeviceName(ammeterDevice.get("deviceName").toString()); - ammeterLoadDataVo.setEmsCommunicationStatus(ammeterDevice.get("communicationStatus").toString()); + ammeterLoadDataVo.setEmsCommunicationStatus(ammeterDevice.get("communicationStatus") == null? "" : + ammeterDevice.get("communicationStatus").toString()); // 处理总表数据 dealAmmeterLoadData(ammeterData,ammeterLoadDataVo); ammeterResponse.setAmmeterLoadDataVoList(ammeterLoadDataVo); diff --git a/ems-system/src/main/resources/mapper/ems/EmsStrategyCurveMapper.xml b/ems-system/src/main/resources/mapper/ems/EmsStrategyCurveMapper.xml index 21666b5..1939ca5 100644 --- a/ems-system/src/main/resources/mapper/ems/EmsStrategyCurveMapper.xml +++ b/ems-system/src/main/resources/mapper/ems/EmsStrategyCurveMapper.xml @@ -17,10 +17,11 @@ + - select id, strategy_id, task_number, start_date, end_date, power_data, create_by, create_time, update_by, update_time, remark, site_id from ems_strategy_curve + select id, strategy_id, task_number, start_date, end_date, power_data, create_by, create_time, update_by, update_time, remark, site_id, template_id from ems_strategy_curve @@ -54,6 +56,7 @@ update_time, remark, site_id, + template_id, #{strategyId}, @@ -67,6 +70,7 @@ #{updateTime}, #{remark}, #{siteId}, + #{templateId}, @@ -84,6 +88,7 @@ update_time = #{updateTime}, remark = #{remark}, site_id = #{siteId}, + template_id = #{templateId}, where id = #{id} @@ -98,4 +103,10 @@ #{id} + + \ No newline at end of file