From d603739c0320f355cfc3152865918729fea790de Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期一, 04 十一月 2024 09:45:43 +0800 Subject: [PATCH] license --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java | 22 +++++++++++++--------- 1 files changed, 13 insertions(+), 9 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java index d9ef6a6..b611f47 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java @@ -105,6 +105,9 @@ } queryWrapper.orderByAsc(MdcEquipment::getEquipmentName); List<MdcEquipment> equipmentList = mdcEquipmentService.list(queryWrapper); + + vo.setStartTime(DateUtils.format(DateUtils.toDate(vo.getStartTime(), DateUtils.STRDATE), DateUtils.STR_DATE)); + vo.setEndTime(DateUtils.format(DateUtils.toDate(vo.getEndTime(), DateUtils.STRDATE), DateUtils.STR_DATE)); //鏌ヨoee鏁版嵁 List<MdcOeeInfo> oeeList = this.baseMapper.oeeList(vo); //鏁版嵁澶勭悊 @@ -134,7 +137,7 @@ BigDecimal oeeRate = BigDecimal.ZERO; if (!mdcOeeInfoList.isEmpty()) { BigDecimal count = mdcOeeInfoList.stream().map(MdcOeeInfo::getOeeRate).reduce(BigDecimal.ZERO, BigDecimal::add); - oeeRate = count.divide(new BigDecimal(mdcOeeInfoList.size()), 2, RoundingMode.HALF_UP); + oeeRate = count.divide(new BigDecimal(mdcOeeInfoList.size()), 4, RoundingMode.HALF_UP); mdcOeeResultDto.setOeeRate(oeeRate); } long rate = oeeRate.multiply(new BigDecimal("100")).longValue(); @@ -190,8 +193,8 @@ .eq(MdcProductDayschedule::getEquipmentId, equipment.getEquipmentid())); if (productDayScheduleList != null && !productDayScheduleList.isEmpty()) { MdcProductDayschedule mdcProductDayschedule; - MdcOeeInfo mdcOeeInfo = new MdcOeeInfo(); for (MdcShiftSub mdcShiftSub : mdcShiftSubList) { + MdcOeeInfo mdcOeeInfo = new MdcOeeInfo(); String id = mdcShiftSub.getId(); if (productDayScheduleList.stream().anyMatch(productDayschedule -> productDayschedule.getOrderId().substring(8, 10).equals(id))) { mdcOeeInfo.setEquipmentId(equipment.getEquipmentid()); @@ -204,7 +207,7 @@ //鑾峰彇璁惧杩愯鏁版嵁 MdcEquipmentStatisticalShiftInfo mdcEquipmentStatisticalShiftInfo = mdcEquipmentStatisticalShiftInfoService.getOne(new LambdaQueryWrapper<MdcEquipmentStatisticalShiftInfo>() .eq(MdcEquipmentStatisticalShiftInfo::getEquipmentId, equipment.getEquipmentid()) - .eq(MdcEquipmentStatisticalShiftInfo::getTheDate, validDate) + .eq(MdcEquipmentStatisticalShiftInfo::getTheDate, validDate.replaceAll("-", "")) .eq(MdcEquipmentStatisticalShiftInfo::getShiftSubId, id)); if (mdcEquipmentStatisticalShiftInfo == null) { continue; @@ -241,11 +244,13 @@ continue; } mdcOeeInfo.setScheduleNum(mdcComponentInfo.getScheduleNum()); - - BigDecimal oeeRate = mdcOeeInfo.getProcessLong().multiply(new BigDecimal(mdcOeeInfo.getPlanNum())).multiply(new BigDecimal(mdcOeeInfo.getQualityNum())) - .divide(mdcEquipmentStatisticalShiftInfo.getTotalLong(), 2, RoundingMode.HALF_UP) - .divide(new BigDecimal(mdcOeeInfo.getScheduleNum()), 2, RoundingMode.HALF_UP) - .divide(new BigDecimal(mdcOeeInfo.getCompleteNum()), 2, RoundingMode.HALF_UP); + BigDecimal oeeRate = BigDecimal.ZERO; + if (!mdcOeeInfo.getCompleteNum().equals(0)) { + oeeRate = mdcOeeInfo.getProcessLong().multiply(new BigDecimal(mdcOeeInfo.getPlanNum())).multiply(new BigDecimal(mdcOeeInfo.getQualityNum())) + .divide(mdcEquipmentStatisticalShiftInfo.getTotalLong(), 4, RoundingMode.HALF_UP) + .divide(new BigDecimal(mdcOeeInfo.getScheduleNum()), 4, RoundingMode.HALF_UP) + .divide(new BigDecimal(mdcOeeInfo.getCompleteNum()), 4, RoundingMode.HALF_UP); + } mdcOeeInfo.setOeeRate(oeeRate); result.add(mdcOeeInfo); } @@ -256,5 +261,4 @@ this.saveBatch(result); } } - } -- Gitblit v1.9.3