From 8cfe20288690f2ba46c804f41f39e8aa48c2dea0 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期六, 15 六月 2024 09:08:30 +0800
Subject: [PATCH] 上传逻辑大版本更新

---
 jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java |  154 ++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 133 insertions(+), 21 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 5d0670a..8350814 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
@@ -18,13 +18,19 @@
 import com.jcdm.main.da.paramCollection.domain.DaParamCollection;
 import com.jcdm.main.da.paramCollection.mapper.DaParamCollectionMapper;
 import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService;
+import com.jcdm.main.da.paramCollectionTemp.domain.DaParamCollectionTemp;
+import com.jcdm.main.da.paramCollectionTemp.service.IDaParamCollectionTempService;
 import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection;
 import com.jcdm.main.da.passingStationCollection.mapper.DaPassingStationCollectionMapper;
+import com.jcdm.main.da.passingStationCollection.service.IDaPassingStationCollectionService;
 import com.jcdm.main.da.testDeviceInterface.service.IDaTestDeviceInterfaceService;
 import com.jcdm.main.plcserver.util.TimeUtil;
 import com.kangaroohy.milo.model.ReadWriteEntity;
 import com.kangaroohy.milo.service.MiloService;
+import lombok.extern.slf4j.Slf4j;
 import org.aspectj.weaver.loadtime.Aj;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.jcdm.main.bs.formulaChild.mapper.BsFormulaChildInfoMapper;
@@ -40,8 +46,10 @@
  * @date 2023-12-26
  */
 @Service
+@Slf4j
 public class BsFormulaChildInfoServiceImpl extends ServiceImpl<BsFormulaChildInfoMapper,BsFormulaChildInfo> implements IBsFormulaChildInfoService
 {
+    private static final Logger logger = LoggerFactory.getLogger("sys-user");
     @Autowired
     private BsFormulaChildInfoMapper bsFormulaChildInfoMapper;
 
@@ -62,6 +70,12 @@
 
     @Autowired
     private IDaParamCollectionService daParamCollectionService;
+
+    @Autowired
+    private IDaPassingStationCollectionService daPassingStationCollectionService;
+
+    @Autowired
+    private IDaParamCollectionTempService daParamCollectionTempService;
 
     Map<String, Session> map = WebSocketUsers.getUsers();
 
@@ -198,6 +212,7 @@
 
     @Override
     public AjaxResult yzUpdateTighteningFormula(BsFormulaChildInfo bsFormulaChildInfo) {
+        Boolean b = true;
         String result = "1";
         BsFormulaChildInfo getMaterTwo = new BsFormulaChildInfo();
         getMaterTwo.setProcessesCode(bsFormulaChildInfo.getLocationCode());
@@ -206,44 +221,63 @@
         List<String> collect = operationType.stream().map(BsFormulaChildInfo::getResults).collect(Collectors.toList());
         for (String s : collect) {
             if(s.equals("")){
-                return AjaxResult.error("鎵弿鏈畬鎴愶紝绂佹鎷х揣鎿嶄綔锛�");
+//                return AjaxResult.success("鎵弿鏈畬鎴愶紝绂佹鎷х揣鎿嶄綔锛�");
             }
         }
         BsFormulaChildInfo listQuery = new BsFormulaChildInfo();
         listQuery.setParamCode(bsFormulaChildInfo.getParamCode());
+        listQuery.setProcessesCode(bsFormulaChildInfo.getLocationCode());
         String paramCode = bsFormulaChildInfo.getTightenTheArray();
         if(paramCode.contains("N")){
+            result = "3";
             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,璇烽噸鏂版壂鎻忥紒");
+//            return AjaxResult.success("鎵弿缁撴灉NG,璇烽噸鏂版壂鎻忥紒");
         }else {
             List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(listQuery);
-            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+1).build());
-            } catch (Exception e) {
-                throw new RuntimeException(e);
+            if(bsFormulaChildInfos.get(0).getSpareField2()!=null&&bsFormulaChildInfos.get(0).getSpareField3()!=null){
+                String tightenArray = bsFormulaChildInfo.getTightenTheArray().replace("[", "").replace("]", "").replace(" ", "");
+                String[] tightenDataParts = tightenArray.split(",");
+                b = TimeUtil.isNumberInRange(Double.parseDouble(tightenDataParts[0]),Double.parseDouble(bsFormulaChildInfos.get(0).getSpareField2()),Double.parseDouble(bsFormulaChildInfos.get(0).getSpareField3()));
             }
+            if(b){
+                result = "3";
+                bsFormulaChildInfos.get(0).setResults("OK");
+                bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
+                bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
+                logger.info("yzUpdateTighteningFormula--鏌ヨ鏉′欢鍙傛暟锛�"+listQuery);
+                logger.info("yzUpdateTighteningFormula--鏌ヨ缁撴灉锛�"+bsFormulaChildInfos.get(0));
+                Integer stepNumber = Integer.valueOf(bsFormulaChildInfos.get(0).getStepSort());
+                try {
+                    miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+bsFormulaChildInfo.getLocationCode()+".MStepNumber").value(stepNumber+1).build());
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
 
-            String spareField4 = bsFormulaChildInfos.get(0).getSpareField4();
-            if (spareField4 != null && !spareField4.isEmpty()) {
-                // 鎵ц鎿嶄綔
-                if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
-                    try {
+                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);
+                            result = "2";
+                        } catch (Exception e) {
+                            throw new RuntimeException(e);
+                        }
                     }
                 }
