SmsServiceImpl.java 2.22 KB
package com.bckefu.uccc.smsapi.service.impl;

import com.alibaba.fastjson.JSONObject;
import com.bckefu.uccc.smsapi.service.SmsService;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestTemplate;

/**
 * @author : caoliang
 * @date : 2018/1/10  上午10:21
 */
public class SmsServiceImpl implements SmsService {

    private Integer LIMIT = 10;
    private Integer SMS_SIZE = 1;
    private Long VALIDITY = 3600 * 24L;
    private String CZ_URL = "http://api.chanzor.com/send";
    private String CZ_ACCOUNT;
    private String CZ_PWD;
    private String CZ_SIGN = "【百川客服】";
    private RestTemplate restTemplate;

    public SmsServiceImpl(String account, String pwd, String sign) {
        this.CZ_ACCOUNT = account;
        this.CZ_PWD = pwd;
        this.CZ_SIGN = sign;
        restTemplate = new RestTemplate();
    }

    @Override
    public int sendSms(String mobile, String content) {
        MultiValueMap<String, String> requestEntity = new LinkedMultiValueMap<String , String>();
        requestEntity.add("account" , CZ_ACCOUNT);
        requestEntity.add("password" , CZ_PWD);
        requestEntity.add("mobile" , mobile);
        requestEntity.add("content" , content+CZ_SIGN);
        String result = restTemplate.postForObject(CZ_URL , requestEntity , String.class);
        JSONObject jsonObject = JSONObject.parseObject(result);
        if(jsonObject.containsKey("status") && jsonObject.get("status").equals(0)){
            return 1;
        }
        return 0;
    }

    @Override
    public int sendTemplateSms(String mobile, String code) {
        MultiValueMap<String, String> requestEntity = new LinkedMultiValueMap<String , String>();
        requestEntity.add("account" , this.CZ_ACCOUNT);
        requestEntity.add("password" , this.CZ_PWD);
        requestEntity.add("mobile" , mobile);
        requestEntity.add("content" , code+CZ_SIGN);
        String result = restTemplate.postForObject(CZ_URL , requestEntity , String.class);
        JSONObject jsonObject = JSONObject.parseObject(result);
        if(jsonObject.containsKey("status") && jsonObject.get("status").equals(0)){
            return 1;
        }
        return 0;
    }
}