7 changed files with 157 additions and 92 deletions
@ -0,0 +1,16 @@ |
|||
package com.qs.serve.modules.oms.entity.bo; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2024/6/21 |
|||
*/ |
|||
@Data |
|||
public class OmsVerifySkuParam { |
|||
|
|||
private List<Long> skuIds; |
|||
|
|||
} |
@ -0,0 +1,30 @@ |
|||
package com.qs.serve.modules.oms.service; |
|||
|
|||
import com.qs.serve.modules.oms.entity.OmsOrder; |
|||
import com.qs.serve.modules.oms.entity.bo.OmsVerifySkuParam; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2024/6/21 |
|||
*/ |
|||
public interface OmsOrderPart1Service { |
|||
|
|||
|
|||
/** |
|||
* 复制订单 |
|||
* @param orderId |
|||
* @return |
|||
*/ |
|||
OmsOrder copyOrder(Long orderId); |
|||
|
|||
|
|||
/** |
|||
* 校验sku合法性 |
|||
* @param param |
|||
* @return |
|||
*/ |
|||
List<String> verifySku(OmsVerifySkuParam param); |
|||
|
|||
} |
@ -0,0 +1,94 @@ |
|||
package com.qs.serve.modules.oms.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|||
import com.qs.serve.common.util.Assert; |
|||
import com.qs.serve.common.util.AuthContextUtils; |
|||
import com.qs.serve.common.util.CodeGenUtil; |
|||
import com.qs.serve.modules.bms.entity.BmsSupplier; |
|||
import com.qs.serve.modules.goods.entity.dto.GoodsAccrIdsDto; |
|||
import com.qs.serve.modules.oms.entity.OmsOrder; |
|||
import com.qs.serve.modules.oms.entity.OmsOrderItem; |
|||
import com.qs.serve.modules.oms.entity.bo.OmsVerifySkuParam; |
|||
import com.qs.serve.modules.oms.service.OmsOrderItemService; |
|||
import com.qs.serve.modules.oms.service.OmsOrderPart1Service; |
|||
import com.qs.serve.modules.oms.service.OmsOrderService; |
|||
import com.qs.serve.modules.sys.entity.SysUser; |
|||
import com.qs.serve.modules.sys.service.SysUserService; |
|||
import lombok.AllArgsConstructor; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2024/6/21 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
@AllArgsConstructor |
|||
public class OmsOrderPart1ServiceImpl implements OmsOrderPart1Service { |
|||
|
|||
private SysUserService sysUserService; |
|||
private OmsOrderService omsOrderService; |
|||
private OmsOrderItemService omsOrderItemService; |
|||
|
|||
@Override |
|||
public OmsOrder copyOrder(Long orderId) { |
|||
OmsOrder orgOrder = omsOrderService.getById(orderId); |
|||
List<OmsOrderItem> orderItems = omsOrderItemService.list(new LambdaQueryWrapper<OmsOrderItem>() |
|||
.eq(OmsOrderItem::getOrderId,orderId)); |
|||
OmsOrder order = new OmsOrder(); |
|||
order.setId(null); |
|||
order.setOrderType(orgOrder.getOrderType()); |
|||
String orderPrefix = null; |
|||
if(order.getOrderType().equals(0)){ |
|||
orderPrefix = "SN"; |
|||
}else if(order.getOrderType().equals(1)){ |
|||
orderPrefix = "ZP"; |
|||
}else if(order.getOrderType().equals(2)){ |
|||
orderPrefix = "SC"; |
|||
}else if(order.getOrderType().equals(3)){ |
|||
orderPrefix = "SP"; |
|||
}else { |
|||
Assert.throwEx("订单类型错误"); |
|||
} |
|||
order.setOrderSn(orderPrefix+ CodeGenUtil.generate(CodeGenUtil.SourceKey.OmsOrder)); |
|||
SysUser user = sysUserService.getById(AuthContextUtils.getSysUserId()); |
|||
order.setUserId(user.getId()); |
|||
order.setUserCode(user.getCode()); |
|||
order.setUserName(user.getName()); |
|||
order.setUserPhone(user.getMobile()); |
|||
order.setCheckState(0); |
|||
|
|||
order.setLatitudeFrom(orgOrder.getLatitudeFrom()); |
|||
order.setOrderSource(orgOrder.getOrderSource()); |
|||
order.setSupplierId(orgOrder.getSupplierId()); |
|||
order.setSupplierCode(orgOrder.getSupplierCode()); |
|||
order.setSupplierName(orgOrder.getSupplierName()); |
|||
order.setSupplierAddrId(orgOrder.getSupplierAddrId()); |
|||
order.setBrandRuleId(orgOrder.getBrandRuleId()); |
|||
order.setBrandRuleName(orgOrder.getBrandRuleName()); |
|||
|
|||
order.setBillType(orgOrder.getBillType()); |
|||
order.setCdOrderRemark(orgOrder.getCdOrderRemark()); |
|||
order.setRemark(orgOrder.getRemark()); |
|||
|
|||
|
|||
omsOrderService.save(order); |
|||
for (OmsOrderItem item : orderItems) { |
|||
item.setId(null); |
|||
item.setOrderId(order.getId()); |
|||
} |
|||
omsOrderItemService.saveBatch(orderItems); |
|||
return order; |
|||
} |
|||
|
|||
@Override |
|||
public List<String> verifySku(OmsVerifySkuParam param) { |
|||
|
|||
return null; |
|||
} |
|||
|
|||
} |
Loading…
Reference in new issue