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 sendSingleSms(String appId, String secretKey, String host, SmsSingleRequest request) { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/sendSingleSMS", request, SmsResponse.class); return result; } @Override public ResultModel sendBatchOnlySms(String appId, String secretKey, String host, SmsBatchOnlyRequest request) { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/sendBatchOnlySMS", request, SmsResponse[].class); return result; } @Override public ResultModel sendBatchSms(String appId, String secretKey, String host, SmsBatchRequest request) throws SDKParamsException { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/sendBatchSMS", request, SmsResponse[].class); return result; } @Override public ResultModel sendPersonalitySms(String appId, String secretKey, String host, SmsPersonalityRequest request) throws SDKParamsException { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/sendPersonalitySMS", request, SmsResponse[].class); return result; } @Override public ResultModel sendPersonalityAllSms(String appId, String secretKey, String host, SmsPersonalityAllRequest request) throws SDKParamsException { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/sendPersonalityAllSMS", request, SmsResponse[].class); return result; } @Override public ResultModel getBalance(String appId, String secretKey, String host, BalanceRequest request) { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/getBalance", request, BalanceResponse.class); return result; } @Override public ResultModel getReport(String appId, String secretKey, String host, ReportRequest reportRequest) { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/getReport", reportRequest, ReportResponse[].class); return result; } @Override public ResultModel getMo(String appId, String secretKey, String host, MoRequest request) { ResultModel result = HttpUtil.request(appId, secretKey, host + "/inter/getMo", request, MoResponse[].class); return result; } @Override public ResultModel retrieveReport(String appId, String timestamp, String sign, String host, RetrieveReportRequest reportRequest) { Map params = new HashMap(); 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 result = HttpUtil.request(params, host + "/report/retrieveReport", "UTF-8", String.class); ResultModel resultModel = new ResultModel(result.getCode(), new RetrieveReportResponse(result.getCode())); return resultModel; } }