|  |  |  | @ -97,6 +97,16 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo | 
			
		
	
		
			
				
					|  |  |  |  |         return ioSplitCodeEntities; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     public List<IoSplitCodeEntity> findSplitCodes(String ybbm, String batchNo, Long workPlaceCode) { | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoSplitCodeEntity> ioSplitCodeEntities = splitCodeMapper.selectList(new LambdaQueryWrapper<IoSplitCodeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                 .eq(StrUtil.isNotEmpty(batchNo), IoSplitCodeEntity::getBatchNo, batchNo) | 
			
		
	
		
			
				
					|  |  |  |  |                 .eq(workPlaceCode != null, IoSplitCodeEntity::getWorkPlaceCode, workPlaceCode) | 
			
		
	
		
			
				
					|  |  |  |  |                 .gt(IoSplitCodeEntity::getRemainCount, 0) | 
			
		
	
		
			
				
					|  |  |  |  |                 .in(IoSplitCodeEntity::getStatus, 1, 2).orderByAsc(IoSplitCodeEntity::getInBactchNo)); | 
			
		
	
		
			
				
					|  |  |  |  |         return ioSplitCodeEntities; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     public IoSplitCodeEntity findByCode(String code, Long workPlaceCode) { | 
			
		
	
		
			
				
					|  |  |  |  |         if (workPlaceCode == null) { | 
			
		
	
		
			
				
					|  |  |  |  |             return null; | 
			
		
	
	
		
			
				
					|  |  |  | @ -657,6 +667,44 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo | 
			
		
	
		
			
				
					|  |  |  |  |         collectOrderBizService.updateBatchById(collectOrderBizs); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     /** | 
			
		
	
		
			
				
					|  |  |  |  |      * 单据预赋码 | 
			
		
	
		
			
				
					|  |  |  |  |      * | 
			
		
	
		
			
				
					|  |  |  |  |      * @param collectOrder | 
			
		
	
		
			
				
					|  |  |  |  |      */ | 
			
		
	
		
			
				
					|  |  |  |  |     public void preQxAutoTagCode(IoCollectOrder collectOrder, String queueCode) { | 
			
		
	
		
			
				
					|  |  |  |  |         Long putWorkPlaceCode = null; | 
			
		
	
		
			
				
					|  |  |  |  |         //获取上货工位
 | 
			
		
	
		
			
				
					|  |  |  |  |         SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(collectOrder.getWorkPlaceCode(), collectOrder.getBusType()); | 
			
		
	
		
			
				
					|  |  |  |  |         if (sysWorkplacePutRel != null) | 
			
		
	
		
			
				
					|  |  |  |  |             putWorkPlaceCode = sysWorkplacePutRel.getWorkPlaceCode(); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoCollectOrderBiz> collectOrderBizs = collectOrderBizService.listByBillNo(collectOrder.getBillNo()); | 
			
		
	
		
			
				
					|  |  |  |  |         for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) { | 
			
		
	
		
			
				
					|  |  |  |  |             List<IoSplitFifoCodeEntity> splitFifoCodeEntities = | 
			
		
	
		
			
				
					|  |  |  |  |                     splitFifoCodeService.findByCheckCode(putWorkPlaceCode, | 
			
		
	
		
			
				
					|  |  |  |  |                             collectOrderBiz.getYbbm(), collectOrderBiz.getBatchNo(), queueCode); | 
			
		
	
		
			
				
					|  |  |  |  |             int total = splitFifoCodeEntities.stream() | 
			
		
	
		
			
				
					|  |  |  |  |                     .mapToInt(IoSplitFifoCodeEntity::getTotalCount) | 
			
		
	
		
			
				
					|  |  |  |  |                     .sum(); | 
			
		
	
		
			
				
					|  |  |  |  |             collectOrderBiz.setTempWorkPlaceCount(total); | 
			
		
	
		
			
				
					|  |  |  |  |             List<IoSplitCodeEntity> splitCodeEntities = splitCodeService.findSplitCodes(collectOrderBiz.getRelId() | 
			
		
	
		
			
				
					|  |  |  |  |                     , collectOrderBiz.getBatchNo(), putWorkPlaceCode); | 
			
		
	
		
			
				
					|  |  |  |  |             int splitTotal = splitCodeEntities.stream() | 
			
		
	
		
			
				
					|  |  |  |  |                     .mapToInt(IoSplitCodeEntity::getRemainCount) | 
			
		
	
		
			
				
					|  |  |  |  |                     .sum(); | 
			
		
	
		
			
				
					|  |  |  |  |             collectOrderBiz.setTempSplitCount(splitTotal); | 
			
		
	
		
			
				
					|  |  |  |  |             total = total + splitTotal; | 
			
		
	
		
			
				
					|  |  |  |  |             if (total >= IntUtil.value(collectOrderBiz.getCount())) { | 
			
		
	
		
			
				
					|  |  |  |  |                 collectOrderBiz.setAutoTagStatus(2); | 
			
		
	
		
			
				
					|  |  |  |  |             } else if (total > 0) { | 
			
		
	
		
			
				
					|  |  |  |  |                 collectOrderBiz.setAutoTagStatus(3); | 
			
		
	
		
			
				
					|  |  |  |  |             } else | 
			
		
	
		
			
				
					|  |  |  |  |                 collectOrderBiz.setAutoTagStatus(1); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         collectOrderBizService.updateBatchById(collectOrderBizs); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     /** | 
			
		
	
		
			
				
					|  |  |  |  |      * 拆零单据撤回,则将拆零表剩余数量加回预出库队列 | 
			
		
	
	
		
			
				
					|  |  |  | 
 |