拆分think模块包
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
package com.gxwebsoft.common.core.utils;
|
||||
|
||||
import cn.hutool.crypto.SecureUtil;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.gxwebsoft.common.system.service.UserService;
|
||||
import com.gxwebsoft.common.system.vo.PushMessageVO;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* 个推推送消息工具类
|
||||
*
|
||||
* @author WebSoft
|
||||
* @since 2017-06-10 10:10:39
|
||||
*/
|
||||
@Component
|
||||
public class PushUtil {
|
||||
@Resource
|
||||
RedisUtil redisUtil;
|
||||
|
||||
@Resource
|
||||
private UserService userService;
|
||||
private static final String url = "https://fc-mp-ba98f1e0-713d-457b-a0a4-27a7939371e6.next.bspapp.com/unipush";
|
||||
|
||||
/**
|
||||
* 获取鉴权token
|
||||
* @return
|
||||
*/
|
||||
public String getToken() {
|
||||
String key = "token:oOVaDtYDYQ8q3lNjhLh401";
|
||||
|
||||
if(redisUtil.get(key) != null){
|
||||
return redisUtil.get(key);
|
||||
}
|
||||
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
long timeMillis = System.currentTimeMillis();
|
||||
String sign = SecureUtil.sha256("AC6IghgsUx7Mwjb7G5eqv" + timeMillis + "JVRkOCXXzA6EyE2Fi5sPr9");
|
||||
map.put("sign",sign);
|
||||
map.put("timestamp",timeMillis);
|
||||
map.put("appkey","AC6IghgsUx7Mwjb7G5eqv");
|
||||
final String body = HttpRequest.post(url.concat("/auth")).body(JSONUtil.toJSONString(map)).execute().body();
|
||||
final JSONObject jsonObject = JSONObject.parseObject(body);
|
||||
final String data = jsonObject.getString("data");
|
||||
final JSONObject jsonData = JSONObject.parseObject(data);
|
||||
|
||||
final String token = jsonData.getString("token");
|
||||
final Long expireTime = Long.valueOf(jsonData.getString("expire_time"));
|
||||
// 保存token
|
||||
|
||||
redisUtil.set(key,token, expireTime-System.currentTimeMillis(), TimeUnit.MILLISECONDS);
|
||||
return token;
|
||||
}
|
||||
|
||||
/**
|
||||
* 执行cid单推
|
||||
* cid数组,只能填一个cid
|
||||
*
|
||||
*/
|
||||
public static boolean toSingle(PushMessageVO pushMessageVO){
|
||||
final String body = HttpRequest.post(url).body(JSONUtil.toJSONString(pushMessageVO)).execute().body();
|
||||
JSONObject jsonObject = JSONObject.parseObject(body);
|
||||
if("success".equals(jsonObject.get("errMsg"))){
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
public boolean toSingle(Integer userId,String title, String content,String type, Object obj){
|
||||
PushMessageVO.Payload payload = new PushMessageVO.Payload();
|
||||
payload.setType(type);
|
||||
payload.setData(obj);
|
||||
|
||||
String clientId = userService.getById(userId).getClientId();
|
||||
HashSet<String> clientIds = new HashSet<>();
|
||||
clientIds.add(clientId);
|
||||
|
||||
PushMessageVO messageVO = PushMessageVO.builder().title(title).content(content).payload(payload).push_clientid(clientIds).build();
|
||||
|
||||
final String body = HttpRequest.post(url).body(JSONUtil.toJSONString(messageVO)).execute().body();
|
||||
|
||||
JSONObject jsonObject = JSONObject.parseObject(body);
|
||||
if("success".equals(jsonObject.get("errMsg"))){
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user