public async Task <IHttpActionResult> PostCliente(ClienteBindingModel clienteModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Cliente cliente = new Cliente() { Documento = clienteModel.Documento, Email = clienteModel.Email, EmailResponsavel = clienteModel.EmailResponsavel, Nascimento = clienteModel.Nascimento, Nome = clienteModel.Nome, NomeResponsavel = clienteModel.NomeResponsavel, Telefone = clienteModel.Telefone, TelefoneResponsavel = clienteModel.TelefoneResponsavel }; if (clienteModel.IdResponsavel.HasValue) { Usuario user = await db.Users.FirstAsync(u => u.Id == clienteModel.IdResponsavel.Value.ToString()); if (user != null) { cliente.Responsavel = user; } } db.Clientes.Add(cliente); await db.SaveChangesAsync(); return(CreatedAtRoute("DefaultApi", new { id = cliente.Id }, cliente)); }
public async Task <IHttpActionResult> PutCliente(int id, ClienteBindingModel clienteModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != clienteModel.Id) { return(BadRequest()); } try { Cliente cliente = db.Clientes.Find(clienteModel.Id); cliente.Documento = clienteModel.Documento; cliente.Email = clienteModel.Email; cliente.EmailResponsavel = clienteModel.EmailResponsavel; cliente.Nascimento = clienteModel.Nascimento; cliente.Nome = clienteModel.Nome; cliente.NomeResponsavel = clienteModel.NomeResponsavel; cliente.Telefone = clienteModel.Telefone; cliente.TelefoneResponsavel = clienteModel.TelefoneResponsavel; if (clienteModel.IdResponsavel.HasValue) { Usuario user = await db.Users.FirstAsync(u => u.Id == clienteModel.IdResponsavel.Value.ToString()); if (user != null) { cliente.Responsavel = user; } } await db.SaveChangesAsync(); } catch (Exception) { if (!ClienteExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }