Ejemplo n.º 1
0
        /// <summary>
        /// Consulta que recebe uma SQL em texto, à executa e preenche uma lista to tipo variavel
        /// </summary>
        /// <param name="sqlTexto"> O Sql texto como parametro de consulta</param>
        /// <param name="marcaFiltroProduto"> O filtro da consulta</param>
        /// <returns></returns>
        private List <CoordenadorVO> Consultar(string sqlTexto, FiltroConsulta filtro, bool lazy)
        {
            List <CoordenadorVO> coordenadorList = new List <CoordenadorVO>();

            SqlDataReader sqlDataReader = ExecuteReader(sqlTexto);

            // Verifica se foram retornados dados da consulta
            if (sqlDataReader != null && sqlDataReader.HasRows)
            {
                // Loop para carregar a lista de retorno do metodo
                while (sqlDataReader.Read())
                {
                    CoordenadorVO coordenador = new CoordenadorVO();
                    //As verificações abaixo checam quais dados devem ser retornados na consulta,
                    //baseado nos campos do filtro passado como parâmetro. Depois checa se o valor do banco
                    //é diferente de nulo para não ocorrer problemas na hora da converção.
                    //----------------------------------------------------------------------------------

                    if (filtro["COD_COORDENADOR"])
                    {
                        if (sqlDataReader["COD_COORDENADOR"] != DBNull.Value)
                        {
                            coordenador.ID = Convert.ToInt32(sqlDataReader["COD_COORDENADOR"]);
                        }
                    }

                    if (filtro["CELULAR"])
                    {
                        if (sqlDataReader["CELULAR"] != DBNull.Value)
                        {
                            coordenador.Celular = Convert.ToString(sqlDataReader["CELULAR"]);
                        }
                    }
                    if (filtro["CPF"])
                    {
                        if (sqlDataReader["CPF"] != DBNull.Value)
                        {
                            coordenador.CPF = Convert.ToString(sqlDataReader["CPF"]);
                        }
                    }
                    if (filtro["DATA_NASCIMENTO"])
                    {
                        if (sqlDataReader["DATA_NASCIMENTO"] != DBNull.Value)
                        {
                            coordenador.DataNascimento = Convert.ToString(sqlDataReader["DATA_NASCIMENTO"]);
                        }
                    }
                    if (filtro["EMAIL"])
                    {
                        if (sqlDataReader["EMAIL"] != DBNull.Value)
                        {
                            coordenador.Email = Convert.ToString(sqlDataReader["EMAIL"]);
                        }
                    }

                    if (filtro["ENDERECO"])
                    {
                        if (sqlDataReader["ENDERECO"] != DBNull.Value)
                        {
                            coordenador.EnderecoAtual.Logradouro = Convert.ToString(sqlDataReader["ENDERECO"]);
                        }
                    }

                    if (filtro["CEP"])
                    {
                        if (sqlDataReader["CEP"] != DBNull.Value)
                        {
                            coordenador.EnderecoAtual.Cep = Convert.ToString(sqlDataReader["CEP"]);
                        }
                    }

                    if (filtro["CIDADE"])
                    {
                        if (sqlDataReader["CIDADE"] != DBNull.Value)
                        {
                            coordenador.EnderecoAtual.Cidade.Nome = Convert.ToString(sqlDataReader["CIDADE"]);
                        }
                    }

                    if (filtro["UF"])
                    {
                        if (sqlDataReader["UF"] != DBNull.Value)
                        {
                            coordenador.EnderecoAtual.Cidade.Estado.Sigla = Convert.ToString(sqlDataReader["UF"]);
                        }
                    }

                    if (filtro["ESTADO_CIVIL"])
                    {
                        if (sqlDataReader["ESTADO_CIVIL"] != DBNull.Value)
                        {
                            coordenador.EstadoCivil = Convert.ToString(sqlDataReader["ESTADO_CIVIL"]);
                        }
                    }

                    if (filtro["ENTIDADE"])
                    {
                        if (sqlDataReader["ENTIDADE"] != DBNull.Value)
                        {
                            coordenador.Entidade = Convert.ToString(sqlDataReader["ENTIDADE"]);
                        }
                    }

                    if (filtro["NOME"])
                    {
                        if (sqlDataReader["NOME"] != DBNull.Value)
                        {
                            coordenador.Nome = Convert.ToString(sqlDataReader["NOME"]);
                        }
                    }

                    if (filtro["NOME_MAE"])
                    {
                        if (sqlDataReader["NOME_MAE"] != DBNull.Value)
                        {
                            coordenador.NomeMae = Convert.ToString(sqlDataReader["NOME_MAE"]);
                        }
                    }

                    if (filtro["NOME_PAI"])
                    {
                        if (sqlDataReader["NOME_PAI"] != DBNull.Value)
                        {
                            coordenador.NomePai = Convert.ToString(sqlDataReader["NOME_PAI"]);
                        }
                    }

                    if (filtro["SEXO"])
                    {
                        if (sqlDataReader["SEXO"] != DBNull.Value)
                        {
                            coordenador.Sexo = Convert.ToChar(sqlDataReader["SEXO"]);
                        }
                    }

                    if (filtro["IDENTIDADE"])
                    {
                        if (sqlDataReader["IDENTIDADE"] != DBNull.Value)
                        {
                            coordenador.Rg.Numero = Convert.ToString(sqlDataReader["IDENTIDADE"]);
                        }
                    }

                    if (filtro["DATA_EMISSAO"])
                    {
                        if (sqlDataReader["DATA_EMISSAO"] != DBNull.Value)
                        {
                            coordenador.Rg.DataExpedicao = Convert.ToString(sqlDataReader["DATA_EMISSAO"]);
                        }
                    }

                    if (filtro["ORGAO_EXPEDITOR"])
                    {
                        if (sqlDataReader["ORGAO_EXPEDITOR"] != DBNull.Value)
                        {
                            coordenador.Rg.OrgaoExpeditor = Convert.ToString(sqlDataReader["ORGAO_EXPEDITOR"]);
                        }
                    }

                    if (filtro["TELEFONE"])
                    {
                        if (sqlDataReader["TELEFONE"] != DBNull.Value)
                        {
                            coordenador.Telefone = Convert.ToString(sqlDataReader["TELEFONE"]);
                        }
                    }

                    if (filtro["BANCO"])
                    {
                        if (sqlDataReader["BANCO"] != DBNull.Value)
                        {
                            coordenador.NomeBanco = Convert.ToString(sqlDataReader["BANCO"]);
                        }
                    }

                    if (filtro["AGENCIA"])
                    {
                        if (sqlDataReader["AGENCIA"] != DBNull.Value)
                        {
                            coordenador.Agencia = Convert.ToString(sqlDataReader["AGENCIA"]);
                        }
                    }

                    if (filtro["OBS"])
                    {
                        if (sqlDataReader["OBS"] != DBNull.Value)
                        {
                            coordenador.Observacao = Convert.ToString(sqlDataReader["OBS"]);
                        }
                    }

                    coordenadorList.Add(coordenador);
                }
            }
            if (sqlDataReader != null && !sqlDataReader.IsClosed)
            {
                sqlDataReader.Close();
            }
            return(coordenadorList);
        }
