lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningEquipmentStatusJob.java
@@ -134,7 +134,7 @@ // 上报 MessageDTO messageDTO = new MessageDTO(); messageDTO.setTitle("设备利用率报警!"); messageDTO.setCategory("预警消息"); messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2); messageDTO.setFromUser("admin"); messageDTO.setToUser("admin"); messageDTO.setContent("设备编号为 [" + mdcEquipment.getEquipmentId() + "] 的设备利用率低于正常值报警!"); @@ -174,7 +174,7 @@ for (SysUser sysUser : adminList) { MessageDTO messageDTO = new MessageDTO(); messageDTO.setTitle("设备状态长期无变化报警!"); messageDTO.setCategory("预警消息"); messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2); messageDTO.setFromUser("admin"); messageDTO.setToUser(sysUser.getUsername()); messageDTO.setContent("设备编号为 [" + mdcEquipment.getEquipmentId() + "] 的设备状态长期无变化报警!"); @@ -183,7 +183,7 @@ } else { MessageDTO messageDTO = new MessageDTO(); messageDTO.setTitle("设备状态长期无变化报警!"); messageDTO.setCategory("预警消息"); messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2); messageDTO.setFromUser("admin"); messageDTO.setToUser("admin"); messageDTO.setContent("设备编号为 [" + mdcEquipment.getEquipmentId() + "] 的设备状态长期无变化报警!"); lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningMonitoringSpeedJob.java
@@ -89,7 +89,7 @@ if (mdcEquipmentDto != null && StringUtils.isNotBlank(mdcEquipmentDto.getSpindlespeed()) && StringUtils.isNotBlank(mdcEquipmentDto.getActualspindlespeed())) { MessageDTO messageDTO = new MessageDTO(); messageDTO.setTitle("设备运行转速报警!"); messageDTO.setCategory("预警消息"); messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2); messageDTO.setFromUser("admin"); messageDTO.setToUser("admin"); //设定 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentMapper.java
@@ -6,6 +6,10 @@ import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import org.jeecg.modules.mdc.entity.Equipment; import org.jeecg.modules.mdc.vo.WsEquipmentStatus; import org.jeecg.modules.mdc.vo.WsEquipmentUtilizationRate; import java.util.List; /** * @Description: 采集设备表 @@ -30,4 +34,8 @@ @Insert(" SELECT * INTO ${tableName} FROM ${lastTableName} WHERE CollectTime < '${date}' ") void insertNoTableData(@Param("tableName") String tableName, @Param("lastTableName") String lastTableName, @Param("date") String date); List<WsEquipmentStatus> selectEquipmentStatus(); List<WsEquipmentUtilizationRate> selectEquipmentRate(@Param("date") String date); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentMapper.xml
@@ -2,4 +2,29 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.jeecg.modules.mdc.mapper.EquipmentMapper"> <select id="selectEquipmentStatus" resultType="org.jeecg.modules.mdc.vo.WsEquipmentStatus"> SELECT t1.EquipmentID equipmentCode, t1.equipmentName equipmentName, t1.oporation equipmentStatus, t1.collectTime creationDate, t2.FactoryName mainDeptCode FROM Equipment t1 LEFT JOIN FactoryInfo t2 ON t1.FactoryID = t2.FactoryID </select> <select id="selectEquipmentRate" resultType="org.jeecg.modules.mdc.vo.WsEquipmentUtilizationRate"> SELECT t1.EquipmentID equipmentCode, t1.equipmentName equipmentName, t2.FactoryName mainDeptCode, t3.process_long equipmentRunTime, t3.create_time statisDate FROM Equipment t1 LEFT JOIN FactoryInfo t2 ON t1.FactoryID = t2.FactoryID LEFT JOIN mdc_equipment_statistical_info t3 ON t1.EquipmentID = t3.equipment_id WHERE t3.the_date = #{date} </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentService.java
@@ -2,6 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.Equipment; import org.jeecg.modules.mdc.vo.WsEquipmentStatus; import org.jeecg.modules.mdc.vo.WsEquipmentUtilizationRate; import java.util.List; /** * @Description: 采集设备表 @@ -48,4 +52,17 @@ * @param day */ void insertNoTableData(String backupTableName, String tableName, String day); /** * 查询设备状态 * @return */ List<WsEquipmentStatus> selectEquipmentStatus(); /** * 查询设备利用率 * @return */ List<WsEquipmentUtilizationRate> selectEquipmentRate(); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentServiceImpl.java
@@ -4,7 +4,14 @@ import org.jeecg.modules.mdc.entity.Equipment; import org.jeecg.modules.mdc.mapper.EquipmentMapper; import org.jeecg.modules.mdc.service.IEquipmentService; import org.jeecg.modules.mdc.vo.WsEquipmentStatus; import org.jeecg.modules.mdc.vo.WsEquipmentUtilizationRate; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.LocalDate; import java.util.List; /** * @Description: 采集设备表 @@ -39,4 +46,54 @@ public void insertNoTableData(String backupTableName, String tableName, String day) { this.baseMapper.insertNoTableData(backupTableName, tableName, day); } @Override public List<WsEquipmentStatus> selectEquipmentStatus() { List<WsEquipmentStatus> equipmentStatusList = this.baseMapper.selectEquipmentStatus(); if (equipmentStatusList != null && !equipmentStatusList.isEmpty()) { for (WsEquipmentStatus wsEquipmentStatus : equipmentStatusList) { // 1-加工 3-待机 9-关机 10-报警 if (wsEquipmentStatus.getEquipmentStatus() != null) { switch (wsEquipmentStatus.getEquipmentStatus()) { case "1": case "2": wsEquipmentStatus.setEquipmentStatus("3"); break; case "3": wsEquipmentStatus.setEquipmentStatus("1"); break; case "22": wsEquipmentStatus.setEquipmentStatus("10"); break; default: wsEquipmentStatus.setEquipmentStatus("9"); break; } } else { wsEquipmentStatus.setEquipmentStatus("9"); } } } return equipmentStatusList; } /** * 查询设备利用率 * @return */ @Override public List<WsEquipmentUtilizationRate> selectEquipmentRate() { String date = LocalDate.now().plusDays(-1).toString(); List<WsEquipmentUtilizationRate> list = this.baseMapper.selectEquipmentRate(date.replaceAll("-", "")); if (list != null && !list.isEmpty()) { for (WsEquipmentUtilizationRate wsEquipmentUtilizationRate : list) { String equipmentRunTime = wsEquipmentUtilizationRate.getEquipmentRunTime(); wsEquipmentUtilizationRate.setStatisType("D"); wsEquipmentUtilizationRate.setEquipmentRunTime(new BigDecimal(equipmentRunTime).divide(new BigDecimal("60"), 0, RoundingMode.HALF_UP).toString()); wsEquipmentUtilizationRate.setEquipmentRate(new BigDecimal(equipmentRunTime).divide(new BigDecimal("86400"), 2, RoundingMode.HALF_UP) + "%"); wsEquipmentUtilizationRate.setEquipmentCalendar(date); } } return list; } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java
@@ -789,7 +789,7 @@ Integer min = mdcEquipmentThreshold.getMinThreshold(); MessageDTO messageDTO = new MessageDTO(); messageDTO.setTitle("设备" + mdcEquipmentThreshold.getChineseName() + "报警!"); messageDTO.setCategory("预警消息"); messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2); messageDTO.setFromUser("admin"); messageDTO.setToUser("admin"); MdcOverrunAlarm mdcOverrunAlarm = new MdcOverrunAlarm();