UserManager新增分部类,定义访问令牌,用于定时任务解析当前登录用户信息
This commit is contained in:
@@ -3,13 +3,16 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Linq.Expressions;
|
||||
using System.Reflection;
|
||||
using System.Security.Claims;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Aspose.Cells.Drawing;
|
||||
using JNPF;
|
||||
using JNPF.Common.Contracts;
|
||||
using JNPF.Common.Core.Manager;
|
||||
using JNPF.Common.Enums;
|
||||
using JNPF.Common.Extension;
|
||||
using JNPF.DataEncryption;
|
||||
using JNPF.DependencyInjection;
|
||||
using JNPF.DynamicApiController;
|
||||
using JNPF.Systems.Interfaces.System;
|
||||
@@ -49,6 +52,19 @@ namespace Tnb.WarehouseMgr
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected Task<ClaimsPrincipal> GetUserIdentity()
|
||||
{
|
||||
var claims = JWTEncryption.ReadJwtToken(UserManager.AsscessToken)?.Claims;
|
||||
ClaimsIdentity toKen = new ClaimsIdentity();
|
||||
foreach (Claim item in claims)
|
||||
{
|
||||
toKen.AddClaim(item);
|
||||
}
|
||||
var curUser = new ClaimsPrincipal(toKen);
|
||||
return Task.FromResult(curUser);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 判断最终目标库位是否可以放置当前载具
|
||||
/// </summary>
|
||||
|
||||
@@ -4,18 +4,24 @@ using System.Data;
|
||||
using System.Data.Common;
|
||||
using System.Linq;
|
||||
using System.Linq.Expressions;
|
||||
using System.Net.Http;
|
||||
using System.Security.Claims;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Transactions;
|
||||
using Aop.Api.Domain;
|
||||
using JNPF;
|
||||
using JNPF.Common.Const;
|
||||
using JNPF.Common.Core.Manager;
|
||||
using JNPF.Common.Dtos.VisualDev;
|
||||
using JNPF.Common.Enums;
|
||||
using JNPF.Common.Extension;
|
||||
using JNPF.Common.Security;
|
||||
using JNPF.DataEncryption;
|
||||
using JNPF.FriendlyException;
|
||||
using JNPF.LinqBuilder;
|
||||
using JNPF.Logging;
|
||||
using JNPF.Systems.Entitys.Permission;
|
||||
using JNPF.Systems.Interfaces.System;
|
||||
using Mapster;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
@@ -61,6 +67,9 @@ namespace Tnb.WarehouseMgr
|
||||
[HttpPost]
|
||||
public async Task KittingOutByAdd(CancellationTokenSource? cts = default)
|
||||
{
|
||||
if (UserManager.AsscessToken.IsNullOrWhiteSpace()) return;
|
||||
var curUser = await GetUserIdentity();
|
||||
|
||||
var curDb = _db.CopyNew();
|
||||
try
|
||||
{
|
||||
@@ -114,8 +123,8 @@ namespace Tnb.WarehouseMgr
|
||||
setSortingH.id = SnowflakeIdHelper.NextId();
|
||||
setSortingH.kittingout_id = ko.id;
|
||||
setSortingH.seq = ko.seq;
|
||||
setSortingH.org_id = _userManager.User.OrganizeId;
|
||||
setSortingH.create_id = _userManager.UserId;
|
||||
setSortingH.org_id = curUser.FindFirst(ClaimConst.CLAINMORGID)?.Value;
|
||||
setSortingH.create_id = curUser.FindFirst(ClaimConst.CLAINMUSERID)?.Value;
|
||||
setSortingH.create_time = DateTime.Now;
|
||||
await curDb.Insertable(setSortingH).ExecuteCommandAsync();
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ namespace JNPF.Common.Core.Manager;
|
||||
/// <summary>
|
||||
/// 用户管理 .
|
||||
/// </summary>
|
||||
public class UserManager : IUserManager, IScoped
|
||||
public partial class UserManager : IUserManager, IScoped
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户表仓储.
|
||||
@@ -76,7 +76,6 @@ public class UserManager : IUserManager, IScoped
|
||||
public UserEntity User
|
||||
{
|
||||
get => _repository.GetSingle(u => u.Id == UserId);
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
27
common/Tnb.Common.Core/Manager/User/UserManager.part.cs
Normal file
27
common/Tnb.Common.Core/Manager/User/UserManager.part.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
using JNPF.Common.Const;
|
||||
using JNPF.Common.Enums;
|
||||
using JNPF.Common.Extension;
|
||||
using JNPF.Common.Manager;
|
||||
using JNPF.Common.Models.Authorize;
|
||||
using JNPF.Common.Models.User;
|
||||
using JNPF.Common.Net;
|
||||
using JNPF.Common.Security;
|
||||
using JNPF.DataEncryption;
|
||||
using JNPF.DependencyInjection;
|
||||
using JNPF.Systems.Entitys.Entity.Permission;
|
||||
using JNPF.Systems.Entitys.Permission;
|
||||
using JNPF.Systems.Entitys.System;
|
||||
using Mapster;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using SqlSugar;
|
||||
using System.Security.Claims;
|
||||
|
||||
namespace JNPF.Common.Core.Manager;
|
||||
|
||||
/// <summary>
|
||||
/// 用户管理 .
|
||||
/// </summary>
|
||||
public partial class UserManager
|
||||
{
|
||||
public static string AsscessToken { get; set; }
|
||||
}
|
||||
@@ -41,7 +41,6 @@ using JNPF.Common.Core.Handlers;
|
||||
using JNPF.Message.Interfaces.Message;
|
||||
using JNPF.Extras.DatabaseAccessor.SqlSugar.Models;
|
||||
using Aop.Api.Domain;
|
||||
using Tnb.WarehouseMgr;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
|
||||
@@ -606,6 +605,8 @@ public class OAuthService : IDynamicApiController, ITransient
|
||||
{ ClaimConst.LOGINTYPE,input.login_type}
|
||||
}, tokenTimeout);
|
||||
|
||||
//modify by ly on 20230804
|
||||
UserManager.AsscessToken = accessToken;
|
||||
// 单点登录标识缓存
|
||||
if (_oauthOptions.Enabled) _cacheManager.Set("OnlineTicket_" + input.online_ticket, options.ConfigId);
|
||||
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\common\Tnb.Common.Core\Tnb.Common.Core.csproj" />
|
||||
<ProjectReference Include="..\..\message\Tnb.Message.Interfaces\Tnb.Message.Interfaces.csproj" />
|
||||
<ProjectReference Include="..\..\WarehouseMgr\Tnb.WarehouseMgr\Tnb.WarehouseMgr.csproj" />
|
||||
<ProjectReference Include="..\Tnb.Systems.Interfaces\Tnb.Systems.Interfaces.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user