From 9f7368ceb60b8f5c635cf455914f435d8d782a90 Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期六, 21 六月 2025 23:58:03 +0800 Subject: [PATCH] 添加钉钉推送消息功能 --- src/main/java/com/gs/xky/controller/DingtalkController.java | 61 ++++++++++++++++++++++++++++++ 1 files changed, 61 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gs/xky/controller/DingtalkController.java b/src/main/java/com/gs/xky/controller/DingtalkController.java new file mode 100644 index 0000000..f84bca8 --- /dev/null +++ b/src/main/java/com/gs/xky/controller/DingtalkController.java @@ -0,0 +1,61 @@ +package com.gs.xky.controller; + +import com.gs.xky.config.ResultMessage; +import com.gs.xky.dto.NumbericalDto; +import com.gs.xky.service.DingtalkInfoService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +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; + +/** + * 閽夐拤娑堟伅鍙戦�佹帶鍒跺櫒 + * + * @author 28567 + * @description 鎻愪緵閽夐拤娑堟伅鍙戦�佺浉鍏崇殑REST鎺ュ彛 + * @createDate 2025-01-27 + */ +@RestController +@RequestMapping("/api/dingtalk") +@RequiredArgsConstructor +@Slf4j +public class DingtalkController { + + private final DingtalkInfoService dingtalkInfoService; + + /** + * 鍙戦�侀拤閽夋秷鎭� + * + * @param numbericalDto 鍖呭惈妫�楠屽崟鍙风殑璇锋眰鍙傛暟 + * @return ResultMessage 鎿嶄綔缁撴灉 + */ + @PostMapping("/sendMessage") + public ResultMessage sendMessage(@RequestBody NumbericalDto numbericalDto) { + try { + log.info("寮�濮嬪彂閫侀拤閽夋秷鎭紝妫�楠屽崟鍙凤細{}", numbericalDto.getReleaseNo()); + + // 鍙傛暟鏍¢獙 + if (numbericalDto == null || numbericalDto.getReleaseNo() == null || numbericalDto.getReleaseNo().trim().isEmpty()) { + log.warn("妫�楠屽崟鍙蜂笉鑳戒负绌�"); + return ResultMessage.error("妫�楠屽崟鍙蜂笉鑳戒负绌�"); + } + + // 璋冪敤鏈嶅姟灞傚彂閫佹秷鎭� + boolean result = dingtalkInfoService.sendMessage(numbericalDto.getReleaseNo()); + + if (result) { + log.info("閽夐拤娑堟伅鍙戦�佹垚鍔燂紝妫�楠屽崟鍙凤細{}", numbericalDto.getReleaseNo()); + return ResultMessage.ok(); + } else { + log.warn("閽夐拤娑堟伅鍙戦�佸け璐ワ紝妫�楠屽崟鍙凤細{}", numbericalDto.getReleaseNo()); + return ResultMessage.error("閽夐拤娑堟伅鍙戦�佸け璐�"); + } + + } catch (Exception e) { + log.error("鍙戦�侀拤閽夋秷鎭椂鍙戠敓寮傚父锛屾楠屽崟鍙凤細{}", numbericalDto != null ? numbericalDto.getReleaseNo() : "null", e); + return ResultMessage.error(e); + } + } +} \ No newline at end of file -- Gitblit v1.9.3