33 lines
1.1 KiB
C#
33 lines
1.1 KiB
C#
// src/Webshop.Application/Services/Admin/Interfaces/IAdminUserService.cs
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using Webshop.Application.DTOs.Users;
|
|
|
|
namespace Webshop.Application.Services.Admin.Interfaces
|
|
{
|
|
/// <summary>
|
|
/// Definiert den Vertrag für den Dienst zur Verwaltung von Benutzern durch einen Admin.
|
|
/// </summary>
|
|
public interface IAdminUserService
|
|
{
|
|
/// <summary>
|
|
/// Ruft eine Liste aller Benutzer mit ihren zugehörigen Daten ab.
|
|
/// </summary>
|
|
Task<IEnumerable<UserDto>> GetAllUsersAsync();
|
|
|
|
/// <summary>
|
|
/// Ruft einen einzelnen Benutzer anhand seiner ID ab.
|
|
/// </summary>
|
|
Task<UserDto?> GetUserByIdAsync(string userId);
|
|
|
|
/// <summary>
|
|
/// Aktualisiert die Rollen eines bestimmten Benutzers.
|
|
/// </summary>
|
|
Task<bool> UpdateUserRolesAsync(string userId, List<string> newRoles);
|
|
|
|
/// <summary>
|
|
/// Löscht einen Benutzer und alle seine abhängigen Daten (Kundenprofil, Bestellungen etc.).
|
|
/// </summary>
|
|
Task<bool> DeleteUserAsync(string userId);
|
|
}
|
|
} |