|
|
@@ -66,6 +66,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
private final ShopDetailService shopDetailService;
|
|
|
private final ShopWalletMapper shopWalletMapper;
|
|
|
private final OrderMapper orderMapper;
|
|
|
+ private final OrderItemMapper orderItemMapper;
|
|
|
private final MapperFacade mapperFacade;
|
|
|
private final ShopWalletLogService shopWalletLogService;
|
|
|
private final ApplicationContext applicationContext;
|
|
|
@@ -75,7 +76,6 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
private final OrderRefundSkuMapper orderRefundSkuMapper;
|
|
|
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* 获取分页对象
|
|
|
*/
|
|
|
@@ -121,7 +121,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
}
|
|
|
}
|
|
|
orderRefundDto.setRecords(orderRefundRecordMapper.selectList(new LambdaQueryWrapper<OrderRefundRecord>()
|
|
|
- .eq(OrderRefundRecord::getOrderRefundId,orderRefundDto.getRefundId())
|
|
|
+ .eq(OrderRefundRecord::getOrderRefundId, orderRefundDto.getRefundId())
|
|
|
.orderByDesc(OrderRefundRecord::getSort)));
|
|
|
return orderRefundDto;
|
|
|
}
|
|
|
@@ -296,9 +296,18 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
}
|
|
|
|
|
|
private void getRefundTypeByOrderItem2(OrderRefundDto orderRefundDto) {
|
|
|
+ int oldSum = orderItemMapper.selectList(new LambdaQueryWrapper<OrderItem>()
|
|
|
+ .eq(OrderItem::getOrderNumber, orderRefundDto.getOrderNumber())).stream().mapToInt(OrderItem::getProdCount)
|
|
|
+ .sum();
|
|
|
List<OrderItem> item = orderItemService.getRefundTypeByOrderItem2(orderRefundDto.getRefundId());
|
|
|
- if (!item.isEmpty()){
|
|
|
- orderRefundDto.setGoodsTotal(item.stream().map(OrderItem::getGoodsTotal).reduce(0.0, Double::sum));}
|
|
|
+ int newSum = item.stream().mapToInt(OrderItem::getProductCount).sum();
|
|
|
+ if (!item.isEmpty()) {
|
|
|
+ orderRefundDto.setGoodsTotal(item.stream().map(OrderItem::getGoodsTotal).reduce(0.0, Double::sum));
|
|
|
+ if (oldSum == newSum) {
|
|
|
+ //代表全部退,所以需要增加运费显示
|
|
|
+ orderRefundDto.setGoodsTotal(orderRefundDto.getGoodsTotal() + orderRefundDto.getFreightAmount());
|
|
|
+ }
|
|
|
+ }
|
|
|
orderRefundDto.setOrderItems(item);
|
|
|
}
|
|
|
|
|
|
@@ -943,7 +952,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
//*************************** 售后接口 ***************************
|
|
|
@Override
|
|
|
public String createRefundOrder(String channelOrderId, String afterSaleOrder) {
|
|
|
- log.info("createRefundOrder 退款单推送单号开始channelOrderId:{},afterSaleOrder:{}",channelOrderId,afterSaleOrder);
|
|
|
+ log.info("createRefundOrder 退款单推送单号开始channelOrderId:{},afterSaleOrder:{}", channelOrderId, afterSaleOrder);
|
|
|
HBBaseReq<Object> build = HBBaseReq.create();
|
|
|
build.setAppId(hbSignUtil.getAppId());
|
|
|
|
|
|
@@ -1002,7 +1011,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
thirdPartyRefundRequest.setOutStationNo(shopDetailByShopId.getHbStationNo());
|
|
|
thirdPartyRefundRequest.setAfterSaleOrder(orderRefund.getRefundSn());
|
|
|
thirdPartyRefundRequest.setSaleType(1);//售前售后标 1:售前 2:售后
|
|
|
- if (order.getHbOrderStatus().equals(OrderStatus.SUCCESS.value())){
|
|
|
+ if (order.getHbOrderStatus().equals(OrderStatus.SUCCESS.value())) {
|
|
|
thirdPartyRefundRequest.setSaleType(2);
|
|
|
}
|
|
|
thirdPartyRefundRequest.setReason(orderRefund.getBuyerReason());
|
|
|
@@ -1012,7 +1021,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
Integer applyType = orderRefund.getApplyType();
|
|
|
if (Objects.equals(applyType, 1)) {
|
|
|
thirdPartyRefundRequest.setApplyDeal(10);
|
|
|
- } else if (Objects.equals(applyType, 2)){
|
|
|
+ } else if (Objects.equals(applyType, 2)) {
|
|
|
thirdPartyRefundRequest.setApplyDeal(40);
|
|
|
} else {
|
|
|
thirdPartyRefundRequest.setApplyDeal(50);
|
|
|
@@ -1104,9 +1113,9 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
//审核通过
|
|
|
orderRefund.setApplyType(applyDeal);
|
|
|
|
|
|
- if (applyDeal == 1){
|
|
|
+ if (applyDeal == 1) {
|
|
|
orderRefund.setReturnMoneySts(ReturnMoneyStsType.SUCCESS.value());
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
//退货退款需要处理二审
|
|
|
orderRefund.setReturnMoneySts(ReturnMoneyStsType.CONSIGNMENT.value());
|
|
|
}
|
|
|
@@ -1122,7 +1131,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
orderRefundRecordMapper.insert(orderRefundRecord1);
|
|
|
}
|
|
|
|
|
|
- if (applyDeal == 1){
|
|
|
+ if (applyDeal == 1) {
|
|
|
orderService.returnRefund(orderRefund.getOrderNumber());
|
|
|
}
|
|
|
//推送商家审核状态后 同步退款单状态
|