From 35c489d86b027462dca8bdd06e5fb6dc066fa428 Mon Sep 17 00:00:00 2001 From: cl <418351270@qq.com> Date: 星期四, 11 七月 2024 09:36:46 +0800 Subject: [PATCH] 修改参数采集 --- jcdm-main/src/main/java/com/jcdm/main/restful/factoryMes/service/RestfulService.java | 4 ++-- jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java | 11 ++++++++++- jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java | 17 +++++++++-------- 3 files changed, 21 insertions(+), 11 deletions(-) diff --git a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java index 85f9e6c..46cc0fe 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java +++ b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java @@ -3,8 +3,10 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.concurrent.CompletableFuture; import javax.servlet.http.HttpServletResponse; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -13,6 +15,7 @@ import com.jcdm.common.utils.ServletUtils; import com.jcdm.common.utils.StringUtils; import com.jcdm.framework.websocket.WebSocketUsers; +import com.jcdm.main.constant.Constants; import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo; import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfoExcelImport; import com.jcdm.main.om.productionOrde.mapper.OmProductionOrdeInfoMapper; @@ -122,9 +125,15 @@ public AjaxResult receivingWorkOrders() { String paramProductNum = ""; + Object productTypeObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".ProductType").getValue();//浜у搧绫诲瀷 + if (ObjectUtil.isNull(productTypeObjcet)) { + return AjaxResult.error("鎺ュ崟澶辫触,PLC鏈紶杈撶敓浜х被鍨嬶紝璇疯仈绯荤鐞嗗憳"); + } + String productType = productTypeObjcet.toString();//浜у搧绫诲瀷 + String materialCode = Constants.materialMap.get(productType); // 鏌ヨ鏈�鏂扮殑宸ュ崟淇℃伅 OmProductionOrdeInfo lastOrder = omProductionOrdeInfoService.getLastOrder(); - String orderJsonString = RestfulService.getProductionWorkOrderRequest(lastOrder.getProductNum(), "OP230"); + String orderJsonString = RestfulService.getProductionWorkOrderRequest(lastOrder.getProductNum(), "M1OP100",materialCode); JSONObject jsonObject = new JSONObject(orderJsonString); // 浠嶫SONObject涓幏鍙杁ata瀵硅薄 JSONObject dataObject = jsonObject.getJSONObject("data"); 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 7342035..f36100c 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 @@ -160,9 +160,10 @@ Object productTypeObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".ProductType").getValue();//浜у搧绫诲瀷 if (ObjectUtil.isNotNull(productTypeObjcet)){ String productType = productTypeObjcet.toString();//浜у搧绫诲瀷 + String materialCode = Constants.materialMap.get(productType); CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> { //璋冪敤宸ュ巶MES锛屼繚瀛樺埌鏁版嵁搴�,骞朵笖灏嗗伐鍗曚紶缁橮LC (鐩墠涓存椂鐢ㄨ鏂规硶锛� - receivingWorkOrders(thoroughfare, device); + receivingWorkOrders(thoroughfare, device,materialCode); }); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(11).build()); @@ -227,7 +228,7 @@ log.error(e.getMessage()); } } - public void receivingWorkOrders(String thoroughfare ,String device) { +/* public void receivingWorkOrders(String thoroughfare ,String device) { String paramProductNum = ""; try { @@ -252,21 +253,21 @@ //灏嗕骇鍝丼N鍙戦�佸埌鍓嶅彴 productNum = "productNum,"+ productNum; WebSocketUsers.sendMessageToUserByText(map.get(device), productNum); - }/*else{ + }*//*else{ miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordSNDone").value(2).build());//娌℃湁瑕佺敓浜х殑宸ュ崟 - }*/ + }*//* } catch (Exception e) { throw new RuntimeException(e); } - } + }*/ - /* public void receivingWorkOrders(String thoroughfare ,String device) + public void receivingWorkOrders(String thoroughfare ,String device ,String materialCode) { String paramProductNum = ""; try { // 鏌ヨ鏈�鏂扮殑宸ュ崟淇℃伅 OmProductionOrdeInfo lastOrder = omProductionOrdeInfoService.getLastOrder(); - String orderJsonString = RestfulService.getProductionWorkOrderRequest(lastOrder.getProductNum(), "MOP100"); + String orderJsonString = RestfulService.getProductionWorkOrderRequest(lastOrder.getProductNum(), "M1OP100",materialCode); JSONObject jsonObject = new JSONObject(orderJsonString); // 浠嶫SONObject涓幏鍙杁ata瀵硅薄 JSONObject dataObject = jsonObject.getJSONObject("data"); @@ -297,7 +298,7 @@ } catch (Exception e) { throw new RuntimeException(e); } - }*/ + } /** * 璇诲彇鐢佃姱鐮� diff --git a/jcdm-main/src/main/java/com/jcdm/main/restful/factoryMes/service/RestfulService.java b/jcdm-main/src/main/java/com/jcdm/main/restful/factoryMes/service/RestfulService.java index 1fcadf7..09b55c4 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/restful/factoryMes/service/RestfulService.java +++ b/jcdm-main/src/main/java/com/jcdm/main/restful/factoryMes/service/RestfulService.java @@ -36,9 +36,9 @@ * @return */ //{"code":"success","data":{"productNum":"LCV123456P0600036","stationCode":"1HZ01","materialCode":"LCV001_3","productionOrderNum":"500000258"},"message":"API璋冪敤鎴愬姛"} - public static String getProductionWorkOrderRequest(String productNum,String stationCode) + public static String getProductionWorkOrderRequest(String productNum,String stationCode,String materialCode) { - String url = getRealmName + "/productionWorkOrderRequest?siteCode="+siteCode+"&stationCode="+stationCode+"&productNum="+productNum; + String url = getRealmName + "/productionWorkOrderRequest?siteCode="+siteCode+"&stationCode="+stationCode+"&productNum="+productNum+"&materialCode="+materialCode; HttpResponse response = HttpRequest.get(url).execute(); HttpRequest httpRequest = HttpRequest.get(url); return response.body(); -- Gitblit v1.9.3