public IActionResult Get(int id) { DoacaoDinheiro q = _context.DoacaoDinheiro.Include(d => d.Doador).SingleOrDefault(i => i.Id == id); if (q == null) { return(new NotFoundResult()); } DoacaoDinheiroDTO dto = new DoacaoDinheiroDTO { Id = q.Id, DataDaDoacao = q.Data, Descricao = q.Descricao, Doador = new DoadorDTOR() { Id = q.Doador.CodDoador, NomeRazaoSocial = q.Doador.GetType() == typeof(PessoaFisica) ? ((PessoaFisica)q.Doador).Nome : ((PessoaJuridica)q.Doador).RazaoSocial, Tipo = q.Doador.GetType() == typeof(PessoaFisica)?"PF":"PJ" }, Valor = q.Valor }; return(new ObjectResult(dto)); }
public IActionResult Post([FromBody] DoacaoDinheiroDTO dto) { if (ModelState.IsValid) { Doador doador = _context.Doador.SingleOrDefault(q => q.CodDoador == dto.Doador.Id); if (doador == null) { ModelState.AddModelError("Doador", "Doador inválido"); return(new BadRequestObjectResult(ModelState)); } //corrige fuso horario do js dto.DataDaDoacao = dto.DataDaDoacao.AddHours(-dto.DataDaDoacao.Hour); DoacaoDinheiro novo = new DoacaoDinheiro() { Doador = doador, Data = dto.DataDaDoacao, Descricao = dto.Descricao, Valor = dto.Valor }; try { _context.DoacaoDinheiro.Add(novo); _context.SaveChanges(); dto.Id = novo.Id; return(new ObjectResult(dto)); } catch { return(new BadRequestObjectResult(ModelState)); } } return(new BadRequestObjectResult(ModelState)); }
public IActionResult Delete(int id) { DoacaoDinheiro dd = _context.DoacaoDinheiro.Single(q => q.Id == id); _context.DoacaoDinheiro.Remove(dd); try { _context.SaveChanges(); return(new NoContentResult()); } catch { return(new BadRequestResult()); } }
public IActionResult Put(int id, [FromBody] DoacaoDinheiroDTO dto) { if (id != dto.Id) { return(new BadRequestResult()); } if (ModelState.IsValid) { //corrige fuso horario do js dto.DataDaDoacao = dto.DataDaDoacao.AddHours(-dto.DataDaDoacao.Hour); DoacaoDinheiro dd = _context.DoacaoDinheiro.Single(q => q.Id == id); Doador doador = _context.Doador.SingleOrDefault(q => q.CodDoador == dto.Doador.Id); if (doador == null) { ModelState.AddModelError("Doador", "Doador inválido"); return(new BadRequestObjectResult(ModelState)); } dd.Doador = doador; dd.Data = dto.DataDaDoacao; dd.Descricao = dto.Descricao; dd.Valor = dto.Valor; try { _context.SaveChanges(); } catch { return(new BadRequestObjectResult(ModelState)); } return(new ObjectResult(dto)); } else { return(new BadRequestObjectResult(ModelState)); } }