|
@@ -113,6 +113,7 @@ import com.yc.ship.module.trade.dal.dataobject.order.*;
|
|
|
import com.yc.ship.module.trade.dal.dataobject.orderjz.OrderJzDO;
|
|
import com.yc.ship.module.trade.dal.dataobject.orderjz.OrderJzDO;
|
|
|
import com.yc.ship.module.trade.dal.dataobject.orderpolicy.OrderPolicyDO;
|
|
import com.yc.ship.module.trade.dal.dataobject.orderpolicy.OrderPolicyDO;
|
|
|
import com.yc.ship.module.trade.dal.dataobject.refund.RefundDO;
|
|
import com.yc.ship.module.trade.dal.dataobject.refund.RefundDO;
|
|
|
|
|
+import com.yc.ship.module.trade.dal.dataobject.refund.RefundDetailDO;
|
|
|
import com.yc.ship.module.trade.dal.dataobject.refund.RefundRecordDO;
|
|
import com.yc.ship.module.trade.dal.dataobject.refund.RefundRecordDO;
|
|
|
import com.yc.ship.module.trade.dal.dataobject.tradeOrderaudit.TradeOrderAuditDO;
|
|
import com.yc.ship.module.trade.dal.dataobject.tradeOrderaudit.TradeOrderAuditDO;
|
|
|
import com.yc.ship.module.trade.dal.mysql.audituser.AuditUserMapper;
|
|
import com.yc.ship.module.trade.dal.mysql.audituser.AuditUserMapper;
|
|
@@ -121,6 +122,7 @@ import com.yc.ship.module.trade.dal.mysql.insurance.InsuranceMapper;
|
|
|
import com.yc.ship.module.trade.dal.mysql.order.*;
|
|
import com.yc.ship.module.trade.dal.mysql.order.*;
|
|
|
import com.yc.ship.module.trade.dal.mysql.orderjz.OrderJzMapper;
|
|
import com.yc.ship.module.trade.dal.mysql.orderjz.OrderJzMapper;
|
|
|
import com.yc.ship.module.trade.dal.mysql.orderpolicy.OrderPolicyMapper;
|
|
import com.yc.ship.module.trade.dal.mysql.orderpolicy.OrderPolicyMapper;
|
|
|
|
|
+import com.yc.ship.module.trade.dal.mysql.refund.RefundDetailMapper;
|
|
|
import com.yc.ship.module.trade.dal.mysql.refund.RefundMapper;
|
|
import com.yc.ship.module.trade.dal.mysql.refund.RefundMapper;
|
|
|
import com.yc.ship.module.trade.dal.mysql.refund.RefundRecordMapper;
|
|
import com.yc.ship.module.trade.dal.mysql.refund.RefundRecordMapper;
|
|
|
import com.yc.ship.module.trade.dal.mysql.tradeOrderaudit.TradeOrderAuditMapper;
|
|
import com.yc.ship.module.trade.dal.mysql.tradeOrderaudit.TradeOrderAuditMapper;
|
|
@@ -329,6 +331,9 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
@Resource
|
|
@Resource
|
|
|
private RefundMapper refundMapper;
|
|
private RefundMapper refundMapper;
|
|
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private RefundDetailMapper refundDetailMapper;
|
|
|
|
|
+
|
|
|
@Resource
|
|
@Resource
|
|
|
private RefundRecordMapper refundRecordMapper;
|
|
private RefundRecordMapper refundRecordMapper;
|
|
|
|
|
|
|
@@ -4718,15 +4723,34 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- @TradeOrderLog(operateType = TradeOrderOperateTypeEnum.HAND_ORDER_REFUND)
|
|
|
|
|
public String createHandRefundRecord(TradeRefundHandCreateReqVO createReqVO) {
|
|
public String createHandRefundRecord(TradeRefundHandCreateReqVO createReqVO) {
|
|
|
long id = IdWorker.getId();
|
|
long id = IdWorker.getId();
|
|
|
RefundDO refundDO = RefundDO.builder().id(id).orderId(createReqVO.getOrderId())
|
|
RefundDO refundDO = RefundDO.builder().id(id).orderId(createReqVO.getOrderId())
|
|
|
.refundAmount(createReqVO.getRefundAmount()).refundReason("手动新增线下退款记录").build();
|
|
.refundAmount(createReqVO.getRefundAmount()).refundReason("手动新增线下退款记录").build();
|
|
|
refundMapper.insert(refundDO);
|
|
refundMapper.insert(refundDO);
|
|
|
|
|
+ List<TradeDetailRespVO> detail = tradeDetailMapper.getOrderIdDetail(createReqVO.getOrderId());
|
|
|
|
|
+ if(detail!=null && !detail.isEmpty()){
|
|
|
|
|
+ RefundDetailDO refundDetailDO = RefundDetailDO.builder().id(IdWorker.getId())
|
|
|
|
|
+ .refundAmount(createReqVO.getRefundAmount()).refundTime(createReqVO.getRefundTime())
|
|
|
|
|
+ .refundId(id).tradeDetailId(detail.get(0).getId()).refundStatus(RefundStatusEnum.REFUND.getStatus()).build();
|
|
|
|
|
+ refundDetailMapper.insert(refundDetailDO);
|
|
|
|
|
+ }
|
|
|
|
|
+ List<TradeOrderPayDO> tradeOrderPayDOS =
|
|
|
|
|
+ tradeOrderPayMapper.selectList(
|
|
|
|
|
+ TradeOrderPayDO::getOrderId, createReqVO.getOrderId(),
|
|
|
|
|
+ TradeOrderPayDO::getPayStatus, "1"
|
|
|
|
|
+ );
|
|
|
|
|
+ Long orderPayId = null;
|
|
|
|
|
+ if(tradeOrderPayDOS!=null && !tradeOrderPayDOS.isEmpty()){
|
|
|
|
|
+ TradeOrderPayDO orderPayDO = tradeOrderPayDOS.get(0);
|
|
|
|
|
+ orderPayDO.setRefundAmount(createReqVO.getRefundAmount());
|
|
|
|
|
+ tradeOrderPayMapper.updateById(orderPayDO);
|
|
|
|
|
+ orderPayId = orderPayDO.getId();
|
|
|
|
|
+ }
|
|
|
RefundRecordDO refundRecordDO = RefundRecordDO.builder()
|
|
RefundRecordDO refundRecordDO = RefundRecordDO.builder()
|
|
|
.id(IdWorker.getId())
|
|
.id(IdWorker.getId())
|
|
|
.refundId(id)
|
|
.refundId(id)
|
|
|
|
|
+ .orderPayId(orderPayId)
|
|
|
.refundAmount(createReqVO.getRefundAmount())
|
|
.refundAmount(createReqVO.getRefundAmount())
|
|
|
.refundStatus(createReqVO.getRefundStatus())
|
|
.refundStatus(createReqVO.getRefundStatus())
|
|
|
.refundBackType(1)
|
|
.refundBackType(1)
|
|
@@ -4738,27 +4762,28 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
|
|
|
.refundNo(createReqVO.getRefundNo())
|
|
.refundNo(createReqVO.getRefundNo())
|
|
|
.refundTime(createReqVO.getRefundTime()).build();
|
|
.refundTime(createReqVO.getRefundTime()).build();
|
|
|
refundRecordMapper.insert(refundRecordDO);
|
|
refundRecordMapper.insert(refundRecordDO);
|
|
|
- TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(createReqVO.getOrderId());
|
|
|
|
|
- BigDecimal payAmount = tradeOrderDO.getPayAmount();
|
|
|
|
|
- tradeOrderDO.setPayAmount(tradeOrderDO.getPayAmount().subtract(createReqVO.getRefundAmount()));
|
|
|
|
|
- tradeOrderDO.setRealPayAmount(tradeOrderDO.getRealPayAmount().subtract(createReqVO.getRefundAmount()));
|
|
|
|
|
- tradeOrderMapper.updateById(tradeOrderDO);
|
|
|
|
|
- TradeOrderLogUtils.setOrderInfo(tradeOrderDO.getId(), tradeOrderDO.getOrderStatus(), tradeOrderDO.getOrderStatus(),
|
|
|
|
|
- MapUtil.<String, Object>builder()
|
|
|
|
|
- .put("oldPayAmount", payAmount)
|
|
|
|
|
- .put("payAmount", tradeOrderDO.getPayAmount())
|
|
|
|
|
- .put("refundAmount", createReqVO.getRefundAmount())
|
|
|
|
|
- .build());
|
|
|
|
|
- List<TradeOrderPayDO> tradeOrderPayDOS =
|
|
|
|
|
- tradeOrderPayMapper.selectList(
|
|
|
|
|
- TradeOrderPayDO::getOrderId, createReqVO.getOrderId(),
|
|
|
|
|
- TradeOrderPayDO::getPayStatus, "1"
|
|
|
|
|
- );
|
|
|
|
|
- if(tradeOrderPayDOS!=null && !tradeOrderPayDOS.isEmpty()){
|
|
|
|
|
- TradeOrderPayDO orderPayDO = tradeOrderPayDOS.get(0);
|
|
|
|
|
- orderPayDO.setPayAmount(tradeOrderDO.getPayAmount());
|
|
|
|
|
- tradeOrderPayMapper.updateById(orderPayDO);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// TradeOrderDO tradeOrderDO = tradeOrderMapper.selectById(createReqVO.getOrderId());
|
|
|
|
|
+// BigDecimal payAmount = tradeOrderDO.getPayAmount();
|
|
|
|
|
+// tradeOrderDO.setPayAmount(tradeOrderDO.getPayAmount().subtract(createReqVO.getRefundAmount()));
|
|
|
|
|
+// tradeOrderDO.setRealPayAmount(tradeOrderDO.getRealPayAmount().subtract(createReqVO.getRefundAmount()));
|
|
|
|
|
+// tradeOrderMapper.updateById(tradeOrderDO);
|
|
|
|
|
+// TradeOrderLogUtils.setOrderInfo(tradeOrderDO.getId(), tradeOrderDO.getOrderStatus(), tradeOrderDO.getOrderStatus(),
|
|
|
|
|
+// MapUtil.<String, Object>builder()
|
|
|
|
|
+// .put("oldPayAmount", payAmount)
|
|
|
|
|
+// .put("payAmount", tradeOrderDO.getPayAmount())
|
|
|
|
|
+// .put("refundAmount", createReqVO.getRefundAmount())
|
|
|
|
|
+// .build());
|
|
|
|
|
+// List<TradeOrderPayDO> tradeOrderPayDOS =
|
|
|
|
|
+// tradeOrderPayMapper.selectList(
|
|
|
|
|
+// TradeOrderPayDO::getOrderId, createReqVO.getOrderId(),
|
|
|
|
|
+// TradeOrderPayDO::getPayStatus, "1"
|
|
|
|
|
+// );
|
|
|
|
|
+// if(tradeOrderPayDOS!=null && !tradeOrderPayDOS.isEmpty()){
|
|
|
|
|
+// TradeOrderPayDO orderPayDO = tradeOrderPayDOS.get(0);
|
|
|
|
|
+// orderPayDO.setPayAmount(tradeOrderDO.getPayAmount());
|
|
|
|
|
+// tradeOrderPayMapper.updateById(orderPayDO);
|
|
|
|
|
+// }
|
|
|
|
|
+
|
|
|
return "";
|
|
return "";
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|