|
@@ -52,6 +52,9 @@ import static com.yami.shop.common.util.HttpUtil.post;
|
|
|
public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, OrderRefund> implements OrderRefundService {
|
|
|
|
|
|
private final OrderRefundMapper orderRefundMapper;
|
|
|
+
|
|
|
+ private final OrderRefundRecordMapper orderRefundRecordMapper;
|
|
|
+
|
|
|
private final OrderService orderService;
|
|
|
private final ProductService productService;
|
|
|
private final SkuService skuService;
|
|
@@ -1004,6 +1007,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
JSONObject bodyStr = hBRequest.getJSONObject("body");
|
|
|
log.info("退款订单信息,body:{}", bodyStr);
|
|
|
String channelOrderId = bodyStr.getString("channelOrderId");
|
|
|
+ Order order = orderMapper.getOrderByOrderNumber(channelOrderId);
|
|
|
OrderRefund orderRefund = orderRefundMapper.selectOne(new LambdaQueryWrapper<OrderRefund>().eq(OrderRefund::getRefundSn, bodyStr.getString("afterSaleOrder")));
|
|
|
ShopDetail shopDetailByShopId = shopDetailService.getShopDetailByShopId(orderRefund.getShopId());
|
|
|
|
|
@@ -1011,6 +1015,9 @@ 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())){
|
|
|
+ thirdPartyRefundRequest.setSaleType(2);
|
|
|
+ }
|
|
|
thirdPartyRefundRequest.setReason(orderRefund.getBuyerReason());
|
|
|
thirdPartyRefundRequest.setProblemDescription(orderRefund.getBuyerDesc());
|
|
|
thirdPartyRefundRequest.setPictures(orderRefund.getPhotoFiles());
|
|
@@ -1058,14 +1065,15 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
log.info("退款订单信息,参数:{}", thirdPartyRefundRequest);
|
|
|
|
|
|
|
|
|
- orderRefund.setReturnMoneySts(orderRefund.getReturnMoneySts());
|
|
|
- orderRefundMapper.updateById(orderRefund);
|
|
|
+// orderRefund.setReturnMoneySts(orderRefund.getReturnMoneySts());
|
|
|
+// orderRefundMapper.updateById(orderRefund);
|
|
|
|
|
|
// changeStatus(orderRefund.getRefundSn(), orderRefund.getReturnMoneySts());
|
|
|
|
|
|
// 返回退款单信息
|
|
|
+ log.info("退款订单状态:{}", orderRefund.getReturnMoneySts());
|
|
|
//TODO 退款单完成处理积分
|
|
|
- if (orderRefund.getReturnMoneySts() == 70) {
|
|
|
+ if (orderRefund.getReturnMoneySts().equals(70)) {
|
|
|
orderService.returnRefund(orderRefund.getOrderNumber());
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
@@ -1098,21 +1106,42 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
OrderRefund orderRefund = orderRefundMapper.selectOne(new LambdaQueryWrapper<OrderRefund>().eq(OrderRefund::getRefundSn, afterSaleOrder));
|
|
|
|
|
|
if (auditType == 3) {
|
|
|
+ //3:驳回
|
|
|
+ String reason = bodyStr.getString("reason");
|
|
|
orderRefund.setReturnMoneySts(ReturnMoneyStsType.REJECT.value());
|
|
|
- orderRefund.setRejectMessage(bodyStr.getString("reason"));
|
|
|
+ orderRefund.setRejectMessage(reason);
|
|
|
+ orderRefundMapper.updateById(orderRefund);
|
|
|
+
|
|
|
+ Order orderByOrderNumber = orderService.getOrderByOrderNumber(channelOrderId);
|
|
|
+ orderByOrderNumber.setRefundStatus(4);
|
|
|
+ orderService.updateById(orderByOrderNumber);
|
|
|
+
|
|
|
+ //生成待商家审核记录
|
|
|
+ OrderRefundRecord orderRefundRecord1 = new OrderRefundRecord();
|
|
|
+ orderRefundRecord1.setOrderRefundId(orderRefund.getRefundId());
|
|
|
+ orderRefundRecord1.setInstructions(reason);
|
|
|
+ orderRefundRecord1.setUpdateTime(new Date());
|
|
|
+ orderRefundRecord1.setAuditStatus(4);
|
|
|
+ orderRefundRecord1.setSort(3);
|
|
|
+ orderRefundRecordMapper.insert(orderRefundRecord1);
|
|
|
} else {
|
|
|
+ //审核通过
|
|
|
orderRefund.setApplyType(applyDeal);
|
|
|
orderRefund.setReturnMoneySts(ReturnMoneyStsType.SUCCESS.value());
|
|
|
+ orderRefundMapper.updateById(orderRefund);
|
|
|
+
|
|
|
+ //生成待商家审核记录
|
|
|
+ OrderRefundRecord orderRefundRecord1 = new OrderRefundRecord();
|
|
|
+ orderRefundRecord1.setOrderRefundId(orderRefund.getRefundId());
|
|
|
+ orderRefundRecord1.setInstructions("你的申请已通过,退款处理中");
|
|
|
+ orderRefundRecord1.setUpdateTime(new Date());
|
|
|
+ orderRefundRecord1.setAuditStatus(3);
|
|
|
+ orderRefundRecord1.setSort(3);
|
|
|
+ orderRefundRecordMapper.insert(orderRefundRecord1);
|
|
|
}
|
|
|
- orderRefundMapper.updateById(orderRefund);
|
|
|
|
|
|
|
|
|
- //3:驳回
|
|
|
- if (auditType == 3) {
|
|
|
- Order orderByOrderNumber = orderService.getOrderByOrderNumber(channelOrderId);
|
|
|
- orderByOrderNumber.setRefundStatus(4);
|
|
|
- orderService.updateById(orderByOrderNumber);
|
|
|
- }
|
|
|
+
|
|
|
|
|
|
//推送商家审核状态后 同步退款单状态
|
|
|
changeStatus(orderRefund.getRefundSn(), orderRefund.getReturnMoneySts());
|
|
@@ -1241,22 +1270,20 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
|
|
|
|
|
|
@Override
|
|
|
public HBR createResult(JSONObject hBRequest) {
|
|
|
- try {
|
|
|
- JSONObject bodyStr = hBRequest.getJSONObject("body");
|
|
|
- log.info("创建退款结果接口-回调接口,body:{}", bodyStr);
|
|
|
- String afterSaleOrder = bodyStr.getString("afterSaleOrder");
|
|
|
-
|
|
|
- OrderRefund orderRefund = orderRefundMapper.selectOne(new LambdaQueryWrapper<OrderRefund>().eq(OrderRefund::getRefundSn, afterSaleOrder));
|
|
|
- orderRefund.setReturnMoneySts(ReturnMoneyStsType.SUCCESS.value());
|
|
|
- orderRefundMapper.updateById(orderRefund);
|
|
|
-
|
|
|
- Order orderByOrderNumber = orderService.getById(orderRefund.getOrderId());
|
|
|
+// try {
|
|
|
+// JSONObject bodyStr = hBRequest.getJSONObject("body");
|
|
|
+// log.info("创建退款结果接口-回调接口,body:{}", bodyStr);
|
|
|
+// String afterSaleO
|
|
|
+// OrderRefund orderRefund = orderRefundMapper.selectOne(new LambdaQueryWrapper<OrderRefund>().eq(OrderRefund::getRefundSn, afterSaleOrder));
|
|
|
+// orderRefund.setReturnMoneySts(ReturnMoneyStsType.SUCCESS.value());
|
|
|
+// orderRefundMapper.updateById(orderRefund);
|
|
|
+// Order orderByOrderNumber = orderService.getById(orderRefund.getOrderId());
|
|
|
// orderByOrderNumber.setRefundStatus(2);
|
|
|
- orderService.updateById(orderByOrderNumber);
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("海博退款订单查询异常:{}", e);
|
|
|
- HBR.error("未知异常");
|
|
|
- }
|
|
|
+// orderService.updateById(orderByOrderNumber);
|
|
|
+// } catch (Exception e) {
|
|
|
+// log.error("海博退款订单查询异常:{}", e);
|
|
|
+// HBR.error("未知异常");
|
|
|
+// }
|
|
|
|
|
|
return HBR.success();
|
|
|
}
|