From 1f963e2344833ff02087c05411b112147492bd00 Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期六, 21 六月 2025 22:18:59 +0800 Subject: [PATCH] 添加钉钉推送消息功能 --- README.md | 204 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 203 insertions(+), 1 deletions(-) diff --git a/README.md b/README.md index 393f5e4..c892473 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,7 @@ 4. 閫�璐х鐞� 5. 渚涘簲鍟嗙鐞� 6. ERP涓嶴RM绯荤粺鏁版嵁姣斿 +7. 閽夐拤娑堟伅閫氱煡 ## 鏍稿績鏁版嵁瀹炰綋 @@ -40,6 +41,98 @@ - API璋冪敤棰戠巼涓嶄綆浜�2灏忔椂 - 璇锋眰鏃堕棿鑼冨洿涓嶅ぇ浜�24灏忔椂 - 鏁版嵁绫诲瀷杞崲闇�娉ㄦ剰锛欵RP绯荤粺(Long)涓嶴RM绯荤粺(Integer) + +## REST API鎺ュ彛 + +### 閽夐拤娑堟伅鍙戦�佹帴鍙� + +#### 鎺ュ彛淇℃伅 + +- **URL**: `POST /api/dingtalk/sendMessage` +- **鍔熻兘**: 鍙戦�侀拤閽夋秷鎭�氱煡 +- **鎻忚堪**: 鏍规嵁妫�楠屽崟鍙峰彂閫佷笉鍚堟牸妫�楠屽崟鐨勯拤閽夐�氱煡娑堟伅 + +#### 璇锋眰鍙傛暟 + +```json +{ + "releaseNo": "妫�楠屽崟鍙�" +} +``` + +**鍙傛暟璇存槑**: + +- `releaseNo` (String, 蹇呭~): 妫�楠屽崟鍙凤紝鐢ㄤ簬鏌ヨ瀵瑰簲鐨勯拤閽夋秷鎭唴瀹� + +#### 鍝嶅簲缁撴灉 + +```json +{ + "code": 200, + "message": null, + "successful": 0, + "data": "鎺ユ敹鎴愬姛" +} +``` + +**鍝嶅簲瀛楁璇存槑**: + +- `code` (Integer): 鍝嶅簲鐘舵�佺爜锛�200琛ㄧず鎴愬姛锛�500琛ㄧず澶辫触 +- `message` (String): 閿欒淇℃伅锛屾垚鍔熸椂涓簄ull +- `successful` (Integer): 鎴愬姛鏍囪瘑锛�0琛ㄧず鎴愬姛锛�1琛ㄧず澶辫触 +- `data` (String): 鍝嶅簲鏁版嵁锛屾垚鍔熸椂涓�"鎺ユ敹鎴愬姛"锛屽け璐ユ椂涓�"鎺ユ敹澶辫触" + +#### 浣跨敤绀轰緥 + +**璇锋眰绀轰緥**: + +```bash +curl -X POST http://localhost:9095/api/dingtalk/sendMessage \ + -H "Content-Type: application/json" \ + -d '{"releaseNo": "IQC202501270001"}' +``` + +**鎴愬姛鍝嶅簲绀轰緥**: + +```json +{ + "code": 200, + "message": null, + "successful": 0, + "data": "鎺ユ敹鎴愬姛" +} +``` + +**澶辫触鍝嶅簲绀轰緥**: + +```json +{ + "code": 500, + "message": "妫�楠屽崟鍙蜂笉鑳戒负绌�", + "successful": 1, + "data": "鎺ユ敹澶辫触" +} +``` + +#### 閿欒澶勭悊 + +鎺ュ彛浼氬鐞嗕互涓嬮敊璇儏鍐碉細 + +1. **鍙傛暟涓虹┖**: 妫�楠屽崟鍙蜂负绌烘垨null鏃惰繑鍥為敊璇俊鎭� +2. **鏁版嵁涓嶅瓨鍦�**: 妫�楠屽崟鍙峰搴旂殑閽夐拤娑堟伅鍐呭涓嶅瓨鍦ㄦ椂杩斿洖澶辫触 +3. **鍙戦�佸け璐�**: 閽夐拤API璋冪敤澶辫触鏃惰繑鍥炲け璐ヤ俊鎭� +4. **绯荤粺寮傚父**: 鍏朵粬绯荤粺寮傚父鏃惰繑鍥炲紓甯镐俊鎭� + +#### 娉ㄦ剰浜嬮」 + +1. 纭繚妫�楠屽崟鍙峰湪`DINGTALK_MSG`琛ㄤ腑鏈夊搴旂殑璁板綍 +2. 纭繚閽夐拤搴旂敤閰嶇疆姝g‘涓旀湁鍙戦�佹潈闄� +3. 鎺ュ彛璋冪敤棰戠巼寤鸿涓嶈秴杩囨瘡鍒嗛挓1娆� +4. 寤鸿鍦ㄧ敓浜х幆澧冧腑娣诲姞鎺ュ彛璁块棶鏉冮檺鎺у埗 + +#### 璇︾粏鏂囨。 + +鏇村璇︾粏鐨凙PI浣跨敤璇存槑銆侀敊璇鐞嗐�佹渶浣冲疄璺电瓑鍐呭锛岃鍙傝�� [API_DOCUMENTATION.md](./API_DOCUMENTATION.md) 鏂囦欢銆� ## 鏁版嵁搴撹〃缁撴瀯 @@ -330,4 +423,113 @@ 寮傛绾跨▼2: 鎵规5澶勭悊瀹屾垚 ``` -杩欑鏂瑰紡纭繚浜嗕富绾跨▼涓嶄細琚暱鏃堕棿闃诲锛屽悓鏃跺厖鍒嗗埄鐢ㄤ簡绯荤粺璧勬簮杩涜骞惰澶勭悊銆� \ No newline at end of file +杩欑鏂瑰紡纭繚浜嗕富绾跨▼涓嶄細琚暱鏃堕棿闃诲锛屽悓鏃跺厖鍒嗗埄鐢ㄤ簡绯荤粺璧勬簮杩涜骞惰澶勭悊銆� + +## 閽夐拤娑堟伅閫氱煡鍔熻兘 + +绯荤粺闆嗘垚浜嗛拤閽夋秷鎭�氱煡鍔熻兘锛岀敤浜庡湪閲嶈浜嬩欢鍙戠敓鏃跺悜鎸囧畾鐢ㄦ埛鍙戦�侀�氱煡銆備富瑕佸寘鎷互涓嬪嚑涓儴鍒嗭細 + +### 鍔熻兘姒傝堪 + +1. **閫氱煡鍦烘櫙**锛� + - 閲囪喘璁㈠崟鏁版嵁姣斿瀹屾垚鍚庯紝閫氱煡鐩稿叧浜哄憳鏌ョ湅缁撴灉 + - 鏁版嵁寮傚父鏃剁殑棰勮閫氱煡 + - 绯荤粺閲嶈鎿嶄綔鐨勭‘璁ら�氱煡 + - 涓嶅悎鏍兼楠屽崟瀹℃壒鎯呭喌閫氱煡 + +2. **閫氱煡鏂瑰紡**锛� + - 涓汉宸ヤ綔閫氱煡锛氱洿鎺ュ彂閫佺粰鎸囧畾鐢ㄦ埛 + - 缇ゆ満鍣ㄤ汉閫氱煡锛氬彂閫佸埌鎸囧畾鐨勯拤閽夌兢 + +### 鏁版嵁缁撴瀯 + +閽夐拤鐢ㄦ埛淇℃伅瀛樺偍鍦� `DINGTALK_INFO` 琛ㄤ腑锛岃〃缁撴瀯濡備笅锛� + +| 瀛楁鍚� | 绫诲瀷 | 璇存槑 | +|------------------|---------|--------------------| +| id | Long | 涓婚敭 | +| sid | Long | 鑱屽伐ID | +| phone | String | 鐢佃瘽鍙风爜 | +| dingtalk_id | String | 閽夐拤鐢ㄦ埛ID | +| is_send_dingtalk | Integer | 鏄惁鍙戦�侀拤閽夐�氱煡(1:鏄�, 0:鍚�) | + +涓嶅悎鏍兼楠屽崟淇℃伅瀛樺偍鍦� `DINGTALK_MSG` 琛ㄤ腑锛岃〃缁撴瀯濡備笅锛� + +| 瀛楁鍚� | 绫诲瀷 | 璇存槑 | +|---------------|--------|-------| +| release_no | String | 妫�楠屽崟鍙� | +| supp_name | String | 渚涘簲鍟嗗悕绉� | +| create_date | Date | 鏉ユ枡鏃ユ湡 | +| project_codes | String | 椤圭洰浠g爜 | +| item_no | String | 鏂欏彿 | +| fname | String | 瀹℃牳浜� | +| fng_handle | String | 澶勭悊鏂瑰紡 | + +### 娑堟伅鍙戦�佹祦绋� + +1. **鑾峰彇閫氱煡鐢ㄦ埛**锛� + - 浠� `DINGTALK_INFO` 琛ㄤ腑绛涢�� `is_send_dingtalk` 涓�1鐨勭敤鎴� + - 濡傛灉鐢ㄦ埛鐨勯拤閽塈D涓虹┖锛屽垯閫氳繃閽夐拤API鏍规嵁鎵嬫満鍙疯幏鍙栭拤閽塈D + - 鏇存柊鏁版嵁搴撲腑鐨勯拤閽塈D + +2. **鍙戦�侀�氱煡**锛� + - 姹囨�绘墍鏈夋湁鏁堢殑閽夐拤鐢ㄦ埛ID + - 鏍规嵁妫�楠屽崟鍙锋煡璇� `DINGTALK_MSG` 琛ㄨ幏鍙栨秷鎭唴瀹� + - 璋冪敤閽夐拤寮�鏀続PI鍙戦�佸伐浣滈�氱煡 + +### 閰嶇疆璇存槑 + +閽夐拤搴旂敤閰嶇疆淇℃伅瀛樺偍鍦� `DataAcquisitionConfiguration` 涓細 + +```java +// 閽夐拤搴旂敤Key +public static final String TALK_APP_KEY = "your_app_key"; +// 閽夐拤搴旂敤Secret +public static final String TALK_APP_SECRET = "your_app_secret"; +// 閽夐拤鑷畾涔夋満鍣ㄤ汉Token +public static final String CUSTOM_ROBOT_TOKEN = "your_robot_token"; +``` + +### 浣跨敤鏂规硶 + +瑕佸彂閫侀拤閽夐�氱煡锛屽彲浠ヨ皟鐢� `DingtalkInfoService` 鐨� `sendMessage` 鏂规硶锛� + +```java + +@Autowired +private DingtalkInfoService dingtalkInfoService; + +// 鍙戦�佷笉鍚堟牸妫�楠屽崟閫氱煡 +boolean result = dingtalkInfoService.sendMessage("妫�楠屽崟鍙�"); +``` + +### 瀹氭椂浠诲姟 + +绯荤粺閰嶇疆浜嗗畾鏃朵换鍔¤嚜鍔ㄥ彂閫佷笉鍚堟牸妫�楠屽崟閫氱煡锛� + +```java +/** + * 瀹氭椂鍙戦�佷笉鍚堟牸妫�楠屽崟閽夐拤閫氱煡 + * 姣忓皬鏃舵鏌ヤ竴娆℃槸鍚︽湁鏂扮殑涓嶅悎鏍兼楠屽崟 + */ +@Scheduled(cron = "0 0 */1 * * ?") +public void sendInspectionNotification() { + // 浠诲姟瀹炵幇... +} +``` + +### 娑堟伅鏍煎紡 + +涓嶅悎鏍兼楠屽崟閫氱煡鐨勬牸寮忓涓嬶細 + +``` +渚涘簲鍟哰xxx] 鏉ユ枡鏃ユ湡[yyyy-MM-dd] 椤圭洰[xxx] 鏂欏彿[xxx]鐨勪笉鍚堟牸妫�楠屽崟琚玔xxx]瀹℃壒涓篬xxx]锛岃鏌ユ敹! +``` + +### 娉ㄦ剰浜嬮」 + +1. 閽夐拤娑堟伅鍙戦�侀鐜囨湁闄愬埗锛岃鍕胯繃浜庨绻佸彂閫� +2. 纭繚搴旂敤鏈夊彂閫佸伐浣滈�氱煡鐨勬潈闄� +3. 鐢ㄦ埛鎵嬫満鍙峰繀椤讳笌閽夐拤娉ㄥ唽鎵嬫満鍙蜂竴鑷� +4. 寤鸿灏嗛噸瑕侀�氱煡鍚屾椂閫氳繃澶氱娓犻亾鍙戦�侊紙濡傞偖浠躲�佺煭淇$瓑锛� +5. 妫�楠屽崟閫氱煡鍦╜DINGTALK_MSG`琛ㄤ腑蹇呴』鏈夊搴旂殑璁板綍 \ No newline at end of file -- Gitblit v1.9.3