From 078e94627c72eb6cada22a6e5478b003cff57f4c Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期二, 31 十二月 2024 11:11:24 +0800 Subject: [PATCH] update --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java | 87 +++++++++++++++++++++++++++++++++++-------- 1 files changed, 70 insertions(+), 17 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java index 105c0e6..30a29d3 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java @@ -5,6 +5,7 @@ import org.apache.commons.lang3.StringUtils; import org.jeecg.common.system.vo.DictModel; import org.jeecg.modules.mdc.dto.EquipmentMachingDto; +import org.jeecg.modules.mdc.dto.MdcAlarmListDto; import org.jeecg.modules.mdc.dto.MdcEquipmentRunningSectionDto; import org.jeecg.modules.mdc.entity.*; import org.jeecg.modules.mdc.mapper.MdcEquipmentRunningSectionMapper; @@ -48,6 +49,9 @@ @Resource private IEquipmentRunningTraceService equipmentRunningTraceService; + @Resource + private IMdcAlarmInfoService mdcAlarmInfoService; + @Override public List<MdcEquipmentRunningSectionDto> logList(MdcEquipmentRunningSectionVo equipmentRunningSectionVo) { @@ -59,9 +63,9 @@ List<MdcEquipmentRunningSection> running = loadEquipmentRunningTrace(equipmentRunningSectionVo.getEquipmentId(), equipmentRunningSectionVo.getCollectTimeStr()); //鏌ヨ鎶ヨ鏁版嵁 List<MdcEquipmentRunningSection> errs = loadEquipmentErrorTrace(equipmentRunningSectionVo.getEquipmentId(), equipmentRunningSectionVo.getCollectTimeStr()); + Equipment equip = equipmentService.getOne(new LambdaQueryWrapper<Equipment>().eq(Equipment::getEquipmentid, equipmentRunningSectionVo.getEquipmentId())); if (!running.isEmpty()) { MdcEquipmentRunningSectionDto dto; - Equipment equip = equipmentService.getOne(new LambdaQueryWrapper<Equipment>().eq(Equipment::getEquipmentid, equipmentRunningSectionVo.getEquipmentId())); String tableName = ""; Boolean isTableExist = false; if (equip != null) { @@ -73,7 +77,7 @@ for (MdcEquipmentRunningSection entity : running) { dto = new MdcEquipmentRunningSectionDto(); BeanUtils.copyProperties(entity, dto); - if (entity.getStatus() == 3 && StringUtils.isBlank(entity.getSequenceNumber()) && isTableExist) { + if (entity.getStatus() == 3 && StringUtils.isBlank(entity.getSequenceNumber()) && isTableExist && !"ZUOLAN".equals(equip.getDrivetype())) { List<EquipmentMachingDto> esList = equipmentWorkLineService.getEquipmentSequencenumber(tableName, entity.getStartTime(), entity.getEndTime()); if (esList != null && esList.size() > 1) { dto.setSequenceNumber(esList.get(0).getSequencenumber()); @@ -87,21 +91,56 @@ for (MdcEquipmentRunningSection entity : errs) { dto = new MdcEquipmentRunningSectionDto(); BeanUtils.copyProperties(entity, dto); - Set<TmpEquipmentAlarm> set = entity.getTmpEquipmentAlarmSet(); - if (entity.getStatus() == 22 && set != null && !set.isEmpty()) { - Iterator<TmpEquipmentAlarm> iterator = entity.getTmpEquipmentAlarmSet().iterator(); - //鑾峰彇鎶ヨ缂栧彿鐩稿悓鐨勬姤璀︿俊鎭� - while (iterator.hasNext()) { - TmpEquipmentAlarm next = iterator.next(); - if (StringUtils.isNotBlank(next.getAlarmNo()) && next.getAlarmNo().equals(entity.getStatus())) { - dto.setAlarmContent(next.getAlarmContent()); + if (entity.getStatus() == 22) { + if (equip != null) { + List<MdcAlarmInfo> mdcAlarmInfo = mdcAlarmInfoService.list(new LambdaQueryWrapper<MdcAlarmInfo>().eq(MdcAlarmInfo::getDriveType, equip.getDrivetype()).eq(MdcAlarmInfo::getAlarmCode, entity.getAlarm()).eq(MdcAlarmInfo::getIsUse, 0)); + if (mdcAlarmInfo != null && !mdcAlarmInfo.isEmpty()) { + dto.setAlarmContent(mdcAlarmInfo.get(0).getAlarmContent()); } } } +// Set<TmpEquipmentAlarm> set = entity.getTmpEquipmentAlarmSet(); +// if (entity.getStatus() == 22 && set != null && !set.isEmpty()) { +// Iterator<TmpEquipmentAlarm> iterator = entity.getTmpEquipmentAlarmSet().iterator(); +// //鑾峰彇鎶ヨ缂栧彿鐩稿悓鐨勬姤璀︿俊鎭� +// while (iterator.hasNext()) { +// TmpEquipmentAlarm next = iterator.next(); +// if (StringUtils.isNotBlank(next.getAlarmNo()) && next.getAlarmNo().equals(entity.getStatus())) { +// dto.setAlarmContent(next.getAlarmContent()); +// } +// } +// } dtos.add(dto); } } - return dtos; + + List<MdcEquipmentRunningSectionDto> result = new ArrayList<>(); + //鍚堝苟鐩稿悓鐘舵�佹暟鎹� + for (int i = 0; i < dtos.size() - 1; i++) { + MdcEquipmentRunningSectionDto mdcEquipmentRunningSectionDto = dtos.get(i); + MdcEquipmentRunningSectionDto next = dtos.get(i + 1); + if (mdcEquipmentRunningSectionDto.getStatus().equals(next.getStatus()) && mdcEquipmentRunningSectionDto.getEndTime().equals(next.getStartTime())) { + MdcEquipmentRunningSectionDto equipmentRunningSectionDto = new MdcEquipmentRunningSectionDto(); + BeanUtils.copyProperties(mdcEquipmentRunningSectionDto, equipmentRunningSectionDto); + equipmentRunningSectionDto.setEndTime(next.getEndTime()); + equipmentRunningSectionDto.setDuration(mdcEquipmentRunningSectionDto.getDuration() + next.getDuration()); + result.add(equipmentRunningSectionDto); + i++; + } else { + result.add(mdcEquipmentRunningSectionDto); + } + } + if (dtos.size() > 1) { + MdcEquipmentRunningSectionDto a = dtos.get(dtos.size() - 2); + MdcEquipmentRunningSectionDto b = dtos.get(dtos.size() - 1); + if (!a.getStatus().equals(b.getStatus()) && a.getEndTime().equals(b.getStartTime())) { + result.add(dtos.get(dtos.size() - 1)); + } + } else if (dtos.size() == 1){ + result.addAll(dtos); + } + + return result; } /** @@ -480,9 +519,13 @@ //鑾峰彇running杩愯鐨勬棩蹇楄褰� List<MdcEquipmentRunningSection> list = this.equipmentRunningTracesLog(equipment.getEquipmentid()); if (list != null && !list.isEmpty()) { - List<MdcEquipmentRunningSection> equipList = addSequenceNumber(list); //娣诲姞绋嬪簭鍙� - this.ergodicTrim(equipList); - super.saveBatch(equipList); + try { + List<MdcEquipmentRunningSection> equipList = addSequenceNumber(list); //娣诲姞绋嬪簭鍙� + this.ergodicTrim(equipList); + super.saveBatch(equipList); + } catch (Exception e) { + log.error("娣诲姞绋嬪簭鍙峰嚭鐜板紓甯�:", e); + } } //鑾峰彇鎶ヨ鐨勬棩蹇楄褰� List<MdcEquipmentRunningSection> errorList = this.equipmentRunningTracesErrorLog(equipment.getEquipmentid()); @@ -655,7 +698,7 @@ //鏁村悎鍔犲伐鍜屽緟鏈烘椂闂村皬浜巒绉掔殑鏁版嵁 erts = mergeLessMinTimeRecords(erts, null); List<MdcEquipmentRunningSection> running = mergeRunningTrace(erts); - if (running != null || !running.isEmpty()) { + if (running != null && !running.isEmpty()) { this.ergodicTrim(running); } return running; @@ -689,6 +732,16 @@ @Override public List<MdcEquipmentRunningSection> selectRunningData(String equipmentId, Date startDate, Date endDate) { return this.baseMapper.selectRunningData(equipmentId, startDate, endDate); + } + + @Override + public List<MdcAlarmListDto> selectAlarmList(MdcAlarmAnalyzeQueryVo mdcAlarmAnalyzeQueryVo, String startDate, String endDate) { + return this.baseMapper.selectAlarmList(mdcAlarmAnalyzeQueryVo, startDate, endDate); + } + + @Override + public List<Integer> getDataList(String equipmentId, Date date) { + return this.baseMapper.getDataList(equipmentId, date); } private Map<String, List<MdcEquipmentRunningSectionDto>> logCharts(MdcEquipmentRunningSectionVo equipmentRunningSectionVo, String date) { @@ -915,9 +968,9 @@ ert.setStartTime(logList.get(i).getCollectTime()); ert.setEndTime(logList.get(i + 1).getCollectTime()); ert.setDuration(DateUtils.differentSecond(ert.getStartTime(), ert.getEndTime())); -// if (ert.getDuration() > 0) { + erts.add(ert); -// } + } else { long count = differentSecond / 86400; if (count % 86400 > 0) { -- Gitblit v1.9.3