Commit 8210a1c5 authored by YangZhaoJun1's avatar YangZhaoJun1

修改登录方法返回值

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