yeshijie 7 anni fa
parent
commit
663e493267

+ 5 - 0
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/redis/RedisThread.java

@ -2,6 +2,7 @@ package com.yihu.wlyy.redis;
import com.alibaba.fastjson.JSONObject;
import com.yihu.wlyy.service.app.prescription.PrescriptionService;
import com.yihu.wlyy.service.common.SMSService;
import com.yihu.wlyy.task.PushMsgTask;
import com.yihu.wlyy.util.SystemConf;
import org.apache.commons.lang3.StringUtils;
@ -34,6 +35,8 @@ public class RedisThread implements Runnable {
    private PrescriptionService prescriptionService;
    @Autowired
    private PushMsgTask pushMsgTask;
    @Autowired
    private SMSService smsService;
    //redis链接池
    private JedisPool pool;
    private Jedis jedis;
@ -100,6 +103,8 @@ public class RedisThread implements Runnable {
                //线下调整处方完成
                String prescriptionCode = json.getString("prescription");
                prescriptionService.setPrescriptionInfo(prescriptionCode);
            }else if("sendSms".equals(title)){
                smsService.sendSms(json.getJSONObject("value"));
            }
        }catch (Exception e){
            logger.error("redis_error...",e);

+ 33 - 12
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/service/common/SMSService.java

@ -1,40 +1,42 @@
package com.yihu.wlyy.service.common;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.message.SMS;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.repository.doctor.DoctorDao;
import com.yihu.wlyy.repository.message.SMSDao;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.SignFamilyDao;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.util.DateUtil;
import com.yihu.wlyy.util.HttpClientUtil;
import com.yihu.wlyy.util.SystemConf;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.data.domain.Sort.Direction;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import com.yihu.wlyy.entity.message.SMS;
import com.yihu.wlyy.repository.message.SMSDao;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.util.DateUtil;
import com.yihu.wlyy.util.HttpClientUtil;
import com.yihu.wlyy.util.SystemConf;
import org.springframework.util.StringUtils;
import javax.print.Doc;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Component
@Transactional(rollbackFor = Exception.class)
public class SMSService extends BaseService {
    private static Logger logger = LoggerFactory.getLogger(SMSService.class);
    @Autowired
    public SMSDao smsDao;
    @Autowired
@ -45,6 +47,25 @@ public class SMSService extends BaseService {
    DoctorDao doctorDao;
    @Autowired
    private HttpClientUtil HttpClientUtil;
    @Value("${server.server_url}")
    private String server_url;
    public void sendSms(com.alibaba.fastjson.JSONObject json){
        String time = json.getString("time");
        String now = DateUtil.dateToStrLong(DateUtil.getNextMin(new Date(),-30));
        //超过30分钟之前的就不发送了
        if(time.compareTo(now)>0){
            String url = server_url+"common/captcha";
            List<NameValuePair> par = new ArrayList<NameValuePair>();
            par.add(new BasicNameValuePair("mobile", json.getString("mobile")));
            par.add(new BasicNameValuePair("type", json.getString("type")));
            String result = HttpClientUtil.post(url,par,"UTF-8");
            logger.info("发送短信消息返回结果:"+result);
        }
    }
    /**
     * 发送短信验证码接口