|  |  |  | @ -1,20 +1,27 @@ | 
			
		
	
		
			
				
					|  |  |  |  | package com.glxp.api.service.collect; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | import cn.hutool.core.bean.BeanUtil; | 
			
		
	
		
			
				
					|  |  |  |  | import cn.hutool.core.util.IdUtil; | 
			
		
	
		
			
				
					|  |  |  |  | import cn.hutool.core.util.StrUtil; | 
			
		
	
		
			
				
					|  |  |  |  | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 
			
		
	
		
			
				
					|  |  |  |  | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 
			
		
	
		
			
				
					|  |  |  |  | import com.github.pagehelper.PageHelper; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.constant.Constant; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.dao.collect.IoSplitDesOrderMapper; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.collect.IoCollectOrderBiz; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.collect.IoSplitDesOrder; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.collect.IoSplitDesOrderCode; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.collect.IoSplitDesOrderDetail; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.inout.IoSplitFifoCodeEntity; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.entity.inout.IoSplitFifoInv; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.exception.JsonException; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.req.collect.AddInvDesDetaiRequest; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.req.collect.IoSplitDesOrderRequest; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.res.basic.UdiRelevanceResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.res.collect.IoSplitDesOrderResponse; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.service.inout.IoSplitFifoCodeService; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.util.GennerOrderUtils; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.util.IntUtil; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.util.OrderNoTypeBean; | 
			
		
	
		
			
				
					|  |  |  |  | import org.springframework.stereotype.Service; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | @ -73,6 +80,7 @@ public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, I | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |         IoSplitFifoInv splitFifoInv = addInvDesDetaiRequest.getSplitFifoInv(); | 
			
		
	
		
			
				
					|  |  |  |  |         IoSplitDesOrderDetail splitDesOrderDetail = IoSplitDesOrderDetail.builder() | 
			
		
	
		
			
				
					|  |  |  |  |                 .id(IdUtil.getSnowflakeNextId()) | 
			
		
	
		
			
				
					|  |  |  |  |                 .workPlaceCode(collectOrder.getWorkPlaceCode()) | 
			
		
	
		
			
				
					|  |  |  |  |                 .orderIdFk(collectOrder.getBillNo()) | 
			
		
	
		
			
				
					|  |  |  |  |                 .invId(splitFifoInv.getId()) | 
			
		
	
	
		
			
				
					|  |  |  | @ -92,9 +100,39 @@ public class IoSplitDesOrderService extends ServiceImpl<IoSplitDesOrderMapper, I | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     IoSplitFifoCodeService splitFifoCodeService; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     IoSplitDesOrderCodeService ioSplitDesOrderCodeService; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     public void addCode(AddInvDesDetaiRequest addInvDesDetaiRequest) { | 
			
		
	
		
			
				
					|  |  |  |  |     public IoSplitDesOrder addCode(AddInvDesDetaiRequest addInvDesDetaiRequest) { | 
			
		
	
		
			
				
					|  |  |  |  |         IoSplitFifoCodeEntity splitFifoCodeEntity = splitFifoCodeService.findByCode(addInvDesDetaiRequest.getCode(), addInvDesDetaiRequest.getWorkPlaceCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         if (splitFifoCodeEntity == null) { | 
			
		
	
		
			
				
					|  |  |  |  |             throw new JsonException("工位存量不存在,请检查后重试!"); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         IoSplitDesOrder collectOrder; | 
			
		
	
		
			
				
					|  |  |  |  |         if (StrUtil.isNotEmpty(addInvDesDetaiRequest.getBillNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |             collectOrder = getByBillNo(addInvDesDetaiRequest.getBillNo()); | 
			
		
	
		
			
				
					|  |  |  |  |         } else { | 
			
		
	
		
			
				
					|  |  |  |  |             collectOrder = IoSplitDesOrder.builder() | 
			
		
	
		
			
				
					|  |  |  |  |                     .billNo(gennerOrderUtils.createWdOrderNo(new OrderNoTypeBean(Constant.SPLIT_DES_ORDER, "yyyyMMdd"))) | 
			
		
	
		
			
				
					|  |  |  |  |                     .busType("1") | 
			
		
	
		
			
				
					|  |  |  |  |                     .workPlaceCode(addInvDesDetaiRequest.getWorkPlaceCode()) | 
			
		
	
		
			
				
					|  |  |  |  |                     .createTime(new Date()) | 
			
		
	
		
			
				
					|  |  |  |  |                     .billTime(new Date()) | 
			
		
	
		
			
				
					|  |  |  |  |                     .remark(addInvDesDetaiRequest.getRemark()) | 
			
		
	
		
			
				
					|  |  |  |  |                     .status(1) | 
			
		
	
		
			
				
					|  |  |  |  |                     .createUser(addInvDesDetaiRequest.getCreateUser()) | 
			
		
	
		
			
				
					|  |  |  |  |                     .updateTime(new Date()) | 
			
		
	
		
			
				
					|  |  |  |  |                     .updateUser(addInvDesDetaiRequest.getUpdateUser()) | 
			
		
	
		
			
				
					|  |  |  |  |                     .build(); | 
			
		
	
		
			
				
					|  |  |  |  |             save(collectOrder); | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         IoSplitDesOrderCode splitDesOrderCode = new IoSplitDesOrderCode(); | 
			
		
	
		
			
				
					|  |  |  |  |         BeanUtil.copyProperties(splitFifoCodeEntity, splitDesOrderCode); | 
			
		
	
		
			
				
					|  |  |  |  |         splitDesOrderCode.setCount(0); | 
			
		
	
		
			
				
					|  |  |  |  |         splitDesOrderCode.setReCount(0); | 
			
		
	
		
			
				
					|  |  |  |  |         ioSplitDesOrderCodeService.save(splitDesOrderCode); | 
			
		
	
		
			
				
					|  |  |  |  |         return collectOrder; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
	
		
			
				
					|  |  |  | 
 |