diff --git a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/stor_manage/struct/controller/StIvtStructattrController.java b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/stor_manage/struct/controller/StIvtStructattrController.java index 747a9e56..b5f6c9b9 100644 --- a/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/stor_manage/struct/controller/StIvtStructattrController.java +++ b/wms_pro/hd/nladmin-system/src/main/java/org/nl/wms/stor_manage/struct/controller/StIvtStructattrController.java @@ -205,14 +205,17 @@ public class StIvtStructattrController { public ResponseEntity unlock(@RequestBody JSONObject form) { String vehicleCode = form.getString("vehicle_code"); StIvtStructattr struct = iStIvtStructattrService.getOne(new LambdaQueryWrapper().eq(StIvtStructattr::getVehicle_code, vehicleCode)); - if (struct.getLock_type().equals(StatusEnum.LOCK.code("禁分配锁"))) { + if (struct.getLock_type().equals(StatusEnum.LOCK.code("禁分配锁"))||struct.getLock_type().equals(StatusEnum.LOCK.code("技改锁"))||!struct.getIs_used()) { String originalCode = struct.getStruct_code(); // "L03-26-41" String parentCode = originalCode.substring(0, originalCode.lastIndexOf("-")); vehicleCode = "L02-03,L02-04,L02-05,L02-05"; QueryWrapper query1 = new QueryWrapper() .likeRight("struct_code", parentCode) .isNotNull("vehicle_code") - .eq("lock_type", StatusEnum.LOCK.code("禁分配锁")); + .and(wrapper -> wrapper.eq("lock_type", StatusEnum.LOCK.code("禁分配锁")) + .or() + .eq("lock_type", StatusEnum.LOCK.code("技改锁")) .or() + .eq("is_used", "0")); List list = iStIvtStructattrService.list(query1); List structCodes = list.stream() .map(StIvtStructattr::getStruct_code)