From cbe4f1ba3c80367d3069862dc812f3ffdb3f140c Mon Sep 17 00:00:00 2001 From: TekH Date: Thu, 19 Mar 2026 23:18:17 +0100 Subject: [PATCH] Refactor UpdateResultProcedure to use MediatR handler Refactored UpdateResultProcedure to implement IUpdateProcedure directly and removed the ToObjectProcedure method. Introduced UpdateResultProcedureHandler using MediatR's IRequestHandler pattern, delegating update logic via ISender. This improves code structure and maintainability. --- .../Results/Commands/UpdateResultProcedure.cs | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/ReC.Application/Results/Commands/UpdateResultProcedure.cs b/src/ReC.Application/Results/Commands/UpdateResultProcedure.cs index 36d932b..88a12d6 100644 --- a/src/ReC.Application/Results/Commands/UpdateResultProcedure.cs +++ b/src/ReC.Application/Results/Commands/UpdateResultProcedure.cs @@ -1,21 +1,26 @@ +using MediatR; using ReC.Application.Common.Procedures.UpdateProcedure; namespace ReC.Application.Results.Commands; public record UpdateResultProcedure : IUpdateProcedure { + public long Id { get; set; } public long? ActionId { get; set; } public short? StatusId { get; set; } public string? Header { get; set; } public string? Body { get; set; } +} - public UpdateObjectProcedure ToObjectProcedure(long id, string? changedWho = null) +public class UpdateResultProcedureHandler(ISender sender) : IRequestHandler +{ + public async Task Handle(UpdateResultProcedure request, CancellationToken cancel) { - return new UpdateObjectProcedure + return await sender.Send(new UpdateObjectProcedure { Entity = "RESULT", - Id = id, - Result = this - }.ChangedBy(changedWho); + Id = request.Id, + Result = request + }, cancel); } -} +} \ No newline at end of file