public bool Update(int id, CursoPostDto dto) { var entity = db.Curso.Find(id); if (entity == null) { return(false); } try { entity.DataInicio = dto.DataInicio; entity.DataTermino = dto.DataTermino; entity.NumeroAlunos = dto.NumeroAlunos; entity.Descricao = dto.Descricao; db.SaveChanges(); } catch (DbUpdateConcurrencyException) { return(false); } return(true); }
public ServiceResult Add(CursoPostDto dto) { var result = ValidarCurso(dto); var id = _repository.Add(dto); result.ResultadoSucesso = id; return(result); }
public ActionResult <bool> Update(int id, [FromBody] CursoPostDto curso) { var success = _service.Update(id, curso); if (!success) { return(NotFound(new ApiErrorResult(StatusCodes.Status404NotFound, "Não encontrado", $"Curso {id} não encontrado"))); } return(success); }
public ActionResult <CursoPostDto> Add([FromBody] CursoPostDto curso) { var result = _service.Add(curso); if (result.Sucesso) { return(CreatedAtAction(nameof(Add), new { result.ResultadoSucesso }, curso)); } else { return(BadRequest(result)); } }
public int Add(CursoPostDto dto) { Curso entity = new Curso() { DataInicio = dto.DataInicio, DataTermino = dto.DataTermino, NumeroAlunos = dto.NumeroAlunos, Descricao = dto.Descricao, IdCategoria = dto.IdCategoria }; var entityEntry = db.Add(entity); db.SaveChanges(); return(entityEntry.Entity.IdCurso); }
public void CadastroSucesso() { CursoPostDto dto = new CursoPostDto() { DataInicio = new DateTime(2020, 10, 20), DataTermino = new DateTime(2020, 10, 20), Descricao = "Curso de teste", NumeroAlunos = 0 }; ServiceResult serviceResult = new ServiceResult() { Falhas = new List <string>(), ResultadoSucesso = 1, Sucesso = true }; mock.Add(dto).Returns(serviceResult); Assert.True(mock.Add(dto).Sucesso); }
private ServiceResult ValidarCurso(CursoPostDto dto) { ServiceResult result = new ServiceResult(); if (string.IsNullOrWhiteSpace(dto.Descricao) || DateTime.MinValue >= dto.DataInicio || DateTime.MinValue >= dto.DataTermino) { result.Falhas.Add("Campos informados incorretamente."); return(result); } if (dto.DataInicio.Date < DateTime.Now.Date) { result.Falhas.Add("Data Inicio menor que a atual."); return(result); } if (dto.DataInicio.Date > dto.DataTermino.Date) { result.Falhas.Add("Data Inicio maior que a termino."); return(result); } var query = GetAll(); if (query.Any(c => dto.DataInicio > c.DataInicio && dto.DataTermino < c.DataTermino)) { result.Falhas.Add("Existe(m) curso(s) planejado(s) dentro do periodo informado."); return(result); } var queryCategoria = _repositoryCategoria.GetAll(); if (queryCategoria.Any(c => c.IdCategoria == dto.IdCategoria)) { result.Falhas.Add("Categoria do curso não cadastrada."); return(result); } result.Sucesso = true; return(result); }
public bool Update(int id, CursoPostDto dto) { return(_repository.Update(id, dto)); }