public HttpResponseMessage BuscarFornecedorList([FromBody] FornecedorFiltro fornecedorFiltro)
 {
     try
     {
         return(Request.CreateResponse(HttpStatusCode.OK, FornecedorNeg.BuscarFornecedorList(fornecedorFiltro)));
     }
     catch (Exception ex)
     {
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message));
     }
 }
示例#2
0
        public static List <Fornecedor> BuscarFornecedorList(FornecedorFiltro fornecedorFiltro)
        {
            try
            {
                List <Fornecedor> listaFornecedores = new List <Fornecedor>();

                using (SqlConnection connection = new SqlConnection("Server=DESKTOP-O734NVQ\\SQLEXPRESS;Database=SistemaEmpresa;Trusted_Connection=True;"))
                {
                    SqlCommand command = new SqlCommand("[dbo].[buscar_lista_fornecedores]", connection);
                    command.CommandType = CommandType.StoredProcedure;

                    command.Parameters.Add("@idEmpresa", SqlDbType.Int).Value = fornecedorFiltro.IdEmpresa == 0 ? fornecedorFiltro.IdEmpresa = 1 : fornecedorFiltro.IdEmpresa;

                    if (!string.IsNullOrWhiteSpace(fornecedorFiltro.Nome))
                    {
                        command.Parameters.Add("@nome", SqlDbType.NVarChar).Value = fornecedorFiltro.Nome;
                    }

                    if (!(fornecedorFiltro.DtCadastro == DateTime.MinValue))
                    {
                        command.Parameters.Add("@dt_cadastro", SqlDbType.DateTime).Value = fornecedorFiltro.DtCadastro;
                    }

                    if (!string.IsNullOrWhiteSpace(fornecedorFiltro.Documento))
                    {
                        command.Parameters.Add("@Documento", SqlDbType.NVarChar).Value = fornecedorFiltro.Documento;
                    }

                    connection.Open();

                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        if (reader.HasRows)
                        {
                            while (reader.Read())
                            {
                                Fornecedor fornecedor = new Fornecedor()
                                {
                                    Nome         = reader.IsDBNull(0) ? null : reader.GetString(0),
                                    Documento    = reader.IsDBNull(1) ? null : reader.GetString(1),
                                    RG           = reader.IsDBNull(2) ? null : reader.GetString(2),
                                    DtCadastro   = reader.IsDBNull(3) ? DateTime.MinValue : reader.GetDateTime(3),
                                    DtNascimento = reader.IsDBNull(4) ? DateTime.MinValue : reader.GetDateTime(4),
                                    Telefone     = reader.IsDBNull(5) ? null : reader.GetString(5),
                                    empresa      = EmpresaDD.BuscarEmpresa(fornecedorFiltro.IdEmpresa)
                                };
                                listaFornecedores.Add(fornecedor);
                            }
                        }
                    }
                }

                if (listaFornecedores.Count == 0)
                {
                    Fornecedor fornecedor = new Fornecedor()
                    {
                        empresa = EmpresaDD.BuscarEmpresa(fornecedorFiltro.IdEmpresa)
                    };
                    listaFornecedores.Add(fornecedor);
                }
                return(listaFornecedores);
            }
            catch
            {
                throw new ApplicationException("Não foram encontrados dados válidos");
            }
        }