From bfc0d002ee31ceb7f74bd3ecd5008177ba31425b Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期六, 19 四月 2025 10:17:07 +0800 Subject: [PATCH] 999 --- src/main/java/com/zy/asrs/task/NotifyScheduler.java | 31 ++++++++++++++++++++++++++----- 1 files changed, 26 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/NotifyScheduler.java b/src/main/java/com/zy/asrs/task/NotifyScheduler.java index 601d9aa..43fe4f9 100644 --- a/src/main/java/com/zy/asrs/task/NotifyScheduler.java +++ b/src/main/java/com/zy/asrs/task/NotifyScheduler.java @@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.zy.asrs.domain.NotifyDto; +import com.zy.asrs.entity.HttpRequestLog; +import com.zy.asrs.service.HttpRequestLogService; import com.zy.asrs.utils.NotifyUtils; import com.zy.common.utils.HttpHandler; import com.zy.common.utils.RedisUtil; @@ -18,6 +20,7 @@ import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import java.util.Date; import java.util.List; @Component @@ -32,6 +35,8 @@ private SlaveProperties slaveProperties; @Autowired private ConfigService configService; + @Autowired + private HttpRequestLogService httpRequestLogService; @Scheduled(cron = "0/3 * * * * ? ") public synchronized void notifyShuttle(){ @@ -47,7 +52,12 @@ } } - private synchronized void notifyMsg(String deviceType, Integer device) { + @Scheduled(cron = "0/3 * * * * ? ") + public synchronized void notifyTask(){ + notifyMsg("task", 1); + } + + private synchronized void notifyMsg(String notifyType, Integer device) { Config notifyEnableConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "notifyEnable")); if(notifyEnableConfig == null){ return; @@ -69,7 +79,7 @@ } String notifyUriPath = notifyUriPathConfig.getValue(); - List<String> keys = notifyUtils.takeKeys(deviceType, device); + List<String> keys = notifyUtils.takeKeys(notifyType, device); if(keys == null){ return; } @@ -89,6 +99,11 @@ continue; } + HttpRequestLog httpRequestLog = new HttpRequestLog(); + httpRequestLog.setName(notifyUri + notifyUriPath); + httpRequestLog.setRequest(JSON.toJSONString(notifyDto)); + httpRequestLog.setCreateTime(new Date()); + try { //瑙﹀彂閫氱煡 String response = new HttpHandler.Builder() @@ -97,15 +112,21 @@ .setJson(JSON.toJSONString(notifyDto)) .build() .doPost(); + httpRequestLog.setResponse(response); + JSONObject jsonObject = JSON.parseObject(response); Integer code = jsonObject.getInteger("code"); if(code == 200){ //閫氱煡鎴愬姛 redisUtil.del(key); - return; + + continue; } }catch (Exception e){ e.printStackTrace(); + }finally { + //淇濆瓨璁板綍 + httpRequestLogService.insert(httpRequestLog); } //閫氱煡澶辫触 @@ -113,13 +134,13 @@ if (times >= notifyDto.getFailTimes()) { //瓒呰繃娆℃暟 redisUtil.del(key); - return; + continue; } notifyDto.setLastRetryTime(System.currentTimeMillis()); notifyDto.setRetryTimes(times); redisUtil.set(key, notifyDto); - return; + continue; } } -- Gitblit v1.9.1