From e8401b85ea303e7cb87062dfa918cb59071befb3 Mon Sep 17 00:00:00 2001 From: VVT789 <sdxt_0802@163.com> Date: 星期五, 18 四月 2025 12:40:02 +0800 Subject: [PATCH] 报警代码优化 --- zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java | 76 +++++++++++++++++++++++--------------- 1 files changed, 46 insertions(+), 30 deletions(-) diff --git a/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java b/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java index 3545c7d..53d8c83 100644 --- a/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java +++ b/zhitan-system/src/main/java/com/zhitan/alarm/services/impl/AlarmAnalyisisServiceImpl.java @@ -6,7 +6,7 @@ import com.zhitan.alarm.domain.dto.AlarmAnalysisDTO; import com.zhitan.alarm.domain.vo.AlarmAnalysisVO; import com.zhitan.alarm.mapper.HistoryAlarmMapper; -import com.zhitan.alarm.services.IAlarmAnalyisisService; +import com.zhitan.alarm.services.IAlarmAnalysisService; import com.zhitan.basicdata.domain.MeterImplement; import com.zhitan.basicdata.domain.SysEnergy; import com.zhitan.basicdata.mapper.MeterImplementMapper; @@ -17,6 +17,7 @@ import com.zhitan.consumptionanalysis.domain.vo.ChartData; import com.zhitan.consumptionanalysis.domain.vo.EnergyProportion; import com.zhitan.model.domain.EnergyIndex; +import com.zhitan.model.domain.ModelNode; import com.zhitan.model.domain.vo.ModelNodeIndexInfo; import com.zhitan.model.mapper.EnergyIndexMapper; import com.zhitan.model.mapper.ModelNodeMapper; @@ -32,14 +33,14 @@ import java.util.stream.Collectors; /** - * description todu + * 鎶ヨ鍒嗘瀽瀹炵幇 * - * @author hmj - * @date 2024-10-26 17:34 + * @author + * @date */ @Service @AllArgsConstructor -public class AlarmAnalyisisServiceImpl implements IAlarmAnalyisisService { +public class AlarmAnalyisisServiceImpl implements IAlarmAnalysisService { private final ModelNodeMapper modelNodeMapper; @@ -50,6 +51,13 @@ private final EnergyIndexMapper energyIndexMapper; private final SysEnergyMapper sysEnergyMapper; + + /** + * 鏍规嵁鑺傜偣id鑾峰彇鎶ヨ鍒嗘瀽淇℃伅(搴熷純) + * + * @param alarmAnalysisDTO + * @return + */ @Override public AlarmAnalysisVO getByNodeId(AlarmAnalysisDTO alarmAnalysisDTO) { AlarmAnalysisVO alarmAnalysisVO = new AlarmAnalysisVO(); @@ -171,31 +179,6 @@ return alarmAnalysisVO; } - - @Override - public AlarmAnalysisVO getCountInfo(AlarmAnalysisDTO alarmAnalysisDTO) { - AlarmAnalysisVO alarmAnalysisVO = new AlarmAnalysisVO(); - final String nodeId = alarmAnalysisDTO.getNodeId(); - final DateTime beginOfMonth = DateUtil.beginOfMonth(new Date()); - final DateTime endOfMonth = DateUtil.endOfMonth(new Date()); - final DateTime beginOfYear = DateUtil.beginOfYear(new Date()); - final DateTime endOfYear = DateUtil.endOfYear(new Date()); - - /** - * 鏌ヨ鐐逛綅涓庣敤鑳藉崟鍏冧俊鎭� - */ - List<ModelNodeIndexInfo> nodeIndexInforList = modelNodeMapper.getModelNodeIndexIdByNodeId(nodeId,null); - List<String> indexIds = nodeIndexInforList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toList()); - - Integer monthCount = historyAlarmMapper.selectCountByTime(beginOfMonth,endOfMonth); - Integer yearCount = historyAlarmMapper.selectCountByTime(beginOfYear,endOfYear); - - alarmAnalysisVO.setIndexCount(indexIds.size()); - alarmAnalysisVO.setMonthCount(monthCount); - alarmAnalysisVO.setYearCount(yearCount); - return alarmAnalysisVO; - } - private double format2Double(double averageEnergy) { // 鍒涘缓DecimalFormat瀵硅薄锛岃缃繚鐣欎袱浣嶅皬鏁� DecimalFormat df = new DecimalFormat("#.00"); @@ -204,4 +187,37 @@ String formattedResult = df.format(averageEnergy); return Double.valueOf(formattedResult); } + + /** + * 鑾峰彇鎶ヨ鍒嗘瀽缁熻淇℃伅 + * @param alarmAnalysisDTO + * @return + */ + @Override + public AlarmAnalysisVO getCountInfo(AlarmAnalysisDTO alarmAnalysisDTO) { + + AlarmAnalysisVO alarmAnalysisVO = new AlarmAnalysisVO(); + + // 鏌ヨ妯″瀷涓嬬殑鐐逛綅鏁版嵁 + ModelNode modelNode = modelNodeMapper.selectModelNodeById(alarmAnalysisDTO.getNodeId()); + List<ModelNodeIndexInfo> nodeIndexInfoList = modelNodeMapper.getAllModelNodeIndexByAddress(modelNode.getModelCode(), modelNode.getAddress()); + alarmAnalysisVO.setIndexCount(nodeIndexInfoList.size()); + if (CollectionUtils.isEmpty(nodeIndexInfoList)) { + return alarmAnalysisVO; + } + + // 鑾峰彇鏈堟姤璀︽暟銆佸勾鎶ヨ鏁� + List<String> nodeIdList = nodeIndexInfoList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toList()); + + DateTime beginOfMonth = DateUtil.beginOfMonth(new Date()); + DateTime endOfMonth = DateUtil.endOfMonth(new Date()); + DateTime beginOfYear = DateUtil.beginOfYear(new Date()); + DateTime endOfYear = DateUtil.endOfYear(new Date()); + Integer monthCount = historyAlarmMapper.selectCountByTime(beginOfMonth,endOfMonth, nodeIdList); + Integer yearCount = historyAlarmMapper.selectCountByTime(beginOfYear,endOfYear, nodeIdList); + + alarmAnalysisVO.setMonthCount(monthCount); + alarmAnalysisVO.setYearCount(yearCount); + return alarmAnalysisVO; + } } -- Gitblit v1.9.3