Commit 19b104a6 authored by liuyang's avatar liuyang

彩虹计划功能基本完成

parent 23355fb8
......@@ -114,6 +114,12 @@ public class RainbowPlanController extends BaseController<Object> {
RainbowPlanUser user = userDao.findByPhone(info.getPhone());
if (info.getType() == RainbowPlanUser.TYPE_BABY && user != null){
//红会人员录入过信息
if (!Strings.isNullOrEmpty(user.getOpenid())){
//如果openid不为空,说明该手机号已与其它微信绑定
result.put("status","error");
result.put("errorMsg","该手机号已与其它微信绑定");
return result;
}
user.setName(info.getName());
user.setGender(info.getGender());
user.setOpenid(info.getOpenid());
......@@ -271,6 +277,29 @@ public class RainbowPlanController extends BaseController<Object> {
return "OK";
}
@Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wish/myList",method = RequestMethod.GET)
public Map<String,Object> myWishList(@RequestHeader String sKey,HttpServletRequest request){
Map<String,Object> result = Maps.newConcurrentMap();
if (Strings.isNullOrEmpty(sKey)){
result.put("status","error");
result.put("errorMsg","请求参数错误");
return result;
}
String openid = tokenUtil.getUsernameFromToken(sKey);
RainbowPlanUser user = userDao.findByOpenid(openid);
if (user == null){
result.put("status","error");
result.put("errorMsg","用户不存在");
return result;
}
if (user.getType() == RainbowPlanUser.TYPE_LOVE){
IPageList<Wish> wishPageList = wishDao.findByVolunteeId(user.getId(),new Hints(getStartRow(request),getPageCount(request)));
result.put("wishPageList",wishPageList);
}
result.put("status","OK");
return result;
}
@Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wish/list",method = RequestMethod.GET)
public Map<String,Object> wishList(@RequestHeader String sKey, HttpServletRequest request) throws Exception {
Map<String,Object> result = Maps.newConcurrentMap();
......@@ -282,7 +311,7 @@ public class RainbowPlanController extends BaseController<Object> {
Activity activity = activityService.findByAavailableAndType("3");
result.put("activity",activity == null ? "" : activity);
if (activity == null){
if (activity == null || user == null){
//没有活动时
return result;
}
......@@ -463,6 +492,12 @@ public class RainbowPlanController extends BaseController<Object> {
result.put("errorMsg","当前不存在开放的彩虹计划活动");
return result;
}
boolean flag = userDao.validateUserExistByPhone(importWishVo.getPhone());
if (flag){
result.put("status","error");
result.put("errorMsg","该手机号已存");
return result;
}
RainbowPlanUser user = new RainbowPlanUser();
user.setPhone(importWishVo.getPhone());
user.setName(importWishVo.getName());
......
......@@ -11,4 +11,6 @@ public interface RainbowPlanUserDao extends IDao<RainbowPlanUser,String> {
RainbowPlanUser findByPhone(String phone);
List<RainbowPlanUser> findByIds(List<String> ids);
boolean validateUserExistByPhone(String phone);
}
......@@ -39,4 +39,14 @@ public class RainbowPlanUserDaoImpl extends AbsDao<RainbowPlanUser,String> imple
Query query = getSessionFactory().getCurrentSession().createQuery("from RainbowPlanUser where id in (:ids)").setParameterList("ids",ids);
return query.list();
}
@Override
public boolean validateUserExistByPhone(String phone) {
Long count = findCount(" select count(*) from RainbowPlanUser where phone = ?" , phone);
if (count > 0){
return true;
}else {
return false;
}
}
}
......@@ -45,6 +45,8 @@ public class UserDaoImpl extends AbsDao<User, String> implements UserDao {
return false;
}
// @Override
// public User findLastUserByGroup(String groupId) {
//
......
......@@ -14,4 +14,6 @@ public interface WishDao extends IDao<Wish,String> {
IPageList<Wish> findByRainbowPlanUserId(String userId, String activityId, Hints hints);
IPageList<Wish> findAllByAvailableActivity(String activityId,Hints hints);
IPageList<Wish> findByVolunteeId(String id, Hints hints);
}
......@@ -15,6 +15,7 @@ import java.util.List;
public class WishDaoImpl extends AbsDao<Wish,String> implements WishDao {
private static final String FIND_BY_RAINBOWPLANUSERID_SQL = " from Wish where rainbowPlanUserId = ? and activityId = ? order by createTime desc";
private static final String FIND_BY_AVAILABLE_ACTIVITY_SQL = " from Wish where activityId = ? order by createTime desc";
private static final String FIND_BY_VOLUNTEE_ID = " from Wish where volunteerId = ? order by createTime desc";
@Override
public IPageList<Wish> findByRainbowPlanUserId(String userId, String activityId, Hints hints) {
IPageList<Wish> wishPageList = new PageListImpl<Wish>();
......@@ -31,6 +32,14 @@ public class WishDaoImpl extends AbsDao<Wish,String> implements WishDao {
return wishPageList;
}
@Override
public IPageList<Wish> findByVolunteeId(String volunteeId, Hints hints) {
IPageList<Wish> wishPageList = new PageListImpl<Wish>();
wishPageList.setRecords(find(FIND_BY_VOLUNTEE_ID,hints,volunteeId));
wishPageList.setRecordTotal(findCount(" select count(*) "+ FIND_BY_VOLUNTEE_ID,volunteeId));
return wishPageList;
}
@Override
public Wish findById(String id) {
return findUnique("from Wish where id = ?",new Hints(),id);
......
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 to comment