diff --git a/pom.xml b/pom.xml
index 47fb50b..6e05f59 100644
--- a/pom.xml
+++ b/pom.xml
@@ -35,7 +35,7 @@
com.xiang
xservice-third-part
- 1.0-snapshot
+ 1.1-snapshot
com.xiang
diff --git a/script/src/main/java/com/xiang/xservice/domain/service/IDomainServiceImpl.java b/script/src/main/java/com/xiang/xservice/domain/service/IDomainServiceImpl.java
index 92e2cdd..4f4dd6e 100644
--- a/script/src/main/java/com/xiang/xservice/domain/service/IDomainServiceImpl.java
+++ b/script/src/main/java/com/xiang/xservice/domain/service/IDomainServiceImpl.java
@@ -58,14 +58,14 @@ public class IDomainServiceImpl implements IDomainService {
if (records.isEmpty()) {
log.info("未找到记录,添加记录..., ip:{}", publicIp);
addDnsRecord(client, publicIp, rr);
- dingTalkService.sendChatMessage(chatId, "动态解析公网ip成功,域名:" + rr + "." + DOMAIN_NAME + ", 新ip:" + publicIp);
+ dingTalkService.sendRobotMessage("动态解析公网ip成功,域名:" + rr + "." + DOMAIN_NAME + ", 新ip:" + publicIp);
} else {
String recordId = records.get(0).getRecordId();
String currentValue = records.get(0).getValue();
if (!publicIp.equals(currentValue)) {
log.info("IP变更,更新记录...,ip:{}", publicIp);
updateDnsRecord(client, recordId, publicIp, rr);
- dingTalkService.sendChatMessage(chatId, "动态解析公网ip成功,域名:" + rr + "." + DOMAIN_NAME + ", 新ip:" + publicIp);
+ dingTalkService.sendRobotMessage("动态解析公网ip成功,域名:" + rr + "." + DOMAIN_NAME + ", 新ip:" + publicIp);
} else {
log.info("ip未变更,无需修改,ip:{}", publicIp);
}
diff --git a/script/src/main/java/com/xiang/xservice/fwd/constants/CodeConstants.java b/script/src/main/java/com/xiang/xservice/fwd/constants/CodeConstants.java
index fdaa507..39c160b 100644
--- a/script/src/main/java/com/xiang/xservice/fwd/constants/CodeConstants.java
+++ b/script/src/main/java/com/xiang/xservice/fwd/constants/CodeConstants.java
@@ -2,4 +2,5 @@ package com.xiang.xservice.fwd.constants;
public class CodeConstants {
public static final Integer SUCCESS = 10000;
+ public static final Integer LIMIT = 47009;
}
diff --git a/script/src/main/java/com/xiang/xservice/fwd/schedule/TicketGrabTask.java b/script/src/main/java/com/xiang/xservice/fwd/schedule/TicketGrabTask.java
index ae6b271..88eee70 100644
--- a/script/src/main/java/com/xiang/xservice/fwd/schedule/TicketGrabTask.java
+++ b/script/src/main/java/com/xiang/xservice/fwd/schedule/TicketGrabTask.java
@@ -45,11 +45,8 @@ public class TicketGrabTask implements Runnable {
for (FUserConfig userConfig : availableUser) {
List audiences = audienceConfigMapper.getAudienceByUserId(userConfig.getId());
try {
- if (performService.createProjectOrder(param.getProjectId(), audiences.stream().map(FAudienceConfig::getFrequentId).collect(Collectors.toList()))) {
- dynamicTaskSchedulerService.finishTask(param.getTaskId());
- } else {
- dynamicTaskSchedulerService.finishTask(param.getTaskId());
- }
+ performService.createProjectOrder(param.getProjectId(), audiences.stream().map(FAudienceConfig::getFrequentId).collect(Collectors.toList()));
+ dynamicTaskSchedulerService.finishTask(param.getTaskId());
} catch (Exception e) {
log.error("创建订单失败", e);
dynamicTaskSchedulerService.errTask(param.getTaskId());
diff --git a/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceHttpServiceImpl.java b/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceHttpServiceImpl.java
index 1a6145e..2ea1380 100644
--- a/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceHttpServiceImpl.java
+++ b/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceHttpServiceImpl.java
@@ -100,6 +100,14 @@ public class PerformServiceHttpServiceImpl implements IPerformServiceHttp {
}
return projectOrderCreateResp;
}
+ if (Objects.nonNull(code) && Objects.equals(code, CodeConstants.LIMIT)) {
+ try {
+ Thread.sleep(60000);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
return null;
}
diff --git a/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceImpl.java b/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceImpl.java
index 4dafea6..3980f78 100644
--- a/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceImpl.java
+++ b/script/src/main/java/com/xiang/xservice/fwd/service/impl/PerformServiceImpl.java
@@ -1,6 +1,7 @@
package com.xiang.xservice.fwd.service.impl;
import com.alibaba.fastjson2.JSONObject;
+import com.xiang.xservice.basic.config.MyThreadFactory;
import com.xiang.xservice.basic.xservice.dingTalk.service.DingTalkService;
import com.xiang.xservice.fwd.entity.pojo.FPerformConfig;
import com.xiang.xservice.fwd.entity.pojo.FPerformProjectInfo;
@@ -24,6 +25,10 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
/**
* @Author: xiang
@@ -42,6 +47,15 @@ public class PerformServiceImpl implements IPerformService {
@Value("${DingTalk.chatId}")
private String chatId;
private final HttpRequestHelper httpRequestHelper;
+ private final ExecutorService es =
+ new ThreadPoolExecutor(
+ 10,
+ 20,
+ 1000,
+ TimeUnit.MILLISECONDS,
+ new LinkedBlockingQueue<>(),
+ new MyThreadFactory("ticket-", Boolean.TRUE),
+ new ThreadPoolExecutor.AbortPolicy());
@Override
public FPerformProjectInfo getPerformByProjectId(Long projectId) {
@@ -84,12 +98,12 @@ public class PerformServiceImpl implements IPerformService {
projectOrderCreateReq.setBlackBox("0");
projectOrderCreateReq.setCombineTicketVos(null);
projectOrderCreateReq.setOrdinaryTicketVos(null);
- for (int i = 0; i <= 999; i++) {
+ for (int i = 1; i <= 30; 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);
+ dingTalkService.sendRobotMessage(msg);
return Boolean.TRUE;
}
}
diff --git a/script/src/main/java/com/xiang/xservice/glados/service/GLaDOSServiceImpl.java b/script/src/main/java/com/xiang/xservice/glados/service/GLaDOSServiceImpl.java
index 18fbb0f..7ae1cab 100644
--- a/script/src/main/java/com/xiang/xservice/glados/service/GLaDOSServiceImpl.java
+++ b/script/src/main/java/com/xiang/xservice/glados/service/GLaDOSServiceImpl.java
@@ -84,7 +84,7 @@ public class GLaDOSServiceImpl implements GLaDOSService{
log.info("签到成功, 签到积分:{}, 签到消息:{}", gLaDOSResponse.getPoints(), gLaDOSResponse.getMessage());
sb.append(user.getEmail()).append("签到成功,获得积分:").append(gLaDOSResponse.getPoints()).append("\n");
try {
- dingTalkService.sendChatMessage(chatId, "[时间:" + LocalDateTime.now() + "] 用户: " +
+ dingTalkService.sendRobotMessage("[时间:" + LocalDateTime.now() + "] 用户: " +
user.getEmail() + "签到成功,获得积分:" + gLaDOSResponse.getPoints());
} catch (Exception e) {
log.error("发送钉钉消息失败", e);