liukangdong
2024-05-21 4658e9353f7aa76a833d36ed988d77bf362ad0ea
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
package cn.emay.sdk.core.service.security;
 
import java.util.HashMap;
import java.util.Map;
 
import cn.emay.sdk.core.dto.sms.common.ResultModel;
import cn.emay.sdk.core.dto.sms.request.BalanceRequest;
import cn.emay.sdk.core.dto.sms.request.MoRequest;
import cn.emay.sdk.core.dto.sms.request.ReportRequest;
import cn.emay.sdk.core.dto.sms.request.RetrieveReportRequest;
import cn.emay.sdk.core.dto.sms.request.SmsBatchOnlyRequest;
import cn.emay.sdk.core.dto.sms.request.SmsBatchRequest;
import cn.emay.sdk.core.dto.sms.request.SmsPersonalityAllRequest;
import cn.emay.sdk.core.dto.sms.request.SmsPersonalityRequest;
import cn.emay.sdk.core.dto.sms.request.SmsSingleRequest;
import cn.emay.sdk.core.dto.sms.response.BalanceResponse;
import cn.emay.sdk.core.dto.sms.response.MoResponse;
import cn.emay.sdk.core.dto.sms.response.ReportResponse;
import cn.emay.sdk.core.dto.sms.response.RetrieveReportResponse;
import cn.emay.sdk.core.dto.sms.response.SmsResponse;
import cn.emay.sdk.core.service.SDKService;
import cn.emay.sdk.util.HttpUtil;
import cn.emay.sdk.util.exception.SDKParamsException;
 
public class SDKSecurityServiceImpl implements SDKService {
 
    @Override
    public ResultModel<SmsResponse> sendSingleSms(String appId, String secretKey, String host, SmsSingleRequest request) {
        ResultModel<SmsResponse> result = HttpUtil.request(appId, secretKey, host + "/inter/sendSingleSMS", request, SmsResponse.class);
        return result;
    }
 
    @Override
    public ResultModel<SmsResponse[]> sendBatchOnlySms(String appId, String secretKey, String host, SmsBatchOnlyRequest request) {
        ResultModel<SmsResponse[]> result = HttpUtil.request(appId, secretKey, host + "/inter/sendBatchOnlySMS", request, SmsResponse[].class);
        return result;
    }
 
    @Override
    public ResultModel<SmsResponse[]> sendBatchSms(String appId, String secretKey, String host, SmsBatchRequest request) throws SDKParamsException {
        ResultModel<SmsResponse[]> result = HttpUtil.request(appId, secretKey, host + "/inter/sendBatchSMS", request, SmsResponse[].class);
        return result;
    }
 
    @Override
    public ResultModel<SmsResponse[]> sendPersonalitySms(String appId, String secretKey, String host, SmsPersonalityRequest request) throws SDKParamsException {
        ResultModel<SmsResponse[]> result = HttpUtil.request(appId, secretKey, host + "/inter/sendPersonalitySMS", request, SmsResponse[].class);
        return result;
    }
 
    @Override
    public ResultModel<SmsResponse[]> sendPersonalityAllSms(String appId, String secretKey, String host, SmsPersonalityAllRequest request) throws SDKParamsException {
        ResultModel<SmsResponse[]> result = HttpUtil.request(appId, secretKey, host + "/inter/sendPersonalityAllSMS", request, SmsResponse[].class);
        return result;
    }
 
    @Override
    public ResultModel<BalanceResponse> getBalance(String appId, String secretKey, String host, BalanceRequest request) {
        ResultModel<BalanceResponse> result = HttpUtil.request(appId, secretKey, host + "/inter/getBalance", request, BalanceResponse.class);
        return result;
    }
 
    @Override
    public ResultModel<ReportResponse[]> getReport(String appId, String secretKey, String host, ReportRequest reportRequest) {
        ResultModel<ReportResponse[]> result = HttpUtil.request(appId, secretKey, host + "/inter/getReport", reportRequest, ReportResponse[].class);
        return result;
    }
 
    @Override
    public ResultModel<MoResponse[]> getMo(String appId, String secretKey, String host, MoRequest request) {
        ResultModel<MoResponse[]> result = HttpUtil.request(appId, secretKey, host + "/inter/getMo", request, MoResponse[].class);
        return result;
    }
 
    @Override
    public ResultModel<RetrieveReportResponse> retrieveReport(String appId, String timestamp, String sign, String host, RetrieveReportRequest reportRequest) {
        Map<String, String> params = new HashMap<String, String>();
        params.put("appId", appId);
        params.put("timestamp", timestamp);
        params.put("sign", sign);
        params.put("startTime", reportRequest.getStartTime());
        params.put("endTime", reportRequest.getEndTime());
        params.put("smsId", reportRequest.getSmsId());
        ResultModel<String> result = HttpUtil.request(params, host + "/report/retrieveReport", "UTF-8", String.class);
        ResultModel<RetrieveReportResponse> resultModel = new ResultModel<RetrieveReportResponse>(result.getCode(), new RetrieveReportResponse(result.getCode()));
        return resultModel;
    }
 
}