|
@@ -1,5 +1,7 @@
|
|
|
package com.iamberry.wechat.handles.home;
|
|
|
|
|
|
+import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLEncoder;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
@@ -11,7 +13,11 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
import com.iamberry.wechat.core.entity.product.QrcodeGift;
|
|
|
import com.iamberry.wechat.core.entity.qrcode.QrcodeResult;
|
|
|
import com.iamberry.wechat.face.qrcode.TemporaryQrcodeService;
|
|
|
+import com.iamberry.wechat.tools.WeixinUtil;
|
|
|
+import net.sf.json.JSONObject;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
@@ -44,7 +50,7 @@ import com.iamberry.wechat.tools.ResultInfo;
|
|
|
@Controller
|
|
|
@RequestMapping("/wechat")
|
|
|
public class HomeHandler {
|
|
|
-
|
|
|
+ private Logger logger = LoggerFactory.getLogger(HomeHandler.class);
|
|
|
@Autowired
|
|
|
private HomeService homeService;
|
|
|
public void setHomeService(HomeService homeService) {
|
|
@@ -219,4 +225,37 @@ public class HomeHandler {
|
|
|
return msg;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 刷新用户信息
|
|
|
+ */
|
|
|
+ @ResponseBody
|
|
|
+ @RequestMapping(value = "/getUserInfo", method = RequestMethod.POST)
|
|
|
+ public ResultMsg getUserInfo(HttpServletRequest request) throws Exception {
|
|
|
+ ResultMsg msg = new ResultMsg();
|
|
|
+
|
|
|
+ Member m = WechatUtils.getUserBySession(request);
|
|
|
+ m = memberService.getMemberByUserOpenId(m.getUserOpenid());
|
|
|
+ try{
|
|
|
+ JSONObject jsonObject = WeixinUtil.getUserInfo(m.getUserOpenid());
|
|
|
+ String nickname = jsonObject.getString("nickname");
|
|
|
+ String headimgurl = jsonObject.getString("headimgurl");
|
|
|
+
|
|
|
+ m.setUserHead(headimgurl);
|
|
|
+ m.setUserNickname(nickname);
|
|
|
+ if(nickname != null && !"".equals(nickname)){
|
|
|
+ m.setUserStatus(2);
|
|
|
+ homeService.updateWechatMemberInfoByByOpenid(m);
|
|
|
+ }
|
|
|
+ logger.info("获取个人信息成功;openid:"+m.getUserOpenid()+";昵称:"+nickname);
|
|
|
+ }catch (Exception e){
|
|
|
+ logger.info("获取个人信息失败;openid:"+m.getUserOpenid());
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+
|
|
|
+ msg.setMessage(NameUtils.getConfig("SUCCESSINFO"));
|
|
|
+ msg.setResultCode(ResultInfo.SUCCESSCODE);
|
|
|
+ msg.setStatus(true);
|
|
|
+ return msg;
|
|
|
+ }
|
|
|
+
|
|
|
}
|