From efdecc7019261f8fdc875505281f54ef7a3bfbce Mon Sep 17 00:00:00 2001 From: yangbin <yangbin@qq.com> Date: 星期三, 19 二月 2025 12:30:09 +0800 Subject: [PATCH] 大屏看板 --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentAndTypeVo.java | 14 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentStatisticalInfoService.java | 18 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentOpVo.java | 17 + lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java | 3 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataVo.java | 34 ++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/MdcBigScreenService.java | 38 ++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java | 9 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataRankingVo.java | 13 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java | 20 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentStatisticalShiftInfoServiceImpl.java | 7 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/impl/MdcBigScreenServiceImpl.java | 288 ++++++++++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentStatisticalShiftInfoService.java | 8 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentStatisticalInfoMapper.java | 9 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java | 4 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml | 21 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/AllEquipmentLogVo.java | 30 ++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentStatisticalInfoMapper.xml | 66 +++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentStatisticalInfoServiceImpl.java | 26 ++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java | 32 +- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentStatisticalShiftInfoMapper.xml | 28 ++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java | 1 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java | 1 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/api/MdcBigScreenController.java | 78 ++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentStatisticalShiftInfoMapper.java | 6 24 files changed, 753 insertions(+), 18 deletions(-) diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java b/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java index 5aeb5ce..5499de7 100644 --- a/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java @@ -94,6 +94,9 @@ filterChainDefinitionMap.put("/sys/common/pdf/**", "anon");//pdf棰勮 filterChainDefinitionMap.put("/generic/**", "anon");//pdf棰勮闇�瑕佹枃浠� filterChainDefinitionMap.put("/sys/user/updatePassword", "anon");//棣栭〉鐢ㄦ埛淇敼瀵嗙爜 + filterChainDefinitionMap.put("/outer/bigScreen/**", "anon");//鐪嬫澘 + + filterChainDefinitionMap.put("/sys/getLoginQrcode/**", "anon"); //鐧诲綍浜岀淮鐮� filterChainDefinitionMap.put("/sys/getQrcodeToken/**", "anon"); //鐩戝惉鎵爜 diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java index 69d4c80..a08dab6 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentLogMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.entity.EquipmentLog; +import org.jeecg.modules.mdc.subcontrol.vo.AllEquipmentLogVo; import java.util.Date; import java.util.List; @@ -13,10 +14,13 @@ */ public interface EquipmentLogMapper extends BaseMapper<EquipmentLog> { + List<AllEquipmentLogVo> findAllEquipmentLog(@Param("yesterday") Date yesterday); EquipmentLog getRow(@Param("equipmentid") String equipmentid, @Param("startTime") Date startTime); EquipmentLog selectEquipmentOporation(@Param("equipmentId") String equipmentId); List<EquipmentLog> getEquipmentStatusList(@Param("equipmentIdList") List<String> equipmentIdList); + + EquipmentLog getOne(@Param("equipmentId") String equipmentId); } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentStatisticalInfoMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentStatisticalInfoMapper.java index 330a18a..3f88e6c 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentStatisticalInfoMapper.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentStatisticalInfoMapper.java @@ -1,11 +1,20 @@ package org.jeecg.modules.mdc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.entity.EquipmentStatisticalInfo; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo; + +import java.util.List; /** * @author Lius * @date 2023/10/24 14:05 */ public interface EquipmentStatisticalInfoMapper extends BaseMapper<EquipmentStatisticalInfo> { + + List<LastWeekDataVo> findDataRankingForBigScreen(@Param("equipmentIdList") List<String> equipmentIdList, @Param("monday") String monday, @Param("saturday") String saturday); + List<String> findEquipmentId(@Param("equipmentIdList") List<String> equipmentIdList, @Param("date") String date); + List<LastWeekDataVo> findDataForBigScreen(@Param("equipmentIdList") List<String> equipmentIdList, @Param("monday") String monday, @Param("saturday") String saturday); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java index 06246bc..aed99d9 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentMapper.java @@ -124,4 +124,5 @@ * @return */ MdcEquipmentDetailedDto findById(@Param("id") String id); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentStatisticalShiftInfoMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentStatisticalShiftInfoMapper.java index 2bdddbe..a3e31eb 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentStatisticalShiftInfoMapper.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentStatisticalShiftInfoMapper.java @@ -3,8 +3,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.entity.MdcEquipmentStatisticalShiftInfo; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo; import java.math.BigDecimal; +import java.util.List; /** * @author: LiuS @@ -21,4 +23,8 @@ MdcEquipmentStatisticalShiftInfo getMaxStaticsData(@Param("equipmentId") String equipmentid); BigDecimal findSpindleRunDuration(@Param("equipmentId") String equipmentId, @Param("validDate") String validDate); + + List<LastWeekDataVo> findDataForBigScreen(@Param("equipmentIdList") List<String> equipmentIdList, + @Param("monday") String monday, @Param("saturday") String saturday); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml index 88b331d..1192c43 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml @@ -2,6 +2,18 @@ <!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.EquipmentLogMapper"> + <select id="findAllEquipmentLog" resultType="org.jeecg.modules.mdc.subcontrol.vo.AllEquipmentLogVo"> + SELECT + * + FROM + EQUIPMENTLOG + WHERE + COLLECTTIME >= #{ yesterday } + AND ALARM IS NOT NULL and ALARM != '' + ORDER BY + COLLECTTIME DESC; + </select> + <select id="getRow" resultType="org.jeecg.modules.mdc.entity.EquipmentLog"> SELECT top 1 * FROM EquipmentLog WHERE EquipmentID = #{ equipmentid } AND CollectTime <= #{ startTime } AND Oporation in ('0','1','2','3') ORDER BY CollectTime ASC </select> @@ -25,4 +37,13 @@ </foreach> </if> </select> + + + <select id="getOne" resultType="org.jeecg.modules.mdc.entity.EquipmentLog"> + SELECT + top 1 * + FROM + ( SELECT * FROM EQUIPMENTLOG WHERE EQUIPMENTID = #{ equipmentId } ORDER BY COLLECTTIME DESC ) + + </select> </mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentStatisticalInfoMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentStatisticalInfoMapper.xml index 50e63d3..1c7631d 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentStatisticalInfoMapper.xml +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentStatisticalInfoMapper.xml @@ -1,5 +1,71 @@ <?xml version="1.0" encoding="UTF-8"?> <!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.EquipmentStatisticalInfoMapper"> + <select id="findDataRankingForBigScreen" resultType="org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo"> + SELECT + EQUIPMENT, + SUM( CLOSEDLONG ) CLOSEDLONG, + SUM( ERRORINGLONG ) ERRORINGLONG, + SUM( OPENINGLONG ) OPENINGLONG, + SUM( PROCESSINGLONG ) PROCESSINGLONG, + SUM( WAITINGLONG ) WAITINGLONG + FROM + EQUIPMENTSTATISTICALINFO + <where> + <if test="equipmentIdList != null and equipmentIdList.size() > 0"> + AND EQUIPMENT IN + <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + AND THEDATE >= #{ monday } + AND THEDATE <= #{ saturday } + </where> + GROUP BY + EQUIPMENT; + </select> + + <select id="findDataForBigScreen" resultType="org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo"> + SELECT + THEDATE, + SUM( OPENINGLONG ) OPENINGLONG, + SUM(CLOSEDLONG) CLOSEDLONG, + SUM(PROCESSINGLONG) PROCESSINGLONG, + SUM(WAITINGLONG) WAITINGLONG + FROM + EQUIPMENTSTATISTICALINFO + <where> + <if test="equipmentIdList != null and equipmentIdList.size() > 0"> + AND EQUIPMENT IN + <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + AND THEDATE >= #{ monday } + AND THEDATE <= #{ saturday } + </where> + GROUP BY + THEDATE + ORDER BY + THEDATE ASC; + </select> + + <select id="findEquipmentId" resultType="java.lang.String"> + SELECT DISTINCT + EQUIPMENT + FROM + EQUIPMENTSTATISTICALINFO + <where> + <if test="equipmentIdList != null and equipmentIdList.size() > 0"> + AND EQUIPMENT IN + <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + <if test="date != null and date != ''"> + AND THEDATE = #{ date } + </if> + </where> + </select> </mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentStatisticalShiftInfoMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentStatisticalShiftInfoMapper.xml index 97acaba..3b0484f 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentStatisticalShiftInfoMapper.xml +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentStatisticalShiftInfoMapper.xml @@ -17,4 +17,32 @@ equipment_id = #{ equipmentId } AND the_date LIKE CONCAT(#{ validDate },'%') </select> + + + <select id="findDataForBigScreen" resultType="org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo"> + SELECT + THE_DATE, + SUM( close_long ) close_long, + SUM( open_long ) open_long, + SUM( error_long ) error_long, + SUM( wait_long ) wait_long, + SUM( process_long ) process_long, + SUM( total_long ) total_long + FROM + mdc_equipment_statistical_shift_info + <where> + <if test="equipmentIdList != null and equipmentIdList.size() > 0"> + AND EQUIPMENT_ID IN + <foreach collection="equipmentIdList" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + AND THE_DATE >= #{ monday } + AND THE_DATE <= #{ saturday } + </where> + GROUP BY + THE_DATE + ORDER BY + THE_DATE ASC; + </select> </mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java index 805e454..f4e8c6c 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentLogService.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.EquipmentLog; +import org.jeecg.modules.mdc.subcontrol.vo.AllEquipmentLogVo; import java.util.Date; import java.util.List; @@ -30,4 +31,12 @@ EquipmentLog selectEquipmentOporation(String equipmentId); List<EquipmentLog> getEquipmentStatusList(List<String> equipmentIdList); + + /** + * 鍏ㄩ暱璁惧鎶ヨ鏁版嵁 + * @return + */ + List<AllEquipmentLogVo> getALLEquipmentLog(); + + EquipmentLog findEquipmentLog(String equipmentId); } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentStatisticalInfoService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentStatisticalInfoService.java index 9e236d0..dd6d2e9 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentStatisticalInfoService.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentStatisticalInfoService.java @@ -2,10 +2,28 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.EquipmentStatisticalInfo; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo; + +import java.util.List; /** * @author Lius * @date 2023/10/24 14:04 */ public interface IEquipmentStatisticalInfoService extends IService<EquipmentStatisticalInfo> { + /** + * 鏌ヨ娈垫椂闂村唴鐨勬暟鎹� + * + * @return + */ + List<LastWeekDataVo> findDataForBigScreen(List<String> equipmentIdList, String monday, String saturday); + + Integer findEquipmentId(List<String> equipmentIdList, String date); + + + /** + * 鏌ヨ娈垫椂闂村唴鐨勬暟鎹�(璁惧缁村害) + */ + List<LastWeekDataVo> findDataRankingForBigScreen(List<String> equipmentIdList, String monday, String saturday); + Long selectSize(String equipmentId, String monday, String saturday); } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java index 5e20315..5de8325 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentService.java @@ -210,4 +210,5 @@ List<String> listEquipmentIdShift(MdcEfficiencyReportShiftQueryVo vo); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentStatisticalShiftInfoService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentStatisticalShiftInfoService.java index cc1b424..45aaa60 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentStatisticalShiftInfoService.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentStatisticalShiftInfoService.java @@ -2,8 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.MdcEquipmentStatisticalShiftInfo; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo; import java.math.BigDecimal; +import java.util.List; /** * @Description: 璁惧鍗曟棩鐝杩愯鏁版嵁琛� @@ -28,4 +30,10 @@ */ BigDecimal findSpindleRunDuration(String equipmentId, String validDate); + + /** + * 鑾峰彇鍓�7鐝鍒╃敤鐜囨暟鎹� + */ + List<LastWeekDataVo> findDataForBigScreen(List<String> equipmentIdList, String monday, String saturday); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java index 7a2da87..cb706ae 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentLogServiceImpl.java @@ -5,6 +5,11 @@ import org.jeecg.modules.mdc.entity.EquipmentLog; import org.jeecg.modules.mdc.mapper.EquipmentLogMapper; import org.jeecg.modules.mdc.service.IEquipmentLogService; +import org.jeecg.modules.mdc.service.IMdcAlarmInfoService; +import org.jeecg.modules.mdc.service.IMdcEquipmentService; +import org.jeecg.modules.mdc.subcontrol.vo.AllEquipmentLogVo; +import org.jeecg.modules.mdc.util.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Arrays; @@ -17,8 +22,6 @@ */ @Service public class EquipmentLogServiceImpl extends ServiceImpl<EquipmentLogMapper, EquipmentLog> implements IEquipmentLogService { - - @Override public List<EquipmentLog> findEquipmentLogByEndTime(String equipmentId, Date maxDate) { LambdaQueryChainWrapper<EquipmentLog> lambdaQuery = this.lambdaQuery(); @@ -58,4 +61,17 @@ public List<EquipmentLog> getEquipmentStatusList(List<String> equipmentIdList) { return this.baseMapper.getEquipmentStatusList(equipmentIdList); } + + @Override + public List<AllEquipmentLogVo> getALLEquipmentLog() { + //鑾峰彇褰撳墠鏃堕棿24灏忔椂涔嬪墠鐨勮澶囨姤璀︽暟鎹� + Date yesterday = DateUtils.getPreviousDay(DateUtils.getNow()); + List<AllEquipmentLogVo> list = this.baseMapper.findAllEquipmentLog(yesterday); + return list; + } + + @Override + public EquipmentLog findEquipmentLog(String equipmentId) { + return this.baseMapper.getOne(equipmentId); + } } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentStatisticalInfoServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentStatisticalInfoServiceImpl.java index 5a350c8..7cfe0dc 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentStatisticalInfoServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentStatisticalInfoServiceImpl.java @@ -1,10 +1,14 @@ package org.jeecg.modules.mdc.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.mdc.entity.EquipmentStatisticalInfo; import org.jeecg.modules.mdc.mapper.EquipmentStatisticalInfoMapper; import org.jeecg.modules.mdc.service.IEquipmentStatisticalInfoService; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo; import org.springframework.stereotype.Service; + +import java.util.List; /** * @author Lius @@ -12,4 +16,26 @@ */ @Service public class EquipmentStatisticalInfoServiceImpl extends ServiceImpl<EquipmentStatisticalInfoMapper, EquipmentStatisticalInfo> implements IEquipmentStatisticalInfoService { + + @Override + public List<LastWeekDataVo> findDataForBigScreen(List<String> equipmentIdList, String monday, String saturday) { + return this.baseMapper.findDataForBigScreen(equipmentIdList, monday, saturday); + } + + @Override + public Integer findEquipmentId(List<String> equipmentIdList, String date) { + List<String> list = this.baseMapper.findEquipmentId(equipmentIdList, date); + return list.size(); + } + + @Override + public List<LastWeekDataVo> findDataRankingForBigScreen(List<String> equipmentIdList, String monday, String saturday) { + return this.baseMapper.findDataRankingForBigScreen(equipmentIdList, monday, saturday); + } + + @Override + public Long selectSize(String equipmentId, String monday, String saturday) { + return this.baseMapper.selectCount(new LambdaQueryWrapper<EquipmentStatisticalInfo>(). + eq(EquipmentStatisticalInfo::getEquipment, equipmentId).ge(EquipmentStatisticalInfo::getTheDate, monday).le(EquipmentStatisticalInfo::getTheDate, saturday)); + } } 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 ad9d45f..04bd56a 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 @@ -703,23 +703,24 @@ @Override public List<String> listEquipmentId(MdcEfficiencyReportQueryVo vo) { LambdaQueryWrapper<MdcEquipment> queryWrapper = new LambdaQueryWrapper<>(); - if (vo.getEquipmentIdList() != null && !vo.getEquipmentIdList().isEmpty()) { - queryWrapper.in(MdcEquipment::getEquipmentId, vo.getEquipmentIdList()); - } - if (StringUtils.isNotEmpty(vo.getEquipmentType())) { - queryWrapper.in(MdcEquipment::getEquipmentType, Arrays.asList(vo.getEquipmentType().split(","))); - } - if (StringUtils.isNotEmpty(vo.getDeviceLevel())) { - queryWrapper.in(MdcEquipment::getDeviceLevel, Arrays.asList(vo.getDeviceLevel().split(","))); - } - if (StringUtils.isNotEmpty(vo.getDriveType())) { - queryWrapper.in(MdcEquipment::getDriveType, Arrays.asList(vo.getDriveType().split(","))); - } - if (StringUtils.isNotEmpty(vo.getDeviceCategory())) { - queryWrapper.in(MdcEquipment::getDeviceCategory, Arrays.asList(vo.getDeviceCategory().split(","))); + if (vo != null) { + if (vo.getEquipmentIdList() != null && !vo.getEquipmentIdList().isEmpty()) { + queryWrapper.in(MdcEquipment::getEquipmentId, vo.getEquipmentIdList()); + } + if (StringUtils.isNotEmpty(vo.getEquipmentType())) { + queryWrapper.in(MdcEquipment::getEquipmentType, Arrays.asList(vo.getEquipmentType().split(","))); + } + if (StringUtils.isNotEmpty(vo.getDeviceLevel())) { + queryWrapper.in(MdcEquipment::getDeviceLevel, Arrays.asList(vo.getDeviceLevel().split(","))); + } + if (StringUtils.isNotEmpty(vo.getDriveType())) { + queryWrapper.in(MdcEquipment::getDriveType, Arrays.asList(vo.getDriveType().split(","))); + } + if (StringUtils.isNotEmpty(vo.getDeviceCategory())) { + queryWrapper.in(MdcEquipment::getDeviceCategory, Arrays.asList(vo.getDeviceCategory().split(","))); + } } List<MdcEquipment> list = super.list(queryWrapper); -// List<MdcEquipment> list = super.list(new LambdaQueryWrapper<MdcEquipment>().eq(MdcEquipment::getEquipmentType, equipmentType).in(MdcEquipment::getEquipmentId, equipmentIdList)); return list.stream().map(MdcEquipment::getEquipmentId).collect(Collectors.toList()); } @@ -873,5 +874,4 @@ // List<MdcEquipment> list = super.list(new LambdaQueryWrapper<MdcEquipment>().eq(MdcEquipment::getEquipmentType, equipmentType).in(MdcEquipment::getEquipmentId, equipmentIdList)); return list.stream().map(MdcEquipment::getEquipmentId).collect(Collectors.toList()); } - } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentStatisticalShiftInfoServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentStatisticalShiftInfoServiceImpl.java index 938b7a9..74304a1 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentStatisticalShiftInfoServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentStatisticalShiftInfoServiceImpl.java @@ -9,6 +9,7 @@ import org.jeecg.modules.mdc.entity.MdcEquipmentStatisticalShiftInfo; import org.jeecg.modules.mdc.mapper.MdcEquipmentStatisticalShiftInfoMapper; import org.jeecg.modules.mdc.service.*; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo; import org.jeecg.modules.mdc.util.DateUtils; import org.jeecg.modules.mdc.vo.MdcDateVo; import org.jeecg.modules.mdc.vo.MdcDeviceCalendarVo; @@ -44,6 +45,12 @@ @Resource private IMdcEquipmentRepairService mdcEquipmentRepairService; + + @Override + public List<LastWeekDataVo> findDataForBigScreen(List<String> equipmentIdList, String monday, String saturday) { + return this.baseMapper.findDataForBigScreen(equipmentIdList, monday, saturday); + } + /** * 璁$畻璁惧鍗曟棩鐝杩愯鏁版嵁 * diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/api/MdcBigScreenController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/api/MdcBigScreenController.java new file mode 100644 index 0000000..9c88b8b --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/api/MdcBigScreenController.java @@ -0,0 +1,78 @@ +package org.jeecg.modules.mdc.subcontrol.api; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.mdc.service.IEquipmentLogService; +import org.jeecg.modules.mdc.subcontrol.service.MdcBigScreenService; +import org.jeecg.modules.mdc.subcontrol.vo.AllEquipmentLogVo; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataRankingVo; +import org.jeecg.modules.mdc.subcontrol.vo.MdcEquipmentOpVo; +import org.jeecg.modules.mdc.vo.MdcEquipmentVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @author: LiuS + * @create: 2022-12-28 10:43 + */ +@Slf4j +@RestController +@RequestMapping("/outer/bigScreen") +@Api(tags = "澶у睆鎺ュ彛") +public class MdcBigScreenController { + + @Resource + private MdcBigScreenService mdcBigScreenService; + + @Autowired + private IEquipmentLogService equipmentLogService; + + @ApiOperation("鍏ㄥ巶鎶ヨ淇℃伅") + @GetMapping("/findAlarmInfo") + public Result findAlarmInfo() { + List<AllEquipmentLogVo> result = equipmentLogService.getALLEquipmentLog(); + return Result.OK(result); + } + + @ApiOperation("鑾峰彇鍓�7鏁版嵁") + @GetMapping("/findDataByLastWeek") + public Result findDataByLastWeek() { + Map<String, Object> result = mdcBigScreenService.findDataByLastWeek(); + return Result.OK(result); + } + + @ApiOperation("鑾峰彇鍓�7鏁版嵁鎺掑悕") + @GetMapping("/findDataRankingByLastWeek") + public Result findDataRankingByLastWeek() { + List<LastWeekDataRankingVo> rankingByLastWeek = mdcBigScreenService.findDataRankingByLastWeek(); + return Result.OK(rankingByLastWeek); + } + + @ApiOperation("鑾峰彇褰撳墠璁惧鐘舵�佷俊鎭�") + @GetMapping("/findEquipmentStatus") + public Result findEquipmentStatus() { + Map<String, Object> result = new HashMap<>(); + List<MdcEquipmentOpVo> list = mdcBigScreenService.findEquipmentStatus(); + result.put("equipmentStatusList", list); + return Result.OK(result); + } + + @ApiOperation("鑾峰彇鍏ㄥ巶褰撳墠璁惧鐘舵�佷俊鎭�") + @GetMapping("/findAllEquipmentStatus") + public Result findAllEquipmentStatus() { + Map<String, Object> result = mdcBigScreenService.findAllEquipmentStatus(); + return Result.OK(result); + } + + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/MdcBigScreenService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/MdcBigScreenService.java new file mode 100644 index 0000000..813220f --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/MdcBigScreenService.java @@ -0,0 +1,38 @@ +package org.jeecg.modules.mdc.subcontrol.service; + + +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataRankingVo; +import org.jeecg.modules.mdc.subcontrol.vo.MdcEquipmentOpVo; +import org.jeecg.modules.mdc.vo.MdcEquipmentVo; + +import java.util.List; +import java.util.Map; + +/** + * @author: LiuS + * @create: 2023-01-05 11:41 + */ +public interface MdcBigScreenService { + + /** + * 鏍规嵁鍘傚尯id鑾峰彇涓婂懆鏁版嵁 + */ + Map<String, Object> findDataByLastWeek(); + + /** + * 鏍规嵁鍘傚尯id鑾峰彇涓婂懆杩愯鏁堢巼鎺掑悕 + */ + List<LastWeekDataRankingVo> findDataRankingByLastWeek(); + + /** + * 鑾峰彇璁惧褰撳墠鐘舵�� + */ + List<MdcEquipmentOpVo> findEquipmentStatus(); + + + /** + * 鑾峰彇鍏ㄥ巶褰撳墠璁惧鐘舵�佷俊鎭� + */ + Map<String, Object> findAllEquipmentStatus(); + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/impl/MdcBigScreenServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/impl/MdcBigScreenServiceImpl.java new file mode 100644 index 0000000..376bd55 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/service/impl/MdcBigScreenServiceImpl.java @@ -0,0 +1,288 @@ +package org.jeecg.modules.mdc.subcontrol.service.impl; + +import org.apache.commons.lang.StringUtils; +import org.jeecg.modules.mdc.entity.EquipmentLog; +import org.jeecg.modules.mdc.service.*; +import org.jeecg.modules.mdc.subcontrol.service.MdcBigScreenService; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataRankingVo; +import org.jeecg.modules.mdc.subcontrol.vo.LastWeekDataVo; +import org.jeecg.modules.mdc.subcontrol.vo.MdcEquipmentOpVo; +import org.jeecg.modules.mdc.vo.MdcEquipmentVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.time.DayOfWeek; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.time.temporal.TemporalAdjusters; +import java.util.*; +import java.util.stream.Collectors; + +/** + * @author: LiuS + * @create: 2023-01-05 11:42 + */ +@Service +public class MdcBigScreenServiceImpl implements MdcBigScreenService { + + @Resource + private IMdcEquipmentService mdcEquipmentService; + + @Resource + private IEquipmentStatisticalInfoService equipmentStatisticalInfoService; + @Autowired + private IMdcEquipmentStatisticalShiftInfoService mdcEquipmentStatisticalShiftInfoService; + + + @Resource + private IEquipmentLogService equipmentLogService; + + + /** + * 鏍规嵁鍘傚尯id鑾峰彇涓婂懆鏁版嵁 + */ + @Override + public Map<String, Object> findDataByLastWeek() { + Map<String, Object> result = new HashMap<>(); + List<BigDecimal> openingRateList = new ArrayList<>(); + List<BigDecimal> processingRateList = new ArrayList<>(); + List<BigDecimal> shiftRateList = new ArrayList<>(); + //鑾峰彇涓婂懆鍛ㄤ竴鏃ユ湡鍜屽懆鍏棩鏈� + LocalDate today = LocalDate.now(); + LocalDate monday = today.minusDays(7); + LocalDate saturday = today.minusDays(1); + List<String> dates = getMiddleDate(monday, saturday); + List<String> equipmentIdList = new ArrayList<>(); + //鏍规嵁鍘傚尯id鑾峰彇鍘傚尯璁惧淇℃伅 + equipmentIdList = mdcEquipmentService.listEquipmentId(null); + //涓婂懆鍒╃敤鐜囧拰寮�鏈虹巼鏁版嵁 + List<LastWeekDataVo> lastWeekDataVos = equipmentStatisticalInfoService.findDataForBigScreen(equipmentIdList, monday.format(DateTimeFormatter.BASIC_ISO_DATE), saturday.format(DateTimeFormatter.BASIC_ISO_DATE)); + if (lastWeekDataVos.isEmpty()) { + for (int i = 0; i < dates.size(); i++) { + openingRateList.add(new BigDecimal("0")); + processingRateList.add(new BigDecimal("0")); + } + } else { + for (int i = 0; i < dates.size(); i++) { + Integer size = equipmentStatisticalInfoService.findEquipmentId(equipmentIdList, dates.get(i)); + if (dates.get(i).equals(lastWeekDataVos.get(i).getTheDate())) { + openingRateList.add(new BigDecimal(String.format("%.2f", (Float.parseFloat(lastWeekDataVos.get(i).getOpeningLong()) / (86400 * size) * 100)))); + processingRateList.add(new BigDecimal(String.format("%.2f", (Float.parseFloat(lastWeekDataVos.get(i).getProcessingLong()) / (86400 * size) * 100)))); + } else { + openingRateList.add(new BigDecimal("0")); + processingRateList.add(new BigDecimal("0")); + } + } + } + + //涓婂懆鐝鍒╃敤鐜囨暟鎹� + List<LastWeekDataVo> lastWeekDataList = mdcEquipmentStatisticalShiftInfoService.findDataForBigScreen(equipmentIdList, monday.toString(), saturday.toString()); + List<String> middleDates = getMiddleDates(monday, saturday); + if (lastWeekDataList.isEmpty()) { + for (int i = 0; i < middleDates.size(); i++) { + shiftRateList.add(new BigDecimal("0")); + } + } else { + for (int i = 0; i < middleDates.size(); i++) { + if (i < lastWeekDataList.size()) { + if (middleDates.get(i).equals(lastWeekDataList.get(i).getTheDate()) + && !"0".equals(lastWeekDataList.get(i).getTotalLong())) { + shiftRateList.add(new BigDecimal(lastWeekDataList.get(i).getProcessingLong()). + divide(new BigDecimal(lastWeekDataList.get(i).getTotalLong()), + 6, BigDecimal.ROUND_HALF_UP) + .setScale(6, BigDecimal.ROUND_HALF_UP)); + } else { + shiftRateList.add(new BigDecimal("0")); + } + } + else { + shiftRateList.add(new BigDecimal("0")); + } + } + } + result.put("openingRateList", openingRateList); + result.put("processingRateList", processingRateList); + result.put("shiftRateList", shiftRateList); + + return result; + } + + /** + * 鏍规嵁鍘傚尯id鑾峰彇涓婂懆杩愯鏁堢巼鎺掑悕 + */ + @Override + public List<LastWeekDataRankingVo> findDataRankingByLastWeek() { + List<LastWeekDataRankingVo> voList = new ArrayList<>(); + + //鑾峰彇涓婂懆鍛ㄤ竴鏃ユ湡鍜屽懆鍏棩鏈� + LocalDate today = LocalDate.now(); + String monday = today.minusDays(7).format(DateTimeFormatter.BASIC_ISO_DATE); + String saturday = today.minusDays(1).format(DateTimeFormatter.BASIC_ISO_DATE); + //鏍规嵁id鑾峰彇璁惧id闆嗗悎 + List<String> equipmentIdList = mdcEquipmentService.listEquipmentId(null); + if (!equipmentIdList.isEmpty()) { + List<LastWeekDataVo> lastWeekDataVos = equipmentStatisticalInfoService.findDataRankingForBigScreen(equipmentIdList, monday, saturday); + if (!lastWeekDataVos.isEmpty()) { + for (LastWeekDataVo lastWeekDataVo : lastWeekDataVos) { + Long size = equipmentStatisticalInfoService.selectSize(lastWeekDataVo.getEquipment(), monday, saturday); + lastWeekDataVo.setUtilization(new BigDecimal(String.format("%.2f", (Float.parseFloat(lastWeekDataVo.getProcessingLong()) / (86400 * size) * 100)))); + } + List<LastWeekDataVo> collect = lastWeekDataVos.stream().sorted(Comparator.comparing(LastWeekDataVo::getUtilization).reversed()).collect(Collectors.toList()); + if (collect.size() > 3) { + List<LastWeekDataVo> topList = collect.subList(0, 6); + for (LastWeekDataVo vo : topList) { + LastWeekDataRankingVo rankingVo = new LastWeekDataRankingVo(); + rankingVo.setTopName(vo.getEquipment()); + rankingVo.setTopRate(vo.getUtilization().toString()); + voList.add(rankingVo); + } + } + + } + } + + return voList; + + } + + /** + * 鑾峰彇璁惧褰撳墠鐘舵�� + */ + @Override + public List<MdcEquipmentOpVo> findEquipmentStatus() { + List<MdcEquipmentOpVo> result = new ArrayList<>(); + //鏍规嵁id鑾峰彇璁惧id闆嗗悎 + List<String> equipmentIdList = mdcEquipmentService.listEquipmentId(null); + + if (!equipmentIdList.isEmpty()) { + List<EquipmentLog> logs = equipmentLogService.getEquipmentStatusList(equipmentIdList); + //鏍规嵁璁惧id闆嗗悎鏌ヨ璁惧瀹炴椂鐘舵�� + for (EquipmentLog equipmentId : logs) { + if (equipmentId != null) { + MdcEquipmentOpVo vo = new MdcEquipmentOpVo(); + vo.setEquipmentId(equipmentId.getEquipmentId()); + if (equipmentId.getOporation() != null) { + switch (equipmentId.getOporation()) { + case 1: + vo.setOporation(1); + vo.setOporationDict("寰呮満"); + break; + case 2: + vo.setOporationDict("寰呮満"); + vo.setOporation(2); + break; + case 3: + vo.setOporationDict("杩愯"); + vo.setOporation(3); + break; + case 22: + vo.setOporationDict("鎶ヨ"); + vo.setOporation(22); + break; + default: + vo.setOporationDict("鍏虫満"); + vo.setOporation(0); + break; + } + } else { + vo.setOporation(0); + vo.setOporationDict("鍏虫満"); + } + result.add(vo); + } else { + MdcEquipmentOpVo vo = new MdcEquipmentOpVo(); + vo.setOporation(0); + vo.setOporationDict("鍏虫満"); + result.add(vo); + } + } + } + return result; + } + + /** + * 鑾峰彇鍏ㄥ巶褰撳墠璁惧鐘舵�佷俊鎭� + */ + @Override + public Map<String, Object> findAllEquipmentStatus() { + int runCount = 0; + int standbyCount = 0; + int alarmCount = 0; + int offCount = 0; + List<String> equipmentIdList = mdcEquipmentService.listEquipmentId(null); + List<EquipmentLog> equipmentLogs = new ArrayList<>(); + for (String equipmentId : equipmentIdList) { + EquipmentLog equipmentLog = equipmentLogService.selectEquipmentOporation(equipmentId); + if (equipmentLog != null) { + equipmentLogs.add(equipmentLog); + } else { + offCount += 1; + } + } + if (!equipmentLogs.isEmpty()) { + for (EquipmentLog equipmentLog : equipmentLogs) { + if (equipmentLog.getOporation() != null) { + switch (equipmentLog.getOporation()) { + case 1: + case 2: + standbyCount += 1; + break; + case 3: + runCount += 1; + break; + case 22: + alarmCount += 1; + break; + default: + offCount += 1; + break; + } + } else { + offCount += 1; + } + } + } + Map<String, Object> result = new HashMap<>(); + result.put("runCount", runCount); + result.put("standbyCount", standbyCount); + result.put("alarmCount", alarmCount); + result.put("offCount", offCount); + + return result; + } + + /** + * 20230101 + * + * @param begin 寮�濮嬫棩鏈� + * @param end 缁撴潫鏃ユ湡 + * @return 寮�濮嬩笌缁撴潫涔嬮棿鐨勬墍鏈夋棩鏈燂紝鍖呮嫭璧锋 + */ + public static List<String> getMiddleDate(LocalDate begin, LocalDate end) { + List<String> localDateList = new ArrayList<>(); + long length = end.toEpochDay() - begin.toEpochDay(); + for (long i = length; i >= 0; i--) { + localDateList.add(end.minusDays(i).format(DateTimeFormatter.BASIC_ISO_DATE)); + } + return localDateList; + } + + /** + * 2023-01-01 + * + * @param begin 寮�濮嬫棩鏈� + * @param end 缁撴潫鏃ユ湡 + * @return 寮�濮嬩笌缁撴潫涔嬮棿鐨勬墍鏈夋棩鏈燂紝鍖呮嫭璧锋 + */ + public static List<String> getMiddleDates(LocalDate begin, LocalDate end) { + List<String> localDateList = new ArrayList<>(); + long length = end.toEpochDay() - begin.toEpochDay(); + for (long i = length; i >= 0; i--) { + localDateList.add(end.minusDays(i).toString()); + } + return localDateList; + } + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/AllEquipmentLogVo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/AllEquipmentLogVo.java new file mode 100644 index 0000000..0d98b08 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/AllEquipmentLogVo.java @@ -0,0 +1,30 @@ +package org.jeecg.modules.mdc.subcontrol.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import lombok.Data; + +import java.util.Date; + +/** + * @author: LiuS + * @create: 2022-12-28 11:04 + */ +@Data +public class AllEquipmentLogVo { + + //杞﹂棿鍚嶇О + @TableField(exist = false) + private String parentName; + //璁惧缂栧彿 + private String equipmentId; + //璁惧鍚嶇О + private String equipmentName; + //鏃堕棿 + private Date collectTime; + // + private Integer oporation; + //鎶ヨ鍙� + private String alarm; + //鎶ヨ鎻忚堪锛堟晠闅滅被鍨嬶級 + private String alarmDescription; +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataRankingVo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataRankingVo.java new file mode 100644 index 0000000..6b88e15 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataRankingVo.java @@ -0,0 +1,13 @@ +package org.jeecg.modules.mdc.subcontrol.vo; + +import lombok.Data; + +/** + * @author: LiuS + * @create: 2023-01-09 10:58 + */ +@Data +public class LastWeekDataRankingVo { + private String topName; + private String topRate; +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataVo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataVo.java new file mode 100644 index 0000000..9e695f9 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/LastWeekDataVo.java @@ -0,0 +1,34 @@ +package org.jeecg.modules.mdc.subcontrol.vo; + +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author: LiuS + * @create: 2023-01-05 17:35 + */ +@Data +public class LastWeekDataVo { + //璁惧id + private String equipment; + //鏃ユ湡 + private String theDate; + //寮�鏈烘椂闀� + private String openingLong; + //鍏虫満鏃堕暱 + private String closedLong; + //宸ヤ綔鏃堕暱 + private String processingLong; + //鎶ヨ鏃堕暱 + private String waitingLong; + //鏁呴殰鏃堕棿 + private String faultLong; + //鎬绘椂闀� + private String totalLong; + //闂茬疆鏃堕暱 + private String idleLong; + //鍒╃敤鐜� + private BigDecimal utilization; + +} \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentAndTypeVo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentAndTypeVo.java new file mode 100644 index 0000000..e9c1003 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentAndTypeVo.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.mdc.subcontrol.vo; + +import lombok.Data; + +/** + * @author clown + * * @date 2022/7/19 + */ +@Data +public class MdcEquipmentAndTypeVo { + private String parentId; //鍒楄〃ID + private Integer mdcType; //榛樿1 + private Integer dayOrMonth; // 1 澶� 2 鏈� +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentOpVo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentOpVo.java new file mode 100644 index 0000000..6802706 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/subcontrol/vo/MdcEquipmentOpVo.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.mdc.subcontrol.vo; + +import lombok.Data; +import org.jeecg.modules.mdc.entity.MdcEquipment; + +/** + * @author clown + * * @date 2025/2/19 + */ +@Data +public class MdcEquipmentOpVo extends MdcEquipment { + private static final long serialVersionUID = -8341212703599621003L; + + private String status; + + private String oporationDict; +} -- Gitblit v1.9.3