Moved CreateRecActionCommand and DeleteRecActionsCommand (and their handlers) from ReCActionViews.Commands to ReCActions.Commands. Updated all references in controller and mapping profile. Removed old files to improve code organization. No changes to command logic.
24 lines
847 B
C#
24 lines
847 B
C#
using DigitalData.Core.Abstraction.Application.Repository;
|
|
using DigitalData.Core.Exceptions;
|
|
using MediatR;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using ReC.Domain.Entities;
|
|
|
|
namespace ReC.Application.RecActions.Commands;
|
|
|
|
public class DeleteRecActionsCommand : IRequest
|
|
{
|
|
public required long ProfileId { get; init; }
|
|
}
|
|
|
|
public class DeleteRecActionsCommandHandler(IRepository<RecAction> repo) : IRequestHandler<DeleteRecActionsCommand>
|
|
{
|
|
public async Task Handle(DeleteRecActionsCommand request, CancellationToken cancel)
|
|
{
|
|
// TODO: update DeleteAsync (in Core) to return number of deleted records
|
|
if (!await repo.Where(act => act.ProfileId == request.ProfileId).AnyAsync(cancel))
|
|
throw new NotFoundException();
|
|
|
|
await repo.DeleteAsync(act => act.ProfileId == request.ProfileId, cancel);
|
|
}
|
|
} |