|
|
@ -2,6 +2,7 @@ package com.jingcheng.template.service.impl;
|
|
|
|
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
|
|
|
|
import com.jingcheng.template.constants.Constants;
|
|
|
|
import com.jingcheng.template.mapper.*;
|
|
|
|
import com.jingcheng.template.mapper.*;
|
|
|
|
import com.jingcheng.template.model.*;
|
|
|
|
import com.jingcheng.template.model.*;
|
|
|
|
import com.jingcheng.template.service.UsersService;
|
|
|
|
import com.jingcheng.template.service.UsersService;
|
|
|
@ -16,6 +17,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
|
|
|
|
|
|
|
@Service("usersService")
|
|
|
|
@Service("usersService")
|
|
|
|
@Transactional
|
|
|
|
@Transactional
|
|
|
@ -28,6 +30,8 @@ public class UsersServiceImpl extends BaseServiceImpl<UsersMapper, Users> implem
|
|
|
|
private String appId;
|
|
|
|
private String appId;
|
|
|
|
@Value("${weixin.appSecret}")
|
|
|
|
@Value("${weixin.appSecret}")
|
|
|
|
private String appSecret;
|
|
|
|
private String appSecret;
|
|
|
|
|
|
|
|
@Value("${weixin.getWxUserInfoUrl}")
|
|
|
|
|
|
|
|
private String getWxUserInfoUrl;
|
|
|
|
|
|
|
|
|
|
|
|
Logger logger = LogUtils.getBussinessLogger();
|
|
|
|
Logger logger = LogUtils.getBussinessLogger();
|
|
|
|
public Users selectByUserNoOrOpenId(String key) {
|
|
|
|
public Users selectByUserNoOrOpenId(String key) {
|
|
|
@ -117,9 +121,48 @@ public class UsersServiceImpl extends BaseServiceImpl<UsersMapper, Users> implem
|
|
|
|
"&code=" + code + "&grant_type=authorization_code";
|
|
|
|
"&code=" + code + "&grant_type=authorization_code";
|
|
|
|
String accessTokenResult = HttpRequestUtils.sendGet(getAccessTokenUrl);
|
|
|
|
String accessTokenResult = HttpRequestUtils.sendGet(getAccessTokenUrl);
|
|
|
|
String openId = JSON.parseObject(accessTokenResult).getString("openid");
|
|
|
|
String openId = JSON.parseObject(accessTokenResult).getString("openid");
|
|
|
|
String accessToken = JSON.parseObject(accessTokenResult).getString("access_token");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return null;
|
|
|
|
String accessToken = JSON.parseObject(accessTokenResult).getString("access_token");
|
|
|
|
|
|
|
|
String getUserInfoUrl = getWxUserInfoUrl + accessToken + "&openid=" + openId + "&lang=zh_CN";
|
|
|
|
|
|
|
|
String userInfo = HttpRequestUtils.sendGet(getUserInfoUrl);
|
|
|
|
|
|
|
|
String nickName = JSON.parseObject(userInfo).getString("nickname");
|
|
|
|
|
|
|
|
Integer subscribe = JSON.parseObject(userInfo).getInteger("subscribe");
|
|
|
|
|
|
|
|
String headimgurl = JSON.parseObject(userInfo).getString("headimgurl");
|
|
|
|
|
|
|
|
Integer sex = JSON.parseObject(userInfo).getInteger("sex");
|
|
|
|
|
|
|
|
Users findUsers = new Users();
|
|
|
|
|
|
|
|
findUsers.setOpenId(openId);
|
|
|
|
|
|
|
|
findUsers.setState(Constants.STATE_VALID);
|
|
|
|
|
|
|
|
Users users = usersMapper.selectOne(findUsers);
|
|
|
|
|
|
|
|
Long usersId ;
|
|
|
|
|
|
|
|
if (null == users){
|
|
|
|
|
|
|
|
Users newUsers = new Users();
|
|
|
|
|
|
|
|
newUsers.setOpenId(openId);
|
|
|
|
|
|
|
|
newUsers.setNickName(nickName);
|
|
|
|
|
|
|
|
newUsers.setHeadImgUrl(headimgurl);
|
|
|
|
|
|
|
|
newUsers.setSex(sex);
|
|
|
|
|
|
|
|
newUsers.setState(Constants.STATE_VALID);
|
|
|
|
|
|
|
|
newUsers.setCreateDateTime(new Date());
|
|
|
|
|
|
|
|
newUsers.setUpdateDateTime(new Date());
|
|
|
|
|
|
|
|
usersMapper.insert(newUsers);
|
|
|
|
|
|
|
|
usersId = newUsers.getId();
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
|
|
|
users.setNickName(nickName);
|
|
|
|
|
|
|
|
users.setUpdateDateTime(new Date());
|
|
|
|
|
|
|
|
users.setSex(sex);
|
|
|
|
|
|
|
|
users.setHeadImgUrl(headimgurl);
|
|
|
|
|
|
|
|
usersMapper.updateByPrimaryKeySelective(users);
|
|
|
|
|
|
|
|
usersId = users.getId();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
JSONObject userJson = new JSONObject();
|
|
|
|
|
|
|
|
userJson.put("id",usersId);
|
|
|
|
|
|
|
|
userJson.put("openId",openId);
|
|
|
|
|
|
|
|
userJson.put("subscribe",subscribe);
|
|
|
|
|
|
|
|
userJson.put("nickname",nickName);
|
|
|
|
|
|
|
|
userJson.put("headimgurl",headimgurl);
|
|
|
|
|
|
|
|
userJson.put("sex",sex);
|
|
|
|
|
|
|
|
ajaxResult.setData(userJson);
|
|
|
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.SUCCESS);
|
|
|
|
|
|
|
|
return ajaxResult;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|