From d85a4b97325020b7efe1a6cdbd55025c6408cec9 Mon Sep 17 00:00:00 2001 From: hutongqing <hutongqing@hnkhzn.com> Date: 星期五, 25 十月 2024 10:12:06 +0800 Subject: [PATCH] 更新 --- WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs | 73 ++++++++++++++++++++++++++++++++++++ 1 files changed, 72 insertions(+), 1 deletions(-) diff --git a/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs b/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs index ad05229..3ca31b6 100644 --- a/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs +++ b/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/System/Sys_UserController.cs @@ -3,11 +3,13 @@ using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Caching.Memory; +using Newtonsoft.Json; using StackExchange.Profiling; using WIDESEAWCS_Core; using WIDESEAWCS_Core.Authorization; using WIDESEAWCS_Core.BaseController; using WIDESEAWCS_Core.Const; +using WIDESEAWCS_Core.Extensions; using WIDESEAWCS_Core.Helper; using WIDESEAWCS_Core.HttpContextUser; using WIDESEAWCS_Core.Utilities; @@ -28,6 +30,42 @@ _httpContextAccessor = httpContextAccessor; } + [HttpPost, Route("swgLogin"), AllowAnonymous] + public dynamic SwgLogin([FromBody] SwaggerLoginRequest loginRequest) + { + if (loginRequest is null) + { + return new { result = false }; + } + + try + { + LoginInfo loginInfo = new LoginInfo + { + Password = loginRequest.pwd, + UserName = loginRequest.name + }; + var result = Service.Login(loginInfo); + if (result.Status) + { + HttpContext.SuccessSwagger(); + Dictionary<string, object>? dict = JsonConvert.DeserializeObject<Dictionary<string, object>>(result.Data.Serialize()); + if(dict != null) + { + HttpContext.SuccessSwaggerJwt((dict.ContainsKey("token") ? dict["token"].ToString() : "") ?? ""); + } + string str = HttpContext.GetSuccessSwaggerJwt(); + return new { result = true }; + } + } + catch (Exception ex) + { + + } + + return new { result = false }; + } + [HttpPost, Route("login"), AllowAnonymous] public IActionResult Login([FromBody] LoginInfo loginInfo) { @@ -42,7 +80,7 @@ [HttpPost, Route("modifyPwd")] public IActionResult ModifyPwd(string oldPwd, string newPwd) { - return Json( Service.ModifyPwd(oldPwd, newPwd)); + return Json(Service.ModifyPwd(oldPwd, newPwd)); } [HttpGet, Route("getVierificationCode"), AllowAnonymous] @@ -63,5 +101,38 @@ { return WebResponseContent.Instance.OK(data: JwtHelper.SerializeJwt(code)); } + [HttpPost, Route("replaceToken")] + public WebResponseContent ReplaceToken() + { + WebResponseContent responseContent = new WebResponseContent(); + try + { + string token = App.User.GetToken(); + if (string.IsNullOrEmpty(token)) + { + return responseContent = WebResponseContent.Instance.Error("token鏃犳晥锛岃閲嶆柊鐧诲綍锛�"); + } + TokenModelJwt tokenModelJwt = new TokenModelJwt() + { + RoleId = App.User.RoleId, + TenantId = App.User.TenantId, + UserId = App.User.UserId, + UserName = App.User.UserName + }; + string newToken = JwtHelper.IssueJwt(tokenModelJwt); + return responseContent = WebResponseContent.Instance.OK(data: newToken); + } + catch (Exception ex) + { + return responseContent.Error(ex.Message); + } + + } + } + + public class SwaggerLoginRequest + { + public string name { get; set; } + public string pwd { get; set; } } } -- Gitblit v1.9.3