From b321b8a09092c35c2008f865ce35d6025bc09133 Mon Sep 17 00:00:00 2001 From: cl <418351270@qq.com> Date: 星期一, 29 七月 2024 16:06:19 +0800 Subject: [PATCH] 修改采集参数 --- jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java | 997 ---------------------------------------------------------- 1 files changed, 8 insertions(+), 989 deletions(-) diff --git a/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java b/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java index 389a655..a9e850b 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java +++ b/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java @@ -66,9 +66,6 @@ public static IDaCellDataService daCellDataService; -/* @Value("${orderLineUrl}") - private static String orderLineUrl;*/ - public OPCUaSubscription(MiloService miloService, IDaPassingStationCollectionService daPassingStationCollectionService, IDaCollectionParamConfService collectionParamConfService, @@ -109,996 +106,18 @@ public void subHandle(String thoroughfare,String device,String tab,String valueString){ try{ - if (Constants.RECORD_CHECK_CODE.equals(tab)){//鐢佃姱鏍¢獙 - if (Constants.ONE.equals(valueString)){ - Integer scanResult = 11; - if (Constants.OP010.equals(device)){ - //OP010宸ヤ綅鐢佃姱鏉$爜鏍¢獙||OP030宸ヤ綅鐢佃姱鏉$爜鏍¢獙 - Object value1 = miloService.readFromOpcUa(thoroughfare + "." + device + ".Scaner").getValue(); - if (ObjectUtil.isNotNull(value1)){ - String keyCode = value1.toString(); - log.info("璇诲彇鍒板伐浣峽}鐨凷caner鏁版嵁锛歿}",device,keyCode); - //浠呮牎楠岄暱搴︽槸鍚﹀悎鏍� -// List<KeyCodeCheck> collect = keyCodeCheckService.list().stream().filter(x -> x.getKeyCode().contains(keyCode)).collect(Collectors.toList()); -// if (CollUtil.isNotEmpty(collect)){ -// scanResult = 11; -// } - } - }else if(Constants.OP030.equals(device)){ - Object value1 = miloService.readFromOpcUa(thoroughfare + "." + device + ".Scaner").getValue();//鐢佃姱鐮� - if (ObjectUtil.isNotNull(value1)){ - //String cellCode = value1.toString(); - scanResult = 11; - //鍙嶉鐢佃姱ocv妫�娴嬬粨鏋�,杩欓噷涓嶇敤鍐嶈繘琛屾娴嬶紝鍙鐮佹病闂灏卞彲浠ヤ簡 - /*boolean b = OCVResultFeedBack(thoroughfare, device,cellCode);//瀵规浛鎹㈢數鑺牎楠� - //鍥涗釜鐢佃姱鐨勭姸鎬� - if (b){ - scanResult = 11; - }else { - scanResult = 12; - }*/ - }else { - scanResult = 12; - } - } - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".ScanerResult1").value(scanResult).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凷canerResult1鏁版嵁锛歿}",device,scanResult); - } - }else if (Constants.RECORD_SN.equals(tab)){//姹備笅鍙戞ā缁勭爜璇�9 - if (Constants.ONE.equals(valueString)){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordSNDone").value(1).build());//娌℃湁瑕佺敓浜х殑宸ュ崟 - } - }else if (Constants.RECORD_DATA.equals(tab)){//鍑哄叆绔� - if (Constants.ONE.equals(valueString)){//鍏ョ珯 //1:鍛婄煡MES鎵樼洏宸插埌绔欙紝璇锋眰涓嬪彂杩涚珯鐘舵�� - - //OP020 鐢佃姱鎸′綅鏍¢獙 - if (Constants.OP020.equals(device)){ - Integer result = 11; - Object cellGearObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".CellGear").getValue(); - if (ObjectUtil.isNull(cellGearObjcet)){ - result = 16;//鐢佃姱鎸′綅涓虹┖ - }else{ - String cellGear = cellGearObjcet.toString(); - List<String> cellCodeList = readCellCodeList(thoroughfare, device); - result = checkCellGear(thoroughfare, device,cellCodeList,cellGear);//鏍¢獙鐢佃姱鎸′綅鍜岀粍鍒� - } - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(result).build()); - - }else if (Constants.OP030.equals(device)){ - //鍙嶉鐢佃姱ocv妫�娴嬬粨鏋� - boolean b = OCVResultFeedBack(thoroughfare, device);//杩涚珯瀵�4涓數鑺牎楠� - //鍥涗釜鐢佃姱鐨勭姸鎬� - if (b){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(11).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凴ecordDataDone鏁版嵁锛歿}",device,11); - }else { - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(12).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凴ecordDataDone鏁版嵁锛歿}",device,12); - } - } else if(Constants.OP100_1.equals(device) || Constants.OP100_2.equals(device)){ - //1銆佽繘绔橮LC缁欎骇鍝佺被鍨嬶紝MES璇诲彇浜у搧绫诲瀷 - Object productTypeObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".ProductType").getValue();//浜у搧绫诲瀷 - if (ObjectUtil.isNotNull(productTypeObjcet)){ - String productType = productTypeObjcet.toString();//浜у搧绫诲瀷 - String materialCode = Constants.materialMap.get(productType); - //鎺ユ敹宸ュ崟锛屼繚瀛樺埌鏁版嵁搴�,骞朵笖灏嗗伐鍗曚紶缁橮LC - CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> { - receivingWorkOrders(thoroughfare, device,materialCode); - }); - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(11).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凴ecordDataDone鏁版嵁锛歿}",device,11); - }else{ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(12).build()); - } - - }else if (Constants.OP150.contains(device)){//浜哄伐宸ヤ綅 - Object modulCodeObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".ModuleCode").getValue(); - if (ObjectUtil.isNull(modulCodeObjcet)){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(12).build()); - }else{ - String productNum = modulCodeObjcet.toString(); - //灏嗕骇鍝丼N鍙戦�佸埌鍓嶅彴 - productNum = "productNum,"+ productNum; - WebSocketUsers.sendMessageToUserByText(map.get(device), productNum); - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(11).build()); - } - }else if (Constants.ModuleList.contains(device)){//鏈夋ā缁勭爜鐨勫伐浣� - Object modulCodeObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".ModuleCode").getValue(); - if (ObjectUtil.isNull(modulCodeObjcet)){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(12).build()); - }else{ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(11).build()); - } - } - else { - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(11).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凴ecordDataDone鏁版嵁锛歿}",device,11); - } - }else if (Constants.TWO.equals(valueString)){//鍑虹珯 - //鍒嗘010-065娈� - if (Constants.OP010.equals(device)){ - //010宸ヤ綅鏃犺繃绔欒褰曪紝鍙粰鏀捐淇″彿 - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(21).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凴ecordDataDone鏁版嵁锛歿}",device,21); - }else if (Constants.OP020_OP090.contains(device)){ - Integer result = 21; - //璇诲彇鐢佃姱鐮� - List<String> cellCodeList = readCellCodeList(thoroughfare, device); - if(ObjectUtil.isNull(cellCodeList) || cellCodeList.size() != 4 ){ - result = 23; - }else{ - String cellCode1 = cellCodeList.get(0); - String cellCode2 = cellCodeList.get(1); - String cellCode3 = cellCodeList.get(2); - String cellCode4 = cellCodeList.get(3); - if ((!cellCode1.isEmpty() && cellCode2.isEmpty()) || (cellCode1.isEmpty() && !cellCode2.isEmpty()) - || (!cellCode3.isEmpty() && cellCode4.isEmpty()) || (!cellCode4.isEmpty() && cellCode3.isEmpty())) { - result = 23; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(result).build()); - return; - } - - result = savePassingStation(thoroughfare, device,cellCodeList);//淇濆瓨杩囩珯 - if(result == 21) { - if(Constants.OP020.contains(device)){ - if(!cellCode1.isEmpty()){ - daCellDataService.deleteDaCellDataByGbCellCode(cellCode1); - } - if(!cellCode2.isEmpty()){ - daCellDataService.deleteDaCellDataByGbCellCode(cellCode2); - } - if(!cellCode3.isEmpty()){ - daCellDataService.deleteDaCellDataByGbCellCode(cellCode3); - } - if(!cellCode4.isEmpty()){ - daCellDataService.deleteDaCellDataByGbCellCode(cellCode4); - } - }else if(Constants.OP030.contains(device)){ - if(!cellCode1.isEmpty()){ - daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode1); - } - if(!cellCode2.isEmpty()){ - daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode2); - } - if(!cellCode3.isEmpty()){ - daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode3); - } - if(!cellCode4.isEmpty()) { - daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode4); - } - } - result = saveParamCollection(device,cellCodeList);//淇濆瓨鍙傛暟锛屽彂閫佸伐鍘侻ES - } - - } - - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(result).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凴ecordDataDone鏁版嵁锛歿}",device,result); - } else if (Constants.OP100_OP150.contains(device)){//浜哄伐宸ヤ綅 - WebSocketUsers.sendMessageToUserByText(map.get(device), "END"); - } else { - Integer result = 21; - //Object productTypeObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".ProductType").getValue();//浜у搧绫诲瀷 - Object modulCodeObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".ModuleCode").getValue(); - if (ObjectUtil.isNull(modulCodeObjcet)){ - result = 23; - }else{ - String moduleCode = modulCodeObjcet.toString(); - Object stationStatusObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".StationStatus").getValue();//绔欑姸鎬佸湴鍧� - if (ObjectUtil.isNotNull(stationStatusObjcet)){ - String stationStatus = stationStatusObjcet.toString(); - result = savePassingStation(thoroughfare, device,moduleCode,stationStatus);//淇濆瓨杩囩珯 - if(result == 21) { - result = saveParamCollection(device,moduleCode,stationStatus);//淇濆瓨鍙傛暟锛屽彂閫佸伐鍘侻ES - } - }else{ - result = 23; - log.info("璇诲彇鍒板伐浣峽}StationStatus鏁版嵁锛歿},杩斿洖RecordDataDone鐨勫�间负{}",device,"IS NULL锛�",result); - } - - } - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(result).build()); - log.info("鍐欏叆鍒板伐浣峽}鐨凴ecordDataDone鏁版嵁锛歿}",device,result); - } + //鍑哄叆绔� + if (Constants.RECORD_DATA.equals(tab)) { + if (Constants.ONE.equals(valueString)) {//鍏ョ珯 + Integer recordDataDone = 11; + miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(recordDataDone).build()); + } else if(Constants.TWO.equals(valueString)){//鍑虹珯 + Integer recordDataDone = 21; + miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(recordDataDone).build()); } } }catch (Exception e) { log.error(e.getMessage()); } } - - public synchronized void receivingWorkOrders(String thoroughfare ,String device ,String materialCode) - { - String paramProductNum = ""; - try { - - //鍏堟煡璇㈣〃涓槸鍚︽湁鍓╀綑宸ュ崟 - List<OmProductionOrdeInfo> orderList = omProductionOrdeInfoService.list(new LambdaQueryWrapper<OmProductionOrdeInfo>() - .eq(OmProductionOrdeInfo::getOrderStatus, Constants.ONE) - .eq(OmProductionOrdeInfo::getStationCode,device)//宸ヤ綅 - .eq(OmProductionOrdeInfo::getProductCode,materialCode));//浜у搧绫诲瀷 - if (CollUtil.isNotEmpty(orderList)){ - Long id = orderList.get(0).getId(); - String productNum = orderList.get(0).getProductNum();//妯$粍鐮� - String orderNum = orderList.get(0).getWorkOrderNo(); - - paramProductNum = productNum; - - //涓嬪彂浜у搧妯$粍鐮� - miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".ModuleCode").value(productNum).build()); - miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderNumber").value(orderNum).build()); - - //灏嗕骇鍝丼N鍙戦�佸埌鍓嶅彴 - productNum = "productNum,"+ productNum; - WebSocketUsers.sendMessageToUserByText(map.get(device), productNum); - }else{ - // 鏌ヨ鏈�鏂扮殑宸ュ崟淇℃伅 - OmProductionOrdeInfo lastOrder = omProductionOrdeInfoService.getLastOrder(); - - log.info("璇锋眰宸ュ巶MES宸ュ崟锛氬叆鍙俤evice{},materialCode锛歿}", device, materialCode); - String orderJsonString = RestfulService.getProductionWorkOrderRequest(lastOrder.getProductNum(), "M1OP100",materialCode); - JSONObject jsonObject = new JSONObject(orderJsonString); - // 浠嶫SONObject涓幏鍙杁ata瀵硅薄 - JSONObject dataObject = jsonObject.getJSONObject("data"); - String code = jsonObject.getStr("code"); - // 鍒ゆ柇鎺ュ崟鏄惁鎴愬姛 - if(code.equals("success")) { - log.info("璇锋眰宸ュ巶MES宸ュ崟锛氬叆鍙俻ack{}鍑哄弬pack锛歿}", paramProductNum, dataObject.getStr("productNum")); - OmProductionOrdeInfo omProductionOrdeInfo = new OmProductionOrdeInfo(); - omProductionOrdeInfo.setWorkOrderNo(dataObject.getStr("productionOrderNum")); - omProductionOrdeInfo.setProductNum(dataObject.getStr("productNum")); - omProductionOrdeInfo.setStationCode(device); - omProductionOrdeInfo.setProductCode(dataObject.getStr("materialCode")); - omProductionOrdeInfo.setPlanQty(Long.valueOf(dataObject.getStr("plannedQuantity"))); - omProductionOrdeInfo.setOnlineCompletionMark("0"); - omProductionOrdeInfo.setSfResult("0"); - omProductionOrdeInfo.setProductModel(dataObject.getStr("model")); - omProductionOrdeInfo.setCreateTime(new Date()); - omProductionOrdeInfo.setCreateUser("宸ュ巶MES"); - omProductionOrdeInfoService.save(omProductionOrdeInfo); - - String productNum = dataObject.getStr("productNum"); - String orderNum = dataObject.getStr("productionOrderNum"); - //涓嬪彂浜у搧妯$粍鐮� - miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".ModuleCode").value(productNum).build()); - miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderNumber").value(orderNum).build()); - - //灏嗕骇鍝丼N鍙戦�佸埌鍓嶅彴 - productNum = "productNum,"+ productNum; - WebSocketUsers.sendMessageToUserByText(map.get(device), productNum); - } - } - - } catch (Exception e) { - throw new RuntimeException(e); - } - } - - /** - * 璇诲彇鐢佃姱鐮� - * @param thoroughfare 閫氶亾 - * @param device 宸ヤ綅 - * @return list - * @throws Exception e - */ - private static List<String> readCellCodeList(String thoroughfare, String device){ - List<String> cellCodeList = new ArrayList<>(); - Map map = new HashMap(); - //鐢佃姱鐮佸湴鍧� - List<String> readList = new ArrayList<>(); - readList.add(thoroughfare + "." + device +".CellCode_1"); - readList.add(thoroughfare + "." + device +".CellCode_2"); - readList.add(thoroughfare + "." + device +".CellCode_3"); - readList.add(thoroughfare + "." + device +".CellCode_4"); - try { - List<ReadWriteEntity> readWriteEntityList = miloService.readFromOpcUa(readList);//鐢佃姱鐮� - for (ReadWriteEntity readWriteEntity : readWriteEntityList) { - if (ObjectUtil.isNotNull(readWriteEntity.getValue()) && !readWriteEntity.getValue().toString().trim().isEmpty()){ - cellCodeList.add(readWriteEntity.getValue().toString());//灏佽鐢佃姱鐮� - }else{ - cellCodeList.add("");//灏佽鐢佃姱鐮� - } - } - - } catch (Exception e) { - throw new RuntimeException(e); - } - return cellCodeList; - } - - - /** - * 淇濆瓨杩囩珯鏁版嵁 - * @param thoroughfare 閫氶亾 - * @param device 宸ヤ綅 - * @param moduleCode 妯$粍鍙� - * @param stationStatus 绔欑姸鎬� - * @return list - * @throws Exception e - */ - private static Integer savePassingStation(String thoroughfare, String device,String moduleCode,String stationStatus){ - Integer result = 21; - - try { - //璇昏繘绔欐椂闂� - Date startTime = new Date(); - ReadWriteEntity startTimeRead = miloService.readFromOpcUa(thoroughfare + "." + device + ".StartTime");//杩涚珯鏃堕棿 - if (ObjectUtil.isNotNull(startTimeRead.getValue())){ - startTime = format.parse(TimeUtil.test(TimeUtil.stringProcessing(startTimeRead.getValue().toString()))); - }else{ - result = 23; - log.info("璇诲彇鍒板伐浣峽}鐨凷tartTime鏁版嵁锛歿},杩斿洖RecordDataDone鐨勫�间负{}",device,"IS NULL锛�",result); - return result; - } - - DaPassingStationCollection passingStationCollection = new DaPassingStationCollection(); - passingStationCollection.setSfcCode(moduleCode);//鐢佃姱鐮� - passingStationCollection.setLocationCode(device);//宸ヤ綅 - passingStationCollection.setInboundTime(startTime);//杩涚珯鏃堕棿 - passingStationCollection.setOutboundTime(new Date());//鍑虹珯鏃堕棿 - passingStationCollection.setOutRsSign(stationStatus);//绔欑姸鎬佸�� - passingStationCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - daPassingStationCollectionService.save(passingStationCollection); - - } catch (Exception e) { - throw new RuntimeException(e); - } - - return result; - } - - /** - * 淇濆瓨杩囩珯鏁版嵁 - * @param thoroughfare 閫氶亾 - * @param device 宸ヤ綅 - * @param cellCodeList 鐢佃姱鐮侀泦鍚� - * @return list - * @throws Exception e - */ - private static Integer savePassingStation(String thoroughfare, String device,List<String> cellCodeList){ - Integer result = 21; - - try { - //璇昏繘绔欐椂闂� - Date startTime = new Date(); - ReadWriteEntity startTimeRead = miloService.readFromOpcUa(thoroughfare + "." + device + ".StartTime");//杩涚珯鏃堕棿 - if (ObjectUtil.isNotNull(startTimeRead.getValue())){ - startTime = format.parse(TimeUtil.test(TimeUtil.stringProcessing(startTimeRead.getValue().toString()))); - }else{ - result = 23; - log.info("璇诲彇鍒板伐浣峽}鐨凷tartTime鏁版嵁锛歿},杩斿洖RecordDataDone鐨勫�间负{}",device,"IS NULL锛�",result); - return result; - } - - //璇诲伐绔欑姸鎬� - String stationStatus = Constants.PASS; - ReadWriteEntity stationStatusRead = miloService.readFromOpcUa(thoroughfare + "." + device + ".StationStatus");//绔欑姸鎬佸湴鍧� - if (ObjectUtil.isNotNull(stationStatusRead.getValue())){ - String string = stationStatusRead.getValue().toString(); - if (Constants.TWO.equals(string)){ - stationStatus = Constants.UN_PASS; - } - }else{ - result = 23; - log.info("璇诲彇鍒板伐浣峽}StationStatus鏁版嵁锛歿},杩斿洖RecordDataDone鐨勫�间负{}",device,"IS NULL锛�",result); - return result; - } - - List<DaPassingStationCollection> passingList = new ArrayList<>(); - for (String cellCode : cellCodeList) { - DaPassingStationCollection passingStationCollection = new DaPassingStationCollection(); - if (ObjectUtil.isNotNull(cellCode) && !cellCode.isEmpty()){ - passingStationCollection.setSfcCode(cellCode);//鐢佃姱鐮� - passingStationCollection.setLocationCode(device);//宸ヤ綅 - passingStationCollection.setInboundTime(startTime);//杩涚珯鏃堕棿 - passingStationCollection.setOutboundTime(new Date());//鍑虹珯鏃堕棿 - passingStationCollection.setOutRsSign(stationStatus);//绔欑姸鎬佸�� - passingStationCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - passingList.add(passingStationCollection); - } - } - - if (CollUtil.isNotEmpty(passingList)){ - daPassingStationCollectionService.insertBatch(passingList);//瀛樺偍杩囩珯閲囬泦鏁版嵁 - } - - } catch (Exception e) { - throw new RuntimeException(e); - } - - return result; - } - - - /** - * 淇濆瓨鍙傛暟鏁版嵁鍜屽彂閫佸伐鍘侻ES - * @param device 宸ヤ綅 - * @param moduleCode 妯$粍鍙� - * @param stationStatus 绔欑姸鎬� - * @return list - * @throws Exception e - */ - private static Integer saveParamCollection(String device,String moduleCode,String stationStatus){ - Integer result = 21;//杩斿洖缁撴灉 - String sendMes = ""; - - try { - //鏌ヨ鍙傛暟閰嶇疆琛� - List<DaCollectionParamConf> list = collectionParamConfService.list(new LambdaQueryWrapper<DaCollectionParamConf>() - .eq(DaCollectionParamConf::getProcessesCode, device)//宸ヤ綅 - .eq(DaCollectionParamConf::getWhetherToCollect, Constants.ONE)//鏄惁閲囬泦 - ); - if (CollUtil.isNotEmpty(list)){ - - List<String> collect = list.stream() - .map(DaCollectionParamConf::getGatherAddress).collect(Collectors.toList()); - List<ReadWriteEntity> readWriteEntityList = miloService.readFromOpcUa(collect); - - List<DaParamCollection> collectionList = new ArrayList<>(); - List<ChildVO> mesList = new ArrayList<>(); - for (int i = 0; i < readWriteEntityList.size(); i++) { - DaParamCollection daParamCollection = new DaParamCollection(); - daParamCollection.setSfcCode(moduleCode);//妯$粍鐮� - daParamCollection.setParamCode(list.get(i).getCollectParameterId());//鍙傛暟缂栫爜 - daParamCollection.setParamName(list.get(i).getCollectParameterName());//鍙傛暟鍚嶇О - String paramValue = ""; - if (ObjectUtil.isNotNull(readWriteEntityList.get(i).getValue())){ - paramValue = readWriteEntityList.get(i).getValue().toString();//鍙傛暟鍊� - if("DATE".equals(list.get(i).getCollectParameterType()) && !paramValue.isEmpty()){ - paramValue = format.parse(TimeUtil.test(TimeUtil.stringProcessing(paramValue))).toString(); - }else if("MODEL".equals(list.get(i).getCollectParameterType()) && !paramValue.isEmpty()){ - paramValue = Constants.materialMap.get(paramValue); - } - } - daParamCollection.setParamValue(paramValue);//鍙傛暟鍊� - daParamCollection.setLocationCode(device);//宸ヤ綅 - daParamCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - collectionList.add(daParamCollection);//灏佽鍙傛暟閲囬泦list - - //鍙戦�佺粰宸ュ巶mes鍙傛暟灏佽 - ChildVO childVO = new ChildVO(); - childVO.setItemCode(list.get(i).getCollectParameterId());//鍙傛暟缂栫爜 - childVO.setItemType(list.get(i).getItemType()); - childVO.setItemValue(paramValue);//鍙傛暟鍊� - childVO.setItemText(list.get(i).getCollectParameterName()); - childVO.setCheckResult("1"); - childVO.setCheckTime(format.format(new Date())); - mesList.add(childVO); - } - - CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> { - //鎻掑叆鍙傛暟閲囬泦琛� - daParamCollectionService.insertBatch(collectionList); - - //濡傛灉220宸ヤ綅锛岃繘琛屾姤宸�,鍥犱负涓婂眰绯荤粺鍙敮鎸�6浣嶏紝鎵�鏈夋姤宸ュ伐浣嶄慨鏀逛负M1P220 - if(Constants.OP220.equals(device)) { - getWorkReportResultFeedback(moduleCode, "M1P220", format.format(new Date())); - } - - //涓婁紶鍒板伐鍘俶es - ParentVO parentVO = new ParentVO(); - parentVO.setStationCode(device);//宸ヤ綅 - parentVO.setSiteCode("3983"); - - parentVO.setRecordId(UUID.randomUUID().toString()); - if("2".equals(stationStatus)){//宸ョ珯鐘舵�� - parentVO.setTotalResult("0"); - }else { - parentVO.setTotalResult("1"); - } - parentVO.setProductNum(moduleCode); - - //娣诲姞鍩虹鏁版嵁 - List<ChildVO> basicList = getCollectParamBasicData(device,moduleCode); - mesList.addAll(basicList); - - parentVO.setCheckList(mesList); - - log.info("鎵ц宸ュ巶MES鏂规硶start锛屽伐浣嶅彿{} 浼犲叆鏁版嵁锛歿}",device ,parentVO); - HttpResponse execute = HttpRequest.post(Constants.FACTORY_EMS_UAT_GET_RUL+"deviceResultFeedback").body(JSONUtil.toJsonStr(parentVO)).execute(); - log.info("鎵ц宸ュ巶MES鏂规硶end锛屽伐浣嶅彿{} 杩斿洖鏁版嵁锛歿}",device,execute.body()); - - }); - } - }catch (Exception e) { - throw new RuntimeException(e); - } - return result; - } - - /** - * 淇濆瓨鍙傛暟鏁版嵁鍜屽彂閫佸伐鍘侻ES - * @param device 宸ヤ綅 - * @param cellCodeList 鐢佃姱鐮侀泦鍚� - * @return list - * @throws Exception e - */ - private static Integer saveParamCollection(String device,List<String> cellCodeList){ - Integer result = 21;//杩斿洖缁撴灉 - List<ChildVO> mesChildList1 = new ArrayList<>();//灏佽缁欏伐鍘侻ES鍙戦�佺殑childlist1 - List<ChildVO> mesChildList2 = new ArrayList<>();//灏佽缁欏伐鍘侻ES鍙戦�佺殑childlist2 - List<ChildVO> mesChildList3 = new ArrayList<>();//灏佽缁欏伐鍘侻ES鍙戦�佺殑childlist3 - List<ChildVO> mesChildList4 = new ArrayList<>();//灏佽缁欏伐鍘侻ES鍙戦�佺殑childlist4 - List<ChildVO> mesChildList0 = new ArrayList<>();//灏佽缁欏伐鍘侻ES鍙戦�佺殑childlist4 - try { - //鏌ヨ鍙傛暟閰嶇疆琛� - List<DaCollectionParamConf> list = collectionParamConfService.list(new LambdaQueryWrapper<DaCollectionParamConf>() - .eq(DaCollectionParamConf::getProcessesCode, device)//宸ヤ綅 - .eq(DaCollectionParamConf::getWhetherToCollect, Constants.ONE)//鏄惁閲囬泦 - );//绫诲瀷 - if (CollUtil.isNotEmpty(list)) { - List<DaParamCollection> saveParamList = new ArrayList<>();//灏佽鍙傛暟閲囬泦list - List<DaCollectionParamConf> confColl1 = list.stream().filter(x -> Constants.INT_ONE.equals(x.getKeyNum())).collect(Collectors.toList()); - List<DaCollectionParamConf> confColl2 = list.stream().filter(x -> Constants.INT_TWO.equals(x.getKeyNum())).collect(Collectors.toList()); - List<DaCollectionParamConf> confColl3 = list.stream().filter(x -> Constants.INT_THREE.equals(x.getKeyNum())).collect(Collectors.toList()); - List<DaCollectionParamConf> confColl4 = list.stream().filter(x -> Constants.INT_FOUR.equals(x.getKeyNum())).collect(Collectors.toList()); - List<DaCollectionParamConf> confColl0 = list.stream().filter(x -> Constants.INT_ZERO.equals(x.getKeyNum())).collect(Collectors.toList()); - - List<String> collect1 = confColl1.stream() - .map(DaCollectionParamConf::getGatherAddress).collect(Collectors.toList()); - List<ReadWriteEntity> paramCollectionList1 = miloService.readFromOpcUa(collect1);//鐢佃姱1 鍙傛暟鍊� - - List<String> collect2 = confColl2.stream() - .map(DaCollectionParamConf::getGatherAddress).collect(Collectors.toList()); - List<ReadWriteEntity> paramCollectionList2 = miloService.readFromOpcUa(collect2);//鐢佃姱2 鍙傛暟鍊� - - List<String> collect3 = confColl3.stream() - .map(DaCollectionParamConf::getGatherAddress).collect(Collectors.toList()); - List<ReadWriteEntity> paramCollectionList3 = miloService.readFromOpcUa(collect3);//鐢佃姱3 鍙傛暟鍊� - - List<String> collect4 = confColl4.stream() - .map(DaCollectionParamConf::getGatherAddress).collect(Collectors.toList()); - List<ReadWriteEntity> paramCollectionList4 = miloService.readFromOpcUa(collect4);//鐢佃姱4 鍙傛暟鍊� - - List<String> collect0 = confColl0.stream() - .map(DaCollectionParamConf::getGatherAddress).collect(Collectors.toList()); - List<ReadWriteEntity> paramCollectionList0 = miloService.readFromOpcUa(collect0);//鐢佃姱 鍙傛暟鍊� - - //绗竴涓數鑺殑鏁版嵁 - if (CollUtil.isNotEmpty(paramCollectionList1) && !cellCodeList.get(0).isEmpty()) { - for (int i = 0; i < paramCollectionList1.size(); i++) { - DaParamCollection daParamCollection = new DaParamCollection(); - daParamCollection.setSfcCode(cellCodeList.get(0));//鐢佃姱鐮� - daParamCollection.setParamCode(confColl1.get(i).getCollectParameterId());//鍙傛暟缂栫爜 - daParamCollection.setParamName(confColl1.get(i).getCollectParameterName());//鍙傛暟鍚嶇О - String paramValue = ""; - if (ObjectUtil.isNotNull(paramCollectionList1.get(i).getValue())) { - paramValue = paramCollectionList1.get(i).getValue().toString();//鍙傛暟鍊� - } - daParamCollection.setParamValue(paramValue);//鍙傛暟鍊� - daParamCollection.setLocationCode(device);//宸ヤ綅 - daParamCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - saveParamList.add(daParamCollection);//灏佽鍙傛暟閲囬泦list - - //鍙戦�佺粰宸ュ巶mes鍙傛暟灏佽 - ChildVO childVO = new ChildVO(); - childVO.setItemCode(confColl1.get(i).getCollectParameterId());//鍙傛暟 - childVO.setItemType(confColl1.get(i).getItemType()); - childVO.setItemValue(paramValue);//鍙傛暟鍊� - childVO.setItemText(confColl1.get(i).getCollectParameterName()); - childVO.setCheckResult("1"); - childVO.setCheckTime(format.format(new Date())); - mesChildList1.add(childVO); - } - - } - if (CollUtil.isNotEmpty(paramCollectionList2) && !cellCodeList.get(1).isEmpty()) { - - for (int i = 0; i < paramCollectionList2.size(); i++) { - DaParamCollection daParamCollection = new DaParamCollection(); - daParamCollection.setSfcCode(cellCodeList.get(1));//鐢佃姱鐮� - daParamCollection.setParamCode(confColl2.get(i).getCollectParameterId());//鍙傛暟缂栫爜 - daParamCollection.setParamName(confColl2.get(i).getCollectParameterName());//鍙傛暟鍚嶇О - String paramValue = ""; - if (ObjectUtil.isNotNull(paramCollectionList2.get(i).getValue())) { - paramValue = paramCollectionList2.get(i).getValue().toString();//鍙傛暟鍊� - } - daParamCollection.setParamValue(paramValue);//鍙傛暟鍊� - daParamCollection.setLocationCode(device);//宸ヤ綅 - daParamCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - saveParamList.add(daParamCollection);//灏佽鍙傛暟閲囬泦list - - //鍙戦�佺粰宸ュ巶mes鍙傛暟灏佽 - ChildVO childVO = new ChildVO(); - childVO.setItemCode(confColl2.get(i).getCollectParameterId());//鍙傛暟 - childVO.setItemType(confColl2.get(i).getItemType()); - childVO.setItemValue(paramValue);//鍙傛暟鍊� - childVO.setItemText(confColl2.get(i).getCollectParameterName()); - childVO.setCheckResult("1"); - childVO.setCheckTime(format.format(new Date())); - mesChildList2.add(childVO); - } - } - if (CollUtil.isNotEmpty(paramCollectionList3) && !cellCodeList.get(2).isEmpty()) { - for (int i = 0; i < paramCollectionList3.size(); i++) { - DaParamCollection daParamCollection = new DaParamCollection(); - daParamCollection.setSfcCode(cellCodeList.get(2));//鐢佃姱鐮� - daParamCollection.setParamCode(confColl3.get(i).getCollectParameterId());//鍙傛暟缂栫爜 - daParamCollection.setParamName(confColl3.get(i).getCollectParameterName());//鍙傛暟鍚嶇О - String paramValue = ""; - if (ObjectUtil.isNotNull(paramCollectionList3.get(i).getValue())) { - paramValue = paramCollectionList3.get(i).getValue().toString();//鍙傛暟鍊� - } - daParamCollection.setParamValue(paramValue);//鍙傛暟鍊� - daParamCollection.setLocationCode(device);//宸ヤ綅 - daParamCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - saveParamList.add(daParamCollection);//灏佽鍙傛暟閲囬泦list - - //鍙戦�佺粰宸ュ巶mes鍙傛暟灏佽 - ChildVO childVO = new ChildVO(); - childVO.setItemCode(confColl3.get(i).getCollectParameterId());//鍙傛暟 - childVO.setItemType(confColl3.get(i).getItemType()); - childVO.setItemValue(paramValue);//鍙傛暟鍊� - childVO.setItemText(confColl3.get(i).getCollectParameterName()); - childVO.setCheckResult("1"); - childVO.setCheckTime(format.format(new Date())); - mesChildList3.add(childVO); - } - } - if (CollUtil.isNotEmpty(paramCollectionList4)&& !cellCodeList.get(3).isEmpty()) { - for (int i = 0; i < paramCollectionList4.size(); i++) { - DaParamCollection daParamCollection = new DaParamCollection(); - daParamCollection.setSfcCode(cellCodeList.get(3));//鐢佃姱鐮� - daParamCollection.setParamCode(confColl4.get(i).getCollectParameterId());//鍙傛暟缂栫爜 - daParamCollection.setParamName(confColl4.get(i).getCollectParameterName());//鍙傛暟鍚嶇О - String paramValue = ""; - if (ObjectUtil.isNotNull(paramCollectionList4.get(i).getValue())) { - paramValue = paramCollectionList4.get(i).getValue().toString();//鍙傛暟鍊� - } - daParamCollection.setParamValue(paramValue);//鍙傛暟鍊� - daParamCollection.setLocationCode(device);//宸ヤ綅 - daParamCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - saveParamList.add(daParamCollection);//灏佽鍙傛暟閲囬泦list - - //鍙戦�佺粰宸ュ巶mes鍙傛暟灏佽 - ChildVO childVO = new ChildVO(); - childVO.setItemCode(confColl4.get(i).getCollectParameterId());//鍙傛暟 - childVO.setItemType(confColl4.get(i).getItemType()); - childVO.setItemValue(paramValue);//鍙傛暟鍊� - childVO.setItemText(confColl4.get(i).getCollectParameterName()); - childVO.setCheckResult("1"); - childVO.setCheckTime(format.format(new Date())); - mesChildList4.add(childVO); - } - } - - //鍏叡鍙傛暟 - if (CollUtil.isNotEmpty(paramCollectionList0)) { - for (int i = 0; i < cellCodeList.size(); i++) {//寰幆4涓數鑺� - if(!cellCodeList.get(i).isEmpty()){ - for (int j = 0; j < paramCollectionList0.size(); j++) { - DaParamCollection daParamCollection = new DaParamCollection(); - daParamCollection.setSfcCode(cellCodeList.get(i));//鐢佃姱鐮� - daParamCollection.setParamCode(confColl0.get(j).getCollectParameterId());//鍙傛暟缂栫爜 - daParamCollection.setParamName(confColl0.get(j).getCollectParameterName());//鍙傛暟鍚嶇О - String paramValue = ""; - if (ObjectUtil.isNotNull(paramCollectionList0.get(j).getValue())) { - paramValue = paramCollectionList0.get(j).getValue().toString();//鍙傛暟鍊� - if("DATE".equals(confColl0.get(j).getCollectParameterType()) && !paramValue.isEmpty()){ - paramValue = TimeUtil.test(TimeUtil.stringProcessing(paramValue)); - } - } - daParamCollection.setParamValue(paramValue);//鍙傛暟鍊� - daParamCollection.setLocationCode(device);//宸ヤ綅 - daParamCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - saveParamList.add(daParamCollection); - - //鍙戦�佺粰宸ュ巶mes鍙傛暟灏佽 - ChildVO childVO = new ChildVO(); - childVO.setItemCode(confColl0.get(j).getCollectParameterId());//鍙傛暟 - childVO.setItemType(confColl0.get(j).getItemType()); - childVO.setItemValue(paramValue);//鍙傛暟鍊� - childVO.setItemText(confColl0.get(j).getCollectParameterName()); - childVO.setCheckResult("1"); - childVO.setCheckTime(format.format(new Date())); - mesChildList0.add(childVO); - } - } - - //mesList.get(i).addAll(mesChildList0); - - } - - } - - CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> { - //鎻掑叆鍙傛暟閲囬泦琛� - daParamCollectionService.insertBatch(saveParamList); - //涓婁紶鍒板伐鍘俶es - ParentVO parentVO = new ParentVO(); - parentVO.setStationCode(device);//宸ヤ綅 - parentVO.setSiteCode("3983"); - for (int i = 0; i < cellCodeList.size(); i++) {//寰幆4涓數鑺� - if(!cellCodeList.get(i).isEmpty()){ - parentVO.setRecordId(UUID.randomUUID().toString()); - parentVO.setTotalResult("1"); - parentVO.setProductNum(cellCodeList.get(i));//鐢佃姱鐮� - //灏佽缁欏伐鍘侻ES鍙戦�佺殑childlist4 - List<ChildVO> mesChildList = new ArrayList<>(mesChildList0); - switch (i) { - case 0 : - mesChildList.addAll(mesChildList1); - break; - case 1 : - mesChildList.addAll(mesChildList2); - break; - case 2 : - mesChildList.addAll(mesChildList3); - break; - case 3 : - mesChildList.addAll(mesChildList4); - break; - - } - - //娣诲姞鍩虹鏁版嵁 - List<ChildVO> basicList = getCollectParamBasicData(device,cellCodeList.get(i)); - mesChildList.addAll(basicList); - - parentVO.setCheckList(mesChildList);//鍙傛暟 - //CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> { - log.info("鎵ц宸ュ巶MES鏂规硶start锛屼紶鍏ユ暟鎹細{}",parentVO); - HttpResponse execute = HttpRequest.post(Constants.FACTORY_EMS_UAT_GET_RUL+"deviceResultFeedback").body(JSONUtil.toJsonStr(parentVO)).execute(); - log.info("鎵ц宸ュ巶MES鏂规硶end锛岃繑鍥炴暟鎹細{}",execute.body()); - } - } - }); - } - }catch (Exception e) { - log.error(e.getMessage()); - throw new RuntimeException(e); - } - return result; - } - - /** - * OP020鏍¢獙鐢佃姱鎸′綅 - * @param thoroughfare - * @param device - * @throws Exception - */ - private Integer checkCellGear(String thoroughfare, String device,List<String> cellCodeList,String cellGear) throws Exception { - Integer result = 11; - - for(int i = 0; i < cellCodeList.size(); i ++){ - Integer cellStatus = 1; - String cellCode = cellCodeList.get(i); - if(!cellCode.isEmpty()){ - List<DaCellData> list = daCellDataService.list(new LambdaQueryWrapper<DaCellData>() - .eq(DaCellData::getGbCellCode,cellCode)); - if(CollUtil.isNotEmpty(list)){ - DaCellData daCellData = list.get(0); - String cellValue = daCellData.getCellValue();//鏁版嵁搴撲腑鐢佃姱鎸′綅 - String cellSerial = daCellData.getCellSerial();//鏁版嵁搴撲腑鐢佃姱缁勫埆 - if(!cellValue.isEmpty() && cellValue.equals(cellGear)){ - cellStatus = 1; - }else { - cellStatus = 2; - result = 17;//鎸′綅鏍¢獙涓嶅悎鏍� - } - }else { - cellStatus = 2; - result = 17;//鏌ヤ笉鍒拌鏍¢獙鐨勬尅浣� - } - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_"+(i+1)).value(cellStatus).build()); - } - } - return result; - } - - /** - * 030宸ヤ綅杩斿洖ocv娴嬭瘯缁撴灉 - * @param thoroughfare - * @param device - * @param cellCode - * @throws Exception - */ - private boolean OCVResultFeedBack(String thoroughfare, String device,String cellCode) throws Exception { - boolean flag = true; - List<DaTestDeviceInterfaceTemp> list = daTestDeviceInterfaceTempService.list(new LambdaQueryWrapper<DaTestDeviceInterfaceTemp>() - .eq(DaTestDeviceInterfaceTemp::getProductNum,cellCode) - .orderByDesc(DaTestDeviceInterfaceTemp::getCreateTime) - ); - if (CollUtil.isNotEmpty(list)){ - DaTestDeviceInterfaceTemp daTestDeviceInterfaceTemp = list.get(0); - if (Constants.ONE.equals(daTestDeviceInterfaceTemp.getTotalResult())){ - flag = true; - }else { - flag = false; - } - //daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode); - }else { - flag = false; - log.info("璇诲彇鍒板伐浣峽},娴嬭瘯璁惧杩斿洖鐨勬暟鎹煡璇笉鍒帮紝鐢佃姱鐮佷负锛歿}",device,cellCode); - } - return flag; - } - /** - * 030宸ヤ綅杩斿洖ocv娴嬭瘯缁撴灉 - * @param thoroughfare - * @param device - * @throws Exception - */ - private boolean OCVResultFeedBack(String thoroughfare, String device) throws Exception { - boolean flag = true; - Object value1 = miloService.readFromOpcUa(thoroughfare + "." + device + ".CellCode_1").getValue(); - if (ObjectUtil.isNotNull(value1)){ - String cellCode = value1.toString(); - List<DaTestDeviceInterfaceTemp> list = daTestDeviceInterfaceTempService.list(new LambdaQueryWrapper<DaTestDeviceInterfaceTemp>() - .eq(DaTestDeviceInterfaceTemp::getProductNum,cellCode) - .orderByDesc(DaTestDeviceInterfaceTemp::getCreateTime) - ); - if (CollUtil.isNotEmpty(list)){ - DaTestDeviceInterfaceTemp daTestDeviceInterfaceTemp = list.get(0); - if (Constants.ONE.equals(daTestDeviceInterfaceTemp.getTotalResult())){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_1").value(1).build()); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_1").value(2).build()); - } - //daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_1").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},OP020宸ヤ綅娌℃湁缁欐祴璇曠粨鏋�",device); - } - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_1").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},PLC娌℃湁缁欑數鑺爜",device); - } - Object value2 = miloService.readFromOpcUa(thoroughfare + "." + device + ".CellCode_2").getValue(); - if (ObjectUtil.isNotNull(value2)){ - String cellCode = value2.toString(); - List<DaTestDeviceInterfaceTemp> list = daTestDeviceInterfaceTempService.list(new LambdaQueryWrapper<DaTestDeviceInterfaceTemp>() - .eq(DaTestDeviceInterfaceTemp::getProductNum,cellCode) - .orderByDesc(DaTestDeviceInterfaceTemp::getCreateTime) - ); - if (CollUtil.isNotEmpty(list)){ - DaTestDeviceInterfaceTemp daTestDeviceInterfaceTemp = list.get(0); - if (Constants.ONE.equals(daTestDeviceInterfaceTemp.getTotalResult())){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_2").value(1).build()); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_2").value(2).build()); - } - //daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_2").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},OP020宸ヤ綅娌℃湁缁欐祴璇曠粨鏋�",device); - } - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_2").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},PLC娌℃湁缁欑數鑺爜",device); - } - - Object value3 = miloService.readFromOpcUa(thoroughfare + "." + device + ".CellCode_3").getValue(); - if (ObjectUtil.isNotNull(value3)){ - String cellCode = value3.toString(); - List<DaTestDeviceInterfaceTemp> list = daTestDeviceInterfaceTempService.list(new LambdaQueryWrapper<DaTestDeviceInterfaceTemp>() - .eq(DaTestDeviceInterfaceTemp::getProductNum,cellCode) - .orderByDesc(DaTestDeviceInterfaceTemp::getCreateTime) - ); - if (CollUtil.isNotEmpty(list)){ - DaTestDeviceInterfaceTemp daTestDeviceInterfaceTemp = list.get(0); - if (Constants.ONE.equals(daTestDeviceInterfaceTemp.getTotalResult())){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_3").value(1).build()); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_3").value(2).build()); - } - //daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_3").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},OP020宸ヤ綅娌℃湁缁欐祴璇曠粨鏋�",device); - } - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_3").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},PLC娌℃湁缁欑數鑺爜",device); - } - - Object value4 = miloService.readFromOpcUa(thoroughfare + "." + device + ".CellCode_4").getValue(); - if (ObjectUtil.isNotNull(value4)){ - String cellCode = value4.toString(); - List<DaTestDeviceInterfaceTemp> list = daTestDeviceInterfaceTempService.list(new LambdaQueryWrapper<DaTestDeviceInterfaceTemp>() - .eq(DaTestDeviceInterfaceTemp::getProductNum,cellCode) - .orderByDesc(DaTestDeviceInterfaceTemp::getCreateTime) - ); - if (CollUtil.isNotEmpty(list)){ - DaTestDeviceInterfaceTemp daTestDeviceInterfaceTemp = list.get(0); - if (Constants.ONE.equals(daTestDeviceInterfaceTemp.getTotalResult())){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_4").value(1).build()); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_4").value(2).build()); - } - //daTestDeviceInterfaceTempService.deleteDaTestDeviceInterfaceTempByProductNum(cellCode); - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_4").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},OP020宸ヤ綅娌℃湁缁欐祴璇曠粨鏋�",device); - } - }else { - flag = false; - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".CellStatus_4").value(5).build()); - log.info("璇诲彇鍒板伐浣峽},PLC娌℃湁缁欑數鑺爜",device); - } - - return flag; - } - - /** - * AMES鎶ュ伐缁撴灉鍥炰紶 - * @param productNum - * @param stationCode - * @param confirmTime - * @return - */ - //{"code":"success","data":{"productNum":"LCV123456P0600036","stationCode":"1HZ01","resultCode":"S","resultText":"鎶ュ伐鎴愬姛"},"message":"API璋冪敤鎴愬姛"} - public static String getWorkReportResultFeedback(String productNum,String stationCode,String confirmTime) - { - String result = ""; - try { - String url = Constants.FACTORY_EMS_UAT_GET_RUL + "workReportResultFeedback?siteCode="+Constants.FACTORY_EMS_SITE_CODE+"&stationCode="+stationCode+"&productNum="+productNum+"&confirmTime="+confirmTime; - HttpResponse response = HttpRequest.get(url).execute(); - HttpRequest httpRequest = HttpRequest.get(url); - result = response.body(); - }catch (Exception e){ - throw new RuntimeException(e); - }finally { - return result; - } - } - - - /** - * 鑾峰彇閲囬泦鍙傛暟鍩虹鏁版嵁 - * @param stationCode - * @param sfcCode - * @return list - */ - public static List<ChildVO> getCollectParamBasicData(String stationCode,String sfcCode) { - List<ChildVO> basicList = new ArrayList<>(); - List<DaParamCollection> collectionList = new ArrayList<>(); - try { - //鏌ヨ鍙傛暟閰嶇疆琛� - List<DaCollectionParamConf> list = collectionParamConfService.list(new LambdaQueryWrapper<DaCollectionParamConf>() - .eq(DaCollectionParamConf::getProcessesCode, stationCode)//宸ヤ綅 - .eq(DaCollectionParamConf::getCollectParameterType, "BASIC")//閲囬泦鍙傛暟绫诲瀷 - ); - if (CollUtil.isNotEmpty(list)){ - for(DaCollectionParamConf conf:list){ - ChildVO childVO = new ChildVO(); - childVO.setItemCode(conf.getCollectParameterId());//鍙傛暟 - childVO.setItemType(conf.getItemType()); - childVO.setItemValue(conf.getParamCentral());//鍙傛暟鍊� - childVO.setItemText(conf.getCollectParameterName()); - childVO.setCheckResult("1"); - childVO.setCheckTime(format.format(new Date())); - basicList.add(childVO); - - DaParamCollection daParamCollection = new DaParamCollection(); - daParamCollection.setSfcCode(sfcCode);//妯$粍鐮� - daParamCollection.setParamCode(conf.getCollectParameterId());//鍙傛暟缂栫爜 - daParamCollection.setParamName(conf.getCollectParameterName());//鍙傛暟鍚嶇О - - daParamCollection.setParamValue(conf.getParamCentral());//鍙傛暟鍊� - daParamCollection.setLocationCode(stationCode);//宸ヤ綅 - daParamCollection.setCollectionTime(new Date());//閲囬泦鏃堕棿 - collectionList.add(daParamCollection);//灏佽鍙傛暟閲囬泦list - } - daParamCollectionService.insertBatch(collectionList); - } - return basicList; - }catch (Exception e) { - throw new RuntimeException(e); - } - } - - - } -- Gitblit v1.9.3