Procházet zdrojové kódy

'微信登录接口'

Althars123 před 4 roky
rodič
revize
cf968e5658

+ 3 - 3
zzjs-admin/src/main/java/com/miaxis/system/controller/system/SysLoginController.java

@@ -104,17 +104,17 @@ public class SysLoginController
      */
     @PostMapping("/login/jscode")
     @ApiOperation("用户jscode登录")
-    public Response<String> getInfo(String jscode){
+    public Response<TokenDTO> getInfo(String jscode){
         String result = wxService.getWxInfo(appid, secret, jscode,"authorization_code");
         JSONObject jsonString = JSONObject.parseObject(result);
         WxResult wxResult = JSONObject.toJavaObject(jsonString, WxResult.class);
         TokenDTO tokenDTO = new TokenDTO();
         // 生成令牌
         if (wxResult.getOpenid() != null){
-
             // 生成令牌
             String token = loginService.login(wxResult.getOpenid(),null, StudentLoginTypeEnum.OPENID_LOGIN.getCode());
-            return Response.success(wxResult.getOpenid()) ;
+            tokenDTO.setToken(token);
+            return Response.success(tokenDTO) ;
         }
         else{
             return Response.error(500,wxResult.getErrmsg());

+ 4 - 4
zzjs-framework/src/main/java/com/miaxis/framework/config/SecurityConfig.java

@@ -102,7 +102,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
                 // 对于app 开放页面,允许任意访问
                 .antMatchers("/**/open-api/**").permitAll()
                 // 对于登录login 验证码captchaImage 允许匿名访问
-                .antMatchers("/login", "/login/noCode","/captchaImage","/login/studentpassword","/login/studentMobileCode","/login/studentMobile").anonymous()
+                .antMatchers("/login", "/login/noCode","/captchaImage","/login/jscode").anonymous()
                 //.antMatchers("/student/open/**").permitAll()
                 .antMatchers("/student/**").hasRole("STUDENT")
                 .antMatchers(
@@ -149,11 +149,11 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
     protected void configure(AuthenticationManagerBuilder auth) throws Exception
     {
         DaoAuthenticationProvider daoAuthenticationProvider = new DaoAuthenticationProvider();
-        OpenIdAuthenticationProvider mobileCodeAuthenticationProvider = new OpenIdAuthenticationProvider();
+        OpenIdAuthenticationProvider openIdAuthenticationProvider = new OpenIdAuthenticationProvider();
 //        daoAuthenticationProvider.setUserDetailsService(userDetailsService);
-        mobileCodeAuthenticationProvider.setUserDetailsService(userDetailsService);
+        openIdAuthenticationProvider.setUserDetailsService(userDetailsService);
         //ProviderManager providerManager = new ProviderManager(Arrays.asList(mobileCodeAuthenticationProvider,daoAuthenticationProvider));
-        auth.authenticationProvider(mobileCodeAuthenticationProvider);
+        auth.authenticationProvider(openIdAuthenticationProvider);
         auth.userDetailsService(userDetailsService).passwordEncoder(bCryptPasswordEncoder());
 
     }

+ 1 - 1
zzjs-framework/src/main/java/com/miaxis/framework/web/service/SysLoginService.java

@@ -138,7 +138,7 @@ public class SysLoginService
             }
             else
             {
-                e.getStackTrace();
+                e.printStackTrace();
                 AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage()));
                 throw new CustomException(e.getMessage());
             }

+ 1 - 0
zzjs-framework/src/main/java/com/miaxis/framework/web/service/UserDetailsServiceImpl.java

@@ -62,6 +62,7 @@ public class UserDetailsServiceImpl implements UserDetailsService
             {
                 UserInfo userInfo = userService.getStudentByOpenId(identification);
                 if (userInfo == null) {
+                    userInfo = new UserInfo();
                     userInfo.setHeadImage("http://image.jppt.com.cn/zzjs/2021-03-10/others/1615365365814.png");
                     userInfo.setNickName(RandomNameUtils.generateName());
                     userInfo.setOpenid(identification);

+ 1 - 2
zzjs-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -99,8 +99,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		where name = #{name}
 	</select>
 	<insert id="saveUserInfo" parameterType="com.miaxis.common.core.domain.entity.UserInfo" >
-		insert user_info (head_image,nick_name,openid) values #{headImage},#{nickName},#{nickName}
-		where name = #{name}
+		insert into user_info (head_image,nick_name,openid) values (#{headImage},#{nickName},#{openid})
 	</insert>