|  |  | @ -284,13 +284,13 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         //重复判断
 |  |  |  |         //重复判断
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (StrUtil.isNotEmpty(addEnterCodeRequest.getOriginCode())) { |  |  |  |         if (StrUtil.isNotEmpty(addEnterCodeRequest.getOriginCode())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |             BaseResponse baseResponse = codeTempService.checkRedundant(addEnterCodeRequest,newCode,originCode); |  |  |  |             BaseResponse baseResponse = codeTempService.checkRedundant(addEnterCodeRequest, newCode, originCode); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |             if (baseResponse.getCode() != 20000){ |  |  |  |             if (baseResponse.getCode() != 20000) { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                 return baseResponse; |  |  |  |                 return baseResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         BaseResponse checkFormatResponse = codeTempService.checkFormat(code,originCode); |  |  |  |         BaseResponse checkFormatResponse = codeTempService.checkFormat(code, originCode); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         if (checkFormatResponse.getCode() != 20000){ |  |  |  |         if (checkFormatResponse.getCode() != 20000) { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             return checkFormatResponse; |  |  |  |             return checkFormatResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         UdiEntity udiEntity = (UdiEntity) checkFormatResponse.getData(); |  |  |  |         UdiEntity udiEntity = (UdiEntity) checkFormatResponse.getData(); | 
			
		
	
	
		
		
			
				
					|  |  | @ -311,7 +311,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 code = code + "\u001D"; |  |  |  |                 code = code + "\u001D"; | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         BaseResponse baseResponse = codeTempService.checkCode(udiEntity,code,checkUdi,newCode); |  |  |  |         BaseResponse baseResponse = codeTempService.checkCode(udiEntity, code, checkUdi, newCode); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         return baseResponse; |  |  |  |         return baseResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -477,7 +477,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |                     } |  |  |  |                     } | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |             } else { |  |  |  |             } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 baseResponse = addMaterOrder(addOrderRequest, udiEntity, code,groupNumber); |  |  |  |                 baseResponse = addMaterOrder(addOrderRequest, udiEntity, code, groupNumber); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (baseResponse.getCode() == 20000) { |  |  |  |             if (baseResponse.getCode() == 20000) { | 
			
		
	
	
		
		
			
				
					|  |  | @ -499,8 +499,6 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     //前端扫码提交(耗材器械)
 |  |  |  |     //前端扫码提交(耗材器械)
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     @RepeatSubmit() |  |  |  |     @RepeatSubmit() | 
			
		
	
		
		
			
				
					
					|  |  |  |     @AuthRuleAnnotation("") |  |  |  |     @AuthRuleAnnotation("") | 
			
		
	
	
		
		
			
				
					|  |  | @ -546,7 +544,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (IntUtil.value(udiEntity.getProductType()) == 2) { |  |  |  |         if (IntUtil.value(udiEntity.getProductType()) == 2) { | 
			
		
	
		
		
			
				
					
					|  |  |  |             return addDrugOrder(addOrderRequest, udiEntity, code, groupNumber); |  |  |  |             return addDrugOrder(addOrderRequest, udiEntity, code, groupNumber); | 
			
		
	
		
		
			
				
					
					|  |  |  |         } else { |  |  |  |         } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |             return addMaterOrder(addOrderRequest, udiEntity, code,groupNumber); |  |  |  |             return addMaterOrder(addOrderRequest, udiEntity, code, groupNumber); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -556,7 +554,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |     IoSplitCodeService splitCodeService; |  |  |  |     IoSplitCodeService splitCodeService; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     @Transactional(rollbackFor = Exception.class) |  |  |  |     @Transactional(rollbackFor = Exception.class) | 
			
		
	
		
		
			
				
					
					|  |  |  |     public BaseResponse addMaterOrder(AddOrderRequest addOrderRequest, UdiEntity udiEntity, String code,Integer groupNumber) { |  |  |  |     public BaseResponse addMaterOrder(AddOrderRequest addOrderRequest, UdiEntity udiEntity, String code, Integer groupNumber) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         AddCodeResult addCodeResult = new AddCodeResult(); |  |  |  |         AddCodeResult addCodeResult = new AddCodeResult(); | 
			
		
	
		
		
			
				
					
					|  |  |  |         BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(addOrderRequest.getAction()); |  |  |  |         BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(addOrderRequest.getAction()); | 
			
		
	
	
		
		
			
				
					|  |  | @ -909,7 +907,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 //匹配biz
 |  |  |  |                 //匹配biz
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 IoOrderDetailCodeEntity byRelId = ioOrderDetailCodeService.findByRelNameCode(addOrderRequest.getBillNo(), udiEntity.getUdi(), udiEntity.getBatchNo()); |  |  |  |                 IoOrderDetailCodeEntity byRelId = ioOrderDetailCodeService.findByRelNameCode(addOrderRequest.getBillNo(), udiEntity.getUdi(), udiEntity.getBatchNo()); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (byRelId!=null){ |  |  |  |                 if (byRelId != null) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                     exitLocalEntity.setBizId(byRelId.getId()); |  |  |  |                     exitLocalEntity.setBizId(byRelId.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -985,16 +983,16 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |             IoOrderEntity byBillNo = orderService.findByBillNo(orderId); |  |  |  |             IoOrderEntity byBillNo = orderService.findByBillNo(orderId); | 
			
		
	
		
		
			
				
					
					|  |  |  |             String queueCode = ""; |  |  |  |             String queueCode = ""; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT) || bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_RETURN)){ |  |  |  |             if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT) || bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_RETURN)) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                 if (StrUtil.isBlank(addOrderRequest.getWorkPlaceQueueCode())){ |  |  |  |                 if (StrUtil.isBlank(addOrderRequest.getWorkPlaceQueueCode())) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                     if (byBillNo != null && !StrUtil.isBlank(byBillNo.getWorkPlaceQueueCode())){ |  |  |  |                     if (byBillNo != null && !StrUtil.isBlank(byBillNo.getWorkPlaceQueueCode())) { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                         queueCode = byBillNo.getWorkPlaceQueueCode(); |  |  |  |                         queueCode = byBillNo.getWorkPlaceQueueCode(); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     } else { |  |  |  |                     } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |                         // userId 没有什么用 设置为1 问题不大 避免空指针
 |  |  |  |                         // userId 没有什么用 设置为1 问题不大 避免空指针
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                         queueCode =  ioSplitFifoInvService.setQueueCode(addOrderRequest.getWorkPlaceCode(),1+"",udiRelevanceResponse1.getRelId()); |  |  |  |                         queueCode = ioSplitFifoInvService.setQueueCode(addOrderRequest.getWorkPlaceCode(), 1 + "", udiRelevanceResponse1.getRelId()); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                         addCodeResult.setQueueCode(queueCode); |  |  |  |                         addCodeResult.setQueueCode(queueCode); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     } |  |  |  |                     } | 
			
		
	
		
		
			
				
					
					|  |  |  |                 }else { |  |  |  |                 } else { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                     queueCode = addOrderRequest.getWorkPlaceQueueCode(); |  |  |  |                     queueCode = addOrderRequest.getWorkPlaceQueueCode(); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
	
		
		
			
				
					|  |  | @ -1053,9 +1051,9 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 //计算实际数量
 |  |  |  |                 //计算实际数量
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (addOrderRequest.getScanActCount() != null){ |  |  |  |                 if (addOrderRequest.getScanActCount() != null) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                     codeEnttity.setReCount(addOrderRequest.getScanActCount()); |  |  |  |                     codeEnttity.setReCount(addOrderRequest.getScanActCount()); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 }else { |  |  |  |                 } else { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                     if (bussinessTypeEntity.isUse()) { |  |  |  |                     if (bussinessTypeEntity.isUse()) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                         codeEnttity.setReCount(IntUtil.value(codeEnttity.getMyReCount()) + udiCalCountUtil.getUseActCount(udiRelevanceResponse)); |  |  |  |                         codeEnttity.setReCount(IntUtil.value(codeEnttity.getMyReCount()) + udiCalCountUtil.getUseActCount(udiRelevanceResponse)); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     } else { |  |  |  |                     } else { | 
			
		
	
	
		
		
			
				
					|  |  | @ -1259,32 +1257,32 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |         //过期提醒:
 |  |  |  |         //过期提醒:
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(addOrderRequest.getAction()); |  |  |  |         BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(addOrderRequest.getAction()); | 
			
		
	
		
		
			
				
					
					|  |  |  |         int checkExpire = IntUtil.value(bussinessTypeEntity.getCheckExpire()); |  |  |  |         int checkExpire = IntUtil.value(bussinessTypeEntity.getCheckExpire()); | 
			
		
	
		
		
			
				
					
					|  |  |  |         BaseResponse response = checkExpireDate(checkExpire,udiEntity,addOrderRequest); |  |  |  |         BaseResponse response = checkExpireDate(checkExpire, udiEntity, addOrderRequest); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         if (response.getCode() != 20000){ |  |  |  |         if (response.getCode() != 20000) { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             return response; |  |  |  |             return response; | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         //判断层级标识是否正确
 |  |  |  |         //判断层级标识是否正确
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (bussinessTypeEntity.isUse()) { |  |  |  |         if (bussinessTypeEntity.isUse()) { | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (!isPackLevelValid(udiRelevanceResponse.getUseMaxLevel(),IntUtil.value(udiRelevanceResponse.getPackLevel()), udiRelevanceResponse.getUseLevel())) { |  |  |  |             if (!isPackLevelValid(udiRelevanceResponse.getUseMaxLevel(), IntUtil.value(udiRelevanceResponse.getPackLevel()), udiRelevanceResponse.getUseLevel())) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                 return ResultVOUtils.error(500, "当前产品不支持采集该包装层级追溯码!"); |  |  |  |                 return ResultVOUtils.error(500, "当前产品不支持采集该包装层级追溯码!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         }else { |  |  |  |         } else { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |             if (!isPackLevelValid(udiRelevanceResponse.getDistributeMaxLevel(),IntUtil.value(udiRelevanceResponse.getPackLevel()), udiRelevanceResponse.getDistributeLevel())) { |  |  |  |             if (!isPackLevelValid(udiRelevanceResponse.getDistributeMaxLevel(), IntUtil.value(udiRelevanceResponse.getPackLevel()), udiRelevanceResponse.getDistributeLevel())) { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                 return ResultVOUtils.error(500, "当前产品不支持采集该包装层级追溯码!"); |  |  |  |                 return ResultVOUtils.error(500, "当前产品不支持采集该包装层级追溯码!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         //近效期提醒
 |  |  |  |         //近效期提醒
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         BaseResponse checkResponse = checkIsExpired(udiRelevanceResponse,udiEntity,addOrderRequest,bussinessTypeEntity); |  |  |  |         BaseResponse checkResponse = checkIsExpired(udiRelevanceResponse, udiEntity, addOrderRequest, bussinessTypeEntity); | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         if (checkResponse.getCode() == 505){ |  |  |  |         if (checkResponse.getCode() == 505) { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             return checkResponse; |  |  |  |             return checkResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         //------工位上货相关-----校验工位存量是否存在----
 |  |  |  |         //------工位上货相关-----校验工位存量是否存在----
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         BaseResponse handleSplitOutAndSplitReturnResponse = handleSplitOutAndSplitReturn(code, udiEntity, bussinessTypeEntity); |  |  |  |         BaseResponse handleSplitOutAndSplitReturnResponse = handleSplitOutAndSplitReturn(code, udiEntity, bussinessTypeEntity); | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (handleSplitOutAndSplitReturnResponse.getCode() != 20000){ |  |  |  |         if (handleSplitOutAndSplitReturnResponse.getCode() != 20000) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             return handleSplitOutAndSplitReturnResponse; |  |  |  |             return handleSplitOutAndSplitReturnResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -1340,7 +1338,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 //匹配biz
 |  |  |  |                 //匹配biz
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 IoOrderDetailCodeEntity byRelId = ioOrderDetailCodeService.findByRelNameCode(addOrderRequest.getBillNo(), udiEntity.getUdi(), udiEntity.getBatchNo()); |  |  |  |                 IoOrderDetailCodeEntity byRelId = ioOrderDetailCodeService.findByRelNameCode(addOrderRequest.getBillNo(), udiEntity.getUdi(), udiEntity.getBatchNo()); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (byRelId!=null){ |  |  |  |                 if (byRelId != null) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                     exitLocalEntity.setBizId(byRelId.getId()); |  |  |  |                     exitLocalEntity.setBizId(byRelId.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -1420,16 +1418,16 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |             // 只要是一单的话就用同一个 虚拟槽位   加载orderQueueCode !!!!
 |  |  |  |             // 只要是一单的话就用同一个 虚拟槽位   加载orderQueueCode !!!!
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             IoOrderEntity byBillNo = orderService.findByBillNo(orderId); |  |  |  |             IoOrderEntity byBillNo = orderService.findByBillNo(orderId); | 
			
		
	
		
		
			
				
					
					|  |  |  |             String queueCode = ""; |  |  |  |             String queueCode = ""; | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT) || bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_RETURN)){ |  |  |  |             if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT) || bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_RETURN)) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                 if (StrUtil.isBlank(addOrderRequest.getWorkPlaceQueueCode())){ |  |  |  |                 if (StrUtil.isBlank(addOrderRequest.getWorkPlaceQueueCode())) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                     if (byBillNo != null && !StrUtil.isBlank(byBillNo.getWorkPlaceQueueCode())){ |  |  |  |                     if (byBillNo != null && !StrUtil.isBlank(byBillNo.getWorkPlaceQueueCode())) { | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                         queueCode = byBillNo.getWorkPlaceQueueCode(); |  |  |  |                         queueCode = byBillNo.getWorkPlaceQueueCode(); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     } else { |  |  |  |                     } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |                         // userId 没有什么用 设置为1 问题不大 避免空指针
 |  |  |  |                         // userId 没有什么用 设置为1 问题不大 避免空指针
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                         queueCode =  ioSplitFifoInvService.setQueueCode(addOrderRequest.getWorkPlaceCode(),1+"",udiRelevanceResponse1.getRelId()); |  |  |  |                         queueCode = ioSplitFifoInvService.setQueueCode(addOrderRequest.getWorkPlaceCode(), 1 + "", udiRelevanceResponse1.getRelId()); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                         addCodeResult.setQueueCode(queueCode); |  |  |  |                         addCodeResult.setQueueCode(queueCode); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     } |  |  |  |                     } | 
			
		
	
		
		
			
				
					
					|  |  |  |                 }else { |  |  |  |                 } else { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                     queueCode = addOrderRequest.getWorkPlaceQueueCode(); |  |  |  |                     queueCode = addOrderRequest.getWorkPlaceQueueCode(); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 } |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
	
		
		
			
				
					|  |  | @ -1461,7 +1459,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             //匹配biz
 |  |  |  |             //匹配biz
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             IoOrderDetailCodeEntity byRelId = ioOrderDetailCodeService.findByRelNameCode(addOrderRequest.getBillNo(), udiEntity.getUdi(), udiEntity.getBatchNo()); |  |  |  |             IoOrderDetailCodeEntity byRelId = ioOrderDetailCodeService.findByRelNameCode(addOrderRequest.getBillNo(), udiEntity.getUdi(), udiEntity.getBatchNo()); | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (byRelId!=null){ |  |  |  |             if (byRelId != null) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                 codeEnttity.setBizId(byRelId.getId()); |  |  |  |                 codeEnttity.setBizId(byRelId.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -1578,7 +1576,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 // 判断货位里面是否有相同产品
 |  |  |  |                 // 判断货位里面是否有相同产品
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                 if (orderEntity != null && StrUtil.isNotEmpty(orderEntity.getWorkPlaceQueueCode())) { |  |  |  |                 if (orderEntity != null && StrUtil.isNotEmpty(orderEntity.getWorkPlaceQueueCode())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                     SysWorkplace sysWorkplace = sysWorkplaceService.getOne(new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getWorkplaceId, addOrderRequest.getWorkPlaceCode())); |  |  |  |                     SysWorkplace sysWorkplace = sysWorkplaceService.getOne(new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getWorkplaceId, addOrderRequest.getWorkPlaceCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     if (sysWorkplace.getQueueStatus() == 1){ |  |  |  |                     if (sysWorkplace.getQueueStatus() == 1) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                         SysWorkplaceQueue workplaceQueue = sysWorkplaceQueueService.getOne(new LambdaQueryWrapper<SysWorkplaceQueue>() |  |  |  |                         SysWorkplaceQueue workplaceQueue = sysWorkplaceQueueService.getOne(new LambdaQueryWrapper<SysWorkplaceQueue>() | 
			
		
	
		
		
			
				
					
					|  |  |  |                                 .eq(SysWorkplaceQueue::getCode, orderEntity.getWorkPlaceQueueCode())); |  |  |  |                                 .eq(SysWorkplaceQueue::getCode, orderEntity.getWorkPlaceQueueCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  |                         if (workplaceQueue != null) { |  |  |  |                         if (workplaceQueue != null) { | 
			
		
	
	
		
		
			
				
					|  |  | @ -1614,7 +1612,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |                             .eq(SysWorkplaceQueue::getCode, orderEntity.getWorkPlaceQueueCode())); |  |  |  |                             .eq(SysWorkplaceQueue::getCode, orderEntity.getWorkPlaceQueueCode())); | 
			
		
	
		
		
			
				
					
					|  |  |  |                     if (sysWorkplaceQueue.getRelId() == null) { |  |  |  |                     if (sysWorkplaceQueue.getRelId() == null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                         //虚拟槽位这个时候就要设置
 |  |  |  |                         //虚拟槽位这个时候就要设置
 | 
			
		
	
		
		
			
				
					
					|  |  |  |                         if (sysWorkplace.getQueueStatus() == 0){ |  |  |  |                         if (sysWorkplace.getQueueStatus() == 0) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |                             sysWorkplaceQueue.setMaxDrugCount(100); |  |  |  |                             sysWorkplaceQueue.setMaxDrugCount(100); | 
			
		
	
		
		
			
				
					
					|  |  |  |                         } |  |  |  |                         } | 
			
		
	
		
		
			
				
					
					|  |  |  |                         sysWorkplaceQueue.setRelId(udiRelevanceResponse.getId() + ""); |  |  |  |                         sysWorkplaceQueue.setRelId(udiRelevanceResponse.getId() + ""); | 
			
		
	
	
		
		
			
				
					|  |  | @ -1750,9 +1748,9 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |         return ResultVOUtils.success(addCodeResult); |  |  |  |         return ResultVOUtils.success(addCodeResult); | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     private BaseResponse checkIsExpired(UdiRelevanceResponse udiRelevanceResponse, UdiEntity udiEntity, AddOrderRequest addOrderRequest,BasicBussinessTypeEntity bussinessTypeEntity) { |  |  |  |     private BaseResponse checkIsExpired(UdiRelevanceResponse udiRelevanceResponse, UdiEntity udiEntity, AddOrderRequest addOrderRequest, BasicBussinessTypeEntity bussinessTypeEntity) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         long recent = udiRelevanceResponse.getRecentDateTime() != null ? udiRelevanceResponse.getRecentDateTime().longValue() : 0; |  |  |  |         long recent = udiRelevanceResponse.getRecentDateTime() != null ? udiRelevanceResponse.getRecentDateTime().longValue() : 0; | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (IntUtil.value(bussinessTypeEntity.getCheckVailDate()) == 1 && recent > 0 && !addOrderRequest.isIgnoreRecentExpire()){ |  |  |  |         if (IntUtil.value(bussinessTypeEntity.getCheckVailDate()) == 1 && recent > 0 && !addOrderRequest.isIgnoreRecentExpire()) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) { |  |  |  |             if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 String expireDate = "20" + udiEntity.getExpireDate(); |  |  |  |                 String expireDate = "20" + udiEntity.getExpireDate(); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 long expireTime = MsDateUtil.parseDateExpire(expireDate); |  |  |  |                 long expireTime = MsDateUtil.parseDateExpire(expireDate); | 
			
		
	
	
		
		
			
				
					|  |  | @ -1770,7 +1768,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |         return ResultVOUtils.success(); |  |  |  |         return ResultVOUtils.success(); | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     private BaseResponse checkExpireDate(int checkExpire,UdiEntity udiEntity, AddOrderRequest addOrderRequest) { |  |  |  |     private BaseResponse checkExpireDate(int checkExpire, UdiEntity udiEntity, AddOrderRequest addOrderRequest) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) { |  |  |  |         if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |             String expireDate = "20" + udiEntity.getExpireDate(); |  |  |  |             String expireDate = "20" + udiEntity.getExpireDate(); | 
			
		
	
		
		
			
				
					
					|  |  |  |             long expireTime = MsDateUtil.parseDateExpire(expireDate); |  |  |  |             long expireTime = MsDateUtil.parseDateExpire(expireDate); | 
			
		
	
	
		
		
			
				
					|  |  | @ -1795,19 +1793,19 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (maxLevel != null && packLevel > maxLevel) { |  |  |  |         if (maxLevel != null && packLevel > maxLevel) { | 
			
		
	
		
		
			
				
					
					|  |  |  |             return false; |  |  |  |             return false; | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (maxLevel == null && packLevel > 1 ) { |  |  |  |         if (maxLevel == null && packLevel > 1) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             return false; |  |  |  |             return false; | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         return packLevel >= compareLevel; |  |  |  |         return packLevel >= compareLevel; | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     private BaseResponse handleSplitOutAndSplitReturn(String code, UdiEntity udiEntity,BasicBussinessTypeEntity bussinessTypeEntity) { |  |  |  |     private BaseResponse handleSplitOutAndSplitReturn(String code, UdiEntity udiEntity, BasicBussinessTypeEntity bussinessTypeEntity) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |         IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, null); |  |  |  |         IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, null); | 
			
		
	
		
		
			
				
					
					|  |  |  |         IoSplitCodeEntity splitCodeEntity = splitCodeService.findByCode(code); |  |  |  |         IoSplitCodeEntity splitCodeEntity = splitCodeService.findByCode(code); | 
			
		
	
		
		
			
				
					
					|  |  |  |         //校验码表是否已经存在追溯码 io_code_temp
 |  |  |  |         //校验码表是否已经存在追溯码 io_code_temp
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         IoCodeTempEntity codeTempEntity = codeTempService.selectByCode(code, udiEntity.getBatchNo(), bussinessTypeEntity.getAction()); |  |  |  |         IoCodeTempEntity codeTempEntity = codeTempService.selectByCode(code, udiEntity.getBatchNo(), bussinessTypeEntity.getAction()); | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)){ |  |  |  |         if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             if (fifoCodeEntity != null && StrUtil.isNotEmpty(fifoCodeEntity.getSerialNo())) { |  |  |  |             if (fifoCodeEntity != null && StrUtil.isNotEmpty(fifoCodeEntity.getSerialNo())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 return ResultVOUtils.error(533, "当前追溯码已存在!"); |  |  |  |                 return ResultVOUtils.error(533, "当前追溯码已存在!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
	
		
		
			
				
					|  |  | @ -1817,7 +1815,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (codeTempEntity != null) { |  |  |  |             if (codeTempEntity != null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 return ResultVOUtils.error(533, "扫码重复或当前追溯码已存在草稿单据中!"); |  |  |  |                 return ResultVOUtils.error(533, "扫码重复或当前追溯码已存在草稿单据中!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         }else if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_RETURN)){ |  |  |  |         } else if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_RETURN)) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             if (fifoCodeEntity == null) { |  |  |  |             if (fifoCodeEntity == null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |                 return ResultVOUtils.error(500, "当前追溯码未上货或已出库完毕!"); |  |  |  |                 return ResultVOUtils.error(500, "当前追溯码未上货或已出库完毕!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
	
		
		
			
				
					|  |  | @ -1832,8 +1830,6 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |     public Integer getMaxGroupNumber() { |  |  |  |     public Integer getMaxGroupNumber() { | 
			
		
	
		
		
			
				
					
					|  |  |  |         Integer groupNumber = codeTempService.selectMaxGroupNumber(); |  |  |  |         Integer groupNumber = codeTempService.selectMaxGroupNumber(); | 
			
		
	
		
		
			
				
					
					|  |  |  |         return groupNumber; |  |  |  |         return groupNumber; | 
			
		
	
	
		
		
			
				
					|  |  | @ -2936,7 +2932,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |                         .eq(IoCollectOrderCodeMan::getOrderIdFk, orderFinishBillNo) |  |  |  |                         .eq(IoCollectOrderCodeMan::getOrderIdFk, orderFinishBillNo) | 
			
		
	
		
		
			
				
					
					|  |  |  |                         .eq(IoCollectOrderCodeMan::getUdiCode, code)); |  |  |  |                         .eq(IoCollectOrderCodeMan::getUdiCode, code)); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 addOrderRequest.setScanActCount(one.getScanActCount()); |  |  |  |                 addOrderRequest.setScanActCount(one.getScanActCount()); | 
			
		
	
		
		
			
				
					
					|  |  |  |                 baseResponse = addMaterOrder(addOrderRequest, udiEntity, code,groupNumber); |  |  |  |                 baseResponse = addMaterOrder(addOrderRequest, udiEntity, code, groupNumber); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             } |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |             if (baseResponse.getCode() == 20000) { |  |  |  |             if (baseResponse.getCode() == 20000) { | 
			
		
	
	
		
		
			
				
					|  |  | 
 |