Ejemplo n.º 2
0
        internal FiltroConsulta ToFilterSII()
        {
            FiltroConsulta siiFilter = new FiltroConsulta();

            if (IssueDate == null)
            {
                throw new ArgumentNullException("IssueDate is null.");
            }

            if (Settings.Current.IDVersionSii.CompareTo("1.1") < 0)
            {
                siiFilter.PeriodoImpositivo.Ejercicio = (IssueDate ?? new DateTime(1, 1, 1)).ToString("yyyy");
                siiFilter.PeriodoImpositivo.Periodo   = (IssueDate ?? new DateTime(1, 1, 1)).ToString("MM");
            }
            else
            {
                siiFilter.PeriodoLiquidacion.Ejercicio = (IssueDate ?? new DateTime(1, 1, 1)).ToString("yyyy");
                siiFilter.PeriodoLiquidacion.Periodo   = (IssueDate ?? new DateTime(1, 1, 1)).ToString("MM");
            }

            TaxIdEs taxIdEs = null;

            bool IsNotNifES = false;

            try
            {
                taxIdEs = new TaxIdEs(SellerParty.TaxIdentificationNumber);
            }
            catch
            {
                IsNotNifES = true;
            }

            if (taxIdEs != null)
            {
                IsNotNifES = !taxIdEs.IsDCOK;
            }

            siiFilter.ClavePaginacion = new ClavePaginacion();
            siiFilter.IDFactura       = new IDFactura();

            if (SellerParty != null)
            {
                if (IsFiltroClavePag == true)
                {
                    siiFilter.ClavePaginacion.IDEmisorFactura.NombreRazon = SellerParty.PartyName;
                }
                else
                {
                    siiFilter.IDFactura.IDEmisorFactura.NombreRazon = SellerParty.PartyName;
                }

                if (IsNotNifES)
                {
                    if (CountryCode == null)
                    {
                        throw new ArgumentNullException(
                                  "For foreign tax identificator number Country Code can't be null");
                    }

                    if (IsFiltroClavePag == true)
                    {
                        siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro            = new IDOtro();
                        siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro.IDType     = ((int)IDOtroType).ToString().PadLeft(2, '0');
                        siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro.CodigoPais = CountryCode;
                        siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro.ID         = SellerParty.TaxIdentificationNumber;
                    }
                    else
                    {
                        siiFilter.IDFactura.IDEmisorFactura.IDOtro            = new IDOtro();
                        siiFilter.IDFactura.IDEmisorFactura.IDOtro.IDType     = ((int)IDOtroType).ToString().PadLeft(2, '0');
                        siiFilter.IDFactura.IDEmisorFactura.IDOtro.CodigoPais = CountryCode;
                        siiFilter.IDFactura.IDEmisorFactura.IDOtro.ID         = SellerParty.TaxIdentificationNumber;
                    }
                }
                else
                {
                    if (IsFiltroClavePag == true)
                    {
                        siiFilter.ClavePaginacion.IDEmisorFactura.NIF = SellerParty.TaxIdentificationNumber;
                    }
                    else
                    {
                        siiFilter.IDFactura.IDEmisorFactura.NIF = SellerParty.TaxIdentificationNumber;
                    }
                }

                if (InvoiceNumber != null)
                {
                    if (IsFiltroClavePag == true)
                    {
                        siiFilter.ClavePaginacion.NumSerieFacturaEmisor = InvoiceNumber;
                    }
                    else
                    {
                        siiFilter.IDFactura.NumSerieFacturaEmisor = InvoiceNumber;
                    }
                }

                if (IssueDate != null)
                {
                    if (IsFiltroClavePag == true)
                    {
                        siiFilter.ClavePaginacion.FechaExpedicionFacturaEmisor =
                            SIIParser.FromDate(IssueDate);
                    }
                    else
                    {
                        siiFilter.IDFactura.FechaExpedicionFacturaEmisor =
                            SIIParser.FromDate(IssueDate);
                    }
                }
            }


            // Tratamiento del Desde/Hasta Fecha Presentación.
            if (SinceDate != null && UntilDate != null)
            {
                if (siiFilter.FechaPresentacion == null)
                {
                    siiFilter.FechaPresentacion = new RangoFechaPresentacion();
                }

                siiFilter.FechaPresentacion.Desde = SIIParser.FromDate(SinceDate);
                siiFilter.FechaPresentacion.Hasta = SIIParser.FromDate(UntilDate);
            }

            return(siiFilter);
        }
