|  |  |  | @ -575,11 +575,11 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 BaseResponse invRes = null; | 
			
		
	
		
			
				
					|  |  |  |  |                 if (bussinessTypeEntity.isScanPreIn()) {    //校验预验收库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                     invRes = checkPreInInv(bussinessTypeEntity, exitLocalEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                     invRes = checkPreInInv(bussinessTypeEntity, genDetaiEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else if (bussinessTypeEntity.isAdvancePreIn()) {  //校验寄售库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                     invRes = checkPreInv(bussinessTypeEntity, exitLocalEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                     invRes = checkPreInv(bussinessTypeEntity, genDetaiEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     invRes = checkInv(bussinessTypeEntity, exitLocalEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                     invRes = checkInv(bussinessTypeEntity, genDetaiEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |                 if (invRes != null) { | 
			
		
	
		
			
				
					|  |  |  |  |                     return invRes; | 
			
		
	
	
		
			
				
					|  |  |  | @ -791,15 +791,15 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
			
				
					|  |  |  |  |         InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByOne(ConstantStatus.ACTION_TYPE_ADVANCE); | 
			
		
	
		
			
				
					|  |  |  |  |         int count = 0; | 
			
		
	
		
			
				
					|  |  |  |  |         if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) { | 
			
		
	
		
			
				
					|  |  |  |  |             if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                 count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             } else | 
			
		
	
		
			
				
					|  |  |  |  |                 count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null); | 
			
		
	
		
			
				
					|  |  |  |  | //            if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), null, codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  | //            } else
 | 
			
		
	
		
			
				
					|  |  |  |  |             count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), null); | 
			
		
	
		
			
				
					|  |  |  |  |         } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) { | 
			
		
	
		
			
				
					|  |  |  |  |             if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                 count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             } else | 
			
		
	
		
			
				
					|  |  |  |  |                 count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  | //            if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  | //            } else
 | 
			
		
	
		
			
				
					|  |  |  |  |             count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) { | 
			
		
	
		
			
				
					|  |  |  |  |             //按指定货位出库
 | 
			
		
	
		
			
				
					|  |  |  |  |             if (StrUtil.isEmpty(codeTempEntity.getPreSpaceCode())) { | 
			
		
	
	
		
			
				
					|  |  |  | @ -816,35 +816,38 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
			
				
					|  |  |  |  |                     return ResultVOUtils.error(500, "添加失败,该产品未上架货位!"); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                 if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                     count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else | 
			
		
	
		
			
				
					|  |  |  |  |                     count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  | //                if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    count = invPreProductDetailService.vailStockCountByCode(null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode(), codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  | //                } else
 | 
			
		
	
		
			
				
					|  |  |  |  |                 count = invPreProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), null, invWarehouseEntity.getCode(), codeTempEntity.getPreSpaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  | //        InvPreProductDetailEntity invPreinDetailEntity = invPreProductDetailService.findUseOneByCode(codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  |         if (count <= 0) { | 
			
		
	
		
			
				
					|  |  |  |  |             return ResultVOUtils.error(500, "寄售库存数量不足!"); | 
			
		
	
		
			
				
					|  |  |  |  |         } else { | 
			
		
	
		
			
				
					|  |  |  |  |             if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo()) | 
			
		
	
		
			
				
					|  |  |  |  |                     && !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                 return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!"); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加
 | 
			
		
	
		
			
				
					|  |  |  |  |                 if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品
 | 
			
		
	
		
			
				
					|  |  |  |  |                     //无序列号,则可能存在多个预验收入库单
 | 
			
		
	
		
			
				
					|  |  |  |  |                     IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                     if (tempEntity != null) { | 
			
		
	
		
			
				
					|  |  |  |  |                         if (count < (tempEntity.getMyCount() + 1)) { | 
			
		
	
		
			
				
					|  |  |  |  |                             return ResultVOUtils.error(500, "超出寄售库存数量"); | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     if (count < 1) { | 
			
		
	
		
			
				
					|  |  |  |  |                         return ResultVOUtils.error(500, "寄售库存数量不足"); | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  | //            if (StrUtil.isNotEmpty(invPreinDetailEntity.getBatchNo()) && StrUtil.isNotEmpty(codeTempEntity.getBatchNo())
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    && !invPreinDetailEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                return ResultVOUtils.error(500, "当前批次号与预验收录入批次号不匹配!");
 | 
			
		
	
		
			
				
					|  |  |  |  | //            }
 | 
			
		
	
		
			
				
					|  |  |  |  | //            if (StrUtil.isNotEmpty(codeTempEntity.getOrderId())) {//非首次添加
 | 
			
		
	
		
			
				
					|  |  |  |  | //                if (StrUtil.isEmpty(codeTempEntity.getSerialNo())) {//该单据已有该产品
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    IoCodeTempEntity tempEntity = codeTempService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    if (tempEntity != null) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                        if (count < (tempEntity.getMyCount() + 1)) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                            return ResultVOUtils.error(500, "超出寄售库存数量");
 | 
			
		
	
		
			
				
					|  |  |  |  | //                        }
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    }
 | 
			
		
	
		
			
				
					|  |  |  |  | //                } else {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    if (count < 1) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                        return ResultVOUtils.error(500, "寄售库存数量不足");
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    }
 | 
			
		
	
		
			
				
					|  |  |  |  | //                }
 | 
			
		
	
		
			
				
					|  |  |  |  | //            }
 | 
			
		
	
		
			
				
					|  |  |  |  |             int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId())); | 
			
		
	
		
			
				
					|  |  |  |  |             if ((codeTempEntity.getMyReCount() + exitCount) > count) { | 
			
		
	
		
			
				
					|  |  |  |  |                 return ResultVOUtils.error(500, "寄售库存数量不足"); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         return null; | 
			
		
	
	
		
			
				
					|  |  |  | @ -908,7 +911,7 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     if (count < 1) { | 
			
		
	
		
			
				
					|  |  |  |  |                         return ResultVOUtils.error(500, "寄售预验收数量不足"); | 
			
		
	
		
			
				
					|  |  |  |  |                         return ResultVOUtils.error(500, "预验收库存数量不足"); | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
	
		
			
				
					|  |  |  | @ -1058,15 +1061,15 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
			
				
					|  |  |  |  |         if (bussinessTypeEntity.isVailInv() && bussinessTypeEntity.getMainAction().equals(ConstantType.TYPE_OUT)) { | 
			
		
	
		
			
				
					|  |  |  |  |             int count = 0; | 
			
		
	
		
			
				
					|  |  |  |  |             if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_NULL) { | 
			
		
	
		
			
				
					|  |  |  |  |                 if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                     count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else | 
			
		
	
		
			
				
					|  |  |  |  |                     count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null); | 
			
		
	
		
			
				
					|  |  |  |  | //                if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null, codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  | //                } else
 | 
			
		
	
		
			
				
					|  |  |  |  |                 count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), null); | 
			
		
	
		
			
				
					|  |  |  |  |             } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_SET) { | 
			
		
	
		
			
				
					|  |  |  |  |                 if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                     count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else | 
			
		
	
		
			
				
					|  |  |  |  |                     count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  | //                if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  | //                } else
 | 
			
		
	
		
			
				
					|  |  |  |  |                 count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             } else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) { | 
			
		
	
		
			
				
					|  |  |  |  |                 //按指定货位出库
 | 
			
		
	
		
			
				
					|  |  |  |  |                 if (StrUtil.isEmpty(codeTempEntity.getWarehouseCode())) { | 
			
		
	
	
		
			
				
					|  |  |  | @ -1082,17 +1085,18 @@ public class IoCodeTempController extends BaseController { | 
			
		
	
		
			
				
					|  |  |  |  |                         return ResultVOUtils.error(500, "添加失败,该产品未上架货位!"); | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                         count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                     } else | 
			
		
	
		
			
				
					|  |  |  |  |                         count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  | //                    if (StrUtil.isNotEmpty(codeTempEntity.getSerialNo())) {
 | 
			
		
	
		
			
				
					|  |  |  |  | //                        count = invProductDetailService.vailStockCountByCode(codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode(), codeTempEntity.getCode());
 | 
			
		
	
		
			
				
					|  |  |  |  | //                    } else
 | 
			
		
	
		
			
				
					|  |  |  |  |                     count = invProductDetailService.vailStockCount(codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), codeTempEntity.getSupId(), codeTempEntity.getDeptCode(), codeTempEntity.getInvCode(), codeTempEntity.getWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             if (count <= 0) { | 
			
		
	
		
			
				
					|  |  |  |  |                 return ResultVOUtils.error(500, "当前库存不足"); | 
			
		
	
		
			
				
					|  |  |  |  |             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                 //查询此单据已扫描的条码数量
 | 
			
		
	
		
			
				
					|  |  |  |  |                 if (codeTempEntity.getMyReCount() > count) { | 
			
		
	
		
			
				
					|  |  |  |  |                 int exitCount = IntUtil.value(codeTempService.selectExitCount(codeTempEntity.getOrderId(), codeTempEntity.getBatchNo(), codeTempEntity.getRelId(), codeTempEntity.getSupId())); | 
			
		
	
		
			
				
					|  |  |  |  |                 if ((codeTempEntity.getMyReCount() + exitCount) > count) { | 
			
		
	
		
			
				
					|  |  |  |  |                     return ResultVOUtils.error(500, "当前库存不足"); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
	
		
			
				
					|  |  |  | 
 |