From 2d99336ecd97b894c70507e3a6909f5316efa85d Mon Sep 17 00:00:00 2001 From: 18188916393 <2562295436@qq.com> Date: Sun, 25 Sep 2022 15:09:19 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acs/service/impl/AcsToWmsServiceImpl.java | 9 ++++++- .../service/impl/ProducetaskServiceImpl.java | 10 +++++++- .../org/nl/wms/pdm/wql/PDM_ProduceTask_01.wql | 25 ++++++++++++++++++- 3 files changed, 41 insertions(+), 3 deletions(-) diff --git a/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 22aa23c..80e5c52 100644 --- a/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -610,7 +610,14 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { if (StrUtil.isEmpty(material_code)) { throw new BadRequestException("物料编码不能为空!"); } - String device_id = WQLObject.getWQLObject("pdm_base_device").query("device_code ='" + device_code + "'").uniqueResult(0).getString("device_id"); + //根据设备去找设备id + String device_id = ""; + if (StrUtil.equals("FJJXS1", device_code) || StrUtil.equals("FJJXS2", device_code) || StrUtil.equals("FJJXS3", device_code)) { + device_id = WQLObject.getWQLObject("pdm_base_device").query("device_code ='" + device_code + "'").uniqueResult(0).getString("device_id"); + } else { + device_id = WQLObject.getWQLObject("sch_base_point").query("point_code='" + device_code + "'").uniqueResult(0).getString("device_id"); + + } //根据物料code 去找物料id JSONObject materiObj = WQLObject.getWQLObject("MD_ME_Material").query("material_code='" + material_code + "'").uniqueResult(0); if (!StrUtil.equals(device_id, taskObj.getString("device_id"))) { diff --git a/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/ProducetaskServiceImpl.java b/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/ProducetaskServiceImpl.java index cc1cf74..5038fbb 100644 --- a/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/ProducetaskServiceImpl.java +++ b/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/ProducetaskServiceImpl.java @@ -283,7 +283,15 @@ public class ProducetaskServiceImpl implements ProducetaskService { if (ObjectUtil.isNotEmpty(jo)) { throw new BadRequestException("该设备存在未完成的工单,不能下发!"); } - JSONObject taskObj = WQL.getWO("PDM_ProduceTask_01").addParam("flag", "3").addParam("producetask_id", producetask_id).process().uniqueResult(0); + JSONObject taskObj = new JSONObject(); + //假如是包装的三台机械手,是将设备当作工单设备 + //假如是压机下料的机械手,则是将对接为当作工单设备 + if (StrUtil.equals(device_id, "1518136519804719104") || StrUtil.equals("1518136611341209600", device_id) || StrUtil.equals("1544608176471674880", device_id)) { + taskObj = WQL.getWO("PDM_ProduceTask_01").addParam("flag", "4").addParam("producetask_id", producetask_id).process().uniqueResult(0); + } else { + taskObj = WQL.getWO("PDM_ProduceTask_01").addParam("flag", "3").addParam("producetask_id", producetask_id).process().uniqueResult(0); + } + taskObj.put("product_code", "wms"); WmsToAcsService wmsToAcsService = SpringContextHolder.getBean(WmsToAcsService.class); JSONArray arr = new JSONArray(); diff --git a/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/wql/PDM_ProduceTask_01.wql b/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/wql/PDM_ProduceTask_01.wql index 8214f18..5bbaadc 100644 --- a/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/wql/PDM_ProduceTask_01.wql +++ b/wms/hd/nladmin-system/src/main/java/org/nl/wms/pdm/wql/PDM_ProduceTask_01.wql @@ -126,4 +126,27 @@ ENDOPTION ENDSELECT ENDQUERY - ENDIF \ No newline at end of file + ENDIF + + IF 输入.flag = "4" + QUERY + SELECT + point.point_code as device_code, + task.*, + material.material_code, + material.material_name, + material.material_spec, + material.material_model + FROM + pdm_mg_producetask task + LEFT JOIN sch_base_point point ON point.device_id = task.device_id + AND point.point_code <> 'MDJXS101' + LEFT JOIN md_me_material material ON material.material_id = task.material_id + WHERE + 1 =1 + OPTION 输入.producetask_id <> "" + (task.producetask_id = 输入.producetask_id) + ENDOPTION + ENDSELECT + ENDQUERY + ENDIF \ No newline at end of file