出库签收bug处理

This commit is contained in:
2023-09-07 11:02:17 +08:00
parent 8cb5cf7ca3
commit 94a598d5d6
4 changed files with 21 additions and 16 deletions

View File

@@ -9,6 +9,7 @@ using System.Text;
using System.Threading.Channels; using System.Threading.Channels;
using System.Threading.Tasks; using System.Threading.Tasks;
using Aspose.Cells.Drawing; using Aspose.Cells.Drawing;
using JavaScriptEngineSwitcher.Core.Extensions;
using JNPF; using JNPF;
using JNPF.Common.Contracts; using JNPF.Common.Contracts;
using JNPF.Common.Core.Manager; using JNPF.Common.Core.Manager;
@@ -70,10 +71,11 @@ namespace Tnb.WarehouseMgr
} }
} }
protected Task<ClaimsPrincipal> GetUserIdentity(string? token = null) protected Task<ClaimsPrincipal> GetUserIdentity(string? sToken = null)
{ {
var at = token ?? UserManager.AsscessToken; var at = sToken ?? UserManager.AsscessToken;
var claims = JWTEncryption.ReadJwtToken(UserManager.AsscessToken)?.Claims; at = at.StartsWith("Bearer ", StringComparison.OrdinalIgnoreCase) ? at.TrimStart("Bearer ") : at;
var claims = JWTEncryption.ReadJwtToken(at)?.Claims;
ClaimsIdentity toKen = new ClaimsIdentity(); ClaimsIdentity toKen = new ClaimsIdentity();
foreach (Claim item in claims) foreach (Claim item in claims)
{ {

View File

@@ -92,17 +92,12 @@ namespace Tnb.WarehouseMgr
if (!isMatch) throw new AppFriendlyException("库位与载具规格不匹配", 500); if (!isMatch) throw new AppFriendlyException("库位与载具规格不匹配", 500);
ePoint = await _db.Queryable<WmsPointH>().FirstAsync(it => it.location_id == endLocations[0].id); ePoint = await _db.Queryable<WmsPointH>().FirstAsync(it => it.location_id == endLocations[0].id);
} }
var ui = await GetUserIdentity(_userManager.ToKen);
if (_userManager.User == null) if (_userManager.User == null)
{ {
var ui = await GetUserIdentity(_userManager.ToKen);
var curUserPI = _userManager.GetType().GetProperty(nameof(_userManager.User), BindingFlags.Instance | BindingFlags.NonPublic); var curUid = ui.FindFirst(ClaimConst.CLAINMUSERID)?.Value;
if (curUserPI != null) _userManager.User = await _db.Queryable<UserEntity>().SingleAsync(it => it.Id == curUid);
{
var curUid = ui.FindFirst(ClaimConst.CLAINMUSERID)?.Value;
var curUser = await _db.Queryable<UserEntity>().SingleAsync(it => it.Id == curUid);
curUserPI.SetValue(_userManager,curUser, null);
}
} }
@@ -144,7 +139,7 @@ namespace Tnb.WarehouseMgr
preTask.area_code = it.Key; preTask.area_code = it.Key;
preTask.require_id = input.data["ReturnIdentity"].ToString(); preTask.require_id = input.data["ReturnIdentity"].ToString();
preTask.require_code = input.data[nameof(preTask.bill_code)]?.ToString()!; preTask.require_code = input.data[nameof(preTask.bill_code)]?.ToString()!;
preTask.create_id = _userManager.UserId; preTask.create_id = _userManager.UserId ?? ui.FindFirst(ClaimConst.CLAINMUSERID)?.Value;
preTask.create_time = DateTime.Now; preTask.create_time = DateTime.Now;
return preTask; return preTask;
}).ToList(); }).ToList();
@@ -168,7 +163,7 @@ namespace Tnb.WarehouseMgr
handleH.carry_code = input.data[nameof(WmsHandleH.carry_code)]?.ToString()!; handleH.carry_code = input.data[nameof(WmsHandleH.carry_code)]?.ToString()!;
handleH.require_id = input.data["ReturnIdentity"].ToString(); handleH.require_id = input.data["ReturnIdentity"].ToString();
handleH.require_code = input.data[nameof(WmsHandleH.bill_code)]?.ToString()!; handleH.require_code = input.data[nameof(WmsHandleH.bill_code)]?.ToString()!;
handleH.create_id = _userManager.UserId; handleH.create_id = _userManager.UserId ?? ui.FindFirst(ClaimConst.CLAINMUSERID)?.Value;
handleH.create_time = DateTime.Now; handleH.create_time = DateTime.Now;
preTaskUpInput.PreTaskRecord = handleH; preTaskUpInput.PreTaskRecord = handleH;
//根据载具移入Id回更单据状态 //根据载具移入Id回更单据状态

View File

@@ -82,7 +82,7 @@ public interface IUserManager
/// <summary> /// <summary>
/// 用户信息. /// 用户信息.
/// </summary> /// </summary>
UserEntity User { get; } UserEntity User { get; set; }
/// <summary> /// <summary>
/// 获取用户登录信息. /// 获取用户登录信息.

View File

@@ -70,12 +70,20 @@ public partial class UserManager : IUserManager, IScoped
} }
} }
private UserEntity _curUser;
/// <summary> /// <summary>
/// 用户信息. /// 用户信息.
/// </summary> /// </summary>
public UserEntity User public UserEntity User
{ {
get => _repository.GetSingle(u => u.Id == UserId); get
{
if(_curUser == null)
_curUser= _repository.GetSingle(u => u.Id == UserId);
return _curUser;
}
set => _curUser = value;
} }
/// <summary> /// <summary>