Exemplo n.º 1
0
 public CommandResult Update(
     [FromBody] UpdateAlunoCommand command,
     [FromServices] AlunoHandler handler
     )
 {
     return((CommandResult)handler.Handle(command));
 }
Exemplo n.º 2
0
        public void ValidCommand()
        {
            var command = new UpdateAlunoCommand("", "", DateTime.Now, "", "");

            command.Validate();
            Assert.AreEqual(command.Valid, false);
        }
Exemplo n.º 3
0
        public void InvalidCommand()
        {
            var command = new UpdateAlunoCommand("Antonio Fracisco da Silva", "00000000000", DateTime.Now, "*****@*****.**", "0124");;

            command.Validate();
            Assert.AreEqual(command.Valid, true);
        }
Exemplo n.º 4
0
        public async Task <Unit> Handle(UpdateAlunoCommand command, CancellationToken cancellationToken)
        {
            //Usar o Mapper para fazer o De x Para
            //var aluno = new Aluno
            //{
            //    Id = Guid.Parse(request.Id),
            //    Nome = request.Nome,
            //    DataNascimento = request.DataNascimento
            //};
            var aluno      = _mapper.Map <Aluno>(command);
            var validation = new AlunoValidation().Validate(aluno);

            if (!validation.IsValid)
            {
                throw new ValidationException(validation.Errors);
            }

            alunoDomainService.Update(aluno);

            await mediator.Publish(new AlunoNotification
            {
                Aluno  = aluno,
                Action = ActionNotification.Atualizar
            });

            return(Unit.Value);
        }
Exemplo n.º 5
0
        public void InvalidHandler()
        {
            var command = new UpdateAlunoCommand("", "", DateTime.Now, "", "");
            var handler = new AlunoHandler(new FakeAlunoRepository());
            var result  = (CommandResult)handler.Handle(command);

            Assert.AreEqual(result.Sucess, false);
        }
Exemplo n.º 6
0
        public async Task <IActionResult> Put(UpdateAlunoCommand command)
        {
            try
            {
                await _alunoApplicationService.Update(command);

                return(Ok(new { Message = "Aluno Atualizado com sucesso." }));
            }
            catch (ValidationException e)
            {
                return(BadRequest(ValidationAdapter.Parse(e.Errors)));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }
        }
Exemplo n.º 7
0
        public async Task <ActionResult <UpdateAlunoCommand> > Update(Guid id,
                                                                      UpdateAlunoCommand command)
        {
            if (id != command.Id)
            {
                NotificarErro("O id informado não é o mesmo que foi passado na query");
                return(CustomResponse(command));
            }

            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            await _alunoService.Update(_mapper.Map <Aluno>(command));

            return(CustomResponse(command));
        }
Exemplo n.º 8
0
        public void ValidHandler()
        {
            //repository
            List <Aluno> listFakeAlunos = new List <Aluno>();

            listFakeAlunos.Add(
                new Aluno()
            {
                Nome       = "Antonio Fracisco da Silva",
                CPF        = "00000000000",
                Nascimento = DateTime.Now,
                Email      = "*****@*****.**",
                RefUser    = "******"
            });
            //update Aluno
            var commandUpdate = new UpdateAlunoCommand("Antonio Fracisco da Silva Segundo", "00000000000", DateTime.Now, "*****@*****.**", "01234");
            var handler       = new AlunoHandler(new FakeAlunoRepository(listFakeAlunos));
            var resultUpdate  = (CommandResult)handler.Handle(commandUpdate);

            Assert.AreEqual(resultUpdate.Sucess, true);
        }
Exemplo n.º 9
0
        public ICommandResult Handle(UpdateAlunoCommand command)
        {
            command.Validate();
            if (command.Invalid)
            {
                return(new CommandResult(false, "Erro na atualização do aluno!", command.Notifications));
            }

            // Recupera a conta
            var aluno = _repository.GetByUser(command.RefUser);

            aluno.CPF        = command.CPF;
            aluno.Email      = command.Email;
            aluno.Nascimento = command.Nascimento;
            aluno.Nome       = command.Nome;
            aluno.RefUser    = command.RefUser;

            _repository.Update(aluno);

            return(new CommandResult(true, "Aluno atualizado com sucesso!", aluno));
        }
Exemplo n.º 10
0
 public async Task Update(UpdateAlunoCommand command)
 {
     await mediator.Send(command);
 }