Ejemplo n.º 1
0
        /// <summary>
        /// Executa a busca de arquivos, baseado nos filtros preenchidos
        /// </summary>
        /// <param name="pagina">Número da página que conterá os resultados da busca</param>
        private void ExecutaBusca(int pagina = 1)
        {
            FiltroBuscaSped filtro = this.ViewState[ConstantesGlobais.FILTRO_BUSCA] != null ? (FiltroBuscaSped)this.ViewState[ConstantesGlobais.FILTRO_BUSCA]
                : new FiltroBuscaSped();
            int inicio = ((pagina - 1) * RESULTADOS_POR_PAGINA) + 1;
            ResultadoBuscaSped resultado = GerenciamentoArquivo.BuscaArquivosSped(filtro, inicio, RESULTADOS_POR_PAGINA);
            List <ArquivoSped> arquivos  = (resultado != null && resultado.Resultados != null) ? (List <ArquivoSped>)resultado.Resultados : new List <ArquivoSped>();
            List <int>         paginas   = new List <int>();

            if (arquivos.Count > 0)
            {
                int quantidadePaginas = (int)Math.Ceiling((double)resultado.Quantidade / (double)RESULTADOS_POR_PAGINA);

                for (int i = 1; i <= quantidadePaginas; i++)
                {
                    paginas.Add(i);
                }

                this.DivAcoes.Visible = true;

                this.pagina = 0;

                this.RptResultadoBusca.Visible    = true;
                this.RptResultadoBusca.DataSource = arquivos; ////OrderByDescending(a => a.Competencia).ToList();
                this.RptResultadoBusca.DataBind();

                this.RptPaginacao.Visible    = quantidadePaginas > 1;
                this.RptPaginacao.DataSource = paginas;
                this.RptPaginacao.DataBind();
            }
            else
            {
                this.DivMensagem.Visible             = true;
                this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_ERRO;
                this.LblMensagem.Text          = MENSAGEM_ERRO_BUSCA_NENHUM_RESULTADO;
                this.DivAcoes.Visible          = false;
                this.RptResultadoBusca.Visible = false;
                this.RptPaginacao.Visible      = false;
                return;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Obtem os valores digitados nos campos da pesquisa e monta um objeto FiltroBusca
        /// </summary>
        /// <returns>Objeto filtro da busca</returns>
        private FiltroBuscaSped MontaFiltroBuscaSimples()
        {
            FiltroBuscaSped filtro       = new FiltroBuscaSped();
            var             recepcionado = Util.MontaDataIntervaloOpcao(this.DdRecepcionado.SelectedValue);

            filtro.TextoLivre = this.TxtBusca.Text;

            filtro.Entidade = new Participante()
            {
                Cnpj = Util.ObtemSomenteDigitos(this.TxtCnpj.Text),
                Ie   = Util.ObtemSomenteDigitos(this.TxtInscricaoEstadual.Text)
            };

            foreach (ListItem item in this.CblTipoEscrituracao.Items.Cast <ListItem>().Where(li => li.Selected))
            {
                if (filtro.TipoEscrituracao == null)
                {
                    filtro.TipoEscrituracao = new List <TipoEscrituracao>();
                }

                filtro.TipoEscrituracao.Add((TipoEscrituracao)Convert.ToByte(item.Value));
            }

            foreach (ListItem item in this.CblSituacaoArquivo.Items.Cast <ListItem>().Where(li => li.Selected))
            {
                if (filtro.StatusPva == null)
                {
                    filtro.StatusPva = new List <StatusPva>();
                }

                filtro.StatusPva.Add((StatusPva)Convert.ToByte(item.Value));
            }

            filtro.Recepcionado = recepcionado != null ? (DataIntervalo)recepcionado : null;

            this.ViewState[ConstantesGlobais.FILTRO_BUSCA] = filtro;

            return(filtro);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Realiza a busca de arquivos SPED na API, dados os filtros escolhidos pelo usuário
        /// </summary>
        /// <param name="filtro">Objeto filtro com todos os critérios da pesquisa</param>
        /// <param name="inicio">Índice do primeiro registro a ser retornado</param>
        /// <param name="quantidade">Quantidade máxima de registros que deverá retornar</param>
        /// <returns>Lista de arquivos encontrados</returns>
        public static ResultadoBuscaSped BuscaArquivosSped(FiltroBuscaSped filtro, int inicio, int quantidade)
        {
            string json = AuxiliarJson.Posta(filtro, EnderecosApi.BuscaSped + "/" + inicio + "/" + quantidade);

            return((ResultadoBuscaSped)AuxiliarJson.Desserializa <ResultadoBuscaSped>(json));
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Obtem os valores digitados nos campos da pesquisa e monta um objeto FiltroBusca
        /// </summary>
        /// <returns>Objeto filtro da busca</returns>
        private FiltroBuscaSped MontaFiltroBuscaAvancada()
        {
            FiltroBuscaSped filtro = new FiltroBuscaSped();

            var competencia      = Util.MontaDataIntervalo(this.TxtCompetenciaInicio.Text, this.TxtCompetenciaFim.Text);
            var periodoEntrega   = Util.MontaDataIntervalo(this.TxtPeriodoEntregaInicio.Text, this.TxtPeriodoEntregaFim.Text);
            var dataRecepcionado = Util.MontaDataIntervalo(this.TxtDataRecepcionadoInicio.Text, this.TxtDataRecepcionadoFim.Text);
            var dataValidado     = Util.MontaDataIntervalo(this.TxtDataValidadoInicio.Text, this.TxtDataValidadoFim.Text);
            var dataConciliado   = Util.MontaDataIntervalo(this.TxtDataConciliadoInicio.Text, this.TxtDataConciliadoFim.Text);
            var dataAssinado     = Util.MontaDataIntervalo(this.TxtDataAssinadoInicio.Text, this.TxtDataAssinadoFim.Text);
            var dataTransmitido  = Util.MontaDataIntervalo(this.TxtDataTransmitidoInicio.Text, this.TxtDataTransmitidoFim.Text);

            filtro.NomeArquivo = this.TxtNomeArquivo.Text;
            filtro.Competencia = competencia;
            ////filtro.DataEntrega; TODO: Implementar quando houver na API
            filtro.Recepcionado         = dataRecepcionado;
            filtro.DataProcessamentoPva = dataValidado;
            ////filtro.DataConciliacao; TODO: Implementar quando houver na API
            filtro.DataAssinatura       = dataAssinado;
            filtro.DataTransmissaoSefaz = dataTransmitido;

            foreach (ListItem item in this.CblTipoEscrituracaoAvancada.Items.Cast <ListItem>().Where(li => li.Selected))
            {
                if (filtro.TipoEscrituracao == null)
                {
                    filtro.TipoEscrituracao = new List <TipoEscrituracao>();
                }

                filtro.TipoEscrituracao.Add((TipoEscrituracao)Convert.ToByte(item.Value));
            }

            if (this.RblFinalidade.SelectedValue != null && !string.IsNullOrEmpty(this.RblFinalidade.SelectedValue))
            {
                filtro.FinalidadeArquivo = (FinalidadeOperacaoSped)Convert.ToByte(this.RblFinalidade.SelectedValue);
            }

            filtro.Entidade = new Participante()
            {
                Cnpj        = Util.ObtemSomenteDigitos(this.TxtTxtCnpjContribuinte.Text),
                Ie          = Util.ObtemSomenteDigitos(this.TxtInscricaoEstadualContribuinte.Text),
                RazaoSocial = this.TxtRazaoSocialContribuinte.Text,
                Uf          = this.DdUnidadeFederativaContribuinte.SelectedItem != null ? this.DdUnidadeFederativaContribuinte.SelectedItem.Text : null
            };

            foreach (ListItem item in this.CblSituacaoAvancada.Items.Cast <ListItem>().Where(li => li.Selected))
            {
                if (filtro.StatusPva == null)
                {
                    filtro.StatusPva = new List <StatusPva>();
                }

                filtro.StatusPva.Add((StatusPva)Convert.ToByte(item.Value));
            }

            foreach (ListItem item in this.CblSituacaoSPED.Items.Cast <ListItem>().Where(li => li.Selected))
            {
                if (filtro.StatusSped == null)
                {
                    filtro.StatusSped = new List <StatusSped>();
                }

                filtro.StatusSped.Add((StatusSped)Convert.ToByte(item.Value));
            }


            ////filtro.TipoTransmissao

            this.ViewState[ConstantesGlobais.FILTRO_BUSCA] = filtro;

            return(filtro);
        }