From 706d57aa682845cf1bc01cbfd1087c4c0f33093f Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期二, 12 十一月 2024 09:46:48 +0800
Subject: [PATCH] 优化

---
 jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java |   35 ++++++++++++++++++++++++++++++++++-
 1 files changed, 34 insertions(+), 1 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java
index 8b0121b..62b6e26 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java
@@ -10,6 +10,8 @@
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.jcdm.main.constant.Constants;
+import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo;
+import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService;
 import com.kangaroohy.milo.model.ReadWriteEntity;
 import com.kangaroohy.milo.service.MiloService;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -45,7 +47,36 @@
     private IBsFormulaChildInfoService bsFormulaChildInfoService;
 
     @Autowired
+    private IOmProductionOrdeInfoService omProductionOrdeInfoService;
+
+    @Autowired
     private MiloService miloService;
+
+    /**
+     * 杩斾慨淇℃伅鍐欏叆plc
+     */
+    @GetMapping("/writeRepairInformationIntoPlc")
+    public AjaxResult writeRepairInformationIntoPlc(BsFormulaChildInfo bsFormulaChildInfo)
+    {
+        String thoroughfare = Constants.thoroughfareMap.get(bsFormulaChildInfo.getProcessesCode());//鑾峰彇閫氶亾
+        try {
+            String prefix = thoroughfare+".OP165.";
+            miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(prefix+"RepairSN").value(bsFormulaChildInfo.getSfcCode()).build());
+            miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(prefix+"RepairWorknum").value(bsFormulaChildInfo.getWorkOrderNo()).build());
+            miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(prefix+"Repairstation").value(bsFormulaChildInfo.getProcessesCode()).build());
+            miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(prefix+"RepairLastar").value(bsFormulaChildInfo.getEngravingStatus()).build());
+            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(prefix+"RepairFlag").value(1).build());
+
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+        return AjaxResult.success();
+    }
+
+    public static void main(String[] args) {
+        String str = "TZ180XSDSZX012409120000001";
+        System.out.println(str.length());
+    }
 
     /**
      * 鏈仛瀹屽伐搴忓洖澶峱lc淇″彿
@@ -113,11 +144,13 @@
             String str = thoroughfare+"."+bsFormulaChildInfo.getProcessesCode()+".MESScrew";
             miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(str).value(stepNumber).build());//鎷х揣姝ラ
             if("OP230".equals(bsFormulaChildInfo.getProcessesCode())){
+                List<OmProductionOrdeInfo> list = omProductionOrdeInfoService.list(new LambdaQueryWrapper<OmProductionOrdeInfo>().like(OmProductionOrdeInfo::getProductNum, bsFormulaChildInfo.getSfcBarcode()));
+                String sfcCode = list.get(0).getProductNum();
                 //鎵�鏈夎繘绔欏皢杩涚珯鏃堕棿鍐欑粰PLC
                 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                 String currentDate = dateFormat.format(new Date());
                 miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + bsFormulaChildInfo.getProcessesCode() + ".StartTime").value(currentDate).build());
-                miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + bsFormulaChildInfo.getProcessesCode() + ".SNCode").value(bsFormulaChildInfo.getSfcBarcode()).build());
+                miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + bsFormulaChildInfo.getProcessesCode() + ".SNCode").value(sfcCode).build());
                 miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + bsFormulaChildInfo.getProcessesCode() + ".RecordDataDone").value(11).build());
             }else if("OP220".equals(bsFormulaChildInfo.getProcessesCode())){
                 miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + bsFormulaChildInfo.getProcessesCode() + ".RecordDataDone").value(11).build());

--
Gitblit v1.9.3