From 8cfe20288690f2ba46c804f41f39e8aa48c2dea0 Mon Sep 17 00:00:00 2001 From: admin <15939171744@163.com> Date: 星期六, 15 六月 2024 09:08:30 +0800 Subject: [PATCH] 上传逻辑大版本更新 --- jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java | 210 +++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 180 insertions(+), 30 deletions(-) diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java index a64fe47..92bc866 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java +++ b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java @@ -2,6 +2,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.db.Db; import cn.hutool.http.HttpRequest; @@ -9,7 +10,9 @@ import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jcdm.common.core.domain.AjaxResult; import com.jcdm.common.utils.DateUtils; +import com.jcdm.common.utils.StringUtils; import com.jcdm.main.bs.formula.service.IBsFormulaInfoService; import com.jcdm.main.bs.formula.service.impl.BsFormulaInfoServiceImpl; import com.jcdm.main.bs.formulaChild.domain.BsFormulaChildInfo; @@ -22,10 +25,13 @@ import com.jcdm.main.da.paramCollection.domain.DaParamCollection; import com.jcdm.main.da.paramCollection.mapper.DaParamCollectionMapper; import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService; +import com.jcdm.main.da.paramCollectionTemp.domain.DaParamCollectionTemp; +import com.jcdm.main.da.paramCollectionTemp.service.IDaParamCollectionTempService; import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection; import com.jcdm.main.da.passingStationCollection.mapper.DaPassingStationCollectionMapper; import com.jcdm.main.da.passingStationCollection.service.IDaPassingStationCollectionService; import com.jcdm.main.plcserver.sub.OPCUaSubscription; +import com.jcdm.main.restful.factoryMes.service.RestfulService; import com.jcdm.main.restful.qingYan.doman.ChildVO; import com.jcdm.main.restful.qingYan.doman.ParentVO; import com.kangaroohy.milo.model.ReadWriteEntity; @@ -78,6 +84,11 @@ @Autowired private IDaCollectionParamConfService daCollectionParamConfService; + + @Autowired + private IDaParamCollectionTempService daParamCollectionTempService; + + public SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); /** * 鏌ヨ璁惧浜у搧杩囩▼鍙傛暟閲囬泦 @@ -206,17 +217,27 @@ @Override public void addTighteningParameters(DaParamCollection daParamCollection) { - String tightenData = daParamCollection.getTightenTheArray(); - tightenData = tightenData.replace("[", "").replace("]", "").replace(" ", ""); - String[] tightenDataParts = tightenData.split(","); String paramCode = daParamCollection.getParamCode(); - String[] paramCodeParts = paramCode.split(","); - for (int i = 0; i < paramCodeParts.length; i++) { - daParamCollection.setParamValue(tightenDataParts[i]); - daParamCollection.setParamCode(paramCodeParts[i]); - daParamCollection.setCollectionTime(new Date()); - daParamCollection.setSfcCode(daParamCollection.getProductBarcode()); - daParamCollectionMapper.insertDaParamCollection(daParamCollection); + String tightenData = daParamCollection.getTightenTheArray(); + if(StringUtils.isNotBlank(paramCode)&&StringUtils.isNotBlank(tightenData)){ + tightenData = tightenData.replace("[", "").replace("]", "").replace(" ", ""); + String[] tightenDataParts = tightenData.split(","); + String[] paramCodeParts = paramCode.split(","); + for (int i = 0; i < paramCodeParts.length; i++) { + daParamCollection.setParamValue(tightenDataParts[i]); + daParamCollection.setParamCode(paramCodeParts[i]); + daParamCollection.setCollectionTime(new Date()); + daParamCollection.setSfcCode(daParamCollection.getProductBarcode()); + daParamCollectionMapper.insertDaParamCollection(daParamCollection); + + DaParamCollectionTemp daParamCollectionTemp = new DaParamCollectionTemp(); + daParamCollectionTemp.setParamValue(tightenDataParts[i]); + daParamCollectionTemp.setParamCode(paramCodeParts[i]); + daParamCollectionTemp.setCollectionTime(new Date()); + daParamCollectionTemp.setSfcCode(daParamCollection.getProductBarcode()); + daParamCollectionTemp.setLocationCode(daParamCollection.getLocationCode()); + daParamCollectionTempService.save(daParamCollectionTemp); + } } } @@ -226,7 +247,16 @@ .eq(BsFormulaChildInfo::getProcessesCode, daParamCollection.getLocationCode()) .eq(BsFormulaChildInfo::getSpareField4, "1") ); - if(!list.get(0).getResults().equals("OK")){ + if(StringUtils.isNotBlank(list.get(0).getResults())){ + if(!list.get(0).getResults().equals("OK")){ + try { + miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+daParamCollection.getLocationCode()+".RecordDataDone").value(22).build()); + } catch (Exception e) { + throw new RuntimeException(e); + } + return; + } + }else { try { miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+daParamCollection.getLocationCode()+".RecordDataDone").value(22).build()); } catch (Exception e) { @@ -270,6 +300,9 @@ //缁檕pc鍙�21 miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+daParamCollection.getLocationCode()+".RecordDataDone").value(21).build()); + if(daParamCollection.getLocationCode().equals("OP240")){ + RestfulService.getWorkReportResultFeedback(daParamCollection.getProductBarcode(),"OP230",format.format(new Date())); + } } catch (Exception e) { throw new RuntimeException(e); } @@ -360,10 +393,8 @@ //缁檕pc鍙�21 try { // miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+daParamCollection.getLocationCode()+".RecordDataDone").value(21).build()); - String strA = daParamCollection.getLocationCode() + "A"; - String strB = daParamCollection.getLocationCode() + "B"; + String strA = daParamCollection.getLocationCode(); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+strA+".RecordDataDone").value(21).build()); - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+strB+".RecordDataDone").value(21).build()); } catch (Exception e) { throw new RuntimeException(e); } @@ -371,7 +402,8 @@ public void sendToFactoryMes(String stationCode,String productNum ){ - String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback"; +// 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"; ParentVO vo =new ParentVO(); List<ChildVO> checkList = new ArrayList<>(); List<DaParamCollection> list = this.list(new LambdaQueryWrapper<DaParamCollection>() @@ -422,9 +454,75 @@ @Override public void pushGeelycvMesFeedback(String packID, String stationCode) { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback"; +// 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"; String totalResult = "0"; - List<DaParamCollection> paramList = daParamCollectionService.list(new LambdaQueryWrapper<DaParamCollection>().eq(DaParamCollection::getSfcCode, packID).eq(DaParamCollection::getLocationCode, stationCode)); + List<DaParamCollectionTemp> paramList = daParamCollectionTempService.list(new LambdaQueryWrapper<DaParamCollectionTemp>().eq(DaParamCollectionTemp::getSfcCode, packID).eq(DaParamCollectionTemp::getLocationCode, stationCode)); + if(paramList.size() > 0){ + ParentVO parentVO = new ParentVO(); + parentVO.setSiteCode("3983"); + parentVO.setRecordId(String.valueOf(Instant.now().toEpochMilli())); + parentVO.setStationCode(stationCode); + parentVO.setProductNum(packID); + parentVO.setTotalResult("1"); + List<ChildVO> listChildVo = new ArrayList<>(); + + for (DaParamCollectionTemp daParamCollection : paramList) { + ChildVO childVO = new ChildVO(); + childVO.setItemCode(daParamCollection.getParamCode()); +// BsFormulaChildInfo childOne = bsFormulaChildInfoService.getOne(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getParamCode, daParamCollection.getParamCode())); +// DaCollectionParamConf paramConfOne = daCollectionParamConfService.getOne(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode())); + List<DaCollectionParamConf> paramConfOneList = daCollectionParamConfService.list(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode())); + DaCollectionParamConf paramConfOne = paramConfOneList.get(0); +// if(childOne!=null){ +// String operationType = childOne.getOperationType(); +// if(operationType.equals("1")){ +// childVO.setItemType("2"); +// }else if(operationType.equals("2")){ +// childVO.setItemType("1"); +// } +// }else { +// childVO.setItemType("3"); +// } + if(paramConfOne!=null){ + childVO.setItemType(paramConfOne.getSpareField1()); + childVO.setItemText(paramConfOne.getCollectParameterName()); + }else { + childVO.setItemType("3"); + childVO.setItemText(""); + } + childVO.setItemValue(daParamCollection.getParamValue()); + + if(daParamCollection.getParamValue().equals("1")){ + childVO.setCheckResult("1"); + }else if(daParamCollection.getParamValue().equals("2")){ + childVO.setCheckResult("0"); + parentVO.setTotalResult("0"); + totalResult = "1"; + }else { + childVO.setCheckResult("1"); + } + childVO.setCheckTime(format.format(daParamCollection.getCollectionTime())); + listChildVo.add(childVO); + + } + parentVO.setCheckList(listChildVo); + HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute(); + List<Long> idsList = paramList.stream().map(DaParamCollectionTemp::getId).collect(Collectors.toList()); + Long[] array = idsList.toArray(new Long[0]); + daParamCollectionTempService.deleteDaParamCollectionTempByIds(array); + System.out.println(execute.body()); + System.out.println("-----------------------"+totalResult); + } + + } + + @Override + public void automaticWorkstationPushGeelycvMesFeedback(String packID, String stationCode,List<DaParamCollection> paramList) { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); +// 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"; + String totalResult = "0"; if(paramList.size() > 0){ ParentVO parentVO = new ParentVO(); parentVO.setSiteCode("3983"); @@ -437,21 +535,25 @@ for (DaParamCollection daParamCollection : paramList) { ChildVO childVO = new ChildVO(); childVO.setItemCode(daParamCollection.getParamCode()); - BsFormulaChildInfo childOne = bsFormulaChildInfoService.getOne(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getParamCode, daParamCollection.getParamCode())); - DaCollectionParamConf paramConfOne = daCollectionParamConfService.getOne(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode())); - if(childOne!=null){ - String operationType = childOne.getOperationType(); - if(operationType.equals("1")){ - childVO.setItemType("2"); - }else if(operationType.equals("2")){ - childVO.setItemType("1"); - } - }else { - childVO.setItemType("3"); - } +// BsFormulaChildInfo childOne = bsFormulaChildInfoService.getOne(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getParamCode, daParamCollection.getParamCode())); +// DaCollectionParamConf paramConfOne = daCollectionParamConfService.getOne(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode())); + List<DaCollectionParamConf> paramConfOneList = daCollectionParamConfService.list(new LambdaQueryWrapper<DaCollectionParamConf>().eq(DaCollectionParamConf::getCollectParameterId, daParamCollection.getParamCode())); + DaCollectionParamConf paramConfOne = paramConfOneList.get(0); +// if(childOne!=null){ +// String operationType = childOne.getOperationType(); +// if(operationType.equals("1")){ +// childVO.setItemType("2"); +// }else if(operationType.equals("2")){ +// childVO.setItemType("1"); +// } +// }else { +// childVO.setItemType("3"); +// } if(paramConfOne!=null){ + childVO.setItemType(paramConfOne.getSpareField1()); childVO.setItemText(paramConfOne.getCollectParameterName()); }else { + childVO.setItemType("3"); childVO.setItemText(""); } childVO.setItemValue(daParamCollection.getParamValue()); @@ -473,6 +575,54 @@ System.out.println(execute.body()); System.out.println("-----------------------"+totalResult); } - } + + @Override + public AjaxResult checkRecordDataDone(DaParamCollection daParamCollection) { + String result = ""; + + + try { + List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>().eq(BsFormulaChildInfo::getSpareField4, "1").eq(BsFormulaChildInfo::getProcessesCode, daParamCollection.getLocationCode())); + if(list.size()>0){ + String results = list.get(0).getResults(); + if(results!= null && !results.equals("") && results.equals("OK")){ + result = "21"; + } + } + /*Object recordDataDone = miloService.readFromOpcUa("PACK" + "." + daParamCollection.getLocationCode() + ".RecordDataDone").getValue(); + if(ObjectUtil.isNotNull(recordDataDone)){ + result = recordDataDone.toString(); + }*/ + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(result); + } + + @Override + public void enterWeighing(DaParamCollection daParamCollection) { + String url = "https://imes-group.geelycv.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback"; + long timestampMillis = Instant.now().toEpochMilli(); + ParentVO parentVO = new ParentVO(); + ChildVO childVO = new ChildVO(); + List<ChildVO> childVOList = new ArrayList<>(); + childVO.setItemCode("PWD_PW"); + childVO.setItemType("3"); + childVO.setItemText("Pack閲嶉噺鍊�"); + childVO.setItemValue(daParamCollection.getWeightValue()); + childVO.setCheckTime(format.format(new Date())); + childVO.setCheckResult("1"); + childVOList.add(childVO); + parentVO.setSiteCode("3983"); + parentVO.setRecordId(""+timestampMillis); + parentVO.setStationCode("OP500"); + parentVO.setProductNum(daParamCollection.getSfcCode()); + parentVO.setTotalResult("1"); + parentVO.setCheckList(childVOList); + HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(parentVO)).execute(); + RestfulService.getWorkReportResultFeedback(daParamCollection.getSfcCode(),"OP500",format.format(new Date())); + System.out.println(execute.body()); + } + } -- Gitblit v1.9.3