From 848e5624f3a814763e81db5d79d8f0761c5bb4f1 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 01 二月 2024 10:25:40 +0800
Subject: [PATCH] 设备管理按照车间筛选和导出

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java |   57 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 52 insertions(+), 5 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 c155000..1d64041 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;
@@ -73,7 +74,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());
@@ -480,9 +481,9 @@
             //鑾峰彇running杩愯鐨勬棩蹇楄褰�
             List<MdcEquipmentRunningSection> list = this.equipmentRunningTracesLog(equipment.getEquipmentid());
             if (list != null && !list.isEmpty()) {
-                //List<MdcEquipmentRunningSection> equipList = addSequenceNumber(list); //娣诲姞绋嬪簭鍙�
-                this.ergodicTrim(list);
-                super.saveBatch(list);
+                List<MdcEquipmentRunningSection> equipList = addSequenceNumber(list); //娣诲姞绋嬪簭鍙�
+                this.ergodicTrim(equipList);
+                super.saveBatch(equipList);
             }
             //鑾峰彇鎶ヨ鐨勬棩蹇楄褰�
             List<MdcEquipmentRunningSection> errorList = this.equipmentRunningTracesErrorLog(equipment.getEquipmentid());
@@ -496,6 +497,37 @@
                 this.dataSynchronizationHandler(list, errorList);
             }
         }
+    }
+
+    /**
+     * 璁惧杩愯鏃ュ織娣诲姞绋嬪簭鍙�
+     *
+     * @param list
+     * @return
+     */
+    public List<MdcEquipmentRunningSection> addSequenceNumber(List<MdcEquipmentRunningSection> list) {
+        if (list == null || list.size() < 1) {
+            return Collections.emptyList();
+        }
+        Equipment equip = null;
+        for (MdcEquipmentRunningSection e : list) {
+            if (e.getStatus() == 3) {
+                equip = equipmentService.getOne(new LambdaQueryWrapper<Equipment>().eq(Equipment::getEquipmentid, e.getEquipmentId()));
+                if (StringUtils.isNotBlank(equip.getDrivetype()) && equip.getDrivetype().startsWith("FANUC")) {
+                    List<EquipmentMachingDto> esList = equipmentWorkLineService.getEquipProgramNum(equip.getDrivetype(), equip.getEquipmentid(),
+                            e.getStartTime(), e.getEndTime());
+                    if (esList != null && esList.size() > 1) {
+                        e.setSequenceNumber(esList.get(0).getProgramnumber());
+                    }
+                } else if (StringUtils.isNotBlank(equip.getDrivetype()) && equip.getDrivetype().startsWith("SIEMENS")) {
+                    List<EquipmentMachingDto> esList = equipmentWorkLineService.getEquipmentSequencenumber(equip.getDrivetype() + "_" + equip.getEquipmentid(), e.getStartTime(), e.getEndTime());
+                    if (esList != null && esList.size() > 1) {
+                        e.setSequenceNumber(esList.get(0).getSequencenumber());
+                    }
+                }
+            }
+        }
+        return list;
     }
 
     /**
@@ -624,7 +656,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;
@@ -655,6 +687,21 @@
         return this.baseMapper.findAlarmCountByDate(startDate, endDate, vo);
     }
 
+    @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) {
         Map<String, List<MdcEquipmentRunningSectionDto>> map = new HashMap<>();
         List<MdcEquipmentRunningSectionDto> normal = new ArrayList<>();

--
Gitblit v1.9.3