处理订单快递单号错误时重新发货

This commit is contained in:
朱耘稷
2020-12-08 17:10:19 +08:00
parent bf49bb1976
commit 3266999397
3 changed files with 63 additions and 1 deletions

View File

@ -75,6 +75,14 @@ public interface YxStoreOrderService extends BaseService<YxStoreOrder>{
*/
void orderDelivery(String orderId,String deliveryId,String deliveryName,String deliveryType);
/**
* 修改快递单号
* @param orderId 单号
* @param deliveryId 快递单号
* @param deliveryName 快递公司code
* @param deliveryType 快递方式
*/
void updateDelivery(String orderId,String deliveryId,String deliveryName,String deliveryType);
/**
* 修改订单价格
* @param orderId 单号

View File

@ -724,7 +724,7 @@ public class YxStoreOrderServiceImpl extends BaseServiceImpl<StoreOrderMapper, Y
throw new YshopException("订单状态错误");
}
YxExpress expressQueryVo = expressService.getById(Integer.valueOf(deliveryName));
YxExpress expressQueryVo = expressService.getOne(new LambdaQueryWrapper<YxExpress>().eq(YxExpress::getName,deliveryName));
if(ObjectUtil.isNull(expressQueryVo)) {
throw new YshopException("请后台先添加快递公司");
}
@ -772,6 +772,42 @@ public class YxStoreOrderServiceImpl extends BaseServiceImpl<StoreOrderMapper, Y
}
/**
* 修改快递单号
* @param orderId 单号
* @param deliveryId 快递单号
* @param deliveryName 快递公司code
* @param deliveryType 快递方式
*/
@Override
public void updateDelivery(String orderId,String deliveryId,String deliveryName,String deliveryType) {
YxStoreOrderQueryVo orderQueryVo = this.getOrderInfo(orderId,null);
if(ObjectUtil.isNull(orderQueryVo)) {
throw new YshopException("订单不存在");
}
if(!OrderInfoEnum.STATUS_1.getValue().equals(orderQueryVo.getStatus()) ||
OrderInfoEnum.PAY_STATUS_0.getValue().equals( orderQueryVo.getPaid())){
throw new YshopException("订单状态错误");
}
YxExpress expressQueryVo = expressService.getOne(new LambdaQueryWrapper<YxExpress>().eq(YxExpress::getName,deliveryName));
if(ObjectUtil.isNull(expressQueryVo)) {
throw new YshopException("请后台先添加快递公司");
}
YxStoreOrder storeOrder = YxStoreOrder.builder()
.id(orderQueryVo.getId())
.deliveryId(deliveryId)
.deliveryName(expressQueryVo.getName())
.deliveryType(deliveryType)
.deliverySn(expressQueryVo.getCode())
.build();
yxStoreOrderMapper.updateById(storeOrder);
}
/**
* 修改订单价格