Пример #1
0
        public void Put([FromBody] Odontologista value)
        {
            #region Validaçãoes
            if (value.Id <= 0)
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Objeto inválido."),
                    ReasonPhrase = "Campo inválido"
                });
            }

            if (!Validacoes.ValidaCpf(value.Cpf))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Cpf inválido."),
                    ReasonPhrase = "Campo inválido"
                });
            }
            else
            {
                value.Cpf = value.Cpf.Replace(".", "").Replace("-", "");
            }

            if (!Validacoes.ValidaCep(value.Cep))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Cep inválido."),
                    ReasonPhrase = "Campo inválido"
                });
            }
            else
            {
                value.Cep = value.Cep.Replace("-", "");
            }

            if (!Validacoes.ApenasNumeros(value.Cro))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Cro inválido."),
                    ReasonPhrase = "Campo inválido"
                });
            }

            if (!Enum.IsDefined(typeof(AgendaEnums.Uf), value.CroEstado))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Cro UF inválido."),
                    ReasonPhrase = "Campo inválido"
                });
            }

            if (string.IsNullOrWhiteSpace(value.Nome))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Nome inválido."),
                    ReasonPhrase = "Campo inválido"
                });
            }

            if (value.IdClinica <= 0)
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Clínica inválida."),
                    ReasonPhrase = "Campo inválido"
                });
            }

            if (!Validacoes.ValidaDataNascimento(value.DataNascimento))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.NotAcceptable)
                {
                    Content      = new StringContent("Data de nascimento inválida."),
                    ReasonPhrase = "Campo inválido"
                });
            }
            #endregion
            using (var repositorio = new OdontologistaRepositorio(new Connection(new System.Data.SqlClient.SqlConnection())))
            {
                repositorio.Atualizar(value);
            }
        }