+            }else {
+                result = "3";
+                List<BsFormulaChildInfo> bsFormulaChildInfos1 = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(listQuery);
+                bsFormulaChildInfos1.get(0).setResults("NG");
+                String originalString = bsFormulaChildInfo.getTightenTheArray();
+                String modifiedString = originalString.replaceFirst("OK", "NG");
+                bsFormulaChildInfos1.get(0).setCollectData(modifiedString);
+                bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos1.get(0));
+//                return AjaxResult.success("鎵弿缁撴灉NG,璇烽噸鏂版壂鎻忥紒");
             }
-
         }
         return AjaxResult.success(result);
     }
@@ -295,6 +329,47 @@
             result = "1";
         }
         return AjaxResult.success(result);
+    }
+
+    @Override
+    public AjaxResult jrmWorkpieceRelease(BsFormulaChildInfo 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);
+        }
+        String[] split = bsFormulaChildInfo.getProductBarcode().split(",");
+        try {
+            for (int i = 0; i < split.length; i++) {
+                daParamCollectionService.pushGeelycvMesFeedback(split[i], bsFormulaChildInfo.getLocationCode());
+                String barCode = bsFormulaChildInfo.getProductBarcode();
+                String locationCode = bsFormulaChildInfo.getLocationCode();
+                DaPassingStationCollection passingStationCollectionOne = daPassingStationCollectionService.getOne(new LambdaQueryWrapper<DaPassingStationCollection>().eq(DaPassingStationCollection::getSfcCode, barCode).eq(DaPassingStationCollection::getLocationCode, locationCode));
+                if (passingStationCollectionOne != null) {
+                    passingStationCollectionOne.setOutRsSign("1");
+                    passingStationCollectionOne.setOutboundTime(new Date());
+                    daPassingStationCollectionService.saveOrUpdate(passingStationCollectionOne);
+                }
+            }
+        }catch (Exception e){
+        }
+        return AjaxResult.success();
+    }
+
+    @Override
+    public AjaxResult clearWorkpieceRelease(BsFormulaChildInfo 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();
     }
 
     @Override
@@ -362,6 +437,16 @@
         daParamCollection.setCollectionTime(new Date());
         daParamCollection.setSfcCode(bsFormulaChildInfo.getSfcBarcode());
         daParamCollectionMapper.insertDaParamCollection(daParamCollection);
