|
@@ -4,12 +4,7 @@ import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.img.ImgUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
-import com.dingtalk.api.DefaultDingTalkClient;
|
|
|
-import com.dingtalk.api.DingTalkClient;
|
|
|
-import com.dingtalk.api.request.OapiRobotSendRequest;
|
|
|
-import com.dingtalk.api.response.OapiRobotSendResponse;
|
|
|
import com.fdkankan.common.constant.CommonOperStatus;
|
|
|
-import com.fdkankan.common.util.Base64Converter;
|
|
|
import com.fdkankan.common.util.DateExtUtil;
|
|
|
import com.fdkankan.dingtalk.DingTalkSendUtils;
|
|
|
import com.fdkankan.job.entity.SceneBuildProcessLog;
|
|
@@ -19,7 +14,6 @@ import com.fdkankan.job.service.ISceneBuildProcessLogService;
|
|
|
import com.fdkankan.job.service.IScenePlusService;
|
|
|
import com.fdkankan.job.service.ISceneProService;
|
|
|
import com.fdkankan.model.constants.SceneBuildProcessType;
|
|
|
-import com.taobao.api.ApiException;
|
|
|
import com.xxl.job.core.context.XxlJobHelper;
|
|
|
import com.xxl.job.core.handler.annotation.XxlJob;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -27,15 +21,12 @@ import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.cloud.context.config.annotation.RefreshScope;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
-import javax.crypto.Mac;
|
|
|
-import javax.crypto.spec.SecretKeySpec;
|
|
|
import java.io.File;
|
|
|
-import java.io.UnsupportedEncodingException;
|
|
|
-import java.net.URLEncoder;
|
|
|
-import java.security.InvalidKeyException;
|
|
|
-import java.security.NoSuchAlgorithmException;
|
|
|
import java.sql.SQLException;
|
|
|
-import java.util.*;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Calendar;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
import java.util.concurrent.atomic.AtomicInteger;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
@@ -272,48 +263,10 @@ public class SceneCallCountHandler {
|
|
|
errorMsg);
|
|
|
|
|
|
XxlJobHelper.log(ddMsg);
|
|
|
- this.sendActioncardMsgToDingRobot(ddMsg, "场景计算统计");
|
|
|
+ dingTalkSendUtils.sendActioncardMsgToDingRobot(ddMsg, "场景计算统计");
|
|
|
XxlJobHelper.log("sceneCallCountHandler end.....");
|
|
|
}
|
|
|
|
|
|
- public void sendActioncardMsgToDingRobot(String content,String title) throws ApiException, UnsupportedEncodingException, NoSuchAlgorithmException, InvalidKeyException {
|
|
|
- Long timestamp = System.currentTimeMillis();
|
|
|
- String sign = getSign(timestamp);
|
|
|
- DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/robot/send?" +
|
|
|
- "access_token="+token +
|
|
|
- "×tamp=".concat(String.valueOf(timestamp)).concat("&sign=").concat(sign));
|
|
|
-
|
|
|
- OapiRobotSendRequest request = new OapiRobotSendRequest();
|
|
|
- request.setMsgtype("text");
|
|
|
- OapiRobotSendRequest.Text text = new OapiRobotSendRequest.Text();
|
|
|
-
|
|
|
- text.setContent("@18683904472");
|
|
|
-
|
|
|
- request.setText(text);
|
|
|
- OapiRobotSendRequest.At at = new OapiRobotSendRequest.At();
|
|
|
- at.setAtMobiles(Arrays.asList("18683904472"));
|
|
|
- // isAtAll类型如果不为Boolean,请升级至最新SDK
|
|
|
- at.setIsAtAll(false);
|
|
|
- request.setAt(at);
|
|
|
- OapiRobotSendResponse re = client.execute(request);
|
|
|
- System.out.println(re.getBody());
|
|
|
- }
|
|
|
-
|
|
|
- @Value("${dingtalk.token:e712c41d917b303e21c1550ad9966b33dad874043f2f73fb347dce67a0a201bc}")
|
|
|
- private String token;
|
|
|
-
|
|
|
- @Value("${dingtalk.secret:SECca5af660ed882a67d8bda469095bf8454831528bd25bc7b1a3ff5f686109b9e5}")
|
|
|
- private String secret;
|
|
|
-
|
|
|
- public String getSign(Long timestamp) throws NoSuchAlgorithmException, UnsupportedEncodingException, InvalidKeyException {
|
|
|
- String stringToSign = timestamp + "\n" + secret;
|
|
|
- Mac mac = Mac.getInstance("HmacSHA256");
|
|
|
- mac.init(new SecretKeySpec(secret.getBytes("UTF-8"), "HmacSHA256"));
|
|
|
- byte[] signData = mac.doFinal(stringToSign.getBytes("UTF-8"));
|
|
|
- System.out.println(new String(signData));
|
|
|
- return URLEncoder.encode(Base64Converter.encode(signData));
|
|
|
- }
|
|
|
-
|
|
|
public static void main(String[] args) throws SQLException {
|
|
|
|
|
|
System.out.println("ggg 123123");
|