WMS
dengjunjie
2024-10-17 212af0b4bbc0f11e0b552d1bc3a4a73e52127e02
ÏîÄ¿´úÂë/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/System/Sys_UserController.cs
@@ -1,14 +1,33 @@
namespace WIDESEA_WMSServer.Controllers;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Caching.Memory;
using StackExchange.Profiling;
using WIDESEA_Core;
using WIDESEA_Core.Authorization;
using WIDESEA_Core.BaseController;
using WIDESEA_Core.Caches;
using WIDESEA_Core.Const;
using WIDESEA_Core.Helper;
using WIDESEA_Core.HttpContextUser;
using WIDESEA_Core.Utilities;
using WIDESEA_ISystemService;
using WIDESEA_Model;
using WIDESEA_Model.Models;
[Route("api/Sys_User")]
namespace WIDESEA_WMSServer.Controllers
{
    [Route("api/User")]
[ApiController]
public class Sys_UserController : ApiBaseController<ISys_UserService, Sys_User>
{
    private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly ICacheService _cacheService;
    public Sys_UserController(ISys_UserService userService, IHttpContextAccessor httpContextAccessor) : base(userService)
        public Sys_UserController(ISys_UserService userService, IHttpContextAccessor httpContextAccessor, ICacheService cacheService) : base(userService)
    {
        _httpContextAccessor = httpContextAccessor;
            _cacheService = cacheService;
    }
    [HttpPost, Route("login"), AllowAnonymous]
@@ -28,11 +47,6 @@
    {
        return Json(Service.ModifyPwd(oldPwd, newPwd));
    }
    [HttpPost, Route("UpdateInfo")]
    public IActionResult UpdateInfo(int user_Id, string roleName, string userName, string userTrueName, string address, int gender, string remark)
    {
        return Json(Service.UpdateInfo(user_Id, roleName, userName, userTrueName, address, gender, remark));
    }
    [HttpGet, Route("getVierificationCode"), AllowAnonymous]
    public IActionResult GetVierificationCode()
@@ -47,10 +61,38 @@
        return Json(data);
    }
    [HttpGet, Route("SerializeJwt"), AllowAnonymous]
    public WebResponseContent SerializeJwt(string code)
    {
        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);
                _cacheService.AddOrUpdate(tokenModelJwt.UserId.ToString(), newToken);
                return responseContent = WebResponseContent.Instance.OK(data: newToken);
            }
            catch (Exception ex)
            {
                return responseContent.Error(ex.Message);
            }
        }
    }
}