|
@@ -5,13 +5,15 @@ using System.IdentityModel.Tokens.Jwt;
|
|
|
using System.Security.Claims;
|
|
|
using StackExchange.Redis;
|
|
|
using OASystem.Domain.Dtos.UserDto;
|
|
|
+using OASystem.Domain.Entities.System;
|
|
|
+using OASystem.Domain;
|
|
|
|
|
|
namespace OASystem.API.Controllers
|
|
|
{
|
|
|
/// <summary>
|
|
|
/// 鉴权相关
|
|
|
/// </summary>
|
|
|
- [Route("api/[action]")]
|
|
|
+ [Route("api/")]
|
|
|
public class AuthController : ControllerBase
|
|
|
{
|
|
|
private readonly IMapper _mapper;
|
|
@@ -34,21 +36,22 @@ namespace OASystem.API.Controllers
|
|
|
/// <param name="dto"></param>
|
|
|
/// <returns></returns>
|
|
|
[AllowAnonymous]
|
|
|
- [HttpPost("login")]
|
|
|
+ [Route("login")]
|
|
|
+ [HttpPost]
|
|
|
[ProducesResponseType(typeof(LoginView), StatusCodes.Status200OK)]
|
|
|
public async Task<IActionResult> LoginAsync(LoginDto dto)
|
|
|
{
|
|
|
#region 校验用户信息,假设此处我们已经校验成功
|
|
|
- var userData = _loginRep.Login(_loginRep,dto);
|
|
|
+ var userData = _loginRep.Login(_loginRep, dto);
|
|
|
if (userData.Result.Code != 0)
|
|
|
{
|
|
|
if (userData.Result.Code != 0) { return Ok(JsonView(false, userData.Result.Message)); }
|
|
|
|
|
|
- return Ok(JsonView(false,"暂无该员工信息!"));
|
|
|
+ return Ok(JsonView(false, "暂无该员工信息!"));
|
|
|
}
|
|
|
|
|
|
//人事审核是否通过
|
|
|
- if (userData.Result.Data.HrAudit != 1 )
|
|
|
+ if (userData.Result.Data.HrAudit != 1)
|
|
|
{
|
|
|
return Ok(JsonView(false, "该员工账号暂无登录权限,人事审核未通过!"));
|
|
|
}
|
|
@@ -65,7 +68,7 @@ namespace OASystem.API.Controllers
|
|
|
{
|
|
|
Expires = DateTime.Now.AddMinutes(30)
|
|
|
};
|
|
|
-
|
|
|
+
|
|
|
string authorId = dto.Number + "Token";
|
|
|
|
|
|
var claims = new[] { new Claim(ClaimTypes.NameIdentifier, "Future") };
|
|
@@ -79,14 +82,6 @@ namespace OASystem.API.Controllers
|
|
|
signingCredentials: creds);
|
|
|
view.Token = new JwtSecurityTokenHandler().WriteToken(token);
|
|
|
|
|
|
-
|
|
|
- // 往Redis里面存入数据
|
|
|
- //_redis.StringSet(authorId, view.Token);
|
|
|
-
|
|
|
-
|
|
|
- // 从Redis里面取数据
|
|
|
- //string name = _redis.StringGet(authorId);
|
|
|
-
|
|
|
return Ok(JsonView(view));
|
|
|
}
|
|
|
|
|
@@ -96,7 +91,8 @@ namespace OASystem.API.Controllers
|
|
|
/// <param name="dto"></param>
|
|
|
/// <returns></returns>
|
|
|
[Authorize]
|
|
|
- [HttpPost("register")]
|
|
|
+ [HttpPost]
|
|
|
+ [Route("register")]
|
|
|
public async Task<IActionResult> Register(RegisterDto dto)
|
|
|
{
|
|
|
var userData = _loginRep.Register(_loginRep, dto);
|
|
@@ -110,7 +106,34 @@ namespace OASystem.API.Controllers
|
|
|
return Ok(new { Code = 0, Msg = userData.Result.Message });
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 修改密码
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="dto"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [Authorize]
|
|
|
+ [HttpPost]
|
|
|
+ [Route("UpdPassword")]
|
|
|
+ public async Task<IActionResult> UpdateUserPassword(UpdateDto dto)
|
|
|
+ {
|
|
|
+ Result result = new Result();
|
|
|
+
|
|
|
+ Sys_Users sys_Users = _mapper.Map<Sys_Users>(dto);
|
|
|
+ var _UpdateState = await _loginRep.UpdateAsync(s => s.Id == dto.UserId, ss => sys_Users);
|
|
|
+ if (_UpdateState)
|
|
|
+ {
|
|
|
+ result.Code = 0;
|
|
|
+ result.Message = "申请成功!人事主管审核后且信息部经理分配了登录账号,可登录OA!";
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ result.Code = -2;
|
|
|
+ result.Message = "用户修改失败!";
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
+ return Ok(JsonView(result));
|
|
|
+ }
|
|
|
|
|
|
/// <summary>
|
|
|
/// 测试auth
|