Пример #1
0
        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));
        }
Пример #2
0
        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));
        }