zss
2025-02-17 087991c76f078defe5eb55d84223021b4199fb3d
framework/src/main/java/com/yuanchu/mom/utils/QYWXApi.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,67 @@
package com.yuanchu.mom.utils;
import cn.hutool.http.HttpRequest;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yuanchu.mom.exception.ErrorException;
import com.yuanchu.mom.vo.Result;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.Map;
@Data
@Slf4j
@Component
//企业微信对接接口
public class QYWXApi {
   public static final String WWA_423654_B_975441_AC = "wwa423654b975441ac";
   final String ip = "https://qyapi.weixin.qq.com/";
   final String corpid = WWA_423654_B_975441_AC;
   final String corpsecret = "rQ1_ddKBVW5qVSMNK_p0EnR3Z2OHrAMxGahBKTKWYxE";
   /**
    * ä¼ä¸šå¾®ä¿¡èŽ·å–token
    *
    * @return
    */
   public String getToken() {
      try {
         Map<String, Object> map = new HashMap<>();
         map.put("corpid", corpid);
         map.put("corpsecret", corpsecret);
         String result = HttpRequest.get(ip + "cgi-bin/gettoken")
               .contentType("application/x-www-form-urlencoded")
               .form(map).execute().body();
         JSONObject jsonObject = JSONObject.parseObject(result);
         return jsonObject.getString("access_token");
      } catch (Exception e) {
         throw new RuntimeException("token获取异常");
      }
   }
   /**
    * å‘送应用卡片消息
    *
    * @param map
    * @return
    */
   public void send(Map map) {
      try {
         String result = HttpRequest.post(ip + "cgi-bin/message/send?access_token=" + getToken())
               .contentType("application/json")
               .body(JSONArray.toJSONString(map)).execute().body();
         JSONObject jsonObject = JSONObject.parseObject(result);
         if (jsonObject.getInteger("errcode") == 0) {
         } else {
            throw new ErrorException("企业微信推送消息失败" + jsonObject.getString("errmsg"));
         }
      } catch (Exception e) {
         throw new ErrorException("企业微信推送消息失败,获取异常:" + e.getMessage());
      }
   }
}