Commit 543e35e0 authored by hezhen's avatar hezhen Committed by libin

123

parent de48d825
...@@ -6,11 +6,12 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz; ...@@ -6,11 +6,12 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.constant.RestCode; import com.github.wxiaoqi.security.common.constant.RestCode;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.xxfc.platform.summit.entity.Activity;
import com.xxfc.platform.summit.entity.ActivityBm; import com.xxfc.platform.summit.entity.ActivityBm;
import com.xxfc.platform.summit.entity.ActivityShow;
import com.xxfc.platform.summit.entity.User; import com.xxfc.platform.summit.entity.User;
import com.xxfc.platform.summit.mapper.ActivityBmMapper;; import com.xxfc.platform.summit.mapper.ActivityBmMapper;;
import com.xxfc.platform.summit.vo.MeepoActivityVo; import com.xxfc.platform.summit.vo.MeepoActivityVo;
import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
...@@ -18,7 +19,6 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -18,7 +19,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example; import tk.mybatis.mapper.entity.Example;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.List; import java.util.List;
...@@ -35,6 +35,12 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> { ...@@ -35,6 +35,12 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> {
@Autowired @Autowired
private UserBiz userBiz; private UserBiz userBiz;
@Autowired
private ActivityBiz activityBiz;
@Autowired
private ActivityShowBiz activityShowBiz;
//用户报名 //用户报名
public ObjectRestResponse userBm(ActivityBm activityBm,Integer meepoUserId)throws Exception{ public ObjectRestResponse userBm(ActivityBm activityBm,Integer meepoUserId)throws Exception{
...@@ -91,49 +97,97 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> { ...@@ -91,49 +97,97 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> {
} }
public JSONObject userBmByKey(String key,Integer activityId, HttpServletRequest request)throws Exception{ //用户报名操作
public JSONObject userBmByKey(String key,Integer activityId, HttpServletRequest request){
JSONObject jsonObject=new JSONObject(); JSONObject jsonObject=new JSONObject();
jsonObject.put("isbm",0); jsonObject.put("isbm",0);
jsonObject.put("value",""); jsonObject.put("value","");
User user=userBiz.getSession(request); try {
//是否登录 User user=userBiz.getSession(request);
log.info("-----userBmByKey---activityId==="+activityId); //是否登录
if (user==null){ log.info("-----userBmByKey---activityId==="+activityId);
log.info("-----userBmByKey---用户未登录----"); if (user==null){
ActivityBm activityBm= userInfo(key); log.info("-----userBmByKey---用户未登录----");
if (activityBm!=null){ ActivityBm activityBm= userInfo(key);
log.info("-----userBmByKey---key已存在----"); if (activityBm!=null){
jsonObject.put("value",activityBm); log.info("-----userBmByKey---key已存在----");
// 获取到缓存的验证码后要先清空缓存对应键的值 jsonObject.put("value",activityBm);
summbitRedisTemplate.delete(key); // 获取到缓存的验证码后要先清空缓存对应键的值
} summbitRedisTemplate.delete(key);
}else {
Integer userId=user.getId();
log.info("-----userBmByKey---用户登录--userId==="+userId);
ActivityBm activityBm= userInfo(key);
if (activityBm==null){
log.info("-----userBmByKey---key不存在判断用户是否报名----");
if (checkUserBm(userId,activityId)!=null){
log.info("-----userBmByKey---key不存在用户已报名----");
jsonObject.put("isbm",1);
} }
}else { }else {
log.info("-----userBmByKey---key已存在去报名----"); Integer userId=user.getId();
ObjectRestResponse restResponse=userBm(activityBm,userId); log.info("-----userBmByKey---用户登录--userId==="+userId);
if (restResponse.getStatus()==RestCode.SUCCESS.getStatus()){ ActivityBm activityBm= userInfo(key);
log.info("-----userBmByKey---key已存在去报名----报名成功"); if (activityBm==null){
jsonObject.put("isbm",1); log.info("-----userBmByKey---key不存在判断用户是否报名----");
jsonObject.put("bmStatus",1); if (checkUserBm(userId,activityId)!=null){
log.info("-----userBmByKey---key不存在用户已报名----");
jsonObject.put("isbm",1);
}
}else { }else {
log.info("-----userBmByKey---key已存在去报名----报名失败"); log.info("-----userBmByKey---key已存在去报名----");
jsonObject.put("bmStatus",2); ObjectRestResponse restResponse=userBm(activityBm,userId);
if (restResponse.getStatus()==RestCode.SUCCESS.getStatus()){
log.info("-----userBmByKey---key已存在去报名----报名成功");
jsonObject.put("isbm",1);
jsonObject.put("bmStatus",1);
}else {
log.info("-----userBmByKey---key已存在去报名----报名失败");
jsonObject.put("bmStatus",2);
}
summbitRedisTemplate.delete(key);
} }
summbitRedisTemplate.delete(key);
} }
}catch (Exception e){
e.printStackTrace();
} }
return jsonObject; return jsonObject;
} }
//获取峰会活动详情
public ObjectRestResponse getActivityById(Integer activityId,String key,HttpServletRequest request){
if (activityId==0||activityId==null){
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE,"参数为空");
}
Example example=new Example(Activity.class);
example.createCriteria().andEqualTo("id",activityId).andEqualTo("isDel",0);
List<Activity> list=activityBiz.selectByExample(example);
if (list.size()==0){
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"活动不存在");
}
Activity activity=list.get(0);
if (activity.getIsShow()==null||activity.getIsShow()==0){
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"活动已下架");
}
if (activity.getIsPublish()==null||activity.getIsPublish()==0){
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"活动未发布");
}
Integer status=activity.getStatus();
if (status==null){
status=0;
}
if (status==0){
Long nowTime=System.currentTimeMillis();
Long startTime=activity.getStartTime();
Long endTime=activity.getEndTime();
if (nowTime<startTime){
status=1;
}else if (nowTime>=startTime&&nowTime<endTime){
status=2;
}else {
status=3;
}
activity.setStatus(status);
}
JSONObject jsonObject=new JSONObject();
jsonObject.put("activity",activity);
JSONObject userBm=userBmByKey(key,activityId,request);
jsonObject.put("bmInfo",userBm);
return ObjectRestResponse.succ(jsonObject);
}
} }
...@@ -16,7 +16,7 @@ import javax.servlet.http.HttpServletRequest; ...@@ -16,7 +16,7 @@ import javax.servlet.http.HttpServletRequest;
* @author Administrator * @author Administrator
*/ */
@RestController @RestController
@RequestMapping("front/activity") @RequestMapping("front/activityBm")
public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityBm> { public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityBm> {
...@@ -24,7 +24,7 @@ public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityB ...@@ -24,7 +24,7 @@ public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityB
UserBiz userBiz; UserBiz userBiz;
@PostMapping("/bm") @PostMapping("/add")
public ObjectRestResponse bm(@RequestBody ActivityBm activityBm, HttpServletRequest request){ public ObjectRestResponse bm(@RequestBody ActivityBm activityBm, HttpServletRequest request){
User user=userBiz.getSession(request); User user=userBiz.getSession(request);
try { try {
...@@ -37,89 +37,4 @@ public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityB ...@@ -37,89 +37,4 @@ public class ActivityBmController extends BaseController<ActivityBmBiz,ActivityB
} }
/* *//**
* 微信浏览器获取用户信息
* @param code
* @param callback
* @return
*//*
@GetMapping(value = "/app/unauth/users")
public String getUserInfo(String code, String callback,String key, HttpServletRequest request) {
log.info("-----微信回调userInfo---code=="+code+"----redirec_url==="+callback);
if (StringUtils.isBlank(code)){
log.info("----code为空---");
return String.format("code为空");
}
String openid = null;
String access_token = null;
try {
JSONObject jsonData = weixinService.getAccessToken(code);
openid = jsonData.getString("openid");
access_token = jsonData.getString("access_token");
String refresh_token = jsonData.getString("refresh_token");
log.info("-----微信回调userInfo---openid=="+openid+"----access_token==="+access_token);
//验证access_token是否失效
JSONObject validateData = weixinService.getValidateData(access_token, openid);
if (!"0".equals(validateData.getString("errcode"))){
//刷新access_token
JSONObject refreshData= weixinService.getRefreshToken(refresh_token);
access_token = refreshData.getString("access_token");
}
}catch (Exception e){
e.printStackTrace();
log.info("网络异常===" + e.getMessage());
return String.format("网络异常");
}
try {
// 获取微信用户基本信息
JSONObject userinfo_json = weixinService.getUserInfo(access_token,openid);
if (userinfo_json == null || StringUtils.isNotBlank(userinfo_json.getString("errcode"))) {
log.info("调用微信用户基本信息接口失败");
return String.format("调用微信用户基本信息接口失败");
}
log.info("微信用户基本信息---user===" +userinfo_json.toJSONString());
ActivityBm activityBm=activityBmBiz.userInfo(key);
if (activityBm==null){
log.info("redis的报名信息为空");
return String.format("redis的报名信息为空");
}
Integer activityId=activityBm.getActivityId();
if (activityId==null||activityId==0){
log.info("redis的报名信息activityId---为空");
return String.format("redis的报名信息activityId---为空");
}
User userInfo=new User();
String nickName = userinfo_json.getString("nickname");
String headimgurl = userinfo_json.getString("headimgurl");
String sex = userinfo_json.getString("sex");
if (StringUtils.isBlank(sex)){
sex="0";
}
userInfo.setOpenId(openid);
userInfo.setNickName(nickName);
userInfo.setAvatar(headimgurl);
userInfo.setSex(sex);
Integer userId=userBiz.addMeepoUser(userInfo,activityId);
log.info("小程序用户---userId===" +userId);
if (userId==null||userId==0){
log.info("小程序用户---userId---为空");
return String.format("小程序用户---userId---为空");
}
activityBmBiz.userBm(activityBm,userId);
log.info("UserInfo===" + JSONObject.toJSONString(userInfo));
String encode = Base64.encode(JSONObject.toJSONString(userInfo));
HttpSession session = request.getSession();
session.removeAttribute(frontSessionKey);
session.setAttribute(frontSessionKey, encode);
callback =new String(Base64.decode(callback), "utf-8");
log.info("callback===" + callback);
} catch (Exception e) {
log.info("调用微信用户基本信息接口失败", e);
return String.format("调用微信用户基本信息接口失败:");
}
return String.format("redirect:"+callback);
}*/
} }
package com.xxfc.platform.summit.controller;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.summit.biz.ActivityBiz;
import com.xxfc.platform.summit.biz.ActivityBmBiz;
import com.xxfc.platform.summit.entity.Activity;
import com.xxfc.platform.summit.pojo.ActivityQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
/**
* @author Administrator
*/
@RestController
@RequestMapping("/front/activity")
@IgnoreUserToken
@IgnoreClientToken
public class FrontActivityController extends BaseController<ActivityBiz, Activity> {
@Autowired
private ActivityBmBiz activityBmBiz;
@GetMapping("app/unauth/info")
public ObjectRestResponse info(
@RequestParam(value = "activityId",defaultValue = "0")Integer activityId,
@RequestParam(value = "key",defaultValue = "")String key,
HttpServletRequest request){
return activityBmBiz.getActivityById(activityId,key,request);
}
}
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