From 2fbce7d8c0b7e5b055bb7ab77e58b1ec9ce61885 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期一, 24 六月 2024 19:00:22 +0800
Subject: [PATCH] 1,优化人工工位参数采集temp表删除方法 pushGeelycvMesFeedback 2,优化人工工位更新过站记录方法 workpieceRelease 3,优化未绑定小车码弹框提示 4,优化人工工位扫码重复会添加参数采集记录的问题及拧紧数据会添加上物料采集上的问题

---
 jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java |  210 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 201 insertions(+), 9 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java
index dc72ecb..1a378e7 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java
@@ -25,18 +25,24 @@
 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.om.productionOrde.service.IOmProductionOrdeInfoService;
 import com.jcdm.main.plcserver.sub.OPCUaSubscription;
 import com.jcdm.main.restful.factoryMes.service.RestfulService;
 import com.jcdm.main.restful.qingYan.doman.ChildVO;
 import com.jcdm.main.restful.qingYan.doman.ParentVO;
 import com.kangaroohy.milo.model.ReadWriteEntity;
 import com.kangaroohy.milo.service.MiloService;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.ibatis.session.ExecutorType;
 import org.apache.ibatis.session.SqlSession;
 import org.apache.ibatis.session.SqlSessionFactory;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.core.parameters.P;
 import org.springframework.stereotype.Service;
@@ -45,6 +51,7 @@
 import java.text.SimpleDateFormat;
 import java.time.Instant;
 import java.util.*;
+import java.util.concurrent.CompletableFuture;
 import java.util.stream.Collectors;
 
 /**
@@ -53,9 +60,12 @@
  * @author yyt
  * @date 2023-12-13
  */
+@Slf4j
 @Service
 public class DaParamCollectionServiceImpl extends ServiceImpl<DaParamCollectionMapper,DaParamCollection> implements IDaParamCollectionService
 {
+    private static final Logger logger = LoggerFactory.getLogger("sys-user");
+
     @Autowired
     private DaParamCollectionMapper daParamCollectionMapper;
 
@@ -82,6 +92,12 @@
 
     @Autowired
     private IDaCollectionParamConfService daCollectionParamConfService;
+
+    @Autowired
+    private IDaParamCollectionTempService daParamCollectionTempService;
+
+    @Autowired
+    private IOmProductionOrdeInfoService omProductionOrdeInfoService;
 
     public SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 
@@ -114,6 +130,7 @@
         // ExecutorType.SIMPLE: 杩欎釜鎵ц鍣ㄧ被鍨嬩笉鍋氱壒娈婄殑浜嬫儏銆傚畠涓烘瘡涓鍙ョ殑鎵ц鍒涘缓涓�涓柊鐨勯澶勭悊璇彞銆�
         // ExecutorType.REUSE: 杩欎釜鎵ц鍣ㄧ被鍨嬩細澶嶇敤棰勫鐞嗚鍙ャ��
         // ExecutorType.BATCH: 杩欎釜鎵ц鍣ㄤ細鎵归噺鎵ц鎵�鏈夋洿鏂拌鍙�,濡傛灉 SELECT 鍦ㄥ畠浠腑闂存墽琛岃繕浼氭爣瀹氬畠浠槸 蹇呴』鐨�,鏉ヤ繚璇佷竴涓畝鍗曞苟鏄撲簬鐞嗚В鐨勮涓恒��
+        logger.info("杩涘叆涔愬伐鎵归噺鏂规硶saveBeachDaParamCollection");
 
         // 鍏抽棴session鐨勮嚜鍔ㄦ彁浜�
         SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
@@ -123,6 +140,8 @@
             // 鎻愪氦鏁版嵁
             sqlSession.commit();
             sqlSession.rollback();
+            logger.info("缁撴潫涔愬伐鎵归噺鏂规硶saveBeachDaParamCollection");
+
         } catch (Exception e) {
             sqlSession.rollback();
         } finally {
@@ -224,6 +243,15 @@
                 daParamCollection.setCollectionTime(new Date());
                 daParamCollection.setSfcCode(daParamCollection.getProductBarcode());
                 daParamCollectionMapper.insertDaParamCollection(daParamCollection);
+
+                DaParamCollectionTemp daParamCollectionTemp = new DaParamCollectionTemp();
+                daParamCollectionTemp.setParamValue(tightenDataParts[i]);
+                daParamCollectionTemp.setParamCode(paramCodeParts[i]);
+                daParamCollectionTemp.setCollectionTime(new Date());
+                daParamCollectionTemp.setSfcCode(daParamCollection.getProductBarcode());
+                daParamCollectionTemp.setLocationCode(daParamCollection.getLocationCode());
+                daParamCollectionTemp.setProductCode(daParamCollection.getProductCode());
+                daParamCollectionTempService.save(daParamCollectionTemp);
             }
         }
     }
