public TarefaFormDto Cadastrar(TarefaFormDto formDto) { if (formDto == null) { formDto = new TarefaFormDto(); formDto.Erros.Add("Erro..."); return(formDto); } formDto.ValidationErros = _tarefaFormDtoValidator.Validate(formDto).Errors .Select(s => new ValidationFailureDto(s.ErrorMessage, s.PropertyName)) .ToList(); if (!formDto.IsValid()) { return(formDto); } var tarefa = new Tarefa(); tarefa = _mapper.Map <Tarefa>(formDto); if (!tarefa.IsValid()) { formDto.Erros = tarefa.Errors; return(formDto); } _tarefaRepository.Add(tarefa); return(_mapper.Map <TarefaFormDto>(tarefa)); }
public TarefaFormDto Editar(TarefaFormDto formDto) { if (formDto == null || formDto.Id <= 0) { formDto = new TarefaFormDto(); formDto.Erros.Add("Erro..."); return(formDto); } formDto.ValidationErros = _tarefaFormDtoValidator.Validate(formDto).Errors .Select(s => new ValidationFailureDto(s.ErrorMessage, s.PropertyName)) .ToList(); if (!formDto.IsValid()) { return(formDto); } var tarefa = _tarefaRepository.GetById(formDto.Id); tarefa.SetDescricao(formDto.Descricao); tarefa.SetTitulo(formDto.Titulo); tarefa.AtualizarDataDaUltimaAlteracao(); if (!tarefa.IsValid()) { formDto.Erros = tarefa.Errors; return(formDto); } _tarefaRepository.Update(tarefa); return(_mapper.Map <TarefaFormDto>(tarefa)); }
public TarefaFormDto Editar([FromBody] TarefaFormDto tarefaFormDto) { var result = _tarefaAppService.Editar(tarefaFormDto); var wowResult = _unitOfWork.Commit(); if (!wowResult) { var tarefaForm = new TarefaFormDto(); tarefaForm.Erros.Add("Erro ao salvar dados."); return(tarefaForm); } return(result); }
public void Cadastrar_com_todas_informacoes() { var options = new DbContextOptionsBuilder <ContextBase>() .UseInMemoryDatabase(databaseName: "Test_in_memory_database_1") .Options; var tarefaFormDto = new TarefaFormDto { Descricao = "Desc 3", Titulo = "Titulo 3", }; // Run the test against one instance of the context using (var context = new ContextBase(options)) { var unitOfWork = new UnitOfWork(context); var tarefaRepository = new TarefaRepository(context); var tarefaAppService = new TarefaAppService(tarefaRepository, mapper, new TarefaFormDtoValidator()); var dtoResult = tarefaAppService.Cadastrar(tarefaFormDto); tarefaFormDto.Id = dtoResult.Id; unitOfWork.Commit(); } // Use a separate instance of the context to verify correct data was saved to database using (var context = new ContextBase(options)) { var tarefa = context.Tarefas.Find(tarefaFormDto.Id); Assert.Equal(tarefa.Titulo, tarefaFormDto.Titulo); Assert.Equal(tarefa.Descricao, tarefaFormDto.Descricao); } }