public async Task <ActionResult <Fornecedor> > Update([FromBody] Fornecedor fornecedor) { Fornecedor fornecedorToUpdate = await _context.Fornecedores.FindAsync(fornecedor.ID); fornecedorToUpdate.Empresa = await _context.Empresas.FindAsync(fornecedor.EmpresaID) ?? fornecedorToUpdate.Empresa; fornecedorToUpdate.Nome = fornecedor.Nome ?? fornecedorToUpdate.Nome; fornecedorToUpdate.NumeroRegistro = fornecedor.NumeroRegistro ?? fornecedorToUpdate.NumeroRegistro; ///if (FornecedorFacade.IsPessoaFisica(fornecedorToUpdate)) ///{ fornecedorToUpdate.DataNascimento = fornecedor.DataNascimento ?? fornecedorToUpdate.DataNascimento; fornecedorToUpdate.RG = fornecedor.RG ?? fornecedorToUpdate.RG; //} FornecedorFacade.CadastroIsValid(fornecedorToUpdate); Telefone currTel = new Telefone(); if (fornecedor.Telefone != null) { foreach (var item in fornecedor.Telefone) { currTel = await _context.Telefones.FindAsync(item.ID); if (currTel != null) { currTel.NumeroTelefone = item.NumeroTelefone; } else { item.FornecedorID = fornecedorToUpdate.ID; await _context.Telefones.AddAsync(item); } } } await _context.SaveChangesAsync(); return(Ok(fornecedorToUpdate)); }
public async Task <ActionResult <Fornecedor> > Insert(Fornecedor fornecedor) { fornecedor.Empresa = await _context.Empresas.FindAsync(fornecedor.EmpresaID); FornecedorFacade.CadastroIsValid(fornecedor); await _context.AddAsync(fornecedor); await _context.SaveChangesAsync(); if (fornecedor.Telefone != null) { foreach (var item in fornecedor.Telefone) { item.FornecedorID = fornecedor.ID; await _context.Telefones.AddAsync(item); } await _context.SaveChangesAsync(); } return(Ok(fornecedor)); }