From a759f5fd41414651325494926583843568bac334 Mon Sep 17 00:00:00 2001 From: admin <15939171744@163.com> Date: 星期二, 04 六月 2024 20:42:47 +0800 Subject: [PATCH] - --- jcdm-main/src/main/java/com/jcdm/main/restful/qingYan/service/ExternalInterface.java | 189 +++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 174 insertions(+), 15 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..de25159 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,45 +1,64 @@ package com.jcdm.main.restful.qingYan.service; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; +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.common.utils.StringUtils; +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.ParentVO; -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; - String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback"; + @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"; + + String url = "https://imes-group.geelycv.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback"; /** * 瀵煎嚭鐐规浠诲姟鍒楄〃 @@ -47,10 +66,150 @@ @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); + 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)){ + one.setTrolleyYard(""); + omProductionOrdeInfoService.saveOrUpdate(one); + } + } + } 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