From fd7bc33d2b65d4bf622922bc28cd280cdab0a1f4 Mon Sep 17 00:00:00 2001
From: wujian <14790700720@163.com>
Date: 星期四, 09 五月 2024 14:37:37 +0800
Subject: [PATCH] add 数据保存接口

---
 jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java |   94 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 85 insertions(+), 9 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 029001d..15f6ba8 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,40 +1,46 @@
 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.core.domain.AjaxResult;
-import com.jcdm.common.enums.BusinessType;
-import com.jcdm.common.utils.poi.ExcelUtil;
+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.om.productionOrde.domain.OmProductionOrdeInfo;
 import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService;
+import com.jcdm.main.restful.qingYan.doman.ChildVO;
 import com.jcdm.main.restful.qingYan.doman.ParentVO;
 import com.jcdm.main.restful.qingYan.doman.PostEntity;
-import com.jcdm.main.rm.repairData.domain.RmRepairData;
-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 javax.servlet.http.HttpServletResponse;
+import javax.annotation.Resource;
 import java.lang.reflect.Field;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 @RestController
 @RequestMapping("/jcdmMes")
 public class ExternalInterface {
     @Autowired
     private IDaParamCollectionService daParamCollectionService;
+
+    @Resource
+    private IDaPassingStationCollectionService daPassingStationCollectionService;
 
     @Autowired
     private IOmProductionOrdeInfoService productionOrdeInfoService;
@@ -47,6 +53,76 @@
     @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);
+                    }
+                }
+            }
+        }
         HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute();
         return AjaxResult.success(execute.body());
     }

--
Gitblit v1.9.3