wujian
2024-05-09 fd7bc33d2b65d4bf622922bc28cd280cdab0a1f4
add 数据保存接口
已修改1个文件
已添加1个文件
101 ■■■■■ 文件已修改
jcdm-main/src/main/java/com/jcdm/main/constant/Constants.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/constant/Constants.java
对比新文件
@@ -0,0 +1,7 @@
package com.jcdm.main.constant;
public class Constants {
    public static final String IN_BOUND_TIME_CODE = "PAT_INT";
    public static final String OUT_BOUND_TIME_CODE = "PAT_INT";
}
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());
    }