From b1bd4cbd01cb8d7616de0b3c321439985a149e5e Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 13 十月 2023 14:15:06 +0800
Subject: [PATCH] 代码提交
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/DingTalkController.java | 126 +++++++----------------------------------
1 files changed, 23 insertions(+), 103 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/DingTalkController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/DingTalkController.java
index 2b5f8a3..e2d943a 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/DingTalkController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/DingTalkController.java
@@ -1,130 +1,50 @@
package com.ruoyi.web.controller.smartor;
-import com.alibaba.fastjson2.JSONArray;
-import com.alibaba.fastjson2.JSONObject;
-import com.dingtalk.api.DefaultDingTalkClient;
-import com.dingtalk.api.DingTalkClient;
-import com.dingtalk.api.request.OapiGettokenRequest;
-import com.dingtalk.api.request.OapiMessageCorpconversationAsyncsendV2Request;
-import com.dingtalk.api.request.OapiUserListidRequest;
-import com.dingtalk.api.response.OapiGettokenResponse;
-import com.dingtalk.api.response.OapiMessageCorpconversationAsyncsendV2Response;
-import com.dingtalk.api.response.OapiUserListidResponse;
import com.ruoyi.common.core.controller.BaseController;
+import com.smartor.domain.DingTalkReqVo;
+import com.smartor.service.DingTalkService;
import com.taobao.api.ApiException;
-import org.apache.commons.lang3.StringUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.PropertySource;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
-import java.util.ArrayList;
-import java.util.List;
-
/**
- * 寰俊鎺ュ彛
+ * 閽夐拤鎺ュ彛
*
* @author liusheng
* @date 2023-05-15
*/
+@Api(description = "閽夐拤鎺ュ彛")
@RestController
@RequestMapping("/smartor/dingtalk")
+@PropertySource(value = {"classpath:application-druid.yml"})
public class DingTalkController extends BaseController {
- @Value("appid")
- private String dingAppid = "dingn8iip5ubj7clrrsv";
+ @Value("${dingAppid}")
+ private String dingAppid;
- @Value("appSecret")
- private String dingAppSecret = "qlEK8D3oOVwGPOTiBQIBYTqQVlAfy9S_qQizEQFjJdSScwemWFryg4gbneu-NqWD";
+ @Value("${dingAppSecret}")
+ private String dingAppSecret;
+
+ @Autowired
+ private DingTalkService dingTalkService;
/**
* 鍙戦�侀拤閽夋秷鎭�
*
- * @param mobile
- * @param park
- * @param alarmCode
- * @param severityDesc
+ * @param dingTalkReqVo 鍙戦�佸唴瀹�
* @throws ApiException
*/
- public void sendNotification(String mobile, String park, String alarmCode, String severityDesc) throws ApiException {
- // Log.info("鍙戦�侀拤閽夐�氱煡");
- String accessToken = getAccessToken();
- if (StringUtils.isBlank(mobile)) {
- return;
- }
- DingTalkClient client3 = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/user/listid");
-
- OapiUserListidRequest request2 = new OapiUserListidRequest();
- request2.setDeptId(675909059L); // 璁剧疆瑕佽幏鍙栫殑閮ㄩ棬 ID锛岃繖閲屼互鏍归儴闂ㄤ负渚�
- // 璁剧疆閮ㄩ棬 ID锛屽鏋滆幏鍙栨墍鏈夊憳宸ユ墜鏈哄彿锛屽彲浠ヨ缃负鏍归儴闂ㄧ殑 ID
- OapiUserListidResponse response2 = client3.execute(request2, accessToken);
- String body = response2.getBody();
- // 瑙f瀽涓篔SONObject
- JSONObject jsonObject = JSONObject.parseObject(body);
- // 鎻愬彇鍑篔SONArray
- JSONArray jsonArray = new JSONArray(jsonObject.getJSONObject("result").getJSONArray("userid_list"));
- // 灏咼SONArray杞负List鍒楄〃
- String str = JSONObject.toJSONString(jsonArray);
- List<String> list = JSONObject.parseObject(str, List.class);
-
- //userid鏁扮粍
- for (String urid : list) {
- DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2");
- OapiMessageCorpconversationAsyncsendV2Request request = new OapiMessageCorpconversationAsyncsendV2Request();
- request.setUseridList(urid);
- request.setAgentId(1779052814L);
- request.setToAllUser(false);
- OapiMessageCorpconversationAsyncsendV2Request.Msg msg = new OapiMessageCorpconversationAsyncsendV2Request.Msg();
- msg.setOa(new OapiMessageCorpconversationAsyncsendV2Request.OA());
- msg.getOa().setMessageUrl("www.baidu.com");
- msg.getOa().setPcMessageUrl("www.baidu.com");
- msg.getOa().setHead(new OapiMessageCorpconversationAsyncsendV2Request.Head());
- msg.getOa().getHead().setText("text");
- msg.getOa().getHead().setBgcolor("FFBBBBBB");
- msg.getOa().setBody(new OapiMessageCorpconversationAsyncsendV2Request.Body());
- msg.getOa().getBody().setContent("msg淇℃伅");
- OapiMessageCorpconversationAsyncsendV2Request.Form formPark = new OapiMessageCorpconversationAsyncsendV2Request.Form();
- formPark.setKey(null);
- formPark.setValue(null);
- OapiMessageCorpconversationAsyncsendV2Request.Form formAlarmCode = new OapiMessageCorpconversationAsyncsendV2Request.Form();
- formAlarmCode.setKey("宸ュ伐宸 ");
- formAlarmCode.setValue(alarmCode);
- OapiMessageCorpconversationAsyncsendV2Request.Form formSeverityDesc = new OapiMessageCorpconversationAsyncsendV2Request.Form();
- formSeverityDesc.setKey("鏋楄瑕佽瑕�");
- formSeverityDesc.setValue(severityDesc);
- OapiMessageCorpconversationAsyncsendV2Request.Form formConner = new OapiMessageCorpconversationAsyncsendV2Request.Form();
- formConner.setKey("鍘呭湪鍦�");
- ArrayList<OapiMessageCorpconversationAsyncsendV2Request.Form> objects = new ArrayList<>();
- objects.add(formPark);
- objects.add(formSeverityDesc);
- objects.add(formAlarmCode);
- objects.add(formConner);
- msg.getOa().getBody().setForm(objects);
- msg.setMsgtype("oa");
- request.setMsg(msg);
- // log.info("鑾峰彇鍙戦�侀�氱煡娑堟伅浣撳拰鑾峰彇鍙戦�侀�氱煡浜哄畬鎴�");
- OapiMessageCorpconversationAsyncsendV2Response response = client.execute(request, accessToken);
- // log.info("鍙戦�佹秷鎭槸鍚︽垚鍔�"+response.isSuccess());
- System.out.println(response.isSuccess());
- // log.info("娑堟伅浠诲姟ID"+response.getTaskId());
- System.out.println(response.getTaskId());
- }
- }
-
-
- /**
- * 鑾峰彇 access_token
- */
- private String getAccessToken() throws ApiException {
- DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken");
- OapiGettokenRequest request = new OapiGettokenRequest();
- //Appkey
- request.setAppkey(dingAppid);
- //Appsecret
- request.setAppsecret(dingAppSecret);
- /*璇锋眰鏂瑰紡*/
- request.setHttpMethod("GET");
- OapiGettokenResponse response = client.execute(request);
- return response.getAccessToken();
+ @ApiOperation("鍙戦�侀拤閽夋秷鎭�")
+ @PostMapping("/sendNotification")
+ public void sendNotification(@RequestBody DingTalkReqVo dingTalkReqVo) throws ApiException {
+ dingTalkService.sendNotification(dingTalkReqVo);
}
}
--
Gitblit v1.9.3