Commit 8210a1c5 authored by YangZhaoJun1's avatar YangZhaoJun1

修改登录方法返回值

parent 27065684
package org.rcisoft.core.controller; package org.rcisoft.core.controller;
import org.rcisoft.core.constant.MessageConstant;
import org.rcisoft.core.model.PersistModel;
import org.rcisoft.core.result.Result; import org.rcisoft.core.result.Result;
import org.rcisoft.core.service.AuthenticationService; import org.rcisoft.core.service.AuthenticationService;
import org.rcisoft.core.util.ResultGenerator; import org.rcisoft.core.util.ResultGenerator;
...@@ -34,9 +36,12 @@ public class AuthenticationController { ...@@ -34,9 +36,12 @@ public class AuthenticationController {
public Result login(@RequestParam("username")String username, public Result login(@RequestParam("username")String username,
@RequestParam("password")String password, @RequestParam("password")String password,
@RequestParam("userType")String userType){ @RequestParam("userType")String userType){
final String token = authenticationServiceImpl.login(username, password, userType); final UserAuthDTO userAuthDTO = authenticationServiceImpl.login(username, password, userType);
Result result = ResultGenerator.genSuccessResult(token); //Result result = ResultGenerator.genSuccessResult(token);
return result; return Result.builder(new PersistModel(1),
MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR,
userAuthDTO);
} }
/** /**
......
package org.rcisoft.core.controller;
import lombok.Data;
/**
* Created by gaowenfeng on 2017/8/4.
*/
@Data
public class UserAuthDTO {
private String userId;
private String name;
private String headPic;
private String roleCode;
private String token;
}
package org.rcisoft.core.service; package org.rcisoft.core.service;
import org.rcisoft.core.controller.UserAuthDTO;
import org.rcisoft.sys.user.entity.SysUser; import org.rcisoft.sys.user.entity.SysUser;
/** /**
...@@ -19,7 +20,7 @@ public interface AuthenticationService { ...@@ -19,7 +20,7 @@ public interface AuthenticationService {
* @param password * @param password
* @return * @return
*/ */
String login(String username, String password, String userType); UserAuthDTO login(String username, String password, String userType);
/** /**
* 刷新 * 刷新
......
package org.rcisoft.core.service.impl; package org.rcisoft.core.service.impl;
import org.rcisoft.common.component.Global; import org.rcisoft.common.component.Global;
import org.rcisoft.core.controller.UserAuthDTO;
import org.rcisoft.core.exception.ServiceException; import org.rcisoft.core.exception.ServiceException;
import org.rcisoft.core.result.ResultExceptionEnum; import org.rcisoft.core.result.ResultExceptionEnum;
import org.rcisoft.core.result.ResultServiceEnums; import org.rcisoft.core.result.ResultServiceEnums;
...@@ -67,12 +68,17 @@ public class AuthenticationServiceImpl implements AuthenticationService { ...@@ -67,12 +68,17 @@ public class AuthenticationServiceImpl implements AuthenticationService {
} }
@Override @Override
public String login(String username, String password, String userType) { public UserAuthDTO login(String username, String password, String userType) {
UsernamePasswordAuthenticationToken upToken = new UsernamePasswordAuthenticationToken(username, password); UsernamePasswordAuthenticationToken upToken = new UsernamePasswordAuthenticationToken(username, password);
/*进入到 UserDetailsService(JwtUserDetailServiceImpl) loadUserByUsername 方法*/ /*进入到 UserDetailsService(JwtUserDetailServiceImpl) loadUserByUsername 方法*/
UserAuthDTO userAuthDTO = new UserAuthDTO();
final Authentication authentication = authenticationManager.authenticate(upToken); final Authentication authentication = authenticationManager.authenticate(upToken);
final UserDetails userDetails = userDetailsService.loadUserByUsername(username); final UserDetails userDetails = userDetailsService.loadUserByUsername(username);
List<SysUser> sysUserList = sysUserMapper.queryUserByName(username);
SysUser sysUser = sysUserList.get(0);
List<SysRole> role = sysRoleRepository.queryCodeByUsername(username); List<SysRole> role = sysRoleRepository.queryCodeByUsername(username);
if(role.size()!=0){ if(role.size()!=0){
if (userType.equals("1")&&!global.getAdminCode().equals(role.get(0).getCode())){//1代表请求后台,只有管理员能够访问 if (userType.equals("1")&&!global.getAdminCode().equals(role.get(0).getCode())){//1代表请求后台,只有管理员能够访问
...@@ -85,7 +91,13 @@ public class AuthenticationServiceImpl implements AuthenticationService { ...@@ -85,7 +91,13 @@ public class AuthenticationServiceImpl implements AuthenticationService {
} }
final String token = JwtUtil.generateToken(userDetails); final String token = JwtUtil.generateToken(userDetails);
SecurityContextHolder.getContext().setAuthentication(authentication); SecurityContextHolder.getContext().setAuthentication(authentication);
return token;
userAuthDTO.setUserId(sysUser.getBusinessId());
userAuthDTO.setName(sysUser.getName());
userAuthDTO.setHeadPic(sysUser.getHeadPic());
userAuthDTO.setRoleCode(role.get(0).getCode());
userAuthDTO.setToken(token);
return userAuthDTO;
} }
@Override @Override
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
<result column="login_name" jdbcType="VARCHAR" property="loginName" /> <result column="login_name" jdbcType="VARCHAR" property="loginName" />
<result column="name" jdbcType="VARCHAR" property="name" /> <result column="name" jdbcType="VARCHAR" property="name" />
<result column="password" jdbcType="VARCHAR" property="password" /> <result column="password" jdbcType="VARCHAR" property="password" />
<result column="head_pic" jdbcType="VARCHAR" property="headPic" />
<!--<result column="email" jdbcType="VARCHAR" property="email" /> <!--<result column="email" jdbcType="VARCHAR" property="email" />
<result column="phone" jdbcType="VARCHAR" property="phone" />--> <result column="phone" jdbcType="VARCHAR" property="phone" />-->
<!--dataEntity--> <!--dataEntity-->
......
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