Revize 1af8a62a
Přidáno uživatelem Dominik Chlouba před téměř 4 roky(ů)
src/Core/Application/Leuze.Core.Application.UI/Pages/Users/Components/UserAside.razor | ||
---|---|---|
56 | 56 |
|
57 | 57 |
@foreach (var user in Users) |
58 | 58 |
{ |
59 |
<option value="@user.Id" selected="@(Senior == user.Id)">@user.Name</option> |
|
59 |
@if (UserId != default(Guid) && user.Id == UserId) { } |
|
60 |
else |
|
61 |
{ |
|
62 |
<option value="@user.Id" selected="@(Senior == user.Id)">@user.Name</option> |
|
63 |
} |
|
60 | 64 |
} |
61 | 65 |
</select> |
62 | 66 |
} |
... | ... | |
287 | 291 |
Name = result.Result.User.Name; |
288 | 292 |
Email = result.Result.User.Email; |
289 | 293 |
Role = result.Result.User.Role.Id; |
294 |
Senior = result.Result.User.SeniorId ?? default(Guid); |
|
290 | 295 |
Loading = false; |
291 | 296 |
} |
292 | 297 |
} |
src/Core/Domain/Leuze.Core.Domain/Domains/Users/DTOs/UserDetailDto.cs | ||
---|---|---|
6 | 6 |
/// <summary> |
7 | 7 |
/// |
8 | 8 |
/// </summary> |
9 |
public record UserDetailDto(Guid Id, string Name, string Email, bool IsAdUser, RoleItem Role); |
|
9 |
public record UserDetailDto(Guid Id, string Name, string Email, bool IsAdUser, Guid? SeniorId, RoleItem Role);
|
|
10 | 10 |
} |
src/Core/Infrastructure/Leuze.Core.Infrastructure.Persistence/Repository/DomainUserRepository.cs | ||
---|---|---|
67 | 67 |
/// <inheritdoc/> |
68 | 68 |
public async Task<UserDetailDto> GetDetailByIdAsync(Guid id) |
69 | 69 |
=> await dbSet.Include(o => o.User).ThenInclude(o => o.Roles).Where(o => o.UserId == id) |
70 |
.Select(o => new UserDetailDto(o.UserId, o.Name.FullName, o.EmailAddress.Email, o.User.IsAdUser, o.User.Roles.Select(a => new RoleItem(a.Id, a.Name)).FirstOrDefault()))
|
|
70 |
.Select(o => new UserDetailDto(o.UserId, o.Name.FullName, o.EmailAddress.Email, o.User.IsAdUser, o.SeniorUserId, o.User.Roles.Select(a => new RoleItem(a.Id, a.Name)).Single()))
|
|
71 | 71 |
.SingleOrDefaultAsync(); |
72 | 72 |
|
73 | 73 |
/// <inheritdoc/> |
src/Core/Infrastructure/Leuze.Core.Infrastructure.Persistence/Seeds/ApplicationSeed.cs | ||
---|---|---|
24 | 24 |
public static void Run(LeuzeDbContext context, UserManager<ApplicationUser> userManager, RoleManager<ApplicationRole> roleManager) |
25 | 25 |
{ |
26 | 26 |
var permissions = context.Set<ApplicationPermission>().ToList(); |
27 |
var role1 = context.Set<ApplicationRole>().Single(o => o.Id == CreateRole("Administrátor", false, roleManager, permissions).Id); |
|
28 |
var role2 = context.Set<ApplicationRole>().Single(o => o.Id == CreateRole("MA", false, roleManager, permissions).Id); |
|
29 |
var role3 = context.Set<ApplicationRole>().Single(o => o.Id == CreateRole("Uživatel", true, roleManager, permissions).Id); |
|
27 |
var role1 = CreateRole("Admin", false, roleManager, permissions); |
|
28 |
var role2 = CreateRole("TL", false, roleManager, permissions); |
|
29 |
var role3 = CreateRole("MA", true, roleManager, permissions); |
|
30 |
CreateUser("Testovací admin", "admin@test.cz", role1, context, userManager); |
|
31 |
CreateUser("Testovací TL", "tl@test.cz", role2, context, userManager); |
|
32 |
CreateUser("Testovací MA", "ma@test.cz", role3, context, userManager); |
|
30 | 33 |
} |
31 | 34 |
|
32 | 35 |
private static void CreateUser(string name, string email, ApplicationRole role, LeuzeDbContext context, UserManager<ApplicationUser> userManager) |
... | ... | |
34 | 37 |
ApplicationUser user = new(email, email, false); |
35 | 38 |
userManager.CreateAsync(user).Wait(); |
36 | 39 |
userManager.AddPasswordAsync(user, "Test123*").Wait(); |
40 |
userManager.AddToRoleAsync(user, role.Name).Wait(); |
|
37 | 41 |
user = context.Set<ApplicationUser>().Single(o => o.Id == user.Id); |
38 |
DomainUser domainUser = new(user, new("Testovací uživatel"), new("test@test.cz"), null!);
|
|
42 |
DomainUser domainUser = new(user, new(name), new(email), null!);
|
|
39 | 43 |
context.Add(domainUser); |
40 | 44 |
context.SaveChanges(); |
41 | 45 |
} |
Také k dispozici: Unified diff
Added application role and user seed, users list and create/update bug fixes