guoshilong
2023-07-14 e1da545eab3a4b8ce2cf90ff95814211997ac576
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package cn.gistack.alerts.push.service.impl;
 
import cn.gistack.alerts.push.service.IPushService;
import cn.gistack.alerts.push.vo.PushVO;
import cn.gistack.alerts.push.vo.UniCloudReturnRes;
import lombok.AllArgsConstructor;
import org.springblade.core.redis.cache.BladeRedis;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
 
import java.util.LinkedHashMap;
import java.util.Map;
 
@Service
@AllArgsConstructor
public class PushServiceImpl implements IPushService {
    private static final String PUSH_CLIENT_ID = "push:client:id:";
    private static final String UNI_CLOUD_PUSH_URL = "https://fc-mp-ad1ed7e3-700e-4fca-abae-0d097cc222b5.next.bspapp.com/push";
 
    private BladeRedis bladeRedis;
 
    @Override
    public Boolean saveCId(String userId,String cId) {
        bladeRedis.set(PUSH_CLIENT_ID + userId,cId);
        return Boolean.TRUE;
    }
 
    @Override
    public UniCloudReturnRes pushMessage(PushVO pushVO) {
 
        RestTemplate template = new RestTemplate();
        Map<String, Object> params = new LinkedHashMap<>();
        Object o = bladeRedis.get(PUSH_CLIENT_ID + pushVO.getUserId());
 
        params.put("push_clientid",bladeRedis.get(PUSH_CLIENT_ID + pushVO.getUserId()));
        params.put("title",pushVO.getTitle());
        params.put("content",pushVO.getContent());
        UniCloudReturnRes uniCloudReturnRes = template.postForObject(UNI_CLOUD_PUSH_URL, params, UniCloudReturnRes.class);
        return uniCloudReturnRes;
    }
}