diff --git a/Src/Dlhis.Sys/Identity/Request/UserCreateRequest.cs b/Src/Dlhis.Sys/Identity/Request/UserCreateRequest.cs
index b080a1ad..4ed87938 100644
--- a/Src/Dlhis.Sys/Identity/Request/UserCreateRequest.cs
+++ b/Src/Dlhis.Sys/Identity/Request/UserCreateRequest.cs
@@ -5,7 +5,7 @@ namespace Dlhis.Sys.Identity.Request;
public class UserCreateRequest
{
///
- /// 用户名
+ /// 用户名(登陆使用)
///
[Required]
public string Username { get; set; }
@@ -22,4 +22,9 @@ public class UserCreateRequest
///
[Required]
public string Tenant { get; set; }
+
+ ///
+ /// 名称
+ ///
+ public string Name { get; set; }
}
diff --git a/Src/Dlhis.Sys/Identity/Services/Implements/UserService.cs b/Src/Dlhis.Sys/Identity/Services/Implements/UserService.cs
index 8da20b19..0576c9fe 100644
--- a/Src/Dlhis.Sys/Identity/Services/Implements/UserService.cs
+++ b/Src/Dlhis.Sys/Identity/Services/Implements/UserService.cs
@@ -1,4 +1,5 @@
-using Dlhis.Entity.Sys.Entities;
+using System.Security.Claims;
+using Dlhis.Entity.Sys.Entities;
using Dlhis.Sys.Identity.Request;
using Dlhis.Sys.Identity.Response;
using Kurisu.AspNetCore.Utils.Extensions;
@@ -83,12 +84,22 @@ public class UserService : IUserService
request.Password = hasher.HashPassword(user, request.Password);
user.PasswordHash = request.Password;
- var id = await _dbContext.InsertReturnIdentityAsync(user);
+ var id = (int)await _dbContext.InsertReturnIdentityAsync(user);
await _dbContext.InsertAsync(new UserTenantEntity
{
TenantCode = request.Tenant,
- UserId = (int)id
+ UserId = id
});
+
+ if (request.Name.IsPresent())
+ {
+ await _dbContext.InsertAsync(new UserClaimEntity
+ {
+ ClaimType = "preferred_username",
+ ClaimValue = request.Name,
+ UserId = id
+ });
+ }
}
}