From ddf2c28b00b38469c9119dcad42d986f849bc62d Mon Sep 17 00:00:00 2001
From: cl <418351270@qq.com>
Date: 星期日, 21 七月 2024 09:53:51 +0800
Subject: [PATCH] 添加电芯挡位校验

---
 jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java |  132 +++++++++++++++++++++++++-------------------
 1 files changed, 75 insertions(+), 57 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java b/jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java
index 508f392..01f3dad 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java
@@ -27,6 +27,8 @@
 import com.jcdm.main.da.passingStationCollection.service.IDaPassingStationCollectionService;
 import com.jcdm.main.da.testDeviceInterface.domain.DaTestDeviceInterface;
 import com.jcdm.main.da.testDeviceInterface.service.IDaTestDeviceInterfaceService;
+import com.jcdm.main.da.testDeviceInterfaceTemp.domain.DaTestDeviceInterfaceTemp;
+import com.jcdm.main.da.testDeviceInterfaceTemp.service.IDaTestDeviceInterfaceTempService;
 import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo;
 import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService;
 import com.jcdm.main.restful.factoryMes.service.RestfulService;
@@ -68,19 +70,8 @@
     @Autowired
     private IDaCellDataService daCellDataService;
 
-    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";
-
-    /**
-     * 20宸ヤ綅鎺ユ敹娓呯爺鏁版嵁
-     */
-    @PostMapping("/receiveOVCDataFrom020Workstations")
-    public AjaxResult receiveOVCDataFrom020Workstations(@RequestBody ParentVO parentVO)
-    {
-
-        return AjaxResult.success(null);
-    }
+    @Autowired
+    private IDaTestDeviceInterfaceTempService daTestDeviceInterfaceTempService;
 
     /**
      * 瀵煎嚭鐐规浠诲姟鍒楄〃
@@ -90,32 +81,40 @@
     {
         ObjectMapper mapper = new ObjectMapper();
         List<ChildVO> li = parentVO.getCheckList();
-        String s = null;
+        String checkList = "";
         try {
-            s = mapper.writeValueAsString(li);
+            checkList = mapper.writeValueAsString(li);
         } catch (JsonProcessingException e) {
             throw new RuntimeException(e);
         }
+        this.saveDaTestDeviceInterface(parentVO,checkList);
+        if(parentVO.getStationCode().equals("M1OP020")){
+            this.saveDaTestDeviceInterfaceTemp(parentVO,checkList);
+        }
+        HttpResponse execute = HttpRequest.post(Constants.FACTORY_EMS_UAT_GET_RUL+"deviceResultFeedback").body(JSONUtil.toJsonStr(parentVO)).execute();
+        return AjaxResult.success(execute.body());
+    }
+
+    public void saveDaTestDeviceInterface(ParentVO parentVO,String checkList){
         DaTestDeviceInterface daTestDeviceInterface = new DaTestDeviceInterface();
         daTestDeviceInterface.setRecordId(parentVO.getRecordId());
         daTestDeviceInterface.setStationCode(parentVO.getStationCode());
         daTestDeviceInterface.setProductNum(parentVO.getProductNum());
         daTestDeviceInterface.setTotalResult(parentVO.getTotalResult());
-        daTestDeviceInterface.setCheckList(s);
+        daTestDeviceInterface.setCheckList(checkList);
         daTestDeviceInterface.setCreateTime(new Date());
         daTestDeviceInterfaceService.save(daTestDeviceInterface);
-        if(parentVO.getStationCode().contains("OP480")){
-            if(StringUtils.isNotBlank(parentVO.getProductNum())){
-                OmProductionOrdeInfo one = omProductionOrdeInfoService.getOne(new LambdaQueryWrapper<OmProductionOrdeInfo>().eq(OmProductionOrdeInfo::getProductNum, parentVO.getProductNum()));
-                if(ObjectUtil.isNotNull(one)){
-                    logger.info("瑙g粦灏忚溅{}锛宲ack鐮佹槸{}"+one.getTrolleyYard(),one.getProductNum());
-                    one.setTrolleyYard("");
-                    omProductionOrdeInfoService.saveOrUpdate(one);
-                }
-            }
-        }
-        HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
-        return AjaxResult.success(execute.body());
+    }
+
+    public void saveDaTestDeviceInterfaceTemp(ParentVO parentVO,String checkList){
+        DaTestDeviceInterfaceTemp daTestDeviceInterfaceTemp = new DaTestDeviceInterfaceTemp();
+        daTestDeviceInterfaceTemp.setRecordId(parentVO.getRecordId());
+        daTestDeviceInterfaceTemp.setStationCode(parentVO.getStationCode());
+        daTestDeviceInterfaceTemp.setProductNum(parentVO.getProductNum());
+        daTestDeviceInterfaceTemp.setTotalResult(parentVO.getTotalResult());
+        daTestDeviceInterfaceTemp.setCheckList(checkList);
+        daTestDeviceInterfaceTemp.setCreateTime(new Date());
+        daTestDeviceInterfaceTempService.save(daTestDeviceInterfaceTemp);
     }
 
     @GetMapping("/productionWorkOrderRequest")
@@ -157,43 +156,62 @@
     @PostMapping("/sendWebSocket")
     public void sendWebSocket(@RequestBody BsFormulaChildInfo bsFormulaChildInfo)
     {
-        WebSocketUsers.sendMessageToUserByText(map.get(bsFormulaChildInfo.getLocationCode()), bsFormulaChildInfo.getResults());
+        CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
+            logger.info("鎺ユ敹鐢佃姱寮�濮嬫墽琛屽紓姝ユ柟娉�");
+            WebSocketUsers.sendMessageToUserByText(map.get(bsFormulaChildInfo.getLocationCode()), bsFormulaChildInfo.getResults());
+            logger.info("鎺ユ敹鐢佃姱寮傛鏂规硶鎵ц缁撴潫");
+        });
+//        WebSocketUsers.sendMessageToUserByText(map.get(bsFormulaChildInfo.getLocationCode()), bsFormulaChildInfo.getResults());
     }
 
     /**
      * 鎺ユ敹鐢佃姱鏁版嵁
      */
     @PostMapping("/receivingBatteryCellData")
