lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/TodayProductionPassRateDto.java
@@ -19,6 +19,6 @@ /** * 产品合格率 */ private BigDecimal passRate; private BigDecimal passRate = BigDecimal.ZERO; } lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/dto/YesterdayOverviewDto.java
@@ -14,14 +14,14 @@ /** * 产品合格率 */ private BigDecimal passRate; private BigDecimal passRate = BigDecimal.ZERO; /** * 设备利用率 */ private BigDecimal utilizationRate; private BigDecimal utilizationRate = BigDecimal.ZERO; /** * 计划完成率 */ private BigDecimal planCompleteRate; private BigDecimal planCompleteRate = BigDecimal.ZERO; } lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/mapper/MdcLargeScreenMapper.java
@@ -2,6 +2,7 @@ import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.dto.MdcEfficiencyDto; import org.jeecg.modules.mdcJc.entity.MdcProductDayschedule; import org.jeecg.modules.screen.dto.ClazzCompletionCountDto; import org.jeecg.modules.screen.dto.TodayProductionDto; @@ -27,4 +28,7 @@ List<MdcProductDayschedule> todayProductionPassRate(@Param("date") String date); List<ClazzCompletionCountDto> todayClazzCompletionCount(@Param("date") String date); List<MdcEfficiencyDto> efficiencyList(@Param("date") String date); } lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/mapper/xml/MdcLargeScreenMapper.xml
@@ -58,4 +58,27 @@ GROUP BY clazz </select> <select id="efficiencyList" resultType="org.jeecg.modules.mdc.dto.MdcEfficiencyDto"> SELECT t2.equipment_id equipmentId, t2.equipment_name equipmentName, t2.equipment_type equipmentType, t1.the_date theDate, t1.process_long processLong, t1.process_long / 86400 utilizationRate, CASE WHEN t1.open_long > 0 THEN t1.process_long / t1.open_long ELSE 0 END startRate, t1.open_long / 86400 openRate, t1.open_long openLong, t1.wait_long waitLong, t1.close_long closeLong FROM mdc_equipment t2 LEFT JOIN mdc_equipment_statistical_info t1 ON t1.equipment_id = t2.equipment_id WHERE t1.the_date = #{date} </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/screen/service/impl/MdcLargeScreenServiceImpl.java
@@ -1,5 +1,6 @@ package org.jeecg.modules.screen.service.impl; import org.jeecg.modules.mdc.dto.MdcEfficiencyDto; import org.jeecg.modules.mdc.service.IMdcEquipmentStatisticalInfoService; import org.jeecg.modules.mdcJc.entity.MdcProductDayschedule; import org.jeecg.modules.mdcJc.service.IMdcProductDayScheduleService; @@ -28,7 +29,7 @@ @Resource private MdcLargeScreenMapper mdcLargeScreenMapper; private final String yesterday = LocalDate.now().plusDays(-1).toString(); private final String yesterday = LocalDate.now().plusDays(-1).toString().replaceAll("-", ""); private final String today = LocalDate.now().toString(); @@ -83,7 +84,9 @@ for (MdcProductDayschedule mdcProductDayschedule : list) { TodayProductionPassRateDto todayProductionPassRateDto = new TodayProductionPassRateDto(); todayProductionPassRateDto.setProductionName(mdcProductDayschedule.getProductName()); todayProductionPassRateDto.setPassRate(new BigDecimal(mdcProductDayschedule.getQualifiedCount()).divide(new BigDecimal(mdcProductDayschedule.getCompletionCount()), 0, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP)); if (mdcProductDayschedule.getCompletionCount() != 0) { todayProductionPassRateDto.setPassRate(new BigDecimal(mdcProductDayschedule.getQualifiedCount()).divide(new BigDecimal(mdcProductDayschedule.getCompletionCount()), 0, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP)); } result.add(todayProductionPassRateDto); } } @@ -107,7 +110,18 @@ */ @Override public List<EquipmentRateDto> todayEquipmentRate() { return null; // return mdcLargeScreenMapper.todayEquipmentRate(); List<EquipmentRateDto> result = new ArrayList<>(); List<MdcEfficiencyDto> mdcEfficiencyDtoList = mdcLargeScreenMapper.efficiencyList(yesterday); if (mdcEfficiencyDtoList != null && !mdcEfficiencyDtoList.isEmpty()) { for (MdcEfficiencyDto mdcEfficiencyDto : mdcEfficiencyDtoList) { EquipmentRateDto equipmentRateDto = new EquipmentRateDto(); equipmentRateDto.setEquipmentId(mdcEfficiencyDto.getEquipmentId()); equipmentRateDto.setEquipmentName(mdcEfficiencyDto.getEquipmentName()); equipmentRateDto.setOpenRate(mdcEfficiencyDto.getOpenRate()); equipmentRateDto.setUtilizationRate(mdcEfficiencyDto.getUtilizationRate()); result.add(equipmentRateDto); } } return result; } }