From 68f0c8f92fb7c82dc447b9aaed2d23760c546f25 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期五, 17 五月 2024 20:22:20 +0800
Subject: [PATCH] -

---
 jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java |  190 ++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 177 insertions(+), 13 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 f90542d..9e5c973 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
@@ -1,38 +1,202 @@
 package com.jcdm.main.restful.qingYan.service;
 
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.http.HttpRequest;
+import cn.hutool.http.HttpResponse;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
-import com.google.gson.JsonObject;
-import com.jcdm.common.annotation.Log;
-import com.jcdm.common.enums.BusinessType;
-import com.jcdm.common.utils.poi.ExcelUtil;
+import com.jcdm.common.core.domain.AjaxResult;
+import com.jcdm.main.bs.formulaChild.domain.BsFormulaChildInfo;
+import com.jcdm.main.bs.formulaChild.service.IBsFormulaChildInfoService;
+import com.jcdm.main.constant.Constants;
 import com.jcdm.main.da.paramCollection.domain.DaParamCollection;
 import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService;
+import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection;
+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.om.productionOrde.domain.OmProductionOrdeInfo;
 import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService;
-import com.jcdm.main.restful.qingYan.doman.PostEntity;
-import com.jcdm.main.rm.repairData.domain.RmRepairData;
+import com.jcdm.main.restful.qingYan.doman.*;
+import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletResponse;
+import javax.annotation.Resource;
 import java.lang.reflect.Field;
