From 1279d6eee2934b2765ce4ea1bf3a4d45d931760d Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期二, 18 六月 2024 10:35:59 +0800 Subject: [PATCH] webservice推送设备状态和设备利用率 --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentService.java | 17 ++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentMapper.java | 8 ++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentMapper.xml | 25 ++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentServiceImpl.java | 57 ++++++++++++++++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningEquipmentStatusJob.java | 6 +- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningMonitoringSpeedJob.java | 2 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java | 2 7 files changed, 112 insertions(+), 5 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningEquipmentStatusJob.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningEquipmentStatusJob.java index 793eb81..1c67d3b 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningEquipmentStatusJob.java +++ b/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() + "] 鐨勮澶囧埄鐢ㄧ巼浣庝簬姝e父鍊兼姤璀︼紒"); @@ -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() + "] 鐨勮澶囩姸鎬侀暱鏈熸棤鍙樺寲鎶ヨ锛�"); diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningMonitoringSpeedJob.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningMonitoringSpeedJob.java index dee9373..bf22dbf 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningMonitoringSpeedJob.java +++ b/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"); //璁惧畾 diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentMapper.java index 5cdf91e..31f2394 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentMapper.java +++ b/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); } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentMapper.xml index b504640..45a848f 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentMapper.xml +++ b/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> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentService.java index 8dfe74b..a5621e8 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentService.java +++ b/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(); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentServiceImpl.java index 3db46bc..c1de4e2 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentServiceImpl.java +++ b/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; + } } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java index c5db8a6..5e141e1 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java +++ b/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(); -- Gitblit v1.9.3