From 3f024ffe63d73d40344ce8d19e06975d4127f1d8 Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Tue, 6 Jun 2023 15:37:42 +0800 Subject: [PATCH 1/3] =?UTF-8?q?rev:=E5=88=86=E5=88=87=E8=BD=BD=E5=85=B7?= =?UTF-8?q?=E5=8F=B7=E6=A0=A1=E9=AA=8C=EF=BC=8C=E7=A9=BA=E8=BD=BD=E5=85=B7?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BF=AE=E6=94=B9=EF=BC=8C=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=9B=9E=E8=B0=83=E6=96=B9=E6=B3=95=E6=B7=BB=E5=8A=A0=E4=BA=8B?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acs/service/impl/AcsToWmsServiceImpl.java | 28 +++++---------- .../pda/mps/service/impl/OutServiceImpl.java | 2 +- .../mps/service/impl/ShippingServiceImpl.java | 18 +++++++++- .../java/org/nl/wms/pda/mps/wql/PDA_02.wql | 35 ++++++++++++++++++- .../wms/sch/service/impl/TaskServiceImpl.java | 10 ++++-- .../main/java/org/nl/wms/util/TranUtil.java | 1 - 6 files changed, 69 insertions(+), 25 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 3ff779fd6..e119051c1 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -113,22 +113,12 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { } else { message = e.getTargetException().getMessage(); } - log.info("任务状态更新失败:{}", message); - - JSONObject json = new JSONObject(); - json.put("task_id", task_id); - json.put("message", message); - errArr.add(json); + throw new BadRequestException(message); } catch (Exception e) { e.printStackTrace(); message = e.getMessage(); - log.info("任务状态更新失败:{}", message); - - JSONObject json = new JSONObject(); - json.put("task_id", task_id); - json.put("message", message); - errArr.add(json); + throw new BadRequestException(message); } } @@ -438,11 +428,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { JSONObject param = new JSONObject(); param.put("flag", "1"); - param.put("sale_order_name",sale_order_name); - param.put("product_name",product_name); - param.put("box_length",box_length_1); - param.put("box_width",box_width_1); - param.put("box_high",box_high_1); + param.put("sale_order_name", sale_order_name); + param.put("product_name", product_name); + param.put("box_length", box_length_1); + param.put("box_width", box_width_1); + param.put("box_high", box_high_1); //查询是否存在可用的空位 String point_code = ""; @@ -614,7 +604,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { } JSONObject data = new JSONObject(); - data.put("is_auto_table",jsonCust.getString("is_auto_table")); + data.put("is_auto_table", jsonCust.getString("is_auto_table")); // 判断是否贴标 if (!StrUtil.equals(jsonCust.getString("is_auto_table"), "1")) { @@ -1009,7 +999,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { point.update(json); JSONObject jsonTwo = new JSONObject(); - jsonTwo.put("point_id", IdUtil.getSnowflake(1,1).nextId()); + jsonTwo.put("point_id", IdUtil.getSnowflake(1, 1).nextId()); jsonTwo.put("device_code", json.getString("device_code")); jsonTwo.put("point_code", jsonTwo.getString("device_code") + "_2"); jsonTwo.put("point_name", json.getString("point_name")); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java index 551707aef..00c5c1152 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java @@ -232,7 +232,7 @@ public class OutServiceImpl implements OutService { throw new BadRequestException("起点不能为空!"); } - JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code1 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("(point_code2 = '" + point_code + "' OR point_code1 = '" + point_code + "' ) AND task_status < '07' AND is_delete = '0'").uniqueResult(0); if (ObjectUtil.isNotEmpty(task1)) { throw new BadRequestException("点位:" + point_code + "存在未完成的任务!"); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java index 4ed2d2f25..67ee918a8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java @@ -59,7 +59,7 @@ public class ShippingServiceImpl implements ShippingService { .addParam("sql_str", " ORDER BY abs(" + cut_jo.getString("sort_seq") + "-sort_seq),point_code") .addParam("product_area", cut_jo.getString("product_area")) .addParam("point_location", cut_jo.getString("point_location")) - .addParam("flag", "3").process().uniqueResult(0); + .addParam("flag", "302").process().uniqueResult(0); if (ObjectUtil.isEmpty(empty_vehicle)) { throw new BadRequestException("未查询到可用的空载具!"); } @@ -87,6 +87,14 @@ public class ShippingServiceImpl implements ShippingService { if (StrUtil.isEmpty(vehicle_code)) { throw new BadRequestException("输入的载具号不能为空!"); } + JSONObject vehicle_task = WQLObject.getWQLObject("sch_base_task").query("vehicle_code2 = '" + vehicle_code + "' AND is_delete = '0' AND task_status < '07'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(vehicle_task)) { + throw new BadRequestException("载具码:" + vehicle_code + "存在未完成的输送线任务!"); + } + JSONObject del_jo = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("vehicle_code = '"+vehicle_code+"'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(del_jo)){ + throw new BadRequestException("载具码:" + vehicle_code + "存在点位:"+del_jo.getString("point_code")+"上!"); + } if (rows.size() > 2) { throw new BadRequestException("最多选择两个分切计划进行操作!"); @@ -272,6 +280,14 @@ public class ShippingServiceImpl implements ShippingService { if (StrUtil.isEmpty(vehicle_code)) { throw new BadRequestException("载具码不能为空!"); } + JSONObject vehicle_task = WQLObject.getWQLObject("sch_base_task").query("vehicle_code2 = '" + vehicle_code + "' AND is_delete = '0' AND task_status < '07'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(vehicle_task)) { + throw new BadRequestException("载具码:" + vehicle_code + "存在未完成的输送线任务!"); + } + JSONObject del_jo = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("vehicle_code = '"+vehicle_code+"'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(del_jo)){ + throw new BadRequestException("载具码:" + vehicle_code + "存在点位:"+del_jo.getString("point_code")+"上!"); + } //判断起点是否存在 JSONObject start_jo = WQLObject.getWQLObject("sch_base_point").query("point_code = '" + point_code + "' AND is_delete = '0' AND is_used = '1'").uniqueResult(0); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_02.wql b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_02.wql index 01bb95938..fade1539b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_02.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/wql/PDA_02.wql @@ -135,7 +135,8 @@ sch_base_task WHERE ( point_code1 = ivt.point_code OR point_code2 = ivt.point_code ) - AND task_status < '07' + AND vehicle_code2 = ivt.vehicle_code + AND task_status < '07' AND is_delete = '0' ) OPTION 输入.product_area <> "" @@ -150,6 +151,38 @@ ENDQUERY ENDIF + IF 输入.flag = "302" + QUERY + SELECT + ivt.* + FROM + st_ivt_deliverypointivt ivt + WHERE + point_status = '02' + AND ivt.is_used = '1' + AND NOT EXISTS ( + SELECT + * + FROM + sch_base_task + WHERE + ( point_code1 = ivt.point_code OR point_code2 = ivt.point_code ) + AND vehicle_code2 = ivt.vehicle_code + AND task_status < '07' + AND is_delete = '0' + ) + OPTION 输入.product_area <> "" + ivt.product_area = 输入.product_area + ENDOPTION + OPTION 输入.product_area <> "" + ivt.point_location = 输入.point_location + ENDOPTION + 输入.sql_str + + ENDSELECT + ENDQUERY + ENDIF + IF 输入.flag = "4" QUERY SELECT diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java index 3222490c5..6086d9859 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/service/impl/TaskServiceImpl.java @@ -13,6 +13,7 @@ import lombok.extern.slf4j.Slf4j; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; +import org.nl.modules.wql.util.SpringContextHolder; import org.nl.modules.wql.util.WqlUtil; import org.nl.wms.basedata.master.service.ClassstandardService; import org.nl.wms.basedata.master.service.dto.ClassstandardDto; @@ -21,6 +22,11 @@ import org.nl.wms.sch.service.RegionService; import org.nl.wms.sch.service.TaskService; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; +import org.springframework.transaction.PlatformTransactionManager; +import org.springframework.transaction.TransactionDefinition; +import org.springframework.transaction.TransactionStatus; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.support.DefaultTransactionDefinition; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; @@ -98,6 +104,7 @@ public class TaskServiceImpl implements TaskService { } @Override + @Transactional(rollbackFor = Exception.class) public void operation(Map map) { String task_id = MapUtil.getStr(map, "task_id"); String method_name = MapUtil.getStr(map, "method_name"); @@ -105,7 +112,6 @@ public class TaskServiceImpl implements TaskService { // 任务处理类 String processing_class = taskObj.getString("handle_class"); String message = ""; - // 根据任务类型获取对应的任务操作类 try { Class clz = Class.forName(processing_class); Object obj = clz.newInstance(); @@ -139,7 +145,7 @@ public class TaskServiceImpl implements TaskService { throw new BadRequestException(message); } catch (Exception e) { e.printStackTrace(); - throw new BadRequestException("任务操作失败!"); + throw new BadRequestException(e.getMessage()); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/util/TranUtil.java b/lms/nladmin-system/src/main/java/org/nl/wms/util/TranUtil.java index 36bc399fc..f03405bbe 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/util/TranUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/util/TranUtil.java @@ -36,7 +36,6 @@ public class TranUtil { try { //创建所有事务集合 Consumer allTransactionConsumer = task -> { - System.out.println(TransactionSynchronizationManager.getCurrentTransactionName()); DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); def.setIsolationLevel(TransactionDefinition.ISOLATION_READ_UNCOMMITTED); From 12cee738cf1a25ba672d3214a5099db5b6e90afd Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Tue, 6 Jun 2023 17:00:09 +0800 Subject: [PATCH 2/3] =?UTF-8?q?rev:=E8=BD=BD=E5=85=B7=E5=8F=B7=E7=BB=B4?= =?UTF-8?q?=E6=8A=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java | 2 +- .../src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java index 5b10a00dd..b89c0fffd 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java @@ -257,7 +257,7 @@ public class CutConveyorTask extends AbstractAcsTask { form.put("point_code1", left_point.getString("point_code")); JSONObject ss_jo = WQLObject.getWQLObject("sch_base_point").query("product_area = '" + left_point.getString("product_area") + "' AND point_type = '7'").uniqueResult(0); form.put("point_code2", ss_jo.getString("point_code")); - form.put("vehiclie_code2", left_point.getString("vehicle_code")); + form.put("vehicle_code2", left_point.getString("vehicle_code")); //分切输送出 form.put("task_type", "010401"); this.createTask(form); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java index 0979d143b..94393e8e8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java @@ -302,7 +302,7 @@ public class CutTrussTask extends AbstractAcsTask { form.put("point_code1", jsonTask.getString("point_code1")); JSONObject ss_jo = WQLObject.getWQLObject("sch_base_point").query("product_area = '" + delivery_point.getString("product_area") + "' AND point_type = '7'").uniqueResult(0); form.put("point_code2", ss_jo.getString("point_code")); - form.put("vehiclie_code2", delivery_point.getString("vehicle_code")); + form.put("vehicle_code2", delivery_point.getString("vehicle_code")); //分切输送出 form.put("task_type", "010401"); cutConveyorTask.createTask(form); From 8e922888f525bd66d684e81ed525c78961cb0afc Mon Sep 17 00:00:00 2001 From: "USER-20220102CG\\noblelift" <546428999@qq.com> Date: Wed, 7 Jun 2023 09:16:02 +0800 Subject: [PATCH 3/3] =?UTF-8?q?fix=20=E4=BC=98=E5=8C=96ndc=E4=BA=A4?= =?UTF-8?q?=E4=BA=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acs/auto/run/TwoNDCSocketConnectionAutoRun.java | 11 ++++++++--- .../acs/ext/wms/service/impl/WmsToAcsServiceImpl.java | 4 ++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java b/acs/nladmin-system/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java index 6ca2e9736..804100ff7 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/auto/run/TwoNDCSocketConnectionAutoRun.java @@ -248,10 +248,15 @@ public class TwoNDCSocketConnectionAutoRun extends AbstractAutoRunnable { } else { device = deviceAppService.findDeviceByCode(Integer.toString(arr[20])); } - if (device.getDeviceDriver() instanceof AgvNdcTwoDeviceDriver) { - agvNdcTwoDeviceDriver = (AgvNdcTwoDeviceDriver) device.getDeviceDriver(); - agvNdcTwoDeviceDriver.processSocket(arr); + if(ObjectUtil.isNotEmpty(device)){ + if (device.getDeviceDriver() instanceof AgvNdcTwoDeviceDriver) { + agvNdcTwoDeviceDriver = (AgvNdcTwoDeviceDriver) device.getDeviceDriver(); + agvNdcTwoDeviceDriver.processSocket(arr); + } + } else { + log.info("当前phase:"+ phase +"未找到对应设备"); } + } if (!ObjectUtil.isEmpty(data)) { write(data); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java index 7aafdf6db..94b9d1233 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java @@ -667,7 +667,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { JSONObject json = new JSONObject(); json.put("task_code", task_code); json.put("ext_task_id", ext_task_id); - json.put("message", "已存在任务id为"+taskDto.getTask_id()+"相同的任务号:" + task_code); + json.put("message", "存在相同的任务号:" + task_code); errArr.add(json); continue; } @@ -677,7 +677,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { JSONObject json = new JSONObject(); json.put("task_code", task_code); json.put("ext_task_id", ext_task_id); - json.put("message", "已存在任务id为"+vehicle_dto.getTask_id()+"托盘号:" + vehicle_code); + json.put("message", "已存在任务编号为"+vehicle_dto.getTask_code()+"托盘号:" + vehicle_code); errArr.add(json); continue; }