perf:下单重试

This commit is contained in:
xiang
2025-07-29 21:56:37 +08:00
parent 39af53d1de
commit 76251a1a2d

View File

@@ -12,6 +12,7 @@ import com.xiang.xservice.fwd.mapper.FwdPerformProjectInfoMapper;
import com.xiang.xservice.fwd.mapper.FwdPerformSeatInfoMapper;
import com.xiang.xservice.fwd.service.IPerformService;
import com.xiang.xservice.fwd.service.IPerformServiceHttp;
import com.xiang.xservice.http.helper.HttpRequestHelper;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
@@ -40,6 +41,7 @@ public class PerformServiceImpl implements IPerformService {
private final DingTalkService dingTalkService;
@Value("${DingTalk.chatId}")
private String chatId;
private final HttpRequestHelper httpRequestHelper;
@Override
public FPerformProjectInfo getPerformByProjectId(Long projectId) {
@@ -82,12 +84,14 @@ public class PerformServiceImpl implements IPerformService {
projectOrderCreateReq.setBlackBox("0");
projectOrderCreateReq.setCombineTicketVos(null);
projectOrderCreateReq.setOrdinaryTicketVos(null);
ProjectOrderCreateResp projectOrder = performServiceHttp.createProjectOrder(projectOrderCreateReq);
if (Objects.nonNull(projectOrder)) {
log.info("下单成功,订单信息:{}", JSONObject.toJSONString(projectOrder));
String msg = "【芬玩岛】下单成功✅✅✅,演出名称:" + performByProjectId.getProjectName() + "请在2分钟内完成付款";
dingTalkService.sendChatMessage(chatId, msg);
return Boolean.TRUE;
for (int i = 0; i <= 999; i++) {
ProjectOrderCreateResp projectOrder = httpRequestHelper.fetchWithRetry(() -> performServiceHttp.createProjectOrder(projectOrderCreateReq), "create-project-order");
if (Objects.nonNull(projectOrder)) {
log.info("下单成功,订单信息:{}", JSONObject.toJSONString(projectOrder));
String msg = "【芬玩岛】下单成功✅✅✅,演出名称:" + performByProjectId.getProjectName() + "请在2分钟内完成付款";
dingTalkService.sendChatMessage(chatId, msg);
return Boolean.TRUE;
}
}
}
return Boolean.FALSE;