From 6068faa866f976b7848b872420f2d93f77f5035b Mon Sep 17 00:00:00 2001
From: hdy <1105738590@qq.com>
Date: 星期日, 12 五月 2024 18:15:38 +0800
Subject: [PATCH] 打印

---
 jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java |   94 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 94 insertions(+), 0 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java
index cd0b658..a555451 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java
@@ -6,6 +6,7 @@
 import java.util.Map;
 import java.util.stream.Collectors;
 
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -211,6 +212,14 @@
             bsFormulaChildInfos.get(0).setResults("OK");
             bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
             bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
+
+            Integer stepNumber = Integer.valueOf(bsFormulaChildInfos.get(0).getStepSort());
+            try {
+                miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+bsFormulaChildInfo.getLocationCode()+".MStepNumber").value(stepNumber).build());
+            } catch (Exception e) {
+                throw new RuntimeException(e);
+            }
+
             String spareField4 = bsFormulaChildInfos.get(0).getSpareField4();
             if (spareField4 != null && !spareField4.isEmpty()) {
                 // 鎵ц鎿嶄綔
@@ -224,6 +233,53 @@
                 }
             }
 
+        }
+        return AjaxResult.success(result);
+    }
+
+    @Override
+    public AjaxResult jrmUpdateResults(BsFormulaChildInfo bsFormulaChildInfo) {
+        String result = "";
+        List<BsFormulaChildInfo> bsFormulaChildInfos = new ArrayList<>();
+        List<BsFormulaChildInfo> infos = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>()
+                .eq(BsFormulaChildInfo::getProcessesCode, bsFormulaChildInfo.getLocationCode())
+                .eq(BsFormulaChildInfo::getProductCode, bsFormulaChildInfo.getProductCode())
+                .eq(BsFormulaChildInfo::getOperationType, "2")
+        ).stream().filter(x -> StrUtil.isBlank(x.getCollectData())).collect(Collectors.toList());
+
+
+        for (BsFormulaChildInfo formulaChildInfo : infos) {
+            if(bsFormulaChildInfo.getScanBarcode().contains(formulaChildInfo.getMaterialCode())){
+                bsFormulaChildInfos.add(formulaChildInfo);
+                break;
+            }
+        }
+        if(bsFormulaChildInfos.size()>0){
+            String spareField4 = bsFormulaChildInfos.get(0).getSpareField4();
+            bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getScanBarcode());
+            bsFormulaChildInfos.get(0).setResults("OK");
+            bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
+            bsFormulaChildInfo.setParamValue(bsFormulaChildInfo.getScanBarcode());
+            bsFormulaChildInfo.setParamCode(bsFormulaChildInfos.get(0).getParamCode());
+            bsFormulaChildInfo.setSfcBarcode(bsFormulaChildInfo.getSfcBarcode());
+            jrmAddParameterCollection(bsFormulaChildInfo);
+
+            if (spareField4 != null && !spareField4.isEmpty()) {
+                // 鎵ц鎿嶄綔
+                if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
+                    try {
+                        result = "3";
+                        String strA = bsFormulaChildInfo.getLocationCode() + "A";
+                        String strB = bsFormulaChildInfo.getLocationCode() + "B";
+                        miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+strA+".RecordDataDone").value(21).build());
+                        miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+strB+".RecordDataDone").value(21).build());
+                    } catch (Exception e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            }
+        }else {
+            result = "1";
         }
         return AjaxResult.success(result);
     }
@@ -258,6 +314,14 @@
             bsFormulaChildInfo.setParamCode(bsFormulaChildInfos.get(0).getParamCode());
             bsFormulaChildInfo.setSfcBarcode(bsFormulaChildInfo.getSfcBarcode());
             addParameterCollection(bsFormulaChildInfo);
+
+//            Integer stepNumber = Integer.valueOf(bsFormulaChildInfos.get(0).getStepSort());
+//            try {
+//                miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+bsFormulaChildInfo.getLocationCode()+".StepNumber").value(stepNumber).build());
+//            } catch (Exception e) {
+//                throw new RuntimeException(e);
+//            }
+
             if (spareField4 != null && !spareField4.isEmpty()) {
                 // 鎵ц鎿嶄綔
                 if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
@@ -285,6 +349,28 @@
         daParamCollection.setCollectionTime(new Date());
         daParamCollection.setSfcCode(bsFormulaChildInfo.getSfcBarcode());
         daParamCollectionMapper.insertDaParamCollection(daParamCollection);
+    }
+
+    public void jrmAddParameterCollection(BsFormulaChildInfo bsFormulaChildInfo){
+        String scanBarCode = bsFormulaChildInfo.getSfcBarcode();
+        String[] modeleSplit = scanBarCode.split(",");
+//        for (String modele : modeleSplit) {
+            DaParamCollection daParamCollection = new DaParamCollection();
+            daParamCollection.setParamCode(bsFormulaChildInfo.getParamCode());
+            daParamCollection.setWorkOrderNo(bsFormulaChildInfo.getWorkOrderNo());
+            daParamCollection.setLocationCode(bsFormulaChildInfo.getLocationCode());
+            daParamCollection.setParamValue(bsFormulaChildInfo.getParamValue());
+            daParamCollection.setProductCode(bsFormulaChildInfo.getProductCode());
+            daParamCollection.setCollectionTime(new Date());
+            if(bsFormulaChildInfo.getParamCode().contains("B")){
+                daParamCollection.setSfcCode(modeleSplit[1]);
+            }else {
+                daParamCollection.setSfcCode(modeleSplit[0]);
+            }
+//            daParamCollection.setSfcCode(modele);
+            daParamCollectionMapper.insertDaParamCollection(daParamCollection);
+//        }
+
     }
 
     @Override
@@ -326,6 +412,14 @@
             bsFormulaChildInfos.get(0).setResults("OK");
             bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
             bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
+
+            Integer stepNumber = Integer.valueOf(bsFormulaChildInfos.get(0).getStepSort());
+            try {
+                miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+bsFormulaChildInfo.getLocationCode()+".MStepNumber").value(stepNumber).build());
+            } catch (Exception e) {
+                throw new RuntimeException(e);
+            }
+
             String spareField4 = bsFormulaChildInfos.get(0).getSpareField4();
             if (spareField4 != null && !spareField4.isEmpty()) {
                 // 鎵ц鎿嶄綔

--
Gitblit v1.9.3