Files
Anatolii Grynchuk a03d2269a6 feat: add MediatR handlers for template and channel CRUD
- ServiceResult<T>, ServiceError, ServiceErrorCode, Unit, ServiceResultHelper in Services/Core
- RequestHandler<TRequest, TResponse> base class (MediatR-adapted, DoOnHandle pattern)
- EmailTemplate handlers: Create, Update, Delete, Get, GetByService
- EmailChannel handlers: Create, Update, Delete, Get, GetByService

Ref: IT-628

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-02 01:07:13 +03:00

18 lines
641 B
C#

namespace HrynCo.NotificationService.Services.Core;
public record ServiceResult<TResult>
{
public ServiceError? Error { get; private set; }
public bool IsSuccess { get; private set; }
public TResult? Result { get; private set; }
public static ServiceResult<TResult> Success(TResult result) =>
new() { IsSuccess = true, Result = result };
public static ServiceResult<TResult> Failure(ServiceError error) =>
new() { IsSuccess = false, Error = error };
public static ServiceResult<TResult> Failure(string message, ServiceErrorCode? code = null) =>
Failure(new ServiceError(message, code));
}