Sfoglia il codice sorgente

fix 代充成功后修改对应订单状态

zoujiajian 1 anno fa
parent
commit
6a74c65b01

+ 13 - 4
netflix-service/src/main/java/com/cyksj/server/recharge/impl/GptProxyRechargeServiceImpl.java

@@ -310,11 +310,11 @@ public class GptProxyRechargeServiceImpl implements GptProxyRechargeService {
 			if (relation != null && relation.getRechargeStatus() == GroupsRelation.RechargeStatus.recharging) {
 				Integer rechargeRemainNum = relation.getRechargeRemainNum();
 				GroupsRelation.RechargeStatus rechargeStatus = "completed".equals(status) ? GroupsRelation.RechargeStatus.complete : GroupsRelation.RechargeStatus.recharge_error;
+				String cardKey = relation.getCardKey();
+				GptRechargeCardKey gptRechargeCardKey = gptRechargeCardKeyMapper.selectOne(Wrappers.lambdaQuery(GptRechargeCardKey.class)
+						.eq(GptRechargeCardKey::getCardKey, cardKey)
+						.last("limit 1"));
 				if (rechargeStatus == GroupsRelation.RechargeStatus.recharge_error) {
-					String cardKey = relation.getCardKey();
-					GptRechargeCardKey gptRechargeCardKey = gptRechargeCardKeyMapper.selectOne(Wrappers.lambdaQuery(GptRechargeCardKey.class)
-							.eq(GptRechargeCardKey::getCardKey, cardKey)
-							.last("limit 1"));
 					if (gptRechargeCardKey != null) {
 						gptRechargeCardKeyMapper.update(null, Wrappers.lambdaUpdate(GptRechargeCardKey.class)
 								.set(GptRechargeCardKey::getStatus, Boolean.FALSE)
@@ -359,6 +359,15 @@ public class GptProxyRechargeServiceImpl implements GptProxyRechargeService {
 				//记录代充记录
 				if (rechargeStatus == GroupsRelation.RechargeStatus.complete) {
 					gptUserRechargeRecordService.recordGptUserRechargeNum(relation.getUserId(), relation.getId(), relation.getAccount(), 1, null);
+					//修改对应订单状态
+					if (gptRechargeCardKey != null) {
+						Long orderId = gptRechargeCardKey.getOrderId();
+						OrderDon orderDon = orderDonMapper.selectById(orderId);
+						if (orderDon != null && orderDon.getStatus() == OrderDon.Status.hasPayment) {
+							orderDon.setStatus(OrderDon.Status.complete);
+							orderDonMapper.updateById(orderDon);
+						}
+					}
 				}
 			}
 		}