From 3a80f2908c309332617c8942b2ab37bf412d1b44 Mon Sep 17 00:00:00 2001 From: klincovmilica Date: Thu, 23 Oct 2025 19:11:00 +0200 Subject: [PATCH 1/8] Import Radzen --- src/BlazorAdmin/BlazorAdmin.csproj | 1 + src/BlazorAdmin/_Imports.razor | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/BlazorAdmin/BlazorAdmin.csproj b/src/BlazorAdmin/BlazorAdmin.csproj index 565bf2d9..bc2b2ba4 100644 --- a/src/BlazorAdmin/BlazorAdmin.csproj +++ b/src/BlazorAdmin/BlazorAdmin.csproj @@ -9,6 +9,7 @@ + diff --git a/src/BlazorAdmin/_Imports.razor b/src/BlazorAdmin/_Imports.razor index 9febe66c..a1ebdf88 100644 --- a/src/BlazorAdmin/_Imports.razor +++ b/src/BlazorAdmin/_Imports.razor @@ -15,3 +15,5 @@ @using BlazorShared.Interfaces @using BlazorInputFile @using BlazorShared.Models +@using Radzen +@using Radzen.Blazor \ No newline at end of file From 4203651078d798c152ba34e74221b2aa3b2c34cf Mon Sep 17 00:00:00 2001 From: klincovmilica Date: Thu, 23 Oct 2025 19:12:59 +0200 Subject: [PATCH 2/8] Add Radzen components to delete pages --- .../Pages/CatalogItemPage/Delete.razor | 148 ++++++------------ src/BlazorAdmin/Pages/RolePage/Delete.razor | 101 ++++-------- src/BlazorAdmin/Pages/UserPage/Delete.razor | 82 +++------- 3 files changed, 104 insertions(+), 227 deletions(-) diff --git a/src/BlazorAdmin/Pages/CatalogItemPage/Delete.razor b/src/BlazorAdmin/Pages/CatalogItemPage/Delete.razor index 5791195d..8480a6d9 100644 --- a/src/BlazorAdmin/Pages/CatalogItemPage/Delete.razor +++ b/src/BlazorAdmin/Pages/CatalogItemPage/Delete.razor @@ -6,111 +6,61 @@ @namespace BlazorAdmin.Pages.CatalogItemPage - - - @if (_showEditModal) { } @code { - [Parameter] - public IEnumerable Brands { get; set; } - [Parameter] - public IEnumerable Types { get; set; } - - [Parameter] - public EventCallback OnSaveClick { get; set; } + [Parameter] public IEnumerable Brands { get; set; } + [Parameter] public IEnumerable Types { get; set; } + [Parameter] public EventCallback OnSaveClick { get; set; } private string LoadPicture => string.IsNullOrEmpty(_item.PictureBase64) ? string.IsNullOrEmpty(_item.PictureUri) ? string.Empty : $"{_item.PictureUri}" : $"data:image/png;base64, {_item.PictureBase64}"; private bool HasPicture => !(string.IsNullOrEmpty(_item.PictureBase64) && string.IsNullOrEmpty(_item.PictureUri)); @@ -136,22 +123,19 @@ Logger.LogInformation("Now loading... /Catalog/Edit/{Id}", id); await new Css(JSRuntime).HideBodyOverflow(); - _item = await CatalogItemService.GetById(id); _modalDisplay = "block;"; _modalClass = "Show"; _showEditModal = true; - StateHasChanged(); } private async Task Close() { await new Css(JSRuntime).ShowBodyOverflow(); - _modalDisplay = "none"; _modalClass = ""; _showEditModal = false; } -} +} \ No newline at end of file diff --git a/src/BlazorAdmin/Pages/RolePage/Edit.razor b/src/BlazorAdmin/Pages/RolePage/Edit.razor index 671ab71d..af4e58a9 100644 --- a/src/BlazorAdmin/Pages/RolePage/Edit.razor +++ b/src/BlazorAdmin/Pages/RolePage/Edit.razor @@ -1,108 +1,68 @@ -@inject ILogger Logger -@inject IJSRuntime JSRuntime -@inject IRoleManagementService RoleManagementService - -@inherits BlazorAdmin.Helpers.BlazorComponent - -@namespace BlazorAdmin.Pages.RolePage -@using BlazorAdmin.Interfaces +@using BlazorAdmin.Interfaces @using BlazorAdmin.Models @using Microsoft.AspNetCore.Identity +@inject ILogger Logger +@inject IRoleManagementService RoleManagementService +@inject DialogService DialogService - - - +@namespace BlazorAdmin.Pages.RolePage -@if (_showEditModal) -{ - -} + + + + Edit @_item?.Name + + + + @if (_item == null) + { + + } + else + { + + + + + + + + } + + + + + + + + @code { - - + private bool _showDialog = false; + private IdentityRole _item = new IdentityRole(); [Parameter] public EventCallback OnSaveClick { get; set; } - private string _modalDisplay = "none;"; - private string _modalClass = ""; - private bool _showEditModal = false; - private IdentityRole _item = new IdentityRole(); - - private async Task SaveClick() - { - await RoleManagementService.Edit(_item); - - Logger.LogInformation("Updated Role Id: {Id}", _item.Id); - await OnSaveClick.InvokeAsync(null); - await Close(); - } - public async Task Open(string id) { Logger.LogInformation("Now loading... /Roles/Edit/{Id}", id); - - await new Css(JSRuntime).HideBodyOverflow(); - _item = (await RoleManagementService.GetById(id)).Role; - _modalDisplay = "block;"; - _modalClass = "Show"; - _showEditModal = true; - + _showDialog = true; StateHasChanged(); } private async Task Close() { - await new Css(JSRuntime).ShowBodyOverflow(); + _showDialog = false; + } - _modalDisplay = "none"; - _modalClass = ""; - _showEditModal = false; + private async Task SaveClick() + { + await RoleManagementService.Edit(_item); + Logger.LogInformation("Updated Role Id: {Id}", _item.Id); + await OnSaveClick.InvokeAsync(null); + await Close(); } -} +} \ No newline at end of file diff --git a/src/BlazorAdmin/Pages/UserPage/Edit.razor b/src/BlazorAdmin/Pages/UserPage/Edit.razor index 4e9dca46..445bda1e 100644 --- a/src/BlazorAdmin/Pages/UserPage/Edit.razor +++ b/src/BlazorAdmin/Pages/UserPage/Edit.razor @@ -9,13 +9,14 @@ @using BlazorAdmin.Interfaces @using BlazorAdmin.Models @using Microsoft.AspNetCore.Identity +@using Radzen +

