From 3600285feb565ac04eddedfba38ff76855173331 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期三, 13 十二月 2023 09:58:27 +0800
Subject: [PATCH] 增加保养类型
---
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java | 97 ++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 84 insertions(+), 13 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 0531cfc..c155000 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
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
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.MdcEquipmentRunningSectionDto;
import org.jeecg.modules.mdc.entity.*;
@@ -10,7 +11,9 @@
import org.jeecg.modules.mdc.service.*;
import org.jeecg.modules.mdc.util.DateUtils;
import org.jeecg.modules.mdc.util.TimeFieldUtils;
+import org.jeecg.modules.mdc.vo.MdcAlarmAnalyzeQueryVo;
import org.jeecg.modules.mdc.vo.MdcEquipmentRunningSectionVo;
+import org.jeecg.modules.system.service.ISysDictService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -39,6 +42,12 @@
@Resource
private IEquipmentWorkLineService equipmentWorkLineService;
+ @Resource
+ private ISysDictService sysDictService;
+
+ @Resource
+ private IEquipmentRunningTraceService equipmentRunningTraceService;
+
@Override
public List<MdcEquipmentRunningSectionDto> logList(MdcEquipmentRunningSectionVo equipmentRunningSectionVo) {
@@ -52,18 +61,22 @@
List<MdcEquipmentRunningSection> errs = loadEquipmentErrorTrace(equipmentRunningSectionVo.getEquipmentId(), equipmentRunningSectionVo.getCollectTimeStr());
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) {
+ if (StringUtils.isNotBlank(equip.getDrivetype())) {
+ tableName = equip.getDrivetype() + "_" + equip.getEquipmentid();
+ isTableExist = equipmentWorkLineService.isTableExist(tableName);
+ }
+ }
for (MdcEquipmentRunningSection entity : running) {
dto = new MdcEquipmentRunningSectionDto();
BeanUtils.copyProperties(entity, dto);
- if (entity.getStatus() == 3 && StringUtils.isBlank(entity.getSequenceNumber())) {
- Equipment equip = equipmentService.getOne(new LambdaQueryWrapper<Equipment>().eq(Equipment::getEquipmentid, entity.getEquipmentId()));
- if (equip != null) {
- if (StringUtils.isNotBlank(equip.getDrivetype())) {
- List<EquipmentMachingDto> esList = equipmentWorkLineService.getEquipmentSequencenumber(equip.getDrivetype(), equip.getEquipmentid(), entity.getStartTime(), entity.getEndTime());
- if (esList != null && esList.size() > 1) {
- dto.setSequenceNumber(esList.get(0).getSequencenumber());
- }
- }
+ if (entity.getStatus() == 3 && StringUtils.isBlank(entity.getSequenceNumber()) && isTableExist) {
+ List<EquipmentMachingDto> esList = equipmentWorkLineService.getEquipmentSequencenumber(tableName, entity.getStartTime(), entity.getEndTime());
+ if (esList != null && esList.size() > 1) {
+ dto.setSequenceNumber(esList.get(0).getSequencenumber());
}
}
dtos.add(dto);
@@ -459,7 +472,7 @@
* 璁惧杩愯鐘舵�佺偣鏃堕棿杞负娈垫椂闂�
*/
@Override
- @Transactional
+ @Transactional(rollbackFor = Exception.class)
public void runningAllEquipmentTraceProcess() {
//鑾峰彇鎵�鏈夎澶�
List<Equipment> equipmentList = equipmentService.list();
@@ -478,7 +491,50 @@
//save errorList
super.saveBatch(errorList);
}
+ List<DictModel> dictList = sysDictService.queryDictItemsByCode("data_synchronization_flag");
+ if (dictList != null && !dictList.isEmpty() && "0".equals(dictList.get(0).getValue())) {
+ this.dataSynchronizationHandler(list, errorList);
+ }
}
+ }
+
+ /**
+ * 鏁版嵁鍚屾澶勭悊
+ * @param list
+ * @param errorList
+ */
+ private void dataSynchronizationHandler(List<MdcEquipmentRunningSection> list, List<MdcEquipmentRunningSection> errorList) {
+ // 鏁版嵁杞崲
+ List<EquipmentRunningTrace> equipList = new ArrayList<>();
+ if (list != null && !list.isEmpty()) {
+ list.forEach(item -> {
+ EquipmentRunningTrace equipmentRunningSection = new EquipmentRunningTrace();
+ equipmentRunningSection.setEquipment(item.getEquipmentId());
+ equipmentRunningSection.setAlarm(item.getAlarm());
+ equipmentRunningSection.setCreateTime(item.getCreateTime());
+ equipmentRunningSection.setDuration(item.getDuration());
+ equipmentRunningSection.setEndTime(item.getEndTime());
+ equipmentRunningSection.setStartTime(item.getStartTime());
+ equipmentRunningSection.setStatus(item.getStatus());
+ equipmentRunningSection.setSequencenumber(item.getSequenceNumber());
+ equipList.add(equipmentRunningSection);
+ });
+ }
+ if (errorList != null && !errorList.isEmpty()) {
+ errorList.forEach(item -> {
+ EquipmentRunningTrace equipmentRunningSection = new EquipmentRunningTrace();
+ equipmentRunningSection.setEquipment(item.getEquipmentId());
+ equipmentRunningSection.setAlarm(item.getAlarm());
+ equipmentRunningSection.setCreateTime(item.getCreateTime());
+ equipmentRunningSection.setDuration(item.getDuration());
+ equipmentRunningSection.setEndTime(item.getEndTime());
+ equipmentRunningSection.setStartTime(item.getStartTime());
+ equipmentRunningSection.setStatus(item.getStatus());
+ equipmentRunningSection.setSequencenumber(item.getSequenceNumber());
+ equipList.add(equipmentRunningSection);
+ });
+ }
+ equipmentRunningTraceService.saveBatch(equipList);
}
/**
@@ -582,6 +638,21 @@
@Override
public List<MdcEquipmentRunningSection> listEquipmentRunningSectionError(String equipmentid, long start, long end) {
return this.baseMapper.listEquipmentRunningSectionError(equipmentid, start, end);
+ }
+
+ @Override
+ public List<MdcEquipmentRunningSection> findAlarmList(MdcAlarmAnalyzeQueryVo vo) {
+ return this.baseMapper.findAlarmList(vo);
+ }
+
+ @Override
+ public Integer findAlarmCount(String equipmentId, String startDate, String endDate, String alarmCode) {
+ return this.baseMapper.findAlarmCount(equipmentId, startDate, endDate, alarmCode);
+ }
+
+ @Override
+ public Integer findAlarmCountByDate(String startDate, String endDate, MdcAlarmAnalyzeQueryVo vo) {
+ return this.baseMapper.findAlarmCountByDate(startDate, endDate, vo);
}
private Map<String, List<MdcEquipmentRunningSectionDto>> logCharts(MdcEquipmentRunningSectionVo equipmentRunningSectionVo, String date) {
@@ -808,9 +879,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);
- }
+// if (ert.getDuration() > 0) {
+ erts.add(ert);
+// }
} else {
long count = differentSecond / 86400;
if (count % 86400 > 0) {
--
Gitblit v1.9.3