Ejemplo n.º 3
0
        internal FiltroConsulta ToFilterSII()
        {
            FiltroConsulta siiFilter = new FiltroConsulta();

            if (Settings.Current.IDVersionSii.CompareTo("1.1") < 0)
            {
                siiFilter.PeriodoImpositivo.Ejercicio = (IssueDate ?? new DateTime(1, 1, 1)).ToString("yyyy");
                siiFilter.PeriodoImpositivo.Periodo   = (IssueDate ?? new DateTime(1, 1, 1)).ToString("MM");
            }
            else
            {
                siiFilter.PeriodoLiquidacion.Ejercicio = (IssueDate ?? new DateTime(1, 1, 1)).ToString("yyyy");
                siiFilter.PeriodoLiquidacion.Periodo   = (IssueDate ?? new DateTime(1, 1, 1)).ToString("MM");
            }

            TaxIdEs taxIdEs    = null;
            bool    IsNotNifES = false;

            try
            {
                taxIdEs = new TaxIdEs(BuyerParty.TaxIdentificationNumber);
            }
            catch
            {
                IsNotNifES = true;
            }

            if (taxIdEs != null)
            {
                IsNotNifES = !taxIdEs.IsDCOK;
            }

            if (BuyerParty != null)
            {
                siiFilter.ClavePaginacion = new ClavePaginacion();
                siiFilter.ClavePaginacion.IDEmisorFactura.NombreRazon = BuyerParty.PartyName;

                if (IsNotNifES)
                {
                    if (CountryCode == null)
                    {
                        throw new ArgumentNullException(
                                  "For foreign tax identificator number Country Code can't be null");
                    }

                    siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro            = new IDOtro();
                    siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro.IDType     = ((int)IDOtroType).ToString().PadLeft(2, '0');
                    siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro.CodigoPais = CountryCode;
                    siiFilter.ClavePaginacion.IDEmisorFactura.IDOtro.ID         = BuyerParty.TaxIdentificationNumber;
                }
                else
                {
                    siiFilter.ClavePaginacion.IDEmisorFactura.NIF = BuyerParty.TaxIdentificationNumber;
                }

                if (InvoiceNumber != null)
                {
                    siiFilter.ClavePaginacion.NumSerieFacturaEmisor = InvoiceNumber;
                }

                if (IssueDate != null)
                {
                    siiFilter.ClavePaginacion.FechaExpedicionFacturaEmisor =
                        (IssueDate ?? new DateTime(1, 1, 1)).ToString("dd-MM-yyyy");
                }
            }

            return(siiFilter);
        }