Roles

@if (_roles == null || _roles.Count == 0) { @@ -89,7 +92,8 @@ {
- +
@@ -97,11 +101,10 @@ } + } @@ -109,8 +112,6 @@ - - @if (_showEditModal) { @@ -118,8 +119,6 @@ @code { - - [Parameter] public EventCallback OnSaveClick { get; set; } @@ -134,7 +133,6 @@ private async Task SaveClick() { - var updateRequest = new UpdateUserRequest() { User = _item @@ -148,10 +146,12 @@ var rolesToRemove = startingRoles.Except(checkedRoles).ToList(); var rolesToAdd = checkedRoles.Except(startingRoles).ToList(); - if (rolesToAdd.Any() || rolesToRemove.Any()){ - SaveRolesForUserRequest rolesForUserRequest = new SaveRolesForUserRequest(){ + if (rolesToAdd.Any() || rolesToRemove.Any()) + { + SaveRolesForUserRequest rolesForUserRequest = new SaveRolesForUserRequest() + { UserId = _item.Id, - RolesToAdd = rolesToAdd, + RolesToAdd = rolesToAdd, RolesToRemove = rolesToRemove }; @@ -172,15 +172,15 @@ _item = (await UserManagementService.GetById(id)).User; _roles = (await RoleManagementService.List()).Roles; var userRoles = await UserManagementService.GetRolesByUserId(id); + foreach (var role in _roles) { - var checkedStatus = userRoles.Roles.Contains(role.Name); _selectedRoles[role.Name] = checkedStatus; _startingRoles[role.Name] = checkedStatus; } - Logger.LogInformation("Acquired user {id}",_item.Id); + Logger.LogInformation("Acquired user {id}", _item.Id); _modalDisplay = "block;"; _modalClass = "Show"; @@ -189,7 +189,8 @@ StateHasChanged(); } - private void UpdateRoleSelectedState(string role, bool isChecked){ + private void UpdateRoleSelectedState(string role, bool isChecked) + { _selectedRoles[role] = isChecked; } @@ -201,4 +202,4 @@ _modalClass = ""; _showEditModal = false; } -} +} \ No newline at end of file From eacebe0b7f7e75e4135acc95acf1ed65beca6e2d Mon Sep 17 00:00:00 2001 From: klincovmilica Date: Thu, 23 Oct 2025 19:14:07 +0200 Subject: [PATCH 4/8] Add Radzen components to Details pages --- .../Pages/CatalogItemPage/Details.razor | 160 ++++++------------ src/BlazorAdmin/Pages/RolePage/Details.razor | 133 +++++---------- 2 files changed, 93 insertions(+), 200 deletions(-) diff --git a/src/BlazorAdmin/Pages/CatalogItemPage/Details.razor b/src/BlazorAdmin/Pages/CatalogItemPage/Details.razor index c4883732..ab87464e 100644 --- a/src/BlazorAdmin/Pages/CatalogItemPage/Details.razor +++ b/src/BlazorAdmin/Pages/CatalogItemPage/Details.razor @@ -3,110 +3,60 @@ @inject ICatalogItemService CatalogItemService @inherits BlazorAdmin.Helpers.BlazorComponent - @namespace BlazorAdmin.Pages.CatalogItemPage -