|  |  |  | @ -71,14 +71,14 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo | 
			
		
	
		
			
				
					|  |  |  |  |         return null; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     public void splitRemove(IoCollectOrderBiz collectOrderBiz, IoCollectOrder collectOrder) { | 
			
		
	
		
			
				
					|  |  |  |  |     public void splitRemove(IoCollectOrderBiz collectOrderBiz, IoCollectOrder collectOrder, Long putWorkPlaceCode) { | 
			
		
	
		
			
				
					|  |  |  |  |         //1.按照先进先出原则,查询拆零表,获取拆零表ID
 | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoSplitCodeEntity> ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         List<IoSplitCodeEntity> ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), putWorkPlaceCode); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         //2.如果拆零表为空,则自动从预出库队列中获拉取数据
 | 
			
		
	
		
			
				
					|  |  |  |  |         if (CollUtil.isEmpty(ioSplitCodeEntities)) { | 
			
		
	
		
			
				
					|  |  |  |  |             addFifoCode(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), IntUtil.value(collectOrderBiz.getCount())); | 
			
		
	
		
			
				
					|  |  |  |  |             ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), putWorkPlaceCode); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         //3.如果拆零表不为空,则开始扣除数量
 | 
			
		
	
		
			
				
					|  |  |  |  |         int count = 0; | 
			
		
	
	
		
			
				
					|  |  |  | @ -126,7 +126,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo | 
			
		
	
		
			
				
					|  |  |  |  | //                throw new JsonException(500, "提交失败,工位库存数量不足!");
 | 
			
		
	
		
			
				
					|  |  |  |  |             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                 //再次执行赋码
 | 
			
		
	
		
			
				
					|  |  |  |  |                 ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                 ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), putWorkPlaceCode); | 
			
		
	
		
			
				
					|  |  |  |  |                 for (IoSplitCodeEntity ioSplitCodeEntity : ioSplitCodeEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                     count = IntUtil.value(ioSplitCodeEntity.getRemainCount()) - unCount; | 
			
		
	
		
			
				
					|  |  |  |  |                     collectOrderCodeAutoService.save(IoCollectOrderCodeAuto.builder() | 
			
		
	
	
		
			
				
					|  |  |  | @ -314,7 +314,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |             //.如果拆零,拆零表扣除
 | 
			
		
	
		
			
				
					|  |  |  |  |             if (remainder > 0) { | 
			
		
	
		
			
				
					|  |  |  |  |                 splitRemove(collectOrderBiz, collectOrder); | 
			
		
	
		
			
				
					|  |  |  |  |                 splitRemove(collectOrderBiz, collectOrder, putWorkPlaceCode); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         ArrayList<IoCollectOrderBizBackup> ioCollectOrderBizBackups = new ArrayList<>(); | 
			
		
	
	
		
			
				
					|  |  |  | @ -368,7 +368,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo | 
			
		
	
		
			
				
					|  |  |  |  |                     .sum(); | 
			
		
	
		
			
				
					|  |  |  |  |             collectOrderBiz.setTempWorkPlaceCount(total); | 
			
		
	
		
			
				
					|  |  |  |  |             List<IoSplitCodeEntity> splitCodeEntities = splitCodeService.findSplitCodes(collectOrderBiz.getRelId() | 
			
		
	
		
			
				
					|  |  |  |  |                     , collectOrderBiz.getBatchNo(), sysWorkplacePutRel.getWorkPlaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                     , collectOrderBiz.getBatchNo(), putWorkPlaceCode); | 
			
		
	
		
			
				
					|  |  |  |  |             int splitTotal = splitCodeEntities.stream() | 
			
		
	
		
			
				
					|  |  |  |  |                     .mapToInt(IoSplitCodeEntity::getRemainCount) | 
			
		
	
		
			
				
					|  |  |  |  |                     .sum(); | 
			
		
	
	
		
			
				
					|  |  |  | @ -422,16 +422,9 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo | 
			
		
	
		
			
				
					|  |  |  |  |         for (IoSplitFifoCodeEntity splitFifoCodeEntity : splitFifoCodeEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |             IoSplitCodeEntity splitCodeEntity = new IoSplitCodeEntity(); | 
			
		
	
		
			
				
					|  |  |  |  |             BeanUtils.copyProperties(splitFifoCodeEntity, splitCodeEntity); | 
			
		
	
		
			
				
					|  |  |  |  |             if (IntUtil.value(splitFifoCodeEntity.getFifoSplit()) == 1) { | 
			
		
	
		
			
				
					|  |  |  |  |                 //拆零
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             count = IntUtil.value(splitFifoCodeEntity.getTotalCount()) + count; | 
			
		
	
		
			
				
					|  |  |  |  |             splitCodeEntity.setRemainCount(splitCodeEntity.getTotalCount()); | 
			
		
	
		
			
				
					|  |  |  |  |             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                 //整取
 | 
			
		
	
		
			
				
					|  |  |  |  |                 count = IntUtil.value(splitFifoCodeEntity.getScanCount()) + count; | 
			
		
	
		
			
				
					|  |  |  |  |                 splitCodeEntity.setRemainCount(splitCodeEntity.getScanCount()); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             splitCodeEntity.setStatus(1); | 
			
		
	
		
			
				
					|  |  |  |  |             splitCodeEntity.setFifoSplit(splitFifoCodeEntity.getFifoSplit()); | 
			
		
	
	
		
			
				
					|  |  |  | 
 |