|
|
@@ -1,23 +1,27 @@
|
|
|
package cn.com.ctop.job.adq.data.service.impl;
|
|
|
|
|
|
+import cn.com.ctop.job.adq.data.entity.LySendMessageLog;
|
|
|
import cn.com.ctop.job.adq.data.mapper.AppBanWarnMapper;
|
|
|
import cn.com.ctop.job.adq.data.service.IAppBanWarnService;
|
|
|
import cn.com.ctop.job.adq.data.utils.Check;
|
|
|
+import cn.com.ctop.job.adq.data.utils.DateUtils;
|
|
|
import cn.com.ctop.job.adq.data.utils.HttpUtils;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
|
@Service
|
|
|
+@Slf4j
|
|
|
public class AppBanWarnServiceImpl implements IAppBanWarnService {
|
|
|
@Autowired
|
|
|
private AppBanWarnMapper appBanWarnMapper;
|
|
|
|
|
|
@Override
|
|
|
public void appBanWarnJob(long createAt) {
|
|
|
+ String date = DateUtils.getNowDate("yyyyMMdd");
|
|
|
List<JSONObject> list = appBanWarnMapper.getAppBanList(createAt);
|
|
|
if (Check.isNull(list)) {
|
|
|
return;
|
|
|
@@ -27,15 +31,29 @@ public class AppBanWarnServiceImpl implements IAppBanWarnService {
|
|
|
String appId = jsonObject.getString("appId");
|
|
|
String appName = jsonObject.getString("appName");
|
|
|
String num = jsonObject.getString("num");
|
|
|
- sendMessage(appId, appName, num);
|
|
|
+ Integer sendNum = appBanWarnMapper.checkNum(appId, date);
|
|
|
+ if (sendNum == 0) {
|
|
|
+ JSONObject returnJson = sendMessage(appId, appName, num);
|
|
|
+ if (!Check.isNull(returnJson)) {
|
|
|
+ Integer statusCode = returnJson.getInteger("StatusCode");
|
|
|
+ Integer code = returnJson.getInteger("code");
|
|
|
+ if (code == 0 && statusCode == 0) {
|
|
|
+ LySendMessageLog sendMessageLog = new LySendMessageLog();
|
|
|
+ sendMessageLog.setAppId(appId);
|
|
|
+ sendMessageLog.setSendDate(date);
|
|
|
+ appBanWarnMapper.insertSendLog(sendMessageLog);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ log.info("此应用今日已经发送预警,此次跳过,appid:{},date:{}", appId, date);
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
|
|
|
|
|
|
- public void sendMessage(String appId, String appName, String num) {
|
|
|
+ public JSONObject sendMessage(String appId, String appName, String num) {
|
|
|
String url = "https://open.feishu.cn/open-apis/bot/v2/hook/f7278c1e-0455-40d9-8893-d09d7936eca4";
|
|
|
+ // String url = "https://open.feishu.cn/open-apis/bot/v2/hook/bb4853d2-9740-4007-a0c2-92ec319c914e";
|
|
|
JSONObject param = new JSONObject();
|
|
|
param.put("msg_type", "interactive");
|
|
|
JSONObject card = new JSONObject();
|
|
|
@@ -52,6 +70,8 @@ public class AppBanWarnServiceImpl implements IAppBanWarnService {
|
|
|
card.put("data", data);
|
|
|
param.put("card", card);
|
|
|
String s = HttpUtils.httpPostRequest(url, param, null);
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(s);
|
|
|
+ return jsonObject;
|
|
|
|
|
|
}
|
|
|
}
|