Commit 6eec6192 by Huang Linyu

新增短信验证码模块

parent 94440daf
......@@ -2,6 +2,7 @@ package com.ctrip.fun.golf.api.basic;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -10,12 +11,15 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.alibaba.fastjson.JSONObject;
import com.ctrip.fun.common.vo.PagedResponseBean;
import com.ctrip.fun.common.vo.Request;
import com.ctrip.fun.common.vo.Response;
import com.ctrip.fun.common.vo.ResponseStatusEnum;
import com.ctrip.fun.common.vo.basic.SmsBean;
import com.ctrip.fun.common.vo.basic.SmsQuery;
import com.ctrip.fun.common.vo.user.UserVerifyCodeBean;
import com.ctrip.fun.common.vo.user.VerifyCodeBean;
import com.ctrip.fun.golf.aspect.log.Log;
import com.ctrip.fun.golf.service.basic.SmsService;
......@@ -60,6 +64,25 @@ public class SmsController {
}
/**
* 获取验证码短信列表
*
* PagedResponseBean<VerifyCodeBean> queryVerifyCodeList(String userId,
UserVerifyCodeQuery query) {
* @param request
* @return
*/
@ResponseBody
@RequestMapping(value = "/verifycode/list", method = RequestMethod.POST)
public Response<PagedResponseBean<UserVerifyCodeBean>> verifycodeList(@RequestBody Request<UserVerifyCodeBean> request) {
Response<PagedResponseBean<UserVerifyCodeBean>> response = new Response<PagedResponseBean<UserVerifyCodeBean>>();
response.setStatus(ResponseStatusEnum.SUCCESS.getValue());
response.setMessage(ResponseStatusEnum.SUCCESS.getMsg());
PagedResponseBean<UserVerifyCodeBean> pagedResponseBean = this.smsService.queryVerifycodeList(request.getBody());
response.setBody(pagedResponseBean);
return response;
}
/**
* 新增短信
*
* @param request
......
......@@ -3,8 +3,10 @@
*/
package com.ctrip.fun.golf.dao.basic;
import java.math.BigInteger;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.hibernate.Criteria;
import org.hibernate.Query;
......@@ -12,6 +14,7 @@ import org.hibernate.criterion.MatchMode;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
import org.hibernate.transform.Transformers;
import com.ctrip.fun.common.core.util.BeanConverter;
import com.ctrip.fun.common.core.util.StringUtils;
......@@ -19,8 +22,10 @@ import com.ctrip.fun.common.vo.SortDirectionEnum;
import com.ctrip.fun.common.vo.basic.SmsBean;
import com.ctrip.fun.common.vo.basic.SmsQuery;
import com.ctrip.fun.common.vo.basic.SmsType;
import com.ctrip.fun.common.vo.user.UserVerifyCodeBean;
import com.ctrip.fun.golf.dao.GenericHibernateDao;
import com.ctrip.fun.golf.domain.basic.Sms;
import com.ctrip.fun.golf.domain.user.UserVerifyCode;
import com.ctrip.fun.golf.vo.PagedEntityBean;
/**
......@@ -170,7 +175,40 @@ public class SmsDao extends GenericHibernateDao<Sms, Integer> {
return pagedEntityBean;
}
/**
*
* @param queryBean
* @return
*/
@SuppressWarnings("unchecked")
public PagedEntityBean<UserVerifyCode> queryVerifycodeList(
UserVerifyCodeBean queryBean) {
StringBuffer hql = new StringBuffer("");
hql.append("FROM UserVerifyCode WHERE 1=1");
if(org.apache.commons.lang.StringUtils.isNotEmpty(queryBean.getPhoneOrEmail())){
hql.append(" and phoneOrEmail = '"+queryBean.getPhoneOrEmail()+"'");
}
String hqlCount = "select count(*) "+hql.toString();
Query queryCount = getSession().createQuery(hqlCount);
Long count = (Long) queryCount.iterate().next();
// List<BigInteger> countlist=queryCount.list();
// Long count = countlist.get(0).longValue();
hql.append(" ORDER BY id DESC ");
Query query = getSession().createQuery(""+hql.toString()).setFirstResult(queryBean.getPagerOffset()).setMaxResults(queryBean.getPagerPerPage());
// query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
List<UserVerifyCode> list = query.list();
PagedEntityBean<UserVerifyCode> pagedEntityBean = new PagedEntityBean<UserVerifyCode>();
pagedEntityBean.setCount(count);
pagedEntityBean.setResult(list);
return pagedEntityBean;
}
/**
* 短信数量
*
......
......@@ -15,6 +15,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
/**
* UsrVerifycode generated by hbm2java
*/
......@@ -72,6 +75,7 @@ public class UserVerifyCode implements java.io.Serializable {
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "verifyTime", nullable = false, length = 19)
public Date getVerifyTime() {
return this.verifyTime;
}
......
......@@ -23,6 +23,8 @@ import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.ctrip.fun.common.core.util.BeanConverter;
import com.ctrip.fun.common.vo.PagedResponseBean;
import com.ctrip.fun.common.vo.Request;
......@@ -31,9 +33,13 @@ import com.ctrip.fun.common.vo.ResponseStatusEnum;
import com.ctrip.fun.common.vo.basic.SmsBean;
import com.ctrip.fun.common.vo.basic.SmsQuery;
import com.ctrip.fun.common.vo.basic.SmsStatus;
import com.ctrip.fun.common.vo.user.UserVerifyCodeBean;
import com.ctrip.fun.common.vo.user.VerifyCodeBean;
import com.ctrip.fun.golf.dao.basic.SmsDao;
import com.ctrip.fun.golf.domain.basic.Sms;
import com.ctrip.fun.golf.domain.user.UserVerifyCode;
import com.ctrip.fun.golf.service.GenericService;
import com.ctrip.fun.golf.utils.SystemUtils;
import com.ctrip.fun.golf.vo.PagedEntityBean;
/**
......@@ -127,6 +133,36 @@ public class SmsService extends GenericService<SmsDao, Sms, Integer, SmsBean> {
return pagedResponseBean;
}
public PagedResponseBean<UserVerifyCodeBean> queryVerifycodeList(
UserVerifyCodeBean queryBean) {
PagedResponseBean<UserVerifyCodeBean> pagedResponseBean = new PagedResponseBean<UserVerifyCodeBean>();
Collection<UserVerifyCodeBean> result = new ArrayList<UserVerifyCodeBean>();
PagedEntityBean<UserVerifyCode> pagedEntityBean = this.getEntityDao().queryVerifycodeList(queryBean);
// BeanConverter.copyProperties(pagedResponseBean, pagedEntityBean);
if (pagedEntityBean != null && pagedEntityBean.getResult() != null) {
Collection<UserVerifyCode> collection = pagedEntityBean.getResult();
for (UserVerifyCode t : collection) {
UserVerifyCodeBean bean = new UserVerifyCodeBean();
bean.setExpireTime(t.getExpireTime());
bean.setPhoneOrEmail(t.getPhoneOrEmail());
bean.setCodeType(t.getCodeType());
bean.setVerifyCode(t.getVerifyCode());
bean.setVerifyTime(t.getVerifyTime());
bean.setVerifyTimes(t.getVerifyTimes());
bean.setId(t.getId());
result.add(bean);
}
}
pagedResponseBean.setResult(result);
// pagedResponseBean.setResult(result);
pagedResponseBean.setCount((int)pagedEntityBean.getCount());
return pagedResponseBean;
}
/**
* 查询待发送的短信
*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment