示例#1
0
        public async Task <Result <Exception, Core.Results.Unit> > Handle(MovieRemoveMultipleCommand request, CancellationToken cancellationToken)
        {
            var getAllMovieCallback = _movieRepository.GetAll();

            if (getAllMovieCallback.IsFailure)
            {
                return(getAllMovieCallback.Failure);
            }

            var movies = getAllMovieCallback.Success.Where(x => request.MovieIds.Contains(x.Id)).ToList();

            if (movies.Any())
            {
                movies.ForEach(x => x.SetAsRemoved());

                var updateMoviesCallback = await _movieRepository.UpdateAsync(movies);

                if (updateMoviesCallback.IsFailure)
                {
                    return(updateMoviesCallback.Failure);
                }
            }
            return(Unit.Successful);
        }
示例#2
0
 public async Task <IActionResult> DeleteMultiplesAsync(MovieRemoveMultipleCommand command)
 {
     return(HandleCommand(await _mediator.Send(command)));
 }