From 7bee802c37d290a38be32012d84a3e5bc8b4ea92 Mon Sep 17 00:00:00 2001
From: 懒羊羊 <15939171744@163.com>
Date: 星期二, 09 四月 2024 08:50:46 +0800
Subject: [PATCH] -

---
 jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java |   95 +++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 91 insertions(+), 4 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 584ba79..7f64c48 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
@@ -2,16 +2,29 @@
 
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.jcdm.common.core.domain.AjaxResult;
 import com.jcdm.common.utils.DateUtils;
+import com.jcdm.framework.websocket.WebSocketUsers;
 import com.jcdm.main.da.paramCollection.domain.DaParamCollection;
 import com.jcdm.main.da.paramCollection.mapper.DaParamCollectionMapper;
+import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection;
+import com.jcdm.main.da.passingStationCollection.mapper.DaPassingStationCollectionMapper;
+import com.kangaroohy.milo.model.ReadWriteEntity;
+import com.kangaroohy.milo.service.MiloService;
+import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.jcdm.main.bs.formulaChild.mapper.BsFormulaChildInfoMapper;
 import com.jcdm.main.bs.formulaChild.domain.BsFormulaChildInfo;
 import com.jcdm.main.bs.formulaChild.service.IBsFormulaChildInfoService;
+
+import javax.websocket.Session;
 
 /**
  * 閰嶆柟閰嶇疆瀛愪俊鎭疭ervice涓氬姟灞傚鐞�
@@ -20,13 +33,21 @@
  * @date 2023-12-26
  */
 @Service
-public class BsFormulaChildInfoServiceImpl implements IBsFormulaChildInfoService 
+public class BsFormulaChildInfoServiceImpl extends ServiceImpl<BsFormulaChildInfoMapper,BsFormulaChildInfo> implements IBsFormulaChildInfoService
 {
     @Autowired
     private BsFormulaChildInfoMapper bsFormulaChildInfoMapper;
 
     @Autowired
     private DaParamCollectionMapper daParamCollectionMapper;
+
+    @Autowired
+    private MiloService miloService;
+
+    @Autowired
+    private DaPassingStationCollectionMapper daPassingStationCollectionMapper;
+
+    Map<String, Session> map = WebSocketUsers.getUsers();
 
     /**
      * 鏌ヨ閰嶆柟閰嶇疆瀛愪俊鎭�
@@ -112,15 +133,28 @@
     }
 
     @Override
-    public List<BsFormulaChildInfo> releaseCheck(BsFormulaChildInfo bsFormulaChildInfo) {
+    public BsFormulaChildInfo getCount(String productCode, String processesCode) {
+        BsFormulaChildInfo info = new BsFormulaChildInfo();
+        info.setProcessesCode(processesCode);
+        info.setProductCode(productCode);
+        return bsFormulaChildInfoMapper.getCount(info);
+    }
+
+    @Override
+    public BsFormulaChildInfo releaseCheck(BsFormulaChildInfo bsFormulaChildInfo) {
         return bsFormulaChildInfoMapper.releaseCheck(bsFormulaChildInfo);
     }
 
     @Override
     public AjaxResult updateResults(BsFormulaChildInfo bsFormulaChildInfo) {
-        bsFormulaChildInfo.setMaterialCode(bsFormulaChildInfo.getScanBarcode().substring(1,2));
-        List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(bsFormulaChildInfo);
+        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);
         if(bsFormulaChildInfos.size()>0){
+            bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getScanBarcode());
             bsFormulaChildInfos.get(0).setResults("OK");
             bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
             bsFormulaChildInfo.setParamValue(bsFormulaChildInfo.getScanBarcode());
@@ -150,4 +184,57 @@
         bsFormulaChildInfoMapper.workpieceRelease(bsFormulaChildInfo);
         return AjaxResult.success();
     }
+
+    @Override
+    public AjaxResult updateTighteningFormula(BsFormulaChildInfo bsFormulaChildInfo) {
+        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 {
+//                        //鏇存柊杩囩珯璁板綍琛ㄥ嚭绔欐椂闂�
+//                        DaPassingStationCollection daPassingStationCollection = new DaPassingStationCollection();
+//                        daPassingStationCollection.setWorkOrderNo(bsFormulaChildInfo.getWorkOrderNo());
+//                        List<DaPassingStationCollection> daPassingStationCollections = daPassingStationCollectionMapper.selectDaPassingStationCollectionList(daPassingStationCollection);
+//                        daPassingStationCollections.get(0).setOutboundTime(new Date());
+//                        daPassingStationCollectionMapper.updateDaPassingStationCollection(daPassingStationCollections.get(0));
+                        miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+bsFormulaChildInfo.getLocationCode()+".RecordDataDone").value(21).build());
+                        WebSocketUsers.sendMessageToUserByText(map.get(bsFormulaChildInfo.getLocationCode()), "OUT");
+                    } catch (Exception e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            }
+
+        }
+        return AjaxResult.success("鎵弿鎴愬姛锛�");
+    }
+
+
+
+
 }

--
Gitblit v1.9.3