Commit ede30c86 authored by hanfeng's avatar hanfeng

Merge remote-tracking branch 'origin/master_activity' into master_activity-hf

parents 7b97360f 1e33c107
......@@ -53,11 +53,11 @@ public class User {
@ApiModelProperty("性别")
private String sex;
@Column(name = "group")
@Column(name = "'group'")
@ApiModelProperty("分组")
private Integer group;
@Column(name = "status")
@Column(name = "'status'")
@ApiModelProperty("状态")
private Integer status;
......@@ -96,12 +96,12 @@ public class User {
@Column(name = "createtime")
@ApiModelProperty("创建时间")
private Integer createtime;
private Long createtime;
@Column(name = "lastjointime")
@ApiModelProperty("待定")
private Integer lastjointime;
private Long lastjointime;
@Column(name = "had_luru")
@ApiModelProperty("待定")
......
......@@ -8,16 +8,16 @@ package com.xxfc.platform.summit.model;
import java.io.Serializable;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
/**
* 封装 access_token
*/
@Data
public class AccessToken implements Serializable {
private static final long serialVersionUID = -822464425433824314L;
......@@ -52,14 +52,11 @@ public class AccessToken implements Serializable {
}
}
public AccessToken(String json,String access_token,Integer expires_in) {
public AccessToken(String json,String access_token,Integer expires_in,Long expiredTime) {
this.json = json;
this.access_token = access_token;
this.expires_in = expires_in;
if (expires_in != null)
expiredTime = System.currentTimeMillis() + ((expires_in -5) * 1000);
this.expiredTime=expiredTime;
}
public String getJson() {
......@@ -72,6 +69,18 @@ public class AccessToken implements Serializable {
return access_token != null;
}
public void setAccess_token(String access_token) {
this.access_token = access_token;
}
public void setExpires_in(Integer expires_in) {
this.expires_in = expires_in;
}
public void setExpiredTime(Long expiredTime) {
this.expiredTime = expiredTime;
}
public void setJson(String json) {
this.json = json;
......@@ -82,6 +91,17 @@ public class AccessToken implements Serializable {
return number == null ? null : number.intValue();
}
public String getAccessToken() {
return access_token;
}
public Integer getExpiresIn() {
return expires_in;
}
public Long getExpiredTime() {
return expiredTime;
}
}
......@@ -89,5 +89,12 @@ public class JsTicket implements Serializable {
this.ticket = ticket;
}
@Override
public String toString() {
return "JsTicket [ticket=" + ticket + ", expires_in=" + expires_in + ", expiredTime=" + expiredTime + "]";
}
}
package com.xxfc.platform.summit.biz;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
......@@ -17,7 +17,6 @@ import com.xxfc.platform.summit.pojo.ActivityBmQuery;
import com.xxfc.platform.summit.vo.MeepoActivityVo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
......@@ -107,9 +106,7 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> {
if (StringUtils.isBlank(json)){
return null;
}
JSONObject jsonObject= JSONObject.parseObject(json);
BeanUtils.copyProperties(jsonObject,bm);
return bm;
return JSON.parseObject(json,ActivityBm.class);
}
public ActivityBm checkUserBm(Integer meepoUserId,Integer activityId ){
......@@ -161,18 +158,27 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> {
log.info("-----userBmByKey---key已存在去报名/签到----报名/签到成功");
if (activityBm.getBmStatus()==1){
jsonObject.put("isbm",1);
jsonObject.put("bm_status",1);
jsonObject.put("bmStatus",1);
}else if (activityBm.getQdStatus()==1){
jsonObject.put("isqd",1);
jsonObject.put("qd_status",1);
jsonObject.put("qdStatus",1);
}
}else {
}else if (restResponse.getStatus()==ResultCode.EXIST_CODE){
log.info("-----userBmByKey---key已存在已报名/签到----");
if (activityBm.getBmStatus()==1){
jsonObject.put("isbm",1);
}else if (activityBm.getQdStatus()==1){
jsonObject.put("isqd",1);
}
jsonObject.put("value",activityBm);
} else {
log.info("-----userBmByKey---key已存在去报名/签到----报名/签到失败");
if (activityBm.getBmStatus()==1){
jsonObject.put("bm_status",2);
jsonObject.put("bmStatus",2);
}else if (activityBm.getQdStatus()==1){
jsonObject.put("qd_status",2);
jsonObject.put("qdStatus",2);
}
jsonObject.put("value",activityBm);
}
summbitRedisTemplate.delete(key);
}
......@@ -186,6 +192,7 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> {
//获取峰会活动详情
public ObjectRestResponse getActivityById(Integer activityId,String key,HttpServletRequest request){
log.info("--getActivityById---activityId==="+activityId+"----key===="+key);
if (activityId==0||activityId==null){
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE,"参数为空");
}
......@@ -251,4 +258,5 @@ public class ActivityBmBiz extends BaseBiz<ActivityBmMapper, ActivityBm> {
public ActivityBm userBm(ActivityBm activityBm, Integer id) {
return null;
}
}
......@@ -2,6 +2,7 @@ package com.xxfc.platform.summit.biz;
import cn.hutool.core.codec.Base64;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.exception.BaseException;
......@@ -80,8 +81,11 @@ public class UserBiz extends BaseBiz<UserMapper, User> {
userId=uses.get(0).getId();
user.setId(userId);
}else {
Long time=System.currentTimeMillis()/1000L;
user.setWeId(weId);
user.setRId(rId);
user.setCreatetime(time);
user.setLastjointime(time);
insertSelective(user);
userId=user.getId();
}
......@@ -93,8 +97,8 @@ public class UserBiz extends BaseBiz<UserMapper, User> {
log.info("----code为空---");
throw new BaseException(ResultCode.FAILED_CODE, Sets.newSet("code为空"));
}
String openid = null;
String access_token = null;
String openid = "ohe-C0vTEyivU7MK4BKEiDq0UdW4";
/*String access_token = null;
try {
JSONObject jsonData = weixinService.getAccessToken(code);
openid = jsonData.getString("openid");
......@@ -112,15 +116,15 @@ public class UserBiz extends BaseBiz<UserMapper, User> {
e.printStackTrace();
log.info("网络异常===" + e.getMessage());
throw new BaseException(ResultCode.FAILED_CODE, Sets.newSet("网络异常"));
}
}*/
try {
// 获取微信用户基本信息
JSONObject userinfo_json = weixinService.getUserInfo(access_token,openid);
/* JSONObject userinfo_json = weixinService.getUserInfo(access_token,openid);
if (userinfo_json == null || StringUtils.isNotBlank(userinfo_json.getString("errcode"))) {
log.info("调用微信用户基本信息接口失败");
throw new BaseException(ResultCode.FAILED_CODE, Sets.newSet("调用微信用户基本信息接口失败"));
}
log.info("微信用户基本信息---user===" +userinfo_json.toJSONString());
log.info("微信用户基本信息---user===" +userinfo_json.toJSONString());*/
ActivityBm activityBm=activityBmBiz.userInfo(key);
if (activityBm==null){
log.info("redis的报名信息为空");
......@@ -132,9 +136,9 @@ public class UserBiz extends BaseBiz<UserMapper, User> {
throw new BaseException(ResultCode.FAILED_CODE, Sets.newSet("redis的报名信息activityId---为空"));
}
User userInfo=new User();
String nickName = userinfo_json.getString("nickname");
String headimgurl = userinfo_json.getString("headimgurl");
String sex = userinfo_json.getString("sex");
String nickName = "何振";//userinfo_json.getString("nickname");
String headimgurl = "http://thirdwx.qlogo.cn/mmopen/vi_32/X2WxAZeZlhME5RtHKA3iadPA1yGq084s59Sl0Dzana0QInaceROnto82zyNBGdQaiaQZCdBaHsjtdM0Zkob4PXMA/132";//userinfo_json.getString("headimgurl");
String sex =null; //userinfo_json.getString("sex");
if (StringUtils.isBlank(sex)){
sex="0";
}
......@@ -166,10 +170,8 @@ public class UserBiz extends BaseBiz<UserMapper, User> {
if (StringUtils.isBlank(frontSessionValue1)) {
return null;
}
JSONObject jsonObject=JSONObject.parseObject(frontSessionValue1);
User user=new User();
BeanUtils.copyProperties(jsonObject,user);
return user;
frontSessionValue1 =new String(Base64.decode(frontSessionValue1), "utf-8");
return JSON.parseObject(frontSessionValue1,User.class);
}catch (Exception e){
e.printStackTrace();
return null;
......
......@@ -7,6 +7,7 @@ import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.xxfc.platform.summit.biz.ActivityBmBiz;
import com.xxfc.platform.summit.biz.UserBiz;
import com.xxfc.platform.summit.constant.RedisKey;
import com.xxfc.platform.summit.entity.ActivityBm;
import com.xxfc.platform.summit.entity.User;
import com.xxfc.platform.summit.service.WXjsService;
......@@ -82,10 +83,12 @@ public class WeixinController {
log.info("-----微信回调userInfo---code=="+code+"----redirec_url==="+callback);
try {
String [] params=callback.split(",");
String key=params[1];
String key= RedisKey.CONSTANT_CODE_PREFIX+params[1];
callback=params[0];
log.info("-----微信回调userInfo---key=="+key+"----callback==="+callback);
userBiz.authUser(code,key,request);
callback =new String(Base64.decode(callback), "utf-8");
//callback =new String(Base64.decode(callback), "utf-8");
callback+="&key="+key;
log.info("callback===" + callback);
return String.format("redirect:"+callback);
}catch (Exception e){
......
......@@ -4,7 +4,6 @@ package com.xxfc.platform.summit.interceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.github.wxiaoqi.security.common.util.UserAgentUtil;
import com.xxfc.platform.summit.biz.UserBiz;
import com.xxfc.platform.summit.constant.RedisKey;
......@@ -13,6 +12,7 @@ import com.xxfc.platform.summit.service.WeixinService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
import com.alibaba.fastjson.JSONObject;
......@@ -41,6 +41,9 @@ public class WeChatH5LoginInterceptor extends HandlerInterceptorAdapter {
@Autowired
private RedisTemplate summbitRedisTemplate;
@Value("${wx.authUrl}")
private String authUrl;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
......@@ -64,7 +67,7 @@ public class WeChatH5LoginInterceptor extends HandlerInterceptorAdapter {
if (StringUtils.isNotBlank(redisKey)){
json.put("key",redisKey);
}
json.put("url","https://dev.dfangche.com/api/summit/auth/app/unauth/wxLogin");
json.put("url",authUrl);
result.put("data",json);
result.put("status",1001);
response.setCharacterEncoding("utf-8");
......
......@@ -2,11 +2,7 @@ package com.xxfc.platform.summit.service;
import com.xxfc.platform.summit.model.AccessToken;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.xxfc.platform.summit.util.HttpRequestUtil;
import lombok.extern.slf4j.Slf4j;
......@@ -57,7 +53,7 @@ public class AccessTokenService {
if (StringUtils.isNotBlank(accessTokenRedis))
{
JSONObject obj = JSONObject.parseObject(accessTokenRedis).getJSONObject(wy_appid);
AccessToken accessToken = new AccessToken(obj.getString("json"),obj.getString("accessToken"),obj.getInteger("expiresIn"));
AccessToken accessToken = new AccessToken(obj.getString("json"),obj.getString("accessToken"),obj.getInteger("expiresIn"),obj.getLong("expiredTime"));
if(accessToken.isAvailable()){
return accessToken;
}
......@@ -67,7 +63,7 @@ public class AccessTokenService {
refreshAccessToken();
accessTokenRedis = summbitRedisTemplate.opsForValue().get(wy_appid) == null ? "" : summbitRedisTemplate.opsForValue().get(wy_appid).toString();
JSONObject obj = JSONObject.parseObject(accessTokenRedis).getJSONObject(wy_appid);
AccessToken accessToken = new AccessToken(obj.getString("json"),obj.getString("accessToken"),obj.getInteger("expiresIn"));
AccessToken accessToken = new AccessToken(obj.getString("json"),obj.getString("accessToken"),obj.getInteger("expiresIn"),obj.getLong("expiredTime"));
return accessToken;
//return (AccessToken) ehcache.get(SystemConfig.WINXIN_AppID).getObjectValue();
}
......@@ -98,7 +94,6 @@ public class AccessTokenService {
String json = HttpRequestUtil.httpGet(url+"&appid="+wy_appid+"&secret="+wy_secret);
log.info("---json===="+json);
result = new AccessToken(json);
log.info("---result===="+result.toString());
if (result.isAvailable())
break;
}
......
......@@ -92,7 +92,9 @@ public class JsTicketService {
jsTicket = new JsTicket(json);
/*Element element = new Element(SystemConfig.WINXIN_AppID, jsTicket);
ehcache.put(element);*/
log.info("----jsTicket===="+jsTicket);
JSONObject obj = new JSONObject();
obj.put(key, jsTicket);
summbitRedisTemplate.delete(key);
Boolean suc=summbitRedisTemplate.opsForValue().setIfAbsent(key, obj.toJSONString());
if (suc) {
......@@ -101,7 +103,7 @@ public class JsTicketService {
}
}else{
String json = HttpRequestUtil.httpGet(apiUrl+"access_token="+ tokenService.getAccessTokenStr()+"&type="+jsApiType.name());
log.info("---json===="+json);
log.info("---json===="+json);
jsTicket = new JsTicket(json);
/*Element element = new Element(SystemConfig.WINXIN_AppID, jsTicket);
ehcache.put(element);*/
......@@ -117,4 +119,5 @@ public class JsTicketService {
}
}
\ No newline at end of file
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