-    public void receivingBatteryCellData(@RequestBody CellDataVo cellDataVo) throws JsonProcessingException {
-        ObjectMapper objectMapper = new ObjectMapper();
-        JSONObject jsonObject = new JSONObject(cellDataVo);
-        String cellListString = jsonObject.getStr("cellList");
-        JsonNode cellListNode = objectMapper.readValue(cellListString, JsonNode.class);
-        List<DaCellData> daCellDataList = new ArrayList<>();
-        for (JsonNode jsonNode : cellListNode) {
-            String cellCheckListString = jsonNode.path("cellCheckList").toString();
-            JsonNode cellCheckListNode = objectMapper.readValue(cellCheckListString, JsonNode.class);
-            for (JsonNode checkNode : cellCheckListNode) {
-                DaCellData daCellData = new DaCellData();
-                daCellData.setSiteCode(jsonObject.getStr("siteCode"));
-                daCellData.setModuleSerial(jsonObject.getStr("moduleSerial"));
-                daCellData.setModuleModel(jsonObject.getStr("moduleModel"));
-                daCellData.setAbModule(jsonObject.getStr("ABModule"));
-                daCellData.setPackageNo(jsonObject.getStr("packageNo"));
-                daCellData.setSupplierModuleBarcode(jsonObject.getStr("supplierModuleBarcode"));
-                daCellData.setCustomerModuleBarcode(jsonObject.getStr("customerModuleBarcode"));
-                daCellData.setCellSerial(jsonNode.path("cellSerial").toString().replaceAll("\"", ""));
-                daCellData.setCellModel(jsonNode.path("cellModel").toString().replaceAll("\"", ""));
-                daCellData.setGbCellCode(jsonNode.path("GBCellCode").toString().replaceAll("\"", ""));
-                daCellData.setGbModuleCode(jsonNode.path("GBModuleCode").toString().replaceAll("\"", ""));
-                daCellData.setCellItem(checkNode.path("cellItem").toString().replaceAll("\"", ""));
-                daCellData.setCellValue(checkNode.path("cellValue").toString().replaceAll("\"", ""));
-                daCellData.setCreateUser("宸ュ巶MES");
-                daCellData.setCreateTime(new Date());
-                daCellDataList.add(daCellData);
+    public AjaxResult receivingBatteryCellData(@RequestBody CellDataVo cellDataVo){
+        try {
+            ObjectMapper objectMapper = new ObjectMapper();
+            JSONObject jsonObject = new JSONObject(cellDataVo);
+            String cellListString = jsonObject.getStr("cellList");
+            JsonNode cellListNode = objectMapper.readValue(cellListString, JsonNode.class);
+            List<DaCellData> daCellDataList = new ArrayList<>();
+            for (JsonNode jsonNode : cellListNode) {
+                String cellCheckListString = jsonNode.path("cellCheckList").toString();
+                JsonNode cellCheckListNode = objectMapper.readValue(cellCheckListString, JsonNode.class);
+                for (JsonNode checkNode : cellCheckListNode) {
+                    //鐢佃姱鎸′綅
+                    String batteryCellGear = checkNode.path("cellItem").toString().replaceAll("\"", "");
+                    if(batteryCellGear.equals("鐢佃姱妗d綅")){
+                        DaCellData daCellData = new DaCellData();
+                        daCellData.setSiteCode(jsonObject.getStr("siteCode"));
+                        daCellData.setModuleSerial(jsonObject.getStr("moduleSerial"));
+                        daCellData.setModuleModel(jsonObject.getStr("moduleModel"));
+                        daCellData.setAbModule(jsonObject.getStr("ABModule"));
+                        daCellData.setPackageNo(jsonObject.getStr("packageNo"));
+                        daCellData.setSupplierModuleBarcode(jsonObject.getStr("supplierModuleBarcode"));
+                        daCellData.setCustomerModuleBarcode(jsonObject.getStr("customerModuleBarcode"));
+                        daCellData.setCellSerial(jsonNode.path("cellSerial").toString().replaceAll("\"", ""));
+                        daCellData.setCellModel(jsonNode.path("cellModel").toString().replaceAll("\"", ""));
+                        daCellData.setGbCellCode(jsonNode.path("GBCellCode").toString().replaceAll("\"", ""));
+                        daCellData.setGbModuleCode(jsonNode.path("GBModuleCode").toString().replaceAll("\"", ""));
+                        daCellData.setCellItem(checkNode.path("cellItem").toString().replaceAll("\"", ""));
+                        daCellData.setCellValue(checkNode.path("cellValue").toString().replaceAll("\"", ""));
+                        daCellData.setCreateUser("宸ュ巶MES");
+                        daCellData.setCreateTime(new Date());
+                        daCellDataList.add(daCellData);
+                    }
+                }
             }
+            CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
+                logger.info("鎺ユ敹鐢佃姱寮�濮嬫墽琛屽紓姝ユ柟娉�");
+                daCellDataService.insertBatch(daCellDataList);
+                logger.info("鎺ユ敹鐢佃姱寮傛鏂规硶鎵ц缁撴潫");
+            });
+
+            return AjaxResult.success("API璋冪敤鎴愬姛");
+        }catch (Exception e){
+            return AjaxResult.error("API璋冪敤澶辫触");
         }
-        daCellDataService.insertBatch(daCellDataList);
     }
 
 }

--
Gitblit v1.9.3