...
|
...
|
@@ -18,11 +18,13 @@ import com.yohoufo.order.constants.AlarmConfig; |
|
|
import com.yohoufo.order.event.BillLogEvent;
|
|
|
import com.yohoufo.order.event.ErpCancelSellerOrderEvent;
|
|
|
import com.yohoufo.order.event.OrderCancelEvent;
|
|
|
import com.yohoufo.order.model.AddressInfo;
|
|
|
import com.yohoufo.order.model.PayRefundBo;
|
|
|
import com.yohoufo.order.model.request.PaymentRequest;
|
|
|
import com.yohoufo.order.model.request.TransferMoneyRequest;
|
|
|
import com.yohoufo.order.mq.TopicConstants;
|
|
|
import com.yohoufo.order.mq.producer.TradeMqSender;
|
|
|
import com.yohoufo.order.service.IBuyerOrderMetaService;
|
|
|
import com.yohoufo.order.service.IPaymentService;
|
|
|
import com.yohoufo.order.service.impl.visitor.AutoCancelCase;
|
|
|
import com.yohoufo.order.service.impl.visitor.OffShelveCancelCase;
|
...
|
...
|
@@ -32,6 +34,7 @@ import com.yohoufo.order.service.proxy.ProductProxyService; |
|
|
import com.yohoufo.order.service.support.codegenerator.OrderCodeGenerator;
|
|
|
import com.yohoufo.order.service.support.codegenerator.bean.CodeMeta;
|
|
|
import com.yohoufo.order.utils.LoggerUtils;
|
|
|
import com.yohoufo.order.utils.SmsHelper;
|
|
|
import lombok.experimental.Builder;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
...
|
...
|
@@ -81,6 +84,13 @@ public class SellerOrderCancelService { |
|
|
@Autowired
|
|
|
private TransferService transferService;
|
|
|
|
|
|
@Autowired
|
|
|
private SellerAddressService sellerAddressService;
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
private IBuyerOrderMetaService buyerOrderMetaService;
|
|
|
|
|
|
/**
|
|
|
* TODO 如何控制好并发,必须控制不能重复转账 退款
|
|
|
* 使用乐观锁,带着查询到的状态且符合条件时再去更新
|
...
|
...
|
@@ -320,9 +330,9 @@ public class SellerOrderCancelService { |
|
|
BillLogEvent buyererBillLogEvent = bleb.tradeStatus(100)
|
|
|
.build();
|
|
|
EventBusPublisher.publishEvent(buyererBillLogEvent);
|
|
|
|
|
|
//
|
|
|
inBoxFacade.noticeBuyerWhenSellerCancelAfterPaid(buyerUid, buyerOrderCode,null);
|
|
|
AddressInfo addressInfo = buyerOrderMetaService.getAddressInfo(buyerUid, buyerOrderCode);
|
|
|
inBoxFacade.noticeBuyerWhenSellerCancelAfterPaid(buyerUid, buyerOrderCode, SmsHelper.getPhones(addressInfo));
|
|
|
//TODO 异步
|
|
|
SellerOrderGoods psog = sellerOrderGoodsMapper.selectByPrimaryKey(sellerOrder.getSkup());
|
|
|
inBoxFacade.sellerCancelAfterBuyerPaid(sellerUid, psog.getProductName());
|
...
|
...
|
@@ -476,7 +486,9 @@ public class SellerOrderCancelService { |
|
|
BillLogEvent sellerBillLogEvent = bleb.tradeStatus(100)
|
|
|
.build();
|
|
|
EventBusPublisher.publishEvent(sellerBillLogEvent);
|
|
|
inBoxFacade.notifyUnshelfCauseBySpecialReason(sellerUid, psog.getProductName(),null);
|
|
|
|
|
|
AddressInfo addressInfo = sellerAddressService.getAddressInfo(sellerUid, skup);
|
|
|
inBoxFacade.notifyUnshelfCauseBySpecialReason(sellerUid, psog.getProductName(), SmsHelper.getPhones(addressInfo));
|
|
|
}catch (Exception ex){
|
|
|
logger.warn("in yoho Off Shelve Cancel, refund earnestMoney fail, seller {}, order code {}, skup {}, earnestMoney {}",
|
|
|
sellerUid, orderCode, skup, earnestMoney, ex);
|
...
|
...
|
|