diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.java index 0aaafca03..57a11a602 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.java @@ -36,4 +36,5 @@ public interface BstIvtPackageinfoivtMapper extends BaseMapper getTaskList(Set pointCodes1, Set pointCodes2, Set pointCodes3, Set pointCodes4); List selectNoTaskPoint(@Param("pointStatus") String pointStatus, @Param("ivtStatus")String ivtStatus); + List selectNoTargetTaskPoint(@Param("pointStatus") String pointStatus, @Param("ivtStatus")String ivtStatus); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.xml index 0641b191c..699c3b2c9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/dao/mapper/BstIvtPackageinfoivtMapper.xml @@ -91,5 +91,15 @@ AND t.is_delete = '0') + + diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/IbstIvtPackageinfoivtService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/IbstIvtPackageinfoivtService.java index 668b69266..6ab32e846 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/IbstIvtPackageinfoivtService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/IbstIvtPackageinfoivtService.java @@ -115,6 +115,7 @@ public interface IbstIvtPackageinfoivtService extends IService selectEmpPoints(String point_status,String ivt_status); + List selectNoTargetTaskPoints(String point_status,String ivt_status); diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/impl/BstIvtPackageinfoivtServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/impl/BstIvtPackageinfoivtServiceImpl.java index 4aded32fc..521ab4c6c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/impl/BstIvtPackageinfoivtServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/point/service/impl/BstIvtPackageinfoivtServiceImpl.java @@ -1213,5 +1213,13 @@ public class BstIvtPackageinfoivtServiceImpl extends ServiceImpl selectNoTargetTaskPoints(String point_status, String ivt_status) { + if (StringUtils.isEmpty(point_status)||StringUtils.isEmpty(ivt_status)){ + throw new BadRequestException("点位类型或状态不能为空"); + } + return this.baseMapper.selectNoTargetTaskPoint(point_status, ivt_status); + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/DjqToKzjhcwTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/DjqToKzjhcwTask.java index 6a9ee3f4e..48fd9d20b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/DjqToKzjhcwTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/DjqToKzjhcwTask.java @@ -106,26 +106,6 @@ public class DjqToKzjhcwTask extends AbstractAcsTask { packageinfoivtService.update(null, new UpdateWrapper().set("update_time", now).set("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("空载具")).eq("point_code", schBaseTask.getPoint_code2())); //3.更改任务状态为完成 updateWrapper.set(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()); - //4.更新并清除预分配位 - exchangeTaskPoint(schBaseTask); - updateWrapper.set(SchBaseTask::getPoint_code4, ""); - //5.判断是否存在任务组任务 - packageinfoivtService.handleGroupTask(schBaseTask); - //6.待检区或管制区搬运空载具到空载具缓存位完毕,判断是否存在确定终点的空载具缓存位->输送线任务,存在就下发任务 - // List taskList = taskService.list(new LambdaQueryWrapper() - // //确定终点未下发 - // .eq(SchBaseTask::getTask_status, TaskStatusEnum.SURE_END.getCode()) - // .eq(SchBaseTask::getPoint_code2, "NBJ1002") - // .eq(SchBaseTask::getTask_type, PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)")).eq(SchBaseTask::getIs_delete, IOSEnum.IS_NOTANDYES.code("否")) - // ); - // if (ObjectUtils.isNotEmpty(taskList)) { - // SchBaseTask task = taskList.get(0); - // task.setPoint_code1(schBaseTask.getPoint_code2()); - // task.setTask_status(TaskStatusEnum.START_AND_POINT.getCode()); - // taskService.update(task); - // //任务下发 - // ssxDjwTask.immediateNotifyAcs(task.getTask_id().toString()); - // } } // 取消 if (status.equals(IOSEnum.IS_NOTANDYES.code("否"))) { diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java index 9e36dcf4f..7f7baffb7 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToKzj.java @@ -87,7 +87,7 @@ public class AutoSendVehicleToKzj extends Prun{ task.put("task_type", PackageInfoIvtEnum.TASK_TYPE.code("补空(待检区->空载具缓存位)")); task.put("vehicle_code2", PackageInfoIvtEnum.AGV_ACTION_TYPE.code("放货二次分配")); task.put("point_code1", vehiclePoints.get(0).getPoint_code()); - task.put("point_code2", packageinfoivtService.getWaitPoint(vehiclePoints.get(0).getBlock(), vehiclePoints.get(0).getWait_point_type())); + task.put("point_code2", packageinfoivtService.getWaitPoint(empPoints.get(0).getBlock(), empPoints.get(0).getWait_point_type())); //预占用点位 task.put("point_code3", empPoints.get(0).getPoint_code()); djqToKzjhcwTask.createTask(task); diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java index 5daa7876a..553d0cae8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java @@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.nl.b_lms.sch.point.dao.SchBasePoint; import org.nl.b_lms.sch.point.service.IschBasePointService; import org.nl.b_lms.sch.task.dao.SchBaseTask; @@ -719,6 +720,11 @@ public class InBoxManageServiceImpl implements InBoxManageService { jsonParam.put("row_num", row_num); JSONObject jsonAttr = queryStruct(jsonParam); + // 如果是移库空并且仓位为空则报错 + if (ObjectUtil.isNotEmpty(block_num) && ObjectUtil.isEmpty(jsonAttr)) { + throw new BadRequestException("转库任务巷道"+block_num+"仓位不足!"); + } + // 为空则新找巷道 if (ObjectUtil.isEmpty(jsonAttr)) { @@ -758,6 +764,51 @@ public class InBoxManageServiceImpl implements InBoxManageService { return jsonAttr; } + /** + * 同巷道移库查看库位 + * @param jsonParam + * @return + */ + public JSONObject getMoveStruct(JSONObject jsonParam) { + // 仓位表 + WQLObject attrTab = WQLObject.getWQLObject("st_ivt_structattr"); + /* + * 判断是否有仓位 + * 判断条件:库区、仓库、是否启用、是否删除、未锁定、没有载具 + */ + String block_num = jsonParam.getString("move_block_num"); + if (StringUtils.isEmpty(block_num)){ + throw new BadRequestException("同巷道分配库位巷道参数不能为空"); + } + JSONArray structArray = attrTab.query("IFNULL(storagevehicle_code,'') = '' " + + "AND is_used = '" + IOSEnum.IS_NOTANDYES.code("是") + "' AND is_delete = '" + IOSEnum.IS_NOTANDYES.code("否") + "' " + + "AND storagevehicle_type = '" + jsonParam.getString("vehicle_type") + "'" + + "AND height = '" + jsonParam.getString("height") + "'" + + "AND lock_type = '" + IOSEnum.LOCK_TYPE.code("未锁定") + "' AND stor_id = '" + jsonParam.getString("stor_id") + "' " + + "AND sect_id = '" + jsonParam.getString("sect_id") + "' AND block_num = '" + block_num + "'").getResultJSONArray(0); + if (ObjectUtil.isEmpty(structArray)) { + notInRowList.clear(); + notInBlockList.clear(); + throw new BadRequestException("仓位不足!"); + } + // 确定排:查看每排的木箱数量,找到数量最小的那排 + jsonParam.put("block_num", block_num); + String row_num = getMinRow(jsonParam); + + // 确定仓位: 找到仓位 + jsonParam.put("row_num", row_num); + JSONObject jsonAttr = queryStruct(jsonParam); + + // 为空则新找巷道 + if (ObjectUtil.isEmpty(jsonAttr)) { + throw new BadRequestException("当前巷道"+block_num+"没有可用库位"); + } + + notInRowList.clear(); + notInBlockList.clear(); + return jsonAttr; + } + /** * 确定巷道 * 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 0c316fe51..0e426b7be 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 @@ -1870,7 +1870,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return result; } List empPoints = packageinfoivtService - .selectEmpPoints(PackageInfoIvtEnum.POINT_STATUS.code("空载具缓存位"), PackageInfoIvtEnum.IVT_STATUS.code("空载具")); + .selectNoTargetTaskPoints(PackageInfoIvtEnum.POINT_STATUS.code("空载具缓存位"), PackageInfoIvtEnum.IVT_STATUS.code("空载具")); if (CollectionUtils.isEmpty(empPoints)){ result.put("message", "空轴位无可用位置"); return result; diff --git a/lms/nladmin-system/src/main/resources/config/application.yml b/lms/nladmin-system/src/main/resources/config/application.yml index a435e1108..a9fc87884 100644 --- a/lms/nladmin-system/src/main/resources/config/application.yml +++ b/lms/nladmin-system/src/main/resources/config/application.yml @@ -6,7 +6,7 @@ spring: freemarker: check-template-location: false profiles: - active: dev + active: prod jackson: time-zone: GMT+8 data: diff --git a/lms/nladmin-ui/.env.development b/lms/nladmin-ui/.env.development index 13c9fc5ce..79da18d26 100644 --- a/lms/nladmin-ui/.env.development +++ b/lms/nladmin-ui/.env.development @@ -1,8 +1,8 @@ ENV = 'development' # 接口地址 -VUE_APP_BASE_API = 'http://10.1.3.91:8013' -VUE_APP_WS_API = 'ws://10.1.3.91:8013' +VUE_APP_BASE_API = 'http://127.0.0.1:8013' +VUE_APP_WS_API = 'ws://127.0.0.1:8013' # 是否启用 babel-plugin-dynamic-import-node插件 VUE_CLI_BABEL_TRANSPILE_MODULES = true