diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpVehicleTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpVehicleTask.java index 4c08df5..083fcd1 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpVehicleTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CallEmpVehicleTask.java @@ -206,6 +206,9 @@ public class CallEmpVehicleTask extends AbstractAcsTask { if (ObjectUtil.isEmpty(deviceDto)) throw new BadRequestException("此设备不存在"); JSONObject jsonOrder = orderTab.query("device_id = '" + deviceDto.getDevice_id() + "' and order_status = '02' and is_delete = '0'").uniqueResult(0); if (ObjectUtil.isEmpty(jsonOrder)) throw new BadRequestException("此设备未在生产中或不存在"); + + //当前设备所需要的载具类型 + String vehicle_type=jsonOrder.getString("vehicle_type"); /* * 空托盘出库任务: * 1.叠盘架B区、养生A区 --> 共挤线 (优先级:1叠盘架B区 2养生A区) @@ -214,6 +217,14 @@ public class CallEmpVehicleTask extends AbstractAcsTask { String point_code1 = ""; JSONObject map = new JSONObject(); if (StrUtil.equals(jsonRegionEnd.getString("region_code"),RegionTypeEnum.GJQY.getCode())) { + + //1、判断叠盘架B是否有对应类型的空载具 + JSONObject jsonDpjB = pointTab.query("point_status ='2' and lock_type='00' and can_vehicle_type = '" + vehicle_type + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(jsonDpjB)){//没有则去空托盘缓存区B和养生A区找 + + } + + // 共挤线呼叫空托盘业务:查找叠盘架B区是否有满足条件的点位 map.put("flag", "1"); map.put("vehicle_qty", vehicle_qty); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/wql/ST_VEHICLE_OUT_02.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/wql/ST_VEHICLE_OUT_02.wql new file mode 100644 index 0000000..c49d544 --- /dev/null +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/wql/ST_VEHICLE_OUT_02.wql @@ -0,0 +1,114 @@ +[交易说明] + 交易名: 空载具出库业务 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.vehicle_qty TYPEAS s_string + 输入.vehicle_type TYPEAS s_string + 输入.region_code TYPEAS s_string + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + QUERY + SELECT + point.* + FROM + sch_base_point point + LEFT JOIN SCH_BASE_Region region ON point.region_id = region.region_id + WHERE + point.lock_type = '00' + AND point.point_status = '01' + AND IFNULL(point.vehicle_qty,0) >= 输入.vehicle_qty + + OPTION 输入.region_code <> "" + region.region_code = 输入.region_code + ENDOPTION + + OPTION 输入.vehicle_type <> "" + point.vehicle_type = 输入.vehicle_type + ENDOPTION + + order by point.vehicle_qty ASC + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "3" + QUERY + SELECT + point.* + FROM + sch_base_point point + LEFT JOIN SCH_BASE_Region region ON point.region_id = region.region_id + WHERE + point.lock_type = '00' + AND point.point_status = '01' + AND IFNULL(point.vehicle_qty,0) == 输入.vehicle_qty + + OPTION 输入.region_code <> "" + region.region_code = 输入.region_code + ENDOPTION + + OPTION 输入.vehicle_type <> "" + point.vehicle_type = 输入.vehicle_type + ENDOPTION + + order by point.point_code DESC + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "2" + QUERY + SELECT + point.* + FROM + sch_base_point point + LEFT JOIN SCH_BASE_Region region ON point.region_id = region.region_id + WHERE + point.lock_type = '00' + AND point.point_status = '00' + + OPTION 输入.region_code <> "" + region.region_code = 输入.region_code + ENDOPTION + + order by point.point_code DESC + + ENDSELECT + ENDQUERY + ENDIF diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch.xls b/lms/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch.xls index 3ca90f6..f82a09d 100644 Binary files a/lms/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch.xls and b/lms/nladmin-system/src/main/java/org/nl/wms/sch/wql/sch.xls differ