|
@@ -75,52 +75,39 @@ public class WeChatController {
|
|
|
|
|
|
System.out.println("userAgent: "+userAgent);
|
|
|
|
|
|
- if(userAgent.contains("MicroMessenger")){ //wx
|
|
|
- request.getSession().setAttribute("type","wx");
|
|
|
- if(StringUtils.isBlank(code)){
|
|
|
- String temp = http+constant.call_back_domain+"/prod-api/service-iot"+request.getRequestURI();
|
|
|
+ if(StringUtils.isBlank(code)){
|
|
|
+ String temp = http+constant.call_back_domain+"/prod-api/service-iot"+request.getRequestURI();
|
|
|
// String temp = "https://manager.usky.cn/prod-api/service-iot/weChat/getFirst1";
|
|
|
- String url = URLDecoder.decode(temp, "UTF-8");
|
|
|
- String sendUrl = "https://open.weixin.qq.com/connect/oauth2/authorize?appid="+constant.WE_CHAT_APP_ID+"&redirect_uri="+url+"&response_type=code&scope=snsapi_base&state=abc123#wechat_redirect";
|
|
|
- try{
|
|
|
- System.out.println("sendUrl: "+sendUrl);
|
|
|
- response.sendRedirect(sendUrl);
|
|
|
- }catch (IOException e){
|
|
|
- throw new BusinessException(e.getMessage());
|
|
|
- }
|
|
|
- }else{
|
|
|
- System.out.println("code: "+code);
|
|
|
- try {
|
|
|
- WxOAuth2AccessToken wxOAuth2AccessToken = wxMpService.getOAuth2Service().getAccessToken(code);
|
|
|
-
|
|
|
- String openid = wxOAuth2AccessToken.getOpenId();
|
|
|
- String access_token = wxOAuth2AccessToken.getAccessToken();
|
|
|
- System.out.println("openid: "+openid);
|
|
|
- request.getSession().setAttribute("openid",openid);
|
|
|
- LambdaQueryWrapper<MceMbuser> queryWrapper = Wrappers.lambdaQuery();
|
|
|
- queryWrapper.select(MceMbuser::getPhone)
|
|
|
- .eq(MceMbuser::getOpenid,openid);
|
|
|
- MceMbuser one = mceMbuserService.getOne(queryWrapper);
|
|
|
- if(one != null){
|
|
|
- request.getSession().setAttribute("phone",one.getPhone());
|
|
|
- }
|
|
|
-
|
|
|
- response.sendRedirect("https://manager.usky.cn/mobile/#/pages/login?flag=true");
|
|
|
- } catch (Exception e) {
|
|
|
- throw new BusinessException(e.getMessage());
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- }else{ //app
|
|
|
- System.out.println("code: app +++++ "+code);
|
|
|
- request.getSession().setAttribute("type","app");
|
|
|
- request.getSession().setAttribute("app_token","");
|
|
|
+ String url = URLDecoder.decode(temp, "UTF-8");
|
|
|
+ String sendUrl = "https://open.weixin.qq.com/connect/oauth2/authorize?appid="+constant.WE_CHAT_APP_ID+"&redirect_uri="+url+"&response_type=code&scope=snsapi_base&state=abc123#wechat_redirect";
|
|
|
try{
|
|
|
- response.sendRedirect("");
|
|
|
+ System.out.println("sendUrl: "+sendUrl);
|
|
|
+ response.sendRedirect(sendUrl);
|
|
|
}catch (IOException e){
|
|
|
throw new BusinessException(e.getMessage());
|
|
|
}
|
|
|
-
|
|
|
+ }else{
|
|
|
+ System.out.println("code: "+code);
|
|
|
+ try {
|
|
|
+ WxOAuth2AccessToken wxOAuth2AccessToken = wxMpService.getOAuth2Service().getAccessToken(code);
|
|
|
+
|
|
|
+ String openid = wxOAuth2AccessToken.getOpenId();
|
|
|
+ String access_token = wxOAuth2AccessToken.getAccessToken();
|
|
|
+ System.out.println("openid: "+openid);
|
|
|
+// request.getSession().setAttribute("openid",openid);
|
|
|
+// LambdaQueryWrapper<MceMbuser> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+// queryWrapper.select(MceMbuser::getPhone)
|
|
|
+// .eq(MceMbuser::getOpenid,openid);
|
|
|
+// MceMbuser one = mceMbuserService.getOne(queryWrapper);
|
|
|
+// if(one != null){
|
|
|
+// request.getSession().setAttribute("phone",one.getPhone());
|
|
|
+// }
|
|
|
+
|
|
|
+ String sendUrl = "https://manager.usky.cn/mobile/#/pages/login?openId="+openid;
|
|
|
+ response.sendRedirect(URLDecoder.decode(sendUrl, "UTF-8"));
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new BusinessException(e.getMessage());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -132,91 +119,68 @@ public class WeChatController {
|
|
|
String http = "https://";
|
|
|
String code = request.getParameter("code");
|
|
|
String userAgent = request.getHeader("User-Agent");
|
|
|
- if(null != request.getSession().getAttribute("app_token") && (null != request.getSession().getAttribute("phone"))){
|
|
|
- LambdaQueryWrapper<MceMbuser> queryWrapper = Wrappers.lambdaQuery();
|
|
|
- queryWrapper.eq(MceMbuser::getPhone,request.getSession().getAttribute("phone"));
|
|
|
- MceMbuser one = mceMbuserService.getOne(queryWrapper);
|
|
|
- if(one != null){
|
|
|
- String sendUrl = "https://manager.usky.cn/mobile/#/pages/index?op="+one.getOpenid();
|
|
|
- try{
|
|
|
- System.out.println("sendUrl: "+sendUrl);
|
|
|
- response.sendRedirect(sendUrl);
|
|
|
- }catch (IOException e){
|
|
|
- throw new BusinessException(e.getMessage());
|
|
|
- }
|
|
|
+ if(!userAgent.contains("MicroMessenger")){
|
|
|
+ try{
|
|
|
+ response.sendRedirect(URLDecoder.decode("https://manager.usky.cn/mobile/#/pages/login", "UTF-8"));
|
|
|
+ }catch (IOException e){
|
|
|
+ throw new BusinessException(e.getMessage());
|
|
|
}
|
|
|
|
|
|
}else{
|
|
|
- if(!userAgent.contains("MicroMessenger")){
|
|
|
+ String openId = request.getParameter("openId");
|
|
|
+ if((openId != null) && (StringUtils.isNotBlank(openId))){
|
|
|
try{
|
|
|
- response.sendRedirect("https://manager.usky.cn/mobile/#/pages/login");
|
|
|
+ LambdaQueryWrapper<MceMbuser> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper.eq(MceMbuser::getOpenid,openId);
|
|
|
+ MceMbuser one = mceMbuserService.getOne(queryWrapper);
|
|
|
+ if(one != null){
|
|
|
+ String sendUrl = "https://manager.usky.cn/mobile/#/pages/index?op="+one.getOpenid();
|
|
|
+ response.sendRedirect(URLDecoder.decode(sendUrl, "UTF-8"));
|
|
|
+ }else{
|
|
|
+ String sendUrl = "https://manager.usky.cn/mobile/#/pages/login?openId="+openId;
|
|
|
+ response.sendRedirect(URLDecoder.decode(sendUrl, "UTF-8"));
|
|
|
+ }
|
|
|
}catch (IOException e){
|
|
|
throw new BusinessException(e.getMessage());
|
|
|
}
|
|
|
|
|
|
}else{
|
|
|
- Object obj = request.getSession().getAttribute("openid");
|
|
|
- if((obj != null) && (StringUtils.isNotBlank(obj.toString()))){
|
|
|
+ if(StringUtils.isBlank(code)){
|
|
|
+ String temp = http+constant.call_back_domain+"/prod-api/service-iot"+request.getRequestURI();
|
|
|
+ String url = URLDecoder.decode(temp, "UTF-8");
|
|
|
+ String sendUrl = "https://open.weixin.qq.com/connect/oauth2/authorize?appid="+constant.WE_CHAT_APP_ID+"&redirect_uri="+url+"&response_type=code&scope=snsapi_base&state=abc123#wechat_redirect";
|
|
|
try{
|
|
|
+ System.out.println("sendUrl: "+sendUrl);
|
|
|
+ response.sendRedirect(sendUrl);
|
|
|
+ }catch (IOException e){
|
|
|
+ throw new BusinessException(e.getMessage());
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ System.out.println("code: "+code);
|
|
|
+ try {
|
|
|
+ WxOAuth2AccessToken wxOAuth2AccessToken = wxMpService.getOAuth2Service().getAccessToken(code);
|
|
|
+
|
|
|
+ String openid = wxOAuth2AccessToken.getOpenId();
|
|
|
+ String access_token = wxOAuth2AccessToken.getAccessToken();
|
|
|
+ System.out.println("openid: "+openid);
|
|
|
LambdaQueryWrapper<MceMbuser> queryWrapper = Wrappers.lambdaQuery();
|
|
|
- queryWrapper.eq(MceMbuser::getOpenid,request.getSession().getAttribute("openid"));
|
|
|
+ queryWrapper.eq(MceMbuser::getOpenid,openid);
|
|
|
MceMbuser one = mceMbuserService.getOne(queryWrapper);
|
|
|
if(one != null){
|
|
|
- request.getSession().setAttribute("phone",one.getPhone());
|
|
|
+
|
|
|
String sendUrl = "https://manager.usky.cn/mobile/#/pages/index?op="+one.getOpenid();
|
|
|
- response.sendRedirect(sendUrl);
|
|
|
+ response.sendRedirect(URLDecoder.decode(sendUrl, "UTF-8"));
|
|
|
}else{
|
|
|
- request.getSession().removeAttribute("openid");
|
|
|
- request.getSession().removeAttribute("phone");
|
|
|
-
|
|
|
- response.sendRedirect("https://manager.usky.cn/mobile/#/pages/login");
|
|
|
+ String sendUrl = "https://manager.usky.cn/mobile/#/pages/login?openId="+openid;
|
|
|
+ response.sendRedirect(URLDecoder.decode(sendUrl, "UTF-8"));
|
|
|
}
|
|
|
- }catch (IOException e){
|
|
|
- throw new BusinessException(e.getMessage());
|
|
|
- }
|
|
|
|
|
|
- }else{
|
|
|
- if(StringUtils.isBlank(code)){
|
|
|
- String temp = http+constant.call_back_domain+"/prod-api/service-iot"+request.getRequestURI();
|
|
|
- String url = URLDecoder.decode(temp, "UTF-8");
|
|
|
- String sendUrl = "https://open.weixin.qq.com/connect/oauth2/authorize?appid="+constant.WE_CHAT_APP_ID+"&redirect_uri="+url+"&response_type=code&scope=snsapi_base&state=abc123#wechat_redirect";
|
|
|
- try{
|
|
|
- System.out.println("sendUrl: "+sendUrl);
|
|
|
- response.sendRedirect(sendUrl);
|
|
|
- }catch (IOException e){
|
|
|
- throw new BusinessException(e.getMessage());
|
|
|
- }
|
|
|
- }else{
|
|
|
- System.out.println("code: "+code);
|
|
|
- try {
|
|
|
- WxOAuth2AccessToken wxOAuth2AccessToken = wxMpService.getOAuth2Service().getAccessToken(code);
|
|
|
-
|
|
|
- String openid = wxOAuth2AccessToken.getOpenId();
|
|
|
- String access_token = wxOAuth2AccessToken.getAccessToken();
|
|
|
- System.out.println("openid: "+openid);
|
|
|
- request.getSession().setAttribute("openid",openid);
|
|
|
- LambdaQueryWrapper<MceMbuser> queryWrapper = Wrappers.lambdaQuery();
|
|
|
- queryWrapper.eq(MceMbuser::getOpenid,openid);
|
|
|
- MceMbuser one = mceMbuserService.getOne(queryWrapper);
|
|
|
- if(one != null){
|
|
|
- request.getSession().setAttribute("phone",one.getPhone());
|
|
|
-
|
|
|
- String sendUrl = "https://manager.usky.cn/mobile/#/pages/index?op="+one.getOpenid();
|
|
|
- response.sendRedirect(sendUrl);
|
|
|
- }else{
|
|
|
- request.getSession().removeAttribute("openid");
|
|
|
- request.getSession().removeAttribute("phone");
|
|
|
-
|
|
|
- response.sendRedirect("https://manager.usky.cn/mobile/#/pages/login");
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- } catch (Exception e) {
|
|
|
- throw new BusinessException(e.getMessage());
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new BusinessException(e.getMessage());
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|