+
+        DaParamCollectionTemp daParamCollectionTemp = new DaParamCollectionTemp();
+        daParamCollectionTemp.setParamCode(bsFormulaChildInfo.getParamCode());
+        daParamCollectionTemp.setWorkOrderNo(bsFormulaChildInfo.getWorkOrderNo());
+        daParamCollectionTemp.setLocationCode(bsFormulaChildInfo.getLocationCode());
+        daParamCollectionTemp.setParamValue(bsFormulaChildInfo.getParamValue());
+        daParamCollectionTemp.setProductCode(bsFormulaChildInfo.getProductCode());
+        daParamCollectionTemp.setCollectionTime(new Date());
+        daParamCollectionTemp.setSfcCode(bsFormulaChildInfo.getSfcBarcode());
+        daParamCollectionTempService.save(daParamCollectionTemp);
     }
 
     public void jrmAddParameterCollection(BsFormulaChildInfo bsFormulaChildInfo){
@@ -384,11 +469,23 @@
             daParamCollectionMapper.insertDaParamCollection(daParamCollection);
 //        }
 
+            DaParamCollectionTemp daParamCollectionTemp = new DaParamCollectionTemp();
+            daParamCollectionTemp.setParamCode(bsFormulaChildInfo.getParamCode());
+            daParamCollectionTemp.setWorkOrderNo(bsFormulaChildInfo.getWorkOrderNo());
+            daParamCollectionTemp.setLocationCode(bsFormulaChildInfo.getLocationCode());
+            daParamCollectionTemp.setParamValue(bsFormulaChildInfo.getParamValue());
+            daParamCollectionTemp.setProductCode(bsFormulaChildInfo.getProductCode());
+            daParamCollectionTemp.setCollectionTime(new Date());
+            if(bsFormulaChildInfo.getParamCode().contains("B")){
+                daParamCollectionTemp.setSfcCode(modeleSplit[1]);
+            }else {
+                daParamCollectionTemp.setSfcCode(modeleSplit[0]);
+            }
+            daParamCollectionTempService.save(daParamCollectionTemp);
     }
 
     @Override
     public AjaxResult workpieceRelease(BsFormulaChildInfo bsFormulaChildInfo) {
-        daParamCollectionService.pushGeelycvMesFeedback(bsFormulaChildInfo.getProductBarcode(), bsFormulaChildInfo.getLocationCode());
         List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>()
                 .eq(BsFormulaChildInfo::getProcessesCode, bsFormulaChildInfo.getLocationCode())
                 .eq(BsFormulaChildInfo::getProductCode, bsFormulaChildInfo.getProductCode()));
@@ -396,6 +493,18 @@
             info.setCollectData("");
             info.setResults("");
             bsFormulaChildInfoService.saveOrUpdate(info);
+        }
+        try {
+            daParamCollectionService.pushGeelycvMesFeedback(bsFormulaChildInfo.getProductBarcode(), bsFormulaChildInfo.getLocationCode());
+            String barCode = bsFormulaChildInfo.getProductBarcode();
+            String locationCode = bsFormulaChildInfo.getLocationCode();
+            DaPassingStationCollection passingStationCollectionOne = daPassingStationCollectionService.getOne(new LambdaQueryWrapper<DaPassingStationCollection>().eq(DaPassingStationCollection::getSfcCode, barCode).eq(DaPassingStationCollection::getLocationCode, locationCode));
+            if (passingStationCollectionOne != null) {
+                passingStationCollectionOne.setOutRsSign("1");
+                passingStationCollectionOne.setOutboundTime(new Date());
+                daPassingStationCollectionService.saveOrUpdate(passingStationCollectionOne);
+            }
+        }catch (Exception e){
         }
         return AjaxResult.success();
     }
@@ -415,6 +524,7 @@
         }
         BsFormulaChildInfo listQuery = new BsFormulaChildInfo();
         listQuery.setParamCode(bsFormulaChildInfo.getParamCode());
+        listQuery.setProcessesCode(bsFormulaChildInfo.getLocationCode());
         String paramCode = bsFormulaChildInfo.getTightenTheArray();
         if(paramCode.contains("N")){
             List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(listQuery);
@@ -433,6 +543,8 @@
                 bsFormulaChildInfos.get(0).setResults("OK");
                 bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
                 bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
+                logger.info("鏌ヨ鏉′欢鍙傛暟锛�"+listQuery);
+                logger.info("鏌ヨ缁撴灉锛�"+bsFormulaChildInfos.get(0));
                 Integer stepNumber = Integer.valueOf(bsFormulaChildInfos.get(0).getStepSort());
                 try {
                     miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+bsFormulaChildInfo.getLocationCode()+".MStepNumber").value(stepNumber+1).build());

--
Gitblit v1.9.3