|
|
@@ -1,6 +1,10 @@
|
|
|
package com.haha.service.payment.payscore.impl;
|
|
|
|
|
|
import com.haha.common.constant.OrderConstants;
|
|
|
+import com.haha.common.enums.OrderStatus;
|
|
|
+import com.haha.common.enums.PayScoreState;
|
|
|
+import com.haha.common.enums.PayStatus;
|
|
|
+import com.haha.common.enums.PaymentChannel;
|
|
|
import com.haha.entity.Order;
|
|
|
import com.haha.service.OrderService;
|
|
|
import com.haha.service.payment.config.WxPayConfig;
|
|
|
@@ -59,7 +63,7 @@ public class PayScoreServiceImpl implements PayScoreService {
|
|
|
|
|
|
Order order = validateAndGetOrder(orderId);
|
|
|
|
|
|
- if (order.getPayScoreOrderId() != null && !"REVOKED".equals(order.getPayScoreState())) {
|
|
|
+ if (order.getPayScoreOrderId() != null && !PayScoreState.REVOKED.getCode().equals(order.getPayScoreState())) {
|
|
|
log.warn("[支付分服务] 订单已存在支付分订单 - orderId: {}, payScoreState: {}",
|
|
|
orderId, order.getPayScoreState());
|
|
|
return PayScoreResult.fail("ORDER_EXISTS", "该订单已创建支付分服务订单");
|
|
|
@@ -91,7 +95,7 @@ public class PayScoreServiceImpl implements PayScoreService {
|
|
|
order.setServiceId(wxPayConfig.getServiceId());
|
|
|
}
|
|
|
order.setServiceStartTime(LocalDateTime.now());
|
|
|
- order.setPayChannel("wechat_payscore");
|
|
|
+ order.setPayChannel(PaymentChannel.WECHAT_PAYSCORE.getCode());
|
|
|
order.setPayType("微信支付分");
|
|
|
orderService.updateById(order);
|
|
|
|
|
|
@@ -130,7 +134,7 @@ public class PayScoreServiceImpl implements PayScoreService {
|
|
|
return PayScoreResult.fail("ORDER_NOT_CREATED", "该订单未创建支付分服务订单");
|
|
|
}
|
|
|
|
|
|
- if ("DONE".equals(order.getPayScoreState()) || "REVOKED".equals(order.getPayScoreState())) {
|
|
|
+ if (PayScoreState.isFinished(order.getPayScoreState())) {
|
|
|
log.warn("[支付分服务] 订单已完结或已取消 - orderId: {}, payScoreState: {}",
|
|
|
orderId, order.getPayScoreState());
|
|
|
return PayScoreResult.fail("ORDER_COMPLETED", "该订单已完结或已取消");
|
|
|
@@ -179,7 +183,7 @@ public class PayScoreServiceImpl implements PayScoreService {
|
|
|
return PayScoreResult.fail("ORDER_NOT_CREATED", "该订单未创建支付分服务订单");
|
|
|
}
|
|
|
|
|
|
- if ("DONE".equals(order.getPayScoreState()) || "REVOKED".equals(order.getPayScoreState())) {
|
|
|
+ if (PayScoreState.isFinished(order.getPayScoreState())) {
|
|
|
log.warn("[支付分服务] 订单已完结或已取消 - orderId: {}, payScoreState: {}",
|
|
|
orderId, order.getPayScoreState());
|
|
|
return PayScoreResult.fail("ORDER_COMPLETED", "该订单已完结或已取消");
|
|
|
@@ -192,8 +196,8 @@ public class PayScoreServiceImpl implements PayScoreService {
|
|
|
PayScoreResult result = payScoreStrategy.cancelServiceOrder(request);
|
|
|
|
|
|
if (result.isSuccess()) {
|
|
|
- order.setPayScoreState("REVOKED");
|
|
|
- order.setStatus(OrderConstants.STATUS_CANCELLED);
|
|
|
+ order.setPayScoreState(PayScoreState.REVOKED.getCode());
|
|
|
+ order.setStatus(OrderStatus.CANCELLED.getCode());
|
|
|
orderService.updateById(order);
|
|
|
|
|
|
log.info("[支付分服务] 取消服务订单成功 - orderId: {}", orderId);
|
|
|
@@ -251,12 +255,12 @@ public class PayScoreServiceImpl implements PayScoreService {
|
|
|
}
|
|
|
|
|
|
if ("PAYSCORE.USER_CONFIRMED".equals(eventType)) {
|
|
|
- order.setPayScoreState("DOING");
|
|
|
+ order.setPayScoreState(PayScoreState.DOING.getCode());
|
|
|
log.info("[支付分服务] 用户确认使用服务 - orderId: {}", order.getId());
|
|
|
} else if ("PAYSCORE.USER_PAID".equals(eventType)) {
|
|
|
- order.setPayScoreState("DONE");
|
|
|
- order.setPayStatus(OrderConstants.PAY_STATUS_PAID);
|
|
|
- order.setStatus(OrderConstants.STATUS_COMPLETED);
|
|
|
+ order.setPayScoreState(PayScoreState.DONE.getCode());
|
|
|
+ order.setPayStatus(PayStatus.PAID.getCode());
|
|
|
+ order.setStatus(OrderStatus.COMPLETED.getCode());
|
|
|
order.setPayTime(result.getPayTime() != null ? result.getPayTime() : LocalDateTime.now());
|
|
|
if (result.getTotalAmount() != null) {
|
|
|
order.setTotalAmount(result.getTotalAmount());
|
|
|
@@ -301,14 +305,14 @@ public class PayScoreServiceImpl implements PayScoreService {
|
|
|
if (newState != null && !newState.equals(oldState)) {
|
|
|
order.setPayScoreState(newState);
|
|
|
|
|
|
- if ("DONE".equals(newState)) {
|
|
|
- order.setPayStatus(OrderConstants.PAY_STATUS_PAID);
|
|
|
- order.setStatus(OrderConstants.STATUS_COMPLETED);
|
|
|
+ if (PayScoreState.isDone(newState)) {
|
|
|
+ order.setPayStatus(PayStatus.PAID.getCode());
|
|
|
+ order.setStatus(OrderStatus.COMPLETED.getCode());
|
|
|
if (result.getTotalAmount() != null) {
|
|
|
order.setTotalAmount(result.getTotalAmount());
|
|
|
}
|
|
|
- } else if ("REVOKED".equals(newState)) {
|
|
|
- order.setStatus(OrderConstants.STATUS_CANCELLED);
|
|
|
+ } else if (PayScoreState.isRevoked(newState)) {
|
|
|
+ order.setStatus(OrderStatus.CANCELLED.getCode());
|
|
|
}
|
|
|
|
|
|
orderService.updateById(order);
|