public override async Task Invoke(CancellationToken token)
        {
            var deletionService = new DeleteOperationService(Context);
            var repository = GetRepository<Operation>();

            var ids = Command.Ids;
            foreach (var operation in repository.Where(o => !o.IsDeleted && ids.Contains(o.Id)).Select(o => new {o.Id, o.Type}))
            {
                switch (operation.Type)
                {
                    case OperationType.Budget:
                        await deletionService.DeleteBudgetOperation(operation.Id, Command, token);
                        break;
                    case OperationType.Transfer:
                        await deletionService.DeleteTransferOperation(operation.Id, Command, token);
                        break;
                }
            }
        }
        public override Task Invoke(CancellationToken token)
        {
            var deletionService = new DeleteOperationService(Context);

            return(deletionService.DeleteTransferOperation(Command.Id, Command, token));
        }