-import java.util.List;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.stream.Collectors;
 
 @RestController
 @RequestMapping("/jcdmMes")
 public class ExternalInterface {
     @Autowired
+    private IDaTestDeviceInterfaceService daTestDeviceInterfaceService;
+    @Autowired
     private IDaParamCollectionService daParamCollectionService;
+
+    @Resource
+    private IDaPassingStationCollectionService daPassingStationCollectionService;
 
     @Autowired
     private IOmProductionOrdeInfoService productionOrdeInfoService;
 
+    @Autowired
+    private IOmProductionOrdeInfoService omProductionOrdeInfoService;
+
+    @Autowired
+    private IBsFormulaChildInfoService bsFormulaChildInfoService;
+
+    private IDaPassingStationCollectionService passingStationCollectionService;
+
+
+    String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback";
+
+    /**
+     * 瀵煎嚭鐐规浠诲姟鍒楄〃
+     */
+    @PostMapping("/deviceResultFeedback")
+    public AjaxResult hdy(@RequestBody ParentVO parentVO)
+    {
+        //淇濆瓨
+        //杩囩珯璁板綍
+//        String productNum = parentVO.getProductNum();
+//        if (StrUtil.isNotBlank(productNum)){
+//            List<OmProductionOrdeInfo> list = productionOrdeInfoService.list(new LambdaQueryWrapper<OmProductionOrdeInfo>().eq(OmProductionOrdeInfo::getProductNum, productNum));
+//            if (CollUtil.isNotEmpty(list)){
+//                OmProductionOrdeInfo omProductionOrdeInfo = list.get(0);
+//                DaPassingStationCollection passingStationCollection = new DaPassingStationCollection();
+//                passingStationCollection.setWorkOrderNo(omProductionOrdeInfo.getWorkOrderNo());
+//                passingStationCollection.setSfcCode(productNum);
+//                passingStationCollection.setProductCode(omProductionOrdeInfo.getProductCode());
+//                passingStationCollection.setLocationCode(parentVO.getStationCode());
+//                passingStationCollection.setOutRsSign(parentVO.getTotalResult());
+//                passingStationCollection.setCreateTime(new Date());
+//
+//                List<ChildVO> checkList = parentVO.getCheckList();
+//                if (CollUtil.isNotEmpty(checkList)){
+//                    List<String> collect = checkList.stream()
+//                            .filter(x -> Constants.IN_BOUND_TIME_CODE.equals(x.getItemCode()))
+//                            .map(ChildVO::getItemValue)
+//                            .collect(Collectors.toList());
+//                    if (CollUtil.isNotEmpty(collect)){
+//                        String s = collect.get(0);
+//                        if (StrUtil.isNotBlank(s)){
+//                            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//                            try {
+//                                Date parse = simpleDateFormat.parse(s);
+//                                passingStationCollection.setInboundTime(parse);
+//                            } catch (ParseException e) {
+//                                throw new RuntimeException(e);
+//                            }
+//                        }
+//                    }
+//                    List<String> collect2 = checkList.stream()
+//                            .filter(x -> Constants.OUT_BOUND_TIME_CODE.equals(x.getItemCode()))
+//                            .map(ChildVO::getItemValue)
+//                            .collect(Collectors.toList());
+//                    if (CollUtil.isNotEmpty(collect2)){
+//                        String s = collect2.get(0);
+//                        if (StrUtil.isNotBlank(s)){
+//                            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//                            try {
+//                                Date parse = simpleDateFormat.parse(s);
+//                                passingStationCollection.setOutboundTime(parse);
+//                            } catch (ParseException e) {
+//                                throw new RuntimeException(e);
+//                            }
+//                        }
+//                    }
+//                    daPassingStationCollectionService.save(passingStationCollection);
+//                    //鍙傛暟淇濆瓨
+//                    List<DaParamCollection> paramCollectionList = new ArrayList<>();
+//                    for (ChildVO childVO : checkList) {
+//                        DaParamCollection daParamCollection = new DaParamCollection();
+//                        daParamCollection.setWorkOrderNo(omProductionOrdeInfo.getWorkOrderNo());
+//                        daParamCollection.setSfcCode(productNum);
+//                        daParamCollection.setProductCode(omProductionOrdeInfo.getProductCode());
+//                        daParamCollection.setLocationCode(omProductionOrdeInfo.getStationCode());
+//                        daParamCollection.setParamCode(childVO.getItemCode());
+//                        daParamCollection.setParamValue(childVO.getItemValue());
+//                        daParamCollection.setCollectionTime(new Date());
+//                        daParamCollection.setParamName(childVO.getItemText());
+//                        paramCollectionList.add(daParamCollection);
+//                    }
+//                    if (CollUtil.isNotEmpty(paramCollectionList)){
+//                        daParamCollectionService.insertBatch(paramCollectionList);
+//                    }
+//                }
+//            }
+//        }
+        ObjectMapper mapper = new ObjectMapper();
+        List<ChildVO> li = parentVO.getCheckList();
+        String s = null;
+        try {
+            s = mapper.writeValueAsString(li);
+        } catch (JsonProcessingException e) {
+            throw new RuntimeException(e);
+        }
+        DaTestDeviceInterface daTestDeviceInterface = new DaTestDeviceInterface();
+        daTestDeviceInterface.setRecordId(parentVO.getRecordId());
+        daTestDeviceInterface.setStationCode(parentVO.getStationCode());
+        daTestDeviceInterface.setProductNum(parentVO.getProductNum());
+        daTestDeviceInterface.setTotalResult(parentVO.getTotalResult());
+        daTestDeviceInterface.setCheckList(s);
+        daTestDeviceInterfaceService.save(daTestDeviceInterface);
+        HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
+        return AjaxResult.success(execute.body());
+    }
+
+    @GetMapping("/productionWorkOrderRequest")
+    public AjaxResult productionWorkOrderRequest(){
+        List<OmProductionOrdeInfo> list = omProductionOrdeInfoService.list();
+        List<RestFulOrder> restFulOrders = new ArrayList<>();
+        for (OmProductionOrdeInfo omProductionOrdeInfo : list) {
+            RestFulOrder order = new RestFulOrder();
+            order.setProductionOrderNum(omProductionOrdeInfo.getWorkOrderNo());
+            order.setProductNum(omProductionOrdeInfo.getProductNum());
+            order.setMaterialCode(omProductionOrdeInfo.getMaterialCode());
+            order.setStationCode(omProductionOrdeInfo.getStationCode());
+//            order.setPlanQty(omProductionOrdeInfo.getPlanQty());
+            restFulOrders.add(order);
+        }
+        return AjaxResult.success(restFulOrders);
+    }
+
+    @GetMapping("/getQualityData")
+    public AjaxResult getQualityData(){
+        List<DaPassingStationCollection> qualified = daPassingStationCollectionService.list(new LambdaQueryWrapper<DaPassingStationCollection>().eq(DaPassingStationCollection::getOutRsSign, "1"));
+        List<DaPassingStationCollection> unQualified = daPassingStationCollectionService.list(new LambdaQueryWrapper<DaPassingStationCollection>().eq(DaPassingStationCollection::getOutRsSign, "2"));
+        Map<String,Integer> map = new HashMap<>();
+        map.put("qualified",qualified.size());
+        map.put("unQualified",unQualified.size());
+        return AjaxResult.success(map);
+    }
+
+
+
+    @GetMapping("/productionOrderComponentRequest")
+    public AjaxResult productionOrderComponentRequest(BsFormulaChildInfo bsFormulaChildInfo){
+        Map<String,List<String>> map = new HashMap<>();
+        List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>()
+                .eq(BsFormulaChildInfo::getProcessesCode, bsFormulaChildInfo.getProcessesCode())
+                .eq(BsFormulaChildInfo::getOperationType, "2")
+        );
+        List<ProductionOrderComponentRequest> requests = new ArrayList<>();
+        for (BsFormulaChildInfo info : list) {
+            ProductionOrderComponentRequest request = new ProductionOrderComponentRequest();
+            request.setMaterialCode(info.getMaterialCode());
+            request.setOperationSteps(info.getOperationSteps());
+            requests.add(request);
+        }
+        return AjaxResult.success(requests);
+    }
+
 
     @PostMapping("/pushParamData")
     public void receivingData(@RequestBody PostEntity postEntity) throws JsonProcessingException {

--
Gitblit v1.9.3