|
|
@ -640,7 +640,8 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper,OmsOrder> im |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public String modifyImminentOrder(OmsOrderImminentBo param) { |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public OmsOrder modifyImminentOrder(OmsOrderImminentBo param) { |
|
|
|
|
|
|
|
SysUser user = sysUserService.getById(AuthContextUtils.getSysUserId()); |
|
|
|
GoodsCategoryRule categoryRule = goodsCategoryRuleMapper.selectById(param.getBrandRuleId()); |
|
|
@ -650,13 +651,16 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper,OmsOrder> im |
|
|
|
OmsOrder order; |
|
|
|
if(param.getId()!=null){ |
|
|
|
order = this.getById(param.getId()); |
|
|
|
if(!order.getOrderType().equals(3)){ |
|
|
|
Assert.throwEx("订单类型不支持混用"); |
|
|
|
} |
|
|
|
}else { |
|
|
|
order = new OmsOrder(); |
|
|
|
order.setOrderSn("SP"+CodeGenUtil.generate(CodeGenUtil.SourceKey.OmsOrder)); |
|
|
|
} |
|
|
|
order.setLatitudeFrom("sp"); |
|
|
|
order.setCdOrderRemark(param.getCdOrderRemark()); |
|
|
|
order.setOrderType(1); |
|
|
|
order.setOrderType(3); |
|
|
|
order.setSupplierId(Long.parseLong(supplier.getId())); |
|
|
|
order.setSupplierCode(supplier.getCode()); |
|
|
|
order.setSupplierName(supplier.getName()); |
|
|
@ -669,7 +673,13 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper,OmsOrder> im |
|
|
|
order.setBillType(param.getBillType()); |
|
|
|
order.setUrgentFlag(param.getUrgentFlag()); |
|
|
|
order.setRemark(param.getRemark()); |
|
|
|
this.save(order); |
|
|
|
this.saveOrUpdate(order); |
|
|
|
|
|
|
|
if(order.getStatus()==null||order.getStatus().equals(0)){ |
|
|
|
if(CollectionUtil.isEmpty(param.getItemList())){ |
|
|
|
return order; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
Set<Long> batchSkuIds = param.getItemList().stream().map(OmsOrderImminentBo.ItemParam::getBatchSkuId) |
|
|
|
.collect(Collectors.toSet()); |
|
|
@ -741,25 +751,26 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper,OmsOrder> im |
|
|
|
this.buildPriceOrder(order.getId()+"",null); |
|
|
|
} |
|
|
|
|
|
|
|
return order.getId().toString(); |
|
|
|
return order; |
|
|
|
} |
|
|
|
|
|
|
|
@NotNull |
|
|
|
private OmsOrderItem createImminentOrderItem(OmsOrder order, List<GoodsSpu> spuList, OmsOrderImminentBo.ItemParam item, GoodsImminentBatch batch, GoodsSku sku) { |
|
|
|
OmsOrderItem orderItem = new OmsOrderItem(); |
|
|
|
orderItem.setRemark(item.getRemark()); |
|
|
|
orderItem.setQuantity(item.getQty()); |
|
|
|
orderItem.setOrderId(order.getId()); |
|
|
|
orderItem.setOrderSn(order.getOrderSn()); |
|
|
|
orderItem.setSpuId(sku.getId()); |
|
|
|
orderItem.setSpuId(sku.getSpuId()); |
|
|
|
for (GoodsSpu spu : spuList) { |
|
|
|
if(sku.getSpuId().equals(spu.getId())){ |
|
|
|
orderItem.setSpuCode(spu.getSpuCode()); |
|
|
|
orderItem.setSpuTitle(spu.getSpuCode()); |
|
|
|
orderItem.setSpuTitle(spu.getName()); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
orderItem.setWeight(sku.getWeight()); |
|
|
|
orderItem.setVolume(sku.getVolume()); |
|
|
|
orderItem.setRemark(sku.getRemark()); |
|
|
|
orderItem.setSkuBatchId(batch.getId()); |
|
|
|
orderItem.setSkuBatchCode(batch.getBatchCode()); |
|
|
|
orderItem.setSkuId(sku.getId()); |
|
|
@ -771,7 +782,6 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper,OmsOrder> im |
|
|
|
orderItem.setSalesPrice(sku.getSalesPrice()); |
|
|
|
orderItem.setCusPrice(sku.getSalesPrice()); |
|
|
|
orderItem.setMarketPrice(sku.getMarketPrice()); |
|
|
|
orderItem.setQuantity(item.getQty()); |
|
|
|
return orderItem; |
|
|
|
} |
|
|
|
|
|
|
@ -802,6 +812,9 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper,OmsOrder> im |
|
|
|
if(!omsOrder.getStatus().equals(0)&&!omsOrder.getStatus().equals(6)){ |
|
|
|
Assert.throwEx("订单状态不支持下单"); |
|
|
|
} |
|
|
|
if(omsOrder.getOrderType().equals(3)){ |
|
|
|
Assert.throwEx("临期品订单不支持该接口修改"); |
|
|
|
} |
|
|
|
LambdaQueryWrapper<OmsOrderItem> iteLqw = new LambdaQueryWrapper<>(); |
|
|
|
iteLqw.eq(OmsOrderItem::getOrderId,id); |
|
|
|
List<OmsOrderItem> orderItemList = omsOrderItemService.list(iteLqw); |
|
|
|