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 6c742f2fd..d92d81194 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 @@ -399,7 +399,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { if (ObjectUtil.isEmpty(point_jo)) { throw new BadRequestException("未查询到相同销售订单的放货区点位或空的一排!"); } else { - JSONObject jsonNewRow = WQLObject.getWQLObject("sch_base_point").query("row_num = '" + point_jo.getString("row_num") + "' AND point_type ='9' AND is_delete = '0' order by out_order_seq ASC").uniqueResult(0); + JSONObject jsonNewRow = WQLObject.getWQLObject("sch_base_point").query("row_num = '" + point_jo.getString("row_num") + "' AND point_type ='9' AND is_delete = '0' and lock_type = '1' order by out_order_seq ASC").uniqueResult(0); point_code = jsonNewRow.getString("point_code"); } } else { @@ -430,7 +430,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { if (ObjectUtil.isEmpty(point_jo)) { throw new BadRequestException("未查询到相同销售订单的放货区点位或空的一排!"); } else { - JSONObject jsonNewRow = WQLObject.getWQLObject("sch_base_point").query("row_num = '" + point_jo.getString("row_num") + "' AND point_type ='9' AND is_delete = '0' order by out_order_seq ASC").uniqueResult(0); + JSONObject jsonNewRow = WQLObject.getWQLObject("sch_base_point").query("row_num = '" + point_jo.getString("row_num") + "' AND point_type ='9' AND is_delete = '0' and lock_type = '1' order by out_order_seq ASC").uniqueResult(0); point_code = jsonNewRow.getString("point_code"); } } @@ -443,6 +443,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { task_jo.put("task_type", "010506"); SendOutTask sendOutTask = new SendOutTask(); sendOutTask.createTask(task_jo); + + // 锁住点位 + JSONObject jsonPoint = WQLObject.getWQLObject("sch_base_point").query("point_code = '" + point_code + "'").uniqueResult(0); + jsonPoint.put("lock_type", "99"); + WQLObject.getWQLObject("sch_base_point").update(jsonPoint); } result.put("status", HttpStatus.OK.value()); result.put("message", "下发成功!"); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java index 6bb9b85b5..c5ae64ea0 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java @@ -70,6 +70,10 @@ public class SendOutTask extends AbstractAcsTask { jsonTask.put("is_delete","1"); jsonTask.put("update_time", DateUtil.now()); taskTab.update(jsonTask); + + JSONObject jsonPoint2 = pointTab.query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0); + jsonPoint2.put("lock_type", "1"); + pointTab.update(jsonPoint2); } if (TaskStatusEnum.EXECUTING.getCode().equals(status)) { @@ -94,6 +98,7 @@ public class SendOutTask extends AbstractAcsTask { // 更新暂存区点位状态 JSONObject jsonPoint2 = WQLObject.getWQLObject("sch_base_point").query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0); jsonPoint2.put("point_status", "2"); + jsonPoint2.put("lock_type", "1"); jsonPoint2.put("vehicle_code", jsonTask.getString("vehicle_code")); pointTab.update(jsonPoint2); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql index 136694a51..5e5194ffd 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql @@ -70,6 +70,8 @@ IFNULL( po.vehicle_code, '' ) = '' AND po.point_type = '9' + AND + po.lock_type = '1' OPTION 输入.row_num <> "" po.row_num = 输入.row_num ENDOPTION