|  |  |  | @ -54,6 +54,14 @@ public class InvSpaceServiceImpl extends ServiceImpl<InvSpaceDao,InvSpace> imple | 
			
		
	
		
			
				
					|  |  |  |  |         if (!"success".equals(result)) { | 
			
		
	
		
			
				
					|  |  |  |  |             return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, result); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //获取当前仓库下的最大货位编码
 | 
			
		
	
		
			
				
					|  |  |  |  |         String maxSpaceCode = invSpaceDao.getMaxSpaceCode(invSpace.getInvWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         if (StrUtil.isBlank(maxSpaceCode)) { | 
			
		
	
		
			
				
					|  |  |  |  |             maxSpaceCode = "0000"; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         String spaceCode = getSpaceCode(maxSpaceCode); | 
			
		
	
		
			
				
					|  |  |  |  |         invSpace.setCode(spaceCode); | 
			
		
	
		
			
				
					|  |  |  |  |         Date date = new Date(); | 
			
		
	
		
			
				
					|  |  |  |  |         AuthAdmin user = customerService.getUserBean(); | 
			
		
	
		
			
				
					|  |  |  |  |         invSpace.setCreateTime(date); | 
			
		
	
	
		
			
				
					|  |  |  | @ -72,8 +80,8 @@ public class InvSpaceServiceImpl extends ServiceImpl<InvSpaceDao,InvSpace> imple | 
			
		
	
		
			
				
					|  |  |  |  |      */ | 
			
		
	
		
			
				
					|  |  |  |  |     private static BaseResponse verifySpaceParams(InvSpace invSpace) { | 
			
		
	
		
			
				
					|  |  |  |  |         //校验参数
 | 
			
		
	
		
			
				
					|  |  |  |  |         if (StrUtil.isBlank(invSpace.getCode()) || StrUtil.isBlank(invSpace.getName())) { | 
			
		
	
		
			
				
					|  |  |  |  |             return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "货位名称和货位号不能为空!"); | 
			
		
	
		
			
				
					|  |  |  |  |         if (StrUtil.isBlank(invSpace.getName())) { | 
			
		
	
		
			
				
					|  |  |  |  |             return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "货位名称不能为空!"); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         if (StrUtil.isBlank(invSpace.getInvStorageCode()) || StrUtil.isBlank(invSpace.getInvWarehouseCode())) { | 
			
		
	
		
			
				
					|  |  |  |  |             return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "请指定所属仓库和分库!"); | 
			
		
	
	
		
			
				
					|  |  |  | @ -143,22 +151,8 @@ public class InvSpaceServiceImpl extends ServiceImpl<InvSpaceDao,InvSpace> imple | 
			
		
	
		
			
				
					|  |  |  |  |      * @return | 
			
		
	
		
			
				
					|  |  |  |  |      */ | 
			
		
	
		
			
				
					|  |  |  |  |     public String verifyExist(InvSpace invSpace) { | 
			
		
	
		
			
				
					|  |  |  |  |         //先检查货位号是否重复
 | 
			
		
	
		
			
				
					|  |  |  |  |         List<InvSpace> invSpaces = invSpaceDao.selectByInvCode(invSpace.getInvStorageCode(), invSpace.getInvWarehouseCode(), invSpace.getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         if (CollUtil.isNotEmpty(invSpaces)) { | 
			
		
	
		
			
				
					|  |  |  |  |             //判断ID是否为空,如果为空表示数据为新增货位,是重复添加-
 | 
			
		
	
		
			
				
					|  |  |  |  |             if (null == invSpace.getId()) { | 
			
		
	
		
			
				
					|  |  |  |  |                 return "货位信息已存在"; | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             //此分库下,货位号重复,判断ID是否与当前货位相同
 | 
			
		
	
		
			
				
					|  |  |  |  |             for (InvSpace space : invSpaces) { | 
			
		
	
		
			
				
					|  |  |  |  |                 if (!space.getId().equals(invSpace.getId())) { | 
			
		
	
		
			
				
					|  |  |  |  |                     return "货位信息已存在"; | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         List<InvSpace> list = invSpaceDao.selectExist(invSpace); | 
			
		
	
		
			
				
					|  |  |  |  |         //判断此货位名称是否重复
 | 
			
		
	
		
			
				
					|  |  |  |  |         List<InvSpace> list = invSpaceDao.selectExistByName(invSpace); | 
			
		
	
		
			
				
					|  |  |  |  |         if (CollUtil.isNotEmpty(list)) { | 
			
		
	
		
			
				
					|  |  |  |  |             if (null == invSpace.getId()) { | 
			
		
	
		
			
				
					|  |  |  |  |                 return "货位信息已存在"; | 
			
		
	
	
		
			
				
					|  |  |  | @ -172,4 +166,16 @@ public class InvSpaceServiceImpl extends ServiceImpl<InvSpaceDao,InvSpace> imple | 
			
		
	
		
			
				
					|  |  |  |  |         return "success"; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     /** | 
			
		
	
		
			
				
					|  |  |  |  |      * 获取新的货位编码,基于传入的最大编码参数+1,并拼接成4位数返回 | 
			
		
	
		
			
				
					|  |  |  |  |      * | 
			
		
	
		
			
				
					|  |  |  |  |      * @param maxSpaceCode 当前最大货位编码 | 
			
		
	
		
			
				
					|  |  |  |  |      * @return | 
			
		
	
		
			
				
					|  |  |  |  |      */ | 
			
		
	
		
			
				
					|  |  |  |  |     public String getSpaceCode(String maxSpaceCode) { | 
			
		
	
		
			
				
					|  |  |  |  |         Long l = Long.parseLong(maxSpaceCode) + 1L; | 
			
		
	
		
			
				
					|  |  |  |  |         return String.format("%04d", l); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
	
		
			
				
					|  |  |  | 
 |