瀏覽代碼

单卷模型转换需求调整

fangpy 1 年之前
父節點
當前提交
96c284edc5

+ 17 - 6
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsServiceImpl.java

@@ -56,6 +56,8 @@ public class ApsServiceImpl implements ApsService {
     private ApsProcessOperationProcessEquServiceImpl processOperationProcessEquService;
     @Autowired
     private ApsEquipmentCalendarService apsEquipmentCalendarService;
+    @Autowired
+    private ApsProcessOperationOutMaterService apsProcessOperationOutMaterService;
 
     @Override
     public void apsSchedule(List<ApsBlankOrderVo> apsBlankOrders) {
@@ -269,11 +271,14 @@ public class ApsServiceImpl implements ApsService {
                         if (lastpros != null && lastpros.size() > 0) {
                             ApsProcessOperationProcessEquDo lastpro = lastpros.get(0);
                             ApsProcessOperationDo lastop = apsProcessOperationService.getById(lastpro.getProcessid());
+                            // 输出物料
+                            List<ApsProcessOperationOutMaterDo> outMaterDos = apsProcessOperationOutMaterService.list(new LambdaQueryWrapper<ApsProcessOperationOutMaterDo>()
+                                    .eq(ApsProcessOperationOutMaterDo::getMainid, lastpro.getProcessid()));
                             equipment.setLastProcessType(lastop.getProcess());
                             equipment.setLastProcessEndTime(lastpro.getPlanenddate());
                             equipment.setLastProcessCutfinishmin(lastop.getCutfinishmin() == null ? null : lastop.getCutfinishmin().intValue());
-                            // 合金+输入物料+宽度
-                            equipment.setLastSeriesProduceMark(lastop.getMetal() + "^_^" + lastop.getPlaninput() + "^_^" + lastop.getProwidth());
+                            // 合金+输入物料+宽度+厚度+输出物料厚度
+                            equipment.setLastSeriesProduceMark(lastop.getMetal() + "^_^" + lastop.getPlaninput() + "^_^" + lastop.getProwidth() + "^_^" + lastop.getThickness() + "^_^" + outMaterDos.get(0).getThickness());
                             equipment.setLastProcessCutfinishmin(lastop.getCutfinishmin() == null ? null : lastop.getCutfinishmin().intValue());
                         }
                         // 查询相关工序作业
@@ -299,9 +304,12 @@ public class ApsServiceImpl implements ApsService {
                                     List<ApsProcessOperationDo> pos = processOperationDos.stream().filter(v -> v.getId().equals(equs.getProcessid())).collect(Collectors.toList());
                                     if (pos != null && pos.size() > 0) {
                                         ApsProcessOperationDo processesDo = pos.get(0);
+                                        // 输出物料
+                                        List<ApsProcessOperationOutMaterDo> outMaterDos = apsProcessOperationOutMaterService.list(new LambdaQueryWrapper<ApsProcessOperationOutMaterDo>()
+                                                .eq(ApsProcessOperationOutMaterDo::getMainid, processesDo.getId()));
                                         er.setProcessType(processesDo.getProcess());
-                                        // 合金+输入物料+宽度
-                                        er.setSeriesProduceMark(operationDo.getMetal() + "^_^" + operationDo.getPlaninput() + "^_^" + operationDo.getProwidth());
+                                        // 合金+输入物料+宽度+厚度
+                                        er.setSeriesProduceMark(operationDo.getMetal() + "^_^" + operationDo.getPlaninput() + "^_^" + operationDo.getProwidth() + "^_^" + operationDo.getThickness() + "^_^" + outMaterDos.get(0).getThickness());
                                         er.setPrepressworkmin(processesDo.getPrepressworkmin() == null ? null : processesDo.getPrepressworkmin().intValue());
                                         er.setCutfinishmin(processesDo.getCutfinishmin() == null ? null : processesDo.getCutfinishmin().intValue());
                                         // 单卷宽度、重量数据赋值
@@ -423,6 +431,9 @@ public class ApsServiceImpl implements ApsService {
      */
     private void productionProcessesInit(ApsProcessOperationDo operationDo,ProduceOrder produceOrder,List<String> optionalEquipments
             ,List<ProductionProcesses> processesList,Map<String,List<ProductionProcesses>> operationProductionProcesses){
+        // 输出物料
+        List<ApsProcessOperationOutMaterDo> outMaterDos = apsProcessOperationOutMaterService.list(new LambdaQueryWrapper<ApsProcessOperationOutMaterDo>()
+                .eq(ApsProcessOperationOutMaterDo::getMainid, operationDo.getId()));
         List<ProductionProcesses> operationProcess = new ArrayList<>();
         if(operationDo != null && operationDo.getPlanprocessrall() != null && operationDo.getPlanprocessrall()>0){
             for (Integer i = 0; i < operationDo.getPlanprocessrall(); i++) {
@@ -455,8 +466,8 @@ public class ApsServiceImpl implements ApsService {
                 // 合金
                 processes.setVolumeMetal(operationDo.getMetal());
                 // 连续生产标识设置
-                // 合金+输入物料+宽度
-                processes.setSeriesProduceMark(operationDo.getMetal() + "^_^" + operationDo.getPlaninput() + "^_^" + operationDo.getProwidth());
+                // 合金+输入物料+宽度+输入物料厚度+输出物料厚度(取第一个冷轧工序使用)
+                processes.setSeriesProduceMark(operationDo.getMetal() + "^_^" + operationDo.getPlaninput() + "^_^" + operationDo.getProwidth() + "^_^" + operationDo.getThickness() + "^_^" + outMaterDos.get(0).getThickness());
                 processes.setPrepressworkmin(operationDo.getPrepressworkmin() == null ? null : operationDo.getPrepressworkmin().intValue());
                 processes.setCutfinishmin(operationDo.getCutfinishmin() == null ? null : operationDo.getCutfinishmin().intValue());
                 // 锁定的作业加上锁定标识