@@ -288,8 +316,26 @@
                 //缁檕pc鍙�21
                 miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+daParamCollection.getLocationCode()+".RecordDataDone").value(21).build());
                 if(daParamCollection.getLocationCode().equals("OP240")){
-                    RestfulService.getWorkReportResultFeedback(daParamCollection.getProductBarcode(),"OP230",format.format(new Date()));
+                    try{
+                        CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
+                            logger.info("OP230鎶ュ伐寮�濮�-宸ュ巶MES寮傛鏂规硶");
+                            String reportResult = RestfulService.getWorkReportResultFeedback(daParamCollection.getProductBarcode(), "OP230", format.format(new Date()));
+                            if("".equals(reportResult)){
+                                //鎵ц鎶ュ伐澶辫触鏂规硶
+                            }else{
+                                //瑙f瀽宸ュ巶mes杩斿洖缁撴灉锛屽鏋滃け璐ワ紝鎵ц鎶ュ伐澶辫触鏂规硶锛屼慨鏀规槸鍚︽姤宸ヤ负2锛屾坊鍔犳姤宸ユ椂闂�
+
+                                //濡傛灉鎴愬姛锛屾墽琛屾姤宸ユ垚鍔熸柟娉曪紝淇敼鏄惁鎶ュ伐涓�1锛屾坊鍔犳姤宸ユ椂闂�
+                            }
+                            logger.info("OP230鎶ュ伐缁撴潫-宸ュ巶MES寮傛鏂规硶{}"+reportResult);
+                        });
+                    }catch (Exception e){
+                        System.out.println(e.getMessage());
+                    }
+//                    RestfulService.getWorkReportResultFeedback(daParamCollection.getProductBarcode(),"OP230",format.format(new Date()));
                 }
+
+
             } catch (Exception e) {
                 throw new RuntimeException(e);
             }
@@ -440,12 +486,99 @@
 
     @Override
     public void pushGeelycvMesFeedback(String packID, String stationCode) {
+        logger.info("杩涘叆浜哄伐宸ヤ綅鎺ㄩ�佸伐鍘侻ES鏁版嵁鏂规硶-pushGeelycvMesFeedback-宸ヤ綅{}-pack鐮亄}",stationCode,packID);
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 //        String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback";
         String url = "https://imes-group.geelycv.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback";
         String totalResult = "0";
-        List<DaParamCollection> paramList = daParamCollectionService.list(new LambdaQueryWrapper<DaParamCollection>().eq(DaParamCollection::getSfcCode, packID).eq(DaParamCollection::getLocationCode, stationCode));
+        List<DaParamCollectionTemp> paramList = daParamCollectionTempService.list(new LambdaQueryWrapper<DaParamCollectionTemp>().eq(DaParamCollectionTemp::getSfcCode, packID).eq(DaParamCollectionTemp::getLocationCode, stationCode));
         if(paramList.size() > 0){
+            ParentVO parentVO = new ParentVO();
+            parentVO.setSiteCode("3983");
+            parentVO.setRecordId(String.valueOf(Instant.now().toEpochMilli()));
+            parentVO.setStationCode(stationCode);
+            parentVO.setProductNum(packID);
+            parentVO.setTotalResult("1");
+            List<ChildVO> listChildVo = new ArrayList<>();
+
+            for (DaParamCollectionTemp daParamCollection : paramList) {
+                ChildVO childVO = new ChildVO();
+                childVO.setItemCode(daParamCollection.getParamCode());
+//                BsFormulaChildInfo childOne = bsFormulaChildInfoService.getOne(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getParamCode, daParamCollection.getParamCode()));
+//                DaCollectionParamConf paramConfOne = daCollectionParamConfService.getOne(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode()));
+                List<DaCollectionParamConf> paramConfOneList = daCollectionParamConfService.list(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode()));
+                DaCollectionParamConf paramConfOne = paramConfOneList.get(0);
+//                if(childOne!=null){
+//                    String operationType = childOne.getOperationType();
+//                    if(operationType.equals("1")){
+//                        childVO.setItemType("2");
+//                    }else if(operationType.equals("2")){
+//                        childVO.setItemType("1");
+//                    }
+//                }else {
+//                    childVO.setItemType("3");
+//                }
+                if(paramConfOne!=null){
+                    childVO.setItemType(paramConfOne.getSpareField1());
+                    childVO.setItemText(paramConfOne.getCollectParameterName());
+                }else {
+                    childVO.setItemType("3");
+                    childVO.setItemText("");
+                }
+                childVO.setItemValue(daParamCollection.getParamValue());
+
+                if(daParamCollection.getParamValue().equals("1")){
+                    childVO.setCheckResult("1");
+                }else if(daParamCollection.getParamValue().equals("2")){
+                    childVO.setCheckResult("0");
+                    parentVO.setTotalResult("0");
+                    totalResult = "1";
+                }else {
+                    childVO.setCheckResult("1");
+                }
+                childVO.setCheckTime(format.format(daParamCollection.getCollectionTime()));
+                listChildVo.add(childVO);
+
+            }
+            parentVO.setCheckList(listChildVo);
+            try{
+                CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
+                    logger.info("寮�濮嬫墽琛屽紓姝ユ柟娉�");
+                    HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
+                    logger.info("寮傛鏂规硶鎵ц缁撴潫");
+                    logger.info("鎵嬪姩宸ヤ綅浼犲伐鍘侻ES寮傛鏂规硶{}"+execute.body());
+
+                    DaParamCollectionTemp daParamCollectionTemp = new DaParamCollectionTemp();
+                    daParamCollectionTemp.setSfcCode(packID);
+                    daParamCollectionTemp.setLocationCode(stationCode);
+                    int i = daParamCollectionTempService.deleteDaParamCollectionTempBySfcCodeAndLocationCode(daParamCollectionTemp);
+                    logger.info("鍒犻櫎涓存椂琛ㄦ暟鎹潯鏁皗}-宸ヤ綅{}-pack鐮亄}",i,stationCode,packID);
+//                    List<Long> idsList = paramList.stream().map(DaParamCollectionTemp::getId).collect(Collectors.toList());
+//                    Long[] array = idsList.toArray(new Long[0]);
+//                    int i = daParamCollectionTempService.deleteDaParamCollectionTempByIds(array);
+//                    logger.info("鍒犻櫎涓存椂琛ㄦ暟鎹潯鏁皗}-宸ヤ綅{}-pack鐮亄}",i,stationCode,packID);
+                });
+            }catch (Exception e){
+                System.out.println(e.getMessage());
+            }
+//            HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
+
+//            System.out.println(execute.body());
+            System.out.println("-----------------------"+totalResult);
+            logger.info("缁撴潫浜哄伐宸ヤ綅鎺ㄩ�佸伐鍘侻ES鏁版嵁鏂规硶-pushGeelycvMesFeedback-宸ヤ綅{}-pack鐮亄}",stationCode,packID);
+        }
+
+    }
+
+    @Override
+    public void automaticWorkstationPushGeelycvMesFeedback(String packID, String stationCode,List<DaParamCollection> paramList) {
+        logger.info("杩涘叆宸ヤ綅{}-宸ュ巶MES鎺ㄩ�佹暟鎹柟娉昦utomaticWorkstationPushGeelycvMesFeedback",stationCode);
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//        String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback";
+        String url = "https://imes-group.geelycv.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback";
+        String totalResult = "0";
+        if(paramList.size() > 0){
+            logger.info("杩涘叆宸ヤ綅{}-鎷兼暟鎹�",stationCode);
             ParentVO parentVO = new ParentVO();
             parentVO.setSiteCode("3983");
             parentVO.setRecordId(String.valueOf(Instant.now().toEpochMilli()));
@@ -457,8 +590,10 @@
             for (DaParamCollection daParamCollection : paramList) {
                 ChildVO childVO = new ChildVO();
                 childVO.setItemCode(daParamCollection.getParamCode());
-                BsFormulaChildInfo childOne = bsFormulaChildInfoService.getOne(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getParamCode, daParamCollection.getParamCode()));
-                DaCollectionParamConf paramConfOne = daCollectionParamConfService.getOne(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode()));
+//                BsFormulaChildInfo childOne = bsFormulaChildInfoService.getOne(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getParamCode, daParamCollection.getParamCode()));
+//                DaCollectionParamConf paramConfOne = daCollectionParamConfService.getOne(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode()));
+                List<DaCollectionParamConf> paramConfOneList = daCollectionParamConfService.list(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode()));
+                DaCollectionParamConf paramConfOne = paramConfOneList.get(0);
 //                if(childOne!=null){
 //                    String operationType = childOne.getOperationType();
 //                    if(operationType.equals("1")){
@@ -491,25 +626,82 @@
                 listChildVo.add(childVO);
             }
             parentVO.setCheckList(listChildVo);
-            HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
-            System.out.println(execute.body());
+            logger.info("缁撴潫宸ヤ綅{}-鎷兼暟鎹�",stationCode);
+            logger.info("杩涘叆宸ヤ綅{}-宸ュ巶MES鎺ㄩ�佹暟鎹柟娉旽ttpResponseSend",stationCode);
+            try{
+                CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
+                    logger.info("寮�濮嬫墽琛屽紓姝ユ柟娉�");
+                    HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
+                    System.out.println(execute.body());
+                    logger.info("寮傛鏂规硶鎵ц缁撴潫");
+                    logger.info("鑷姩宸ヤ綅浼犲伐鍘侻ES寮傛鏂规硶{}"+execute.body());
+                });
+            }catch (Exception e){
+                System.out.println(e.getMessage());
+            }
+//            HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
+            logger.info("缁撴潫宸ヤ綅{}-宸ュ巶MES鎺ㄩ�佹暟鎹柟娉旽ttpResponseSend",stationCode);
             System.out.println("-----------------------"+totalResult);
         }
-
+        logger.info("缁撴潫宸ヤ綅{}-宸ュ巶MES鎺ㄩ�佹暟鎹柟娉昦utomaticWorkstationPushGeelycvMesFeedback",stationCode);
     }
 
     @Override
     public AjaxResult checkRecordDataDone(DaParamCollection daParamCollection) {
         String result = "";
+
+
         try {
-            Object recordDataDone = miloService.readFromOpcUa("PACK" + "." + daParamCollection.getLocationCode() + ".RecordDataDone").getValue();
+            List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getSpareField4, "1").eq(BsFormulaChildInfo::getProcessesCode, daParamCollection.getLocationCode()));
+            if(list.size()>0){
+                String results = list.get(0).getResults();
+                if(results!= null && !results.equals("") && results.equals("OK")){
+                    result = "21";
+                }
+            }
+            /*Object recordDataDone = miloService.readFromOpcUa("PACK" + "." + daParamCollection.getLocationCode() + ".RecordDataDone").getValue();
             if(ObjectUtil.isNotNull(recordDataDone)){
                 result = recordDataDone.toString();
-            }
+            }*/
         } catch (Exception e) {
             throw new RuntimeException(e);
         }
         return AjaxResult.success(result);
     }
 
+    @Override
+    public void enterWeighing(DaParamCollection daParamCollection) {
+        String url = "https://imes-group.geelycv.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback";
+        long timestampMillis = Instant.now().toEpochMilli();
+        ParentVO parentVO = new ParentVO();
+        ChildVO childVO = new ChildVO();
+        List<ChildVO> childVOList = new ArrayList<>();
+        childVO.setItemCode("PWD_PW");
+        childVO.setItemType("3");
+        childVO.setItemText("Pack閲嶉噺鍊�");
+        childVO.setItemValue(daParamCollection.getWeightValue());
+        childVO.setCheckTime(format.format(new Date()));
+        childVO.setCheckResult("1");
+        childVOList.add(childVO);
+        parentVO.setSiteCode("3983");
+        parentVO.setRecordId(""+timestampMillis);
+        parentVO.setStationCode("OP500");
+        parentVO.setProductNum(daParamCollection.getSfcCode());
+        parentVO.setTotalResult("1");
+        parentVO.setCheckList(childVOList);
+        HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
+//        try{
+//            CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
+//                logger.info("寮�濮嬫墽琛屽紓姝ユ柟娉�");
+//                HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
+//                System.out.println(execute.body());
+//                logger.info("寮傛鏂规硶鎵ц缁撴潫");
+//                logger.info("绉伴噸寮傛鏂规硶{}",execute.body());
+//            });
+//        }catch (Exception e){
+//            System.out.println(e.getMessage());
+//        }
+        RestfulService.getWorkReportResultFeedback(daParamCollection.getSfcCode(),"OP500",format.format(new Date()));
+    }
+
 }

--
Gitblit v1.9.3