From a75d86bc0d41018edf2e25b9740bc0be6978b735 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期二, 07 五月 2024 08:31:09 +0800
Subject: [PATCH] -

---
 jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java |  115 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 108 insertions(+), 7 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 4f21d59..cd0b658 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
@@ -1,5 +1,6 @@
 package com.jcdm.main.bs.formulaChild.service.impl;
 
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -37,6 +38,9 @@
 {
     @Autowired
     private BsFormulaChildInfoMapper bsFormulaChildInfoMapper;
+
+    @Autowired
+    private IBsFormulaChildInfoService bsFormulaChildInfoService;
 
     @Autowired
     private DaParamCollectionMapper daParamCollectionMapper;
@@ -141,6 +145,90 @@
     }
 
     @Override
+    public AjaxResult yzUpdateResults(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")
+        );
+        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());
+            addParameterCollection(bsFormulaChildInfo);
+            if (spareField4 != null && !spareField4.isEmpty()) {
+                // 鎵ц鎿嶄綔
+                if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
+                    try {
+                        result = "3";
+                    } catch (Exception e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            }
+        }else {
+            result = "1";
+        }
+        return AjaxResult.success(result);
+    }
+
+    @Override
+    public AjaxResult yzUpdateTighteningFormula(BsFormulaChildInfo bsFormulaChildInfo) {
+        String result = "1";
+        BsFormulaChildInfo getMaterTwo = new BsFormulaChildInfo();
+        getMaterTwo.setProcessesCode(bsFormulaChildInfo.getLocationCode());
+        getMaterTwo.setOperationType("2");
+        List<BsFormulaChildInfo> operationType = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(getMaterTwo);
+        List<String> collect = operationType.stream().map(BsFormulaChildInfo::getResults).collect(Collectors.toList());
+        for (String s : collect) {
+            if(s.equals("")){
+                return AjaxResult.error("鎵弿鏈畬鎴愶紝绂佹鎷х揣鎿嶄綔锛�");
+            }
+        }
+        BsFormulaChildInfo listQuery = new BsFormulaChildInfo();
+        listQuery.setParamCode(bsFormulaChildInfo.getParamCode());
+        String paramCode = bsFormulaChildInfo.getTightenTheArray();
+        if(paramCode.contains("N")){
+            List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(listQuery);
+            bsFormulaChildInfos.get(0).setResults("NG");
+            bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
+            bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
+            return AjaxResult.error("鎵弿缁撴灉NG,璇烽噸鏂版壂鎻忥紒");
+        }else {
+            List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(listQuery);
+            bsFormulaChildInfos.get(0).setResults("OK");
+            bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
+            bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
+            String spareField4 = bsFormulaChildInfos.get(0).getSpareField4();
+            if (spareField4 != null && !spareField4.isEmpty()) {
+                // 鎵ц鎿嶄綔
+                if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
+                    try {
+//                        WebSocketUsers.sendMessageToUserByText(map.get(bsFormulaChildInfo.getLocationCode()), "OUT");
+                        result = "2";
+                    } catch (Exception e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            }
+
+        }
+        return AjaxResult.success(result);
+    }
+
+    @Override
     public BsFormulaChildInfo releaseCheck(BsFormulaChildInfo bsFormulaChildInfo) {
         return bsFormulaChildInfoMapper.releaseCheck(bsFormulaChildInfo);
     }
@@ -149,12 +237,18 @@
     @Override
     public AjaxResult updateResults(BsFormulaChildInfo bsFormulaChildInfo) {
         String result = "";
-        BsFormulaChildInfo checkInfo = new BsFormulaChildInfo();
-        checkInfo.setProcessesCode(bsFormulaChildInfo.getLocationCode());
-        checkInfo.setProductCode(bsFormulaChildInfo.getProductCode());
-        checkInfo.setMaterialCode(bsFormulaChildInfo.getScanBarcode().substring(1,2));
-//        bsFormulaChildInfo.setMaterialCode(bsFormulaChildInfo.getScanBarcode().substring(1,2));
-        List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(checkInfo);
+        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")
+        );
+        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());
@@ -195,7 +289,14 @@
 
     @Override
     public AjaxResult workpieceRelease(BsFormulaChildInfo bsFormulaChildInfo) {
-        bsFormulaChildInfoMapper.workpieceRelease(bsFormulaChildInfo);
+        List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>()
+                .eq(BsFormulaChildInfo::getProcessesCode, bsFormulaChildInfo.getLocationCode())
+                .eq(BsFormulaChildInfo::getProductCode, bsFormulaChildInfo.getProductCode()));
+        for (BsFormulaChildInfo info : list) {
+            info.setCollectData("");
+            info.setResults("");
+            bsFormulaChildInfoService.saveOrUpdate(info);
+        }
         return AjaxResult.success();
     }
 

--
Gitblit v1.9.3