diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java index f8c37858a..b2ed125e5 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/controller/PdmBiSubpackagerelationController.java @@ -149,7 +149,7 @@ public class PdmBiSubpackagerelationController { } catch (InterruptedException e) { Thread.currentThread().interrupt(); } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -182,7 +182,7 @@ public class PdmBiSubpackagerelationController { } catch (InterruptedException e) { Thread.currentThread().interrupt(); } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } 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 04c421693..f844ef2ab 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 @@ -152,7 +152,7 @@ public class BstIvtPackageinfoivtServiceImpl extends ServiceImpl() + .eq("is_delete", "0") + .lt("task_status", TaskStatusEnum.FINISHED.getCode())); + if (count>0){ + throw new BadRequestException("当前人工管制点已经存在任务,请勿重复下发"); + } autoSendVehicleToDjq.getPointCode(task,PackageInfoIvtEnum.TASK_TYPE.code("补空(装箱区->待检区)")); dtoList = bstIvtPackageinfoivtMapper.selectList(new LambdaQueryWrapper().eq(BstIvtPackageinfoivt::getPoint_code, whereJson.getString("pointCode").equals("1") ? "ZXQ_135" : "ZXQ_136")); diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteShiftingTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteShiftingTask.java index 6dab09d7c..be575c2cc 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteShiftingTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteShiftingTask.java @@ -103,7 +103,7 @@ public class AutoExecuteShiftingTask { log.info("执行不满足条件的移库任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteWaitTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteWaitTask.java index f7f526ff1..074e2e338 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteWaitTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoExecuteWaitTask.java @@ -138,7 +138,7 @@ public class AutoExecuteWaitTask extends Prun{ log.info("放满与取空桁架任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendDjqToGzq.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendDjqToGzq.java index 9ddc63b46..ad6614893 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendDjqToGzq.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendDjqToGzq.java @@ -93,7 +93,7 @@ public class AutoSendDjqToGzq extends Prun{ log.info("待检区->管制区任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendGzqToDjq.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendGzqToDjq.java index fddcd8189..f404ef633 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendGzqToDjq.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendGzqToDjq.java @@ -114,7 +114,7 @@ public class AutoSendGzqToDjq extends Prun{ log.info("管制区->待检区任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendMzToDjq.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendMzToDjq.java index 704b93bf6..67d4d230e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendMzToDjq.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendMzToDjq.java @@ -150,7 +150,7 @@ public class AutoSendMzToDjq { log.info("满轴->待检区agv自动搬运任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendToZxq.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendToZxq.java index 50ffcf65d..74f5d2d6f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendToZxq.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendToZxq.java @@ -87,7 +87,7 @@ public class AutoSendToZxq extends Prun{ log.info("满轴->待检区agv自动搬运任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToDjq.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToDjq.java index 5f5062fbf..681b7e588 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToDjq.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendVehicleToDjq.java @@ -103,7 +103,7 @@ public class AutoSendVehicleToDjq extends Prun{ log.info("装箱区->待检区或管制区补空载具任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } 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 f961129f2..3c1a4f8d7 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 @@ -108,7 +108,7 @@ public class AutoSendVehicleToKzj { log.info("待检区或管制区->空载具缓存位补空任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java index 4ffa4cdbc..2be75a772 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java @@ -1073,7 +1073,7 @@ public class SlitterServiceImpl implements SlitterService { throw new BadRequestException("系统繁忙,稍后在试!!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -1603,7 +1603,7 @@ public class SlitterServiceImpl implements SlitterService { throw new BadRequestException("系统繁忙,稍后在试!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java index e7e13e9d3..b961fadb6 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java @@ -429,7 +429,7 @@ public class StIvtIostorinvServiceImpl extends ServiceImpl() .eq("point_code1", whereJson.getString("device_code")) - .eq("vehicle_code", whereJson.getString("box_no")) + .eq("vehicle_code", boxNo) .eq("task_type", "010702") .eq("is_delete", "0") .lt("task_status", TaskStatusEnum.FINISHED.getCode())); if (count>0){ - return; + throw new BadRequestException("当前木箱入库任务已存在"+ boxNo); + } + //查询仓库是否存在相同木箱 + JSONArray stIvtStructattr = WQLObject.getWQLObject("st_ivt_structattr").query("storagevehicle_code = '" + boxNo + "'").getResultJSONArray(0); + if (stIvtStructattr!=null && stIvtStructattr.size()>0){ + throw new BadRequestException("当前木箱已经存在库中"+stIvtStructattr.getJSONObject(0).getString("struct_code")); } // 查询木箱信息 BstIvtBoxinfo boxDao = iBstIvtBoxinfoService.getOne( new QueryWrapper().lambda() - .eq(BstIvtBoxinfo::getBox_no, whereJson.getString("box_no")) + .eq(BstIvtBoxinfo::getBox_no, boxNo) ); /* * 找一个木箱区的一个仓位,生成任务并下发 @@ -166,7 +168,7 @@ public class InBoxManageServiceImpl implements InBoxManageService { jsonTaskParam.put("task_type", "010702"); jsonTaskParam.put("start_device_code", whereJson.getString("device_code")); jsonTaskParam.put("next_device_code", jsonAttr.getString("struct_code")); - jsonTaskParam.put("vehicle_code", whereJson.getString("box_no")); + jsonTaskParam.put("vehicle_code", boxNo); jsonTaskParam.put("vehicle_code2", whereJson.getString("vehicle_code")); JSONObject param = new JSONObject(); param.put("containerType", boxDao.getVehicle_type()); @@ -198,7 +200,13 @@ public class InBoxManageServiceImpl implements InBoxManageService { if (layer != split.length) { throw new BadRequestException("扫描的木箱个数和选择的木箱层数不一致!"); } - + Set collect = Arrays.stream(split).collect(Collectors.toSet()); + if (collect.size()!=split.length){ + throw new BadRequestException("扫描的木箱条码不能相同"); + } + if (split.length>3){ + throw new BadRequestException("堆叠木箱最大不能超过3层"); + } // 校验是否有相同木箱号 List strings = Arrays.asList(split); int size = (int) strings.stream() @@ -207,6 +215,13 @@ public class InBoxManageServiceImpl implements InBoxManageService { if (size != split.length) { throw new BadRequestException("木箱号有相同,请重新扫码!"); } + //查询仓库是否存在相同木箱 + for (String boxSn : split) { + JSONArray stIvtStructattr = WQLObject.getWQLObject("st_ivt_structattr").query("storagevehicle_code = '" + boxSn + "'").getResultJSONArray(0); + if (stIvtStructattr!=null && stIvtStructattr.size()>0){ + throw new BadRequestException("当前木箱已经存在库中"+stIvtStructattr.getJSONObject(0).getString("struct_code")); + } + } for (int i = 0; i < split.length; i++) { String boxNO = split[i]; @@ -234,9 +249,8 @@ public class InBoxManageServiceImpl implements InBoxManageService { throw new BadRequestException("请扫码相同规格的木箱进行堆叠入库!"); } } - } - + //如果小木箱入库时没有小托盘时候是否考虑叫大托盘 // 查询木箱信息 BstIvtBoxinfo boxDao = iBstIvtBoxinfoService.getOne( new QueryWrapper().lambda() diff --git a/lms/nladmin-system/src/main/java/org/nl/common/utils/CodeUtil.java b/lms/nladmin-system/src/main/java/org/nl/common/utils/CodeUtil.java index ffbeade1a..b8ed22d97 100644 --- a/lms/nladmin-system/src/main/java/org/nl/common/utils/CodeUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/common/utils/CodeUtil.java @@ -33,7 +33,7 @@ public class CodeUtil { throw new BadRequestException("系统繁忙,稍后在试!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/quartz/config/JobRunner.java b/lms/nladmin-system/src/main/java/org/nl/system/service/quartz/config/JobRunner.java index 1ca5d2249..1041e14d5 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/quartz/config/JobRunner.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/quartz/config/JobRunner.java @@ -17,7 +17,7 @@ import org.springframework.stereotype.Component; import java.util.List; -//@Component +@Component @RequiredArgsConstructor @Order(100) public class JobRunner implements ApplicationRunner { 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 c46bf47f5..ac9fd93ad 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 @@ -944,7 +944,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { } } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -1917,7 +1917,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { result.put("message", "二楼到一楼成品子卷到达一楼输送线任务正在创建被锁住。"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -2160,7 +2160,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return result; } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -2240,7 +2240,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return result; } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -2349,7 +2349,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return result; } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -2403,7 +2403,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { throw new BadRequestException("系统繁忙,请稍后再试!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -2427,7 +2427,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { throw new BadRequestException("系统繁忙,请稍后再试!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } @@ -2458,31 +2458,41 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return param; } + public static void main(String[] args) { + String material_barcode = "123123-1"; + String split = material_barcode.split("-")[0]; + System.out.println(split); + } @Override public JSONObject getBoxInfo(JSONObject param) { String material_barcode = param.getString("material_barcode"); - String vehicle_code = param.getString("vehicle_code"); - //干燥剂模板 - String desiccantTemplate = "6"; - //是否开盖 - String isUncap = "1"; - JSONObject vehicle_info = WQLObject.getWQLObject("md_pb_storagevehicleext").query("storagevehicle_code = '" + material_barcode + "'").uniqueResult(0); - if (ObjectUtil.isEmpty(vehicle_info)) { - vehicle_info = WQLObject.getWQLObject("md_pb_storagevehicleext").query("storagevehicle_code = '" + vehicle_code + "'").uniqueResult(0); - if (ObjectUtil.isEmpty(vehicle_info)){ - throw new BadRequestException("未查询到载具号【" + vehicle_code + "】对应的载具信息!"); - } + if (StringUtils.isEmpty(material_barcode)){ + throw new BadRequestException("material_barcode参数不能为空"); } - material_barcode = vehicle_info.getString("pcsn"); - // 查询木箱信息 - BstIvtBoxinfo boxDao = iBstIvtBoxinfoService.getOne( - new QueryWrapper().lambda() - .eq(BstIvtBoxinfo::getBox_no, material_barcode) - ); - - //获取包装关系 - JSONObject sub_jo = WQLObject.getWQLObject("pdm_bi_subpackagerelation").query("package_box_sn = '" + material_barcode + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(sub_jo)) { + String isUncap = "1"; + String boxOr子卷 = material_barcode.split("-")[0]; + BstIvtBoxinfo boxNo; + String desiccantTemplate = null; + if (boxOr子卷.contains("MX")){ + BstIvtBoxinfo boxDao = iBstIvtBoxinfoService.getOne( + new QueryWrapper().lambda() + .eq(BstIvtBoxinfo::getBox_no, boxOr子卷) + ); + if (boxDao==null){ + throw new BadRequestException("当前木箱码在木箱表不存在"+boxOr子卷); + } + boxNo=boxDao; + }else { + JSONObject sub_jo = WQLObject.getWQLObject("pdm_bi_subpackagerelation") + .query("container_name = '" + boxOr子卷 + "' order by create_time desc").uniqueResult(0); + if (sub_jo==null || StringUtils.isEmpty(sub_jo.getString("package_box_sn"))){ + throw new BadRequestException("当前子卷不存在子卷包装关系"+boxOr子卷); + } + BstIvtBoxinfo boxDao = iBstIvtBoxinfoService.getOne( + new QueryWrapper().lambda() + .eq(BstIvtBoxinfo::getBox_no, sub_jo.getString("package_box_sn")) + ); + boxNo=boxDao; String material_type = sub_jo.getString("material_type"); if (material_type.equals("FG1")) { desiccantTemplate = "6"; @@ -2491,11 +2501,12 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { desiccantTemplate = "4"; } } + //根据木箱高度,判断入库仓位的高度 String height = ""; String heightLevel1 = iSysParamService.findByCode("height_level_1").getValue(); String heightLevel2 = iSysParamService.findByCode("height_level_2").getValue(); - String box_high = boxDao.getBox_high(); + String box_high = boxNo.getBox_high(); if (Integer.parseInt(box_high) <= Integer.parseInt(heightLevel1)) { height = "1"; } else if (Integer.parseInt(box_high) > Integer.parseInt(heightLevel1) && Integer.parseInt(box_high) <= Integer.parseInt(heightLevel2)) { @@ -2504,9 +2515,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { height = "3"; } JSONObject jsonObject = new JSONObject(); - jsonObject.put("boxLength", boxDao.getBox_length()); - jsonObject.put("boxWidth", boxDao.getBox_width()); - jsonObject.put("boxHigh", boxDao.getBox_high()); + jsonObject.put("boxLength", boxNo.getBox_length()); + jsonObject.put("boxWidth", boxNo.getBox_width()); + jsonObject.put("boxHigh", boxNo.getBox_high()); jsonObject.put("desiccantTemplate", desiccantTemplate); jsonObject.put("isUncap", isUncap); jsonObject.put("heightLevel", height); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/ProductInstorServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/ProductInstorServiceImpl.java index a8fcd7631..8e2add9af 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/ProductInstorServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/ProductInstorServiceImpl.java @@ -492,7 +492,7 @@ public class ProductInstorServiceImpl implements ProductInstorService { } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCallEmptyVehicle.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCallEmptyVehicle.java index e8f110ecb..49b8591c8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCallEmptyVehicle.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoCallEmptyVehicle.java @@ -67,7 +67,7 @@ public class AutoCallEmptyVehicle { } } }finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryBillInfo.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryBillInfo.java index 4fe51c90d..b87e250b6 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryBillInfo.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryBillInfo.java @@ -46,7 +46,7 @@ public class AutoQueryBillInfo { System.out.println("AutoQueryBillInfo" + DateUtil.now() + "被锁住!!!!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryStructattrNum.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryStructattrNum.java index 4ed55fc47..e36903aad 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryStructattrNum.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoQueryStructattrNum.java @@ -93,7 +93,7 @@ public class AutoQueryStructattrNum { iSysNoticeService.saveBatch(daoList); } }finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcel.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcel.java index aed3fe96a..bb6a1211f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcel.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcel.java @@ -123,7 +123,7 @@ public class AutoSaveIvtExcel { System.out.println("AutoQueryBillInfo" + DateUtil.now() + "被锁住!!!!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcelTwo.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcelTwo.java index fe59b55e1..c6e72e040 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcelTwo.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSaveIvtExcelTwo.java @@ -118,7 +118,7 @@ public class AutoSaveIvtExcelTwo { System.out.println("AutoQueryBillInfo" + DateUtil.now() + "被锁住!!!!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendFeiShu.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendFeiShu.java index 13ffe7644..72a3375f1 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendFeiShu.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendFeiShu.java @@ -42,7 +42,7 @@ public class AutoSendFeiShu { this.sendInfo(resend_rows); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendIvtExcel.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendIvtExcel.java index ab01616b0..2438f8bd0 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendIvtExcel.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendIvtExcel.java @@ -169,7 +169,7 @@ public class AutoSendIvtExcel { System.out.println("AutoQueryBillInfo" + DateUtil.now() + "被锁住!!!!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendSalesIvt.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendSalesIvt.java index cef67884b..5b669f7e3 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendSalesIvt.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/manage/AutoSendSalesIvt.java @@ -91,7 +91,7 @@ public class AutoSendSalesIvt { System.out.println("AutoSendSalesIvt" + DateUtil.now() + "被锁住!!!!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } 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 65bdc0158..914765361 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 @@ -122,7 +122,7 @@ public class TaskServiceImpl implements TaskService { public void operation(Map map) { String task_id = MapUtil.getStr(map, "task_id"); RLock lock = redissonClient.getLock(task_id); - boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS); + boolean tryLock = lock.tryLock(0,20, TimeUnit.SECONDS); try { if (tryLock) { String method_name = MapUtil.getStr(map, "method_name"); @@ -188,7 +188,7 @@ public class TaskServiceImpl implements TaskService { throw new BadRequestException("任务标识为:" + task_id + "的任务正在操作中!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java index 347efa3a2..debaae6a7 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java @@ -782,7 +782,7 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { throw new BadRequestException("其他入库单当前正在分配货位,请等待几秒再进行操作!"); } } finally { - if (tryLock) { + if (lock.isLocked() && lock.isHeldByCurrentThread()) { lock.unlock(); } }