Refactor update procedures to use DTO-based pattern

Refactored Update*Procedure records to encapsulate update data in dedicated DTOs (e.g., UpdateActionDto, UpdateEndpointDto) via a generic Data property. Updated interfaces to be generic and modified handlers to pass only the DTO to UpdateObjectProcedure. This improves maintainability, reduces duplication, and standardizes update logic across entities.
This commit is contained in:
2026-03-24 11:09:46 +01:00
parent 114b5de71d
commit eff6350d77
6 changed files with 30 additions and 59 deletions

View File

@@ -1,14 +1,14 @@
using MediatR;
using ReC.Application.Common.Procedures.UpdateProcedure;
using ReC.Application.Common.Procedures.UpdateProcedure.Dto;
namespace ReC.Application.Endpoints.Commands;
public record UpdateEndpointProcedure : IUpdateProcedure
public record UpdateEndpointProcedure : IUpdateProcedure<UpdateEndpointDto>
{
public long Id { get; set; }
public bool? Active { get; set; }
public string? Description { get; set; }
public string? Uri { get; set; }
public UpdateEndpointDto Data { get; set; } = null!;
}
public class UpdateEndpointProcedureHandler(ISender sender) : IRequestHandler<UpdateEndpointProcedure, int>
@@ -19,7 +19,7 @@ public class UpdateEndpointProcedureHandler(ISender sender) : IRequestHandler<Up
{
Entity = "ENDPOINT",
Id = request.Id,
Endpoint = request
Endpoint = request.Data
}, cancel);
}
}