Пример #1
0
        private void Header()
        {
            Sistema_bll sistema_Class         = new Sistema_bll(_connection);
            Contribuinte_Header_Struct _dados = sistema_Class.Contribuinte_Header(_lista_selecionados[0].Codreduzido);

            NomeText.Text     = _dados.Nome;
            CPFText.Text      = _dados.Cpf_cnpj;
            EnderecoText.Text = _dados.Endereco_abreviado + ", " + _dados.Numero.ToString() + " " + _dados.Complemento + " " + _dados.Nome_bairro;
            CidadeText.Text   = _dados.Nome_cidade;
            UFText.Text       = _dados.Nome_uf;
            CepText.Text      = _dados.Cep;

            _data_refis_inicio   = Convert.ToDateTime(sistema_Class.Retorna_Valor_Parametro("REFIS_INICIO"));
            _data_refis_final    = Convert.ToDateTime(sistema_Class.Retorna_Valor_Parametro("REFIS_FIM"));
            _data_refisdi_inicio = Convert.ToDateTime(sistema_Class.Retorna_Valor_Parametro("REFISDI_INICIO"));
            _data_refisdi_final  = Convert.ToDateTime(sistema_Class.Retorna_Valor_Parametro("REFISI_FIM"));

            DateTime _data_now = DateTime.Now;

            if (_data_now >= _data_refis_inicio && _data_now <= _data_refis_final)
            {
                _refis_ativo = true;
            }

            if (_data_now >= _data_refisdi_inicio && _data_now <= _data_refisdi_final)
            {
                _refisdi_ativo = true;
            }
        }
Пример #2
0
 private void ProprietarioButton_Click(object sender, EventArgs e)
 {
     using (var form = new Cidadao_Lista()) {
         var result = form.ShowDialog(this);
         if (result == DialogResult.OK)
         {
             int         val                = form.ReturnValue;
             Sistema_bll sistema_Class      = new Sistema_bll(_connection);
             Contribuinte_Header_Struct reg = sistema_Class.Contribuinte_Header(val);
             Proprietario.Text = reg.Nome;
             Proprietario.Tag  = val.ToString();
         }
     }
 }
Пример #3
0
 private void LancamentoList_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (LancamentoList.SelectedIndex > -1 && _codigo > 0)
     {
         GtiTypes.CustomListBoxItem selectedItem = (GtiTypes.CustomListBoxItem)LancamentoList.SelectedItem;
         int _codLancamento = selectedItem._value;
         if (_codLancamento == 50 || _codLancamento == 65)
         {
             AbateNFText.ReadOnly  = false;
             AbateNFText.BackColor = Color.White;
         }
         else
         {
             AbateNFText.ReadOnly  = true;
             AbateNFText.BackColor = BackColor;
         }
         Sistema_bll sistema_Class = new Sistema_bll(_connection);
         Contribuinte_Header_Struct _contribuinte = sistema_Class.Contribuinte_Header(_codigo);
         int _tipoGuia = TipoGuiaList.SelectedIndex;
         if (_contribuinte.Tipo == TipoCadastro.Imovel)
         {
             if (_tipoGuia > 1 && _tipoGuia < 4)
             {
                 MessageBox.Show("Um imóvel não pode ter lançamentos de ISS, Taxa de Licença e Vigilância Sanitária.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 TipoGuiaList.SelectedIndex = 0;
             }
         }
         else
         {
             if (_tipoGuia == 5)
             {
                 MessageBox.Show("Apenas imóveis podem ter lançamentos de Roçada.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 TipoGuiaList.SelectedIndex = 0;
             }
             else
             {
                 if (_tipoGuia == 1)
                 {
                     MessageBox.Show("Apenas imóveis podem ter lançamentos de IPTU.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     TipoGuiaList.SelectedIndex = 0;
                 }
             }
         }
         Carrega_Tributo(_codLancamento);
     }
 }
Пример #4
0
        private void Carrega_Dados(int _codigo)
        {
            Sistema_bll sistema_Class          = new Sistema_bll(_connection);
            Contribuinte_Header_Struct _header = sistema_Class.Contribuinte_Header(_codigo);

            NomeText.Text = _header.Nome;
            if (!string.IsNullOrWhiteSpace(_header.Cpf_cnpj))
            {
                DocText.Text = _header.Cpf_cnpj.Length == 11? Convert.ToUInt64(_header.Cpf_cnpj).ToString(@"000\.000\.000\-00") :
                               Convert.ToUInt64(_header.Cpf_cnpj).ToString(@"00\.000\.000\/0000\-00");
            }
            EnderecoText.Text = _header.Endereco + ", " + _header.Numero.ToString() + " " + _header.Complemento;
            BairroText.Text   = _header.Nome_bairro ?? "";
            CidadeText.Text   = _header.Nome_cidade ?? "";
            UFText.Text       = _header.Nome_uf ?? "";
            CepText.Text      = _header.Cep ?? "";
            QuadraText.Text   = _header.Quadra_original ?? "";
            LoteText.Text     = _header.Lote_original ?? "";

            EnderecoEntText.Text = _header.Endereco_entrega + ", " + _header.Numero_entrega.ToString() + " " + _header.Complemento_entrega;
            BairroEntText.Text   = _header.Nome_bairro_entrega ?? "";
            CidadeEntText.Text   = _header.Nome_cidade_entrega ?? "";
            UFEntText.Text       = _header.Nome_uf_entrega ?? "";
            CepEntText.Text      = _header.Cep_entrega ?? "";

            if (DocText.Text == "")
            {
                MessageBox.Show("CPF/CNPJ obrigatório.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                Form          mdiForm = Application.OpenForms.Cast <Form>().FirstOrDefault(c => c is Forms.Main);
                Emissao_Guia2 f1      = new Emissao_Guia2(Convert.ToInt32(CodigoText.Text))
                {
                    Tag = "Menu", MdiParent = mdiForm
                };
                f1.TopMost = true;
                f1.Show();
            }
        }
Пример #5
0
        private void Dados_Impressao(int Codigo)
        {
            Sistema_bll sistema_Class         = new Sistema_bll(_connection);
            Contribuinte_Header_Struct header = sistema_Class.Contribuinte_Header(Codigo);

            if (header == null)
            {
                MessageBox.Show("Código não cadastrado.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                Nome.Text      = header.Nome;
                Endereco.Text  = header.Endereco + ", " + header.Numero.ToString();
                Bairro.Text    = header.Nome_bairro;
                Cidade.Text    = header.Nome_cidade + "/" + header.Nome_uf;
                Cep.Text       = header.Cep;
                Inscricao.Text = header.Inscricao;
                if (header.Cpf_cnpj != "")
                {
                    if (gtiCore.ExtractNumber(header.Cpf_cnpj).Length == 11)
                    {
                        Doc.Text = Convert.ToInt64(gtiCore.ExtractNumber(header.Cpf_cnpj)).ToString(@"000\.000\.000\-00");
                    }
                    else
                    {
                        Doc.Text = Convert.ToInt64(gtiCore.ExtractNumber(header.Cpf_cnpj)).ToString(@"00\.000\.000\/0000\-00");
                    }
                }
                Quadra.Text = header.Quadra_original;
                Lote.Text   = header.Lote_original;
                if (Codigo >= 100000 && Codigo < 500000)
                {
                    Empresa_bll   empresa_Class = new Empresa_bll(_connection);
                    EmpresaStruct dados         = empresa_Class.Retorna_Empresa(Codigo);
                    Atividade.Text = dados.Atividade_extenso;
                }
            }
        }
Пример #6
0
        public Contribuinte_Header_Struct Contribuinte_Header(int _codigo, bool _principal = false)
        {
            string _nome = "", _inscricao = "", _endereco = "", _complemento = "", _bairro = "", _cidade = "", _uf = "", _cep = "", _quadra = "", _lote = "";
            string _endereco_entrega = "", _complemento_entrega = "", _bairro_entrega = "", _cidade_entrega = "", _uf_entrega = "", _cep_entrega = "";
            string _cpf_cnpj = "", _atividade = "", _rg = "", _endereco_abreviado = "", _endereco_entrega_abreviado = "";
            int    _numero = 0, _numero_entrega = 0;

            GTI_Models.modelCore.TipoEndereco _tipo_end = GTI_Models.modelCore.TipoEndereco.Local;
            bool         _ativo = false;
            TipoCadastro _tipo_cadastro;

            _tipo_cadastro = _codigo < 100000 ? TipoCadastro.Imovel : (_codigo >= 100000 && _codigo < 500000) ? TipoCadastro.Empresa : TipoCadastro.Cidadao;

            if (_tipo_cadastro == TipoCadastro.Imovel)
            {
                Imovel_Data  imovel_Class = new Imovel_Data(_connection);
                ImovelStruct _imovel      = imovel_Class.Dados_Imovel(_codigo);
                List <ProprietarioStruct> _proprietario = imovel_Class.Lista_Proprietario(_codigo, _principal);
                _nome               = _proprietario[0].Nome;
                _cpf_cnpj           = _proprietario[0].CPF;
                _rg                 = _proprietario[0].RG;
                _inscricao          = _imovel.Inscricao;
                _endereco           = _imovel.NomeLogradouro;
                _endereco_abreviado = _imovel.NomeLogradouroAbreviado;
                _numero             = (int)_imovel.Numero;
                _complemento        = _imovel.Complemento;
                _bairro             = _imovel.NomeBairro;
                _cidade             = "JABOTICABAL";
                _uf                 = "SP";
                _ativo              = (bool)_imovel.Inativo ? false : true;
                _lote               = _imovel.LoteOriginal;
                _quadra             = _imovel.QuadraOriginal;
                Endereco_Data endereco_Class = new Endereco_Data(_connection);
                _cep = endereco_Class.RetornaCep((int)_imovel.CodigoLogradouro, (short)_imovel.Numero).ToString();
                //Carrega Endereço de Entrega do imóvel
                _tipo_end = _imovel.EE_TipoEndereco == 0 ? GTI_Models.modelCore.TipoEndereco.Local : _imovel.EE_TipoEndereco == 1 ? GTI_Models.modelCore.TipoEndereco.Proprietario : GTI_Models.modelCore.TipoEndereco.Entrega;
                EnderecoStruct regEntrega = imovel_Class.Dados_Endereco(_codigo, _tipo_end);
                if (regEntrega != null)
                {
                    _endereco_entrega           = regEntrega.Endereco ?? "";
                    _endereco_entrega_abreviado = regEntrega.Endereco_Abreviado ?? "";
                    _numero_entrega             = (int)regEntrega.Numero;
                    _complemento_entrega        = regEntrega.Complemento ?? "";
                    _uf_entrega     = regEntrega.UF.ToString();
                    _cidade_entrega = regEntrega.NomeCidade.ToString();
                    _bairro_entrega = regEntrega.NomeBairro ?? "";
                    _cep_entrega    = regEntrega.Cep == null ? "00000-000" : Convert.ToInt32(regEntrega.Cep.ToString()).ToString("00000-000");
                }
            }
            else
            {
                if (_tipo_cadastro == TipoCadastro.Empresa)
                {
                    Empresa_Data  empresa_Class = new Empresa_Data(_connection);
                    EmpresaStruct _empresa      = empresa_Class.Retorna_Empresa(_codigo);
                    _nome               = _empresa.Razao_social;
                    _inscricao          = _codigo.ToString();
                    _rg                 = string.IsNullOrWhiteSpace(_empresa.Inscricao_estadual)?_empresa.Rg:_empresa.Inscricao_estadual;
                    _cpf_cnpj           = _empresa.Cpf_cnpj;
                    _endereco           = _empresa.Endereco_nome;
                    _endereco_abreviado = _empresa.Endereco_nome_abreviado;
                    _numero             = _empresa.Numero == null?0:(int)_empresa.Numero;
                    _complemento        = _empresa.Complemento;
                    _bairro             = _empresa.Bairro_nome;
                    _cidade             = _empresa.Cidade_nome;
                    _uf                 = _empresa.UF;
                    _cep                = _empresa.Cep;
                    _ativo              = _empresa.Data_Encerramento == null ? true : false;
                    _atividade          = _empresa.Atividade_extenso;

                    //Carrega Endereço de Entrega da Empresa
                    mobiliarioendentrega regEntrega = empresa_Class.Empresa_Endereco_entrega(_codigo);
                    if (regEntrega.Nomelogradouro == null)
                    {
                        _endereco_entrega    = _endereco;
                        _numero_entrega      = _numero;
                        _complemento_entrega = _complemento;
                        _uf_entrega          = _uf;
                        _cidade_entrega      = _cidade;
                        _bairro_entrega      = _bairro;
                        _cep_entrega         = _cep;
                    }
                    else
                    {
                        _endereco_entrega    = regEntrega.Nomelogradouro ?? "";
                        _numero_entrega      = (int)regEntrega.Numimovel;
                        _complemento_entrega = regEntrega.Complemento ?? "";
                        _uf_entrega          = regEntrega.Uf ?? "";
                        _cidade_entrega      = regEntrega.Desccidade;
                        _bairro_entrega      = regEntrega.Descbairro;
                        _cep_entrega         = regEntrega.Cep == null ? "00000-000" : Convert.ToInt32(dalCore.RetornaNumero(regEntrega.Cep).ToString()).ToString("00000-000");
                    }
                }
                else
                {
                    Cidadao_Data  cidadao_Class = new Cidadao_Data(_connection);
                    CidadaoStruct _cidadao      = cidadao_Class.Dados_Cidadao(_codigo);
                    _nome      = _cidadao.Nome;
                    _inscricao = _codigo.ToString();
                    _cpf_cnpj  = _cidadao.Cpf;
                    _rg        = _cidadao.Rg;
                    _ativo     = true;
                    if (_cidadao.EtiquetaC == "S")
                    {
                        if (_cidadao.CodigoCidadeC == 413)
                        {
                            _endereco = _cidadao.EnderecoC.ToString();
                            Endereco_Data endereco_Class = new Endereco_Data(_connection);
                            if (_cidadao.NumeroC == null || _cidadao.NumeroC == 0 || _cidadao.CodigoLogradouroC == null || _cidadao.CodigoLogradouroC == 0)
                            {
                                _cep = "14870000";
                            }
                            else
                            {
                                _cep = endereco_Class.RetornaCep((int)_cidadao.CodigoLogradouroC, Convert.ToInt16(_cidadao.NumeroC)).ToString("00000000");
                            }
                        }
                        else
                        {
                            _endereco = _cidadao.CodigoCidadeC.ToString();
                            _cep      = _cidadao.CepC.ToString();
                        }
                        _numero      = (int)_cidadao.NumeroC;
                        _complemento = _cidadao.ComplementoC;
                        _bairro      = _cidadao.NomeBairroC;
                        _cidade      = _cidadao.NomeCidadeC;
                        _uf          = _cidadao.UfC;
                    }
                    else
                    {
                        if (_cidadao.CodigoCidadeR == 413)
                        {
                            _endereco = _cidadao.EnderecoR ?? "";
                            Endereco_Data endereco_Class = new Endereco_Data(_connection);
                            if (_cidadao.NumeroR == null || _cidadao.NumeroR == 0 || _cidadao.CodigoLogradouroR == null || _cidadao.CodigoLogradouroR == 0)
                            {
                                _cep = "14870000";
                            }
                            else
                            {
                                _cep = endereco_Class.RetornaCep((int)_cidadao.CodigoLogradouroR, Convert.ToInt16(_cidadao.NumeroR)).ToString("00000000");
                            }
                        }
                        else
                        {
                            _endereco = _cidadao.CodigoCidadeR.ToString();
                            _cep      = _cidadao.CepR.ToString();
                        }
                        _numero      = _cidadao.NumeroR == null?0: (int)_cidadao.NumeroR;
                        _complemento = _cidadao.ComplementoR;
                        _bairro      = _cidadao.NomeBairroR;
                        _cidade      = _cidadao.NomeCidadeR;
                        _uf          = _cidadao.UfR;
                    }
                    _endereco_abreviado  = _endereco;
                    _endereco_entrega    = _endereco;
                    _numero_entrega      = _numero;
                    _complemento_entrega = _complemento;
                    _uf_entrega          = _uf;
                    _cidade_entrega      = _cidade;
                    _bairro_entrega      = _bairro;
                    _cep_entrega         = _cep;
                }
            }

            Contribuinte_Header_Struct reg = new Contribuinte_Header_Struct {
                Codigo                     = _codigo,
                Tipo                       = _tipo_cadastro,
                TipoEndereco               = _tipo_end,
                Nome                       = _nome,
                Inscricao                  = _inscricao,
                Inscricao_Estadual         = _inscricao,
                Cpf_cnpj                   = _cpf_cnpj,
                Endereco                   = _endereco,
                Endereco_abreviado         = _endereco_abreviado,
                Endereco_entrega           = _endereco_entrega,
                Endereco_entrega_abreviado = _endereco_entrega_abreviado,
                Numero                     = (short)_numero,
                Numero_entrega             = (short)_numero_entrega,
                Complemento                = _complemento,
                Complemento_entrega        = _complemento_entrega,
                Nome_bairro                = _bairro,
                Nome_bairro_entrega        = _bairro_entrega,
                Nome_cidade                = _cidade,
                Nome_cidade_entrega        = _cidade_entrega,
                Nome_uf                    = _uf,
                Nome_uf_entrega            = _uf_entrega,
                Cep             = _cep,
                Cep_entrega     = _cep_entrega,
                Ativo           = _ativo,
                Lote_original   = _lote,
                Quadra_original = _quadra,
                Atividade       = _atividade
            };

            return(reg);
        }
Пример #7
0
        private void PrintReport(DebitoPagoStruct reg)
        {
            ReportDocument crystalReport = new ReportDocument();

            crystalReport.Load(Server.MapPath("~/Report/ComprovantePagamento.rpt"));

            Tributario_bll tributario_Class = new Tributario_bll("GTIconnection");
            int            _numero_certidao = tributario_Class.Retorna_Codigo_Certidao(modelCore.TipoCertidao.Comprovante_Pagamento);
            int            _ano_certidao    = DateTime.Now.Year;

            string      _nome = "", _cpfcnpj = "";
            Sistema_bll sistema_Class          = new Sistema_bll("GTIConnection");
            Contribuinte_Header_Struct _header = sistema_Class.Contribuinte_Header(reg.Codigo);

            _nome    = _header.Nome;
            _cpfcnpj = _header.Cpf_cnpj;

            Comprovante_pagamento cpv = new Comprovante_pagamento();

            cpv.Ano            = _ano_certidao;
            cpv.Numero         = _numero_certidao;
            cpv.Banco          = reg.Banco_Nome + " Agência: " + reg.Codigo_Agencia ?? "";
            cpv.Controle       = _numero_certidao.ToString("00000") + _ano_certidao.ToString("0000") + "/" + reg.Codigo.ToString() + "-PG";
            cpv.Cpfcnpj        = _cpfcnpj;
            cpv.Data_emissao   = DateTime.Now;
            cpv.Data_pagamento = reg.Data_Pagamento;
            cpv.Documento      = Documento.Text;
            cpv.Nome           = _nome;
            cpv.Valor          = (decimal)reg.Valor_Pago_Real;
            Exception ex = tributario_Class.Insert_Comprovante_Pagamento(cpv);

            if (ex != null)
            {
                throw ex;
            }
            else
            {
                crystalReport.SetParameterValue("NUMCOMPROVANTE", _numero_certidao.ToString("00000") + "/" + _ano_certidao.ToString("0000"));
                crystalReport.SetParameterValue("DATAEMISSAO", DateTime.Now.ToString("dd/MM/yyyy") + " às " + DateTime.Now.ToString("HH:mm:ss"));
                crystalReport.SetParameterValue("CONTROLE", _numero_certidao.ToString("00000") + _ano_certidao.ToString("0000") + "/" + reg.Codigo.ToString() + "-PG");
                crystalReport.SetParameterValue("BANCO", reg.Banco_Nome + " Agência: " + reg.Codigo_Agencia ?? "");
                crystalReport.SetParameterValue("CADASTRO", reg.Codigo.ToString("000000"));
                crystalReport.SetParameterValue("NOME", _nome);
                crystalReport.SetParameterValue("DATAPAGAMENTO", reg.Data_Pagamento);
                crystalReport.SetParameterValue("VALOR", reg.Valor_Pago_Real);
                crystalReport.SetParameterValue("DOCUMENTO", Documento.Text);
                crystalReport.SetParameterValue("CPFCNPJ", _cpfcnpj);

                HttpContext.Current.Response.Buffer = false;
                HttpContext.Current.Response.ClearContent();
                HttpContext.Current.Response.ClearHeaders();

                try {
                    crystalReport.ExportToHttpResponse(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, HttpContext.Current.Response, true, "cpv_pagto" + _numero_certidao.ToString() + _ano_certidao.ToString());
                } catch {
                } finally {
                    crystalReport.Close();
                    crystalReport.Dispose();
                }
            }
        }
Пример #8
0
        private void Gera_Matriz(int _codigo_ini, int _codigo_fim, DateTime _data_vencto)
        {
            int      _total = 0, _pos = 1, _numero_documento = 20018535; //20.003.042 até 20.030.000
            DateTime _data_vencimento = Convert.ToDateTime("30/09/2022");
            decimal  _valor_honorario = 0;

            Exception ex = null;
            List <SpExtrato_carta> Lista_Resumo = new List <SpExtrato_carta>();
            List <SpExtrato_carta> Lista_Final  = new List <SpExtrato_carta>();

            //Exclui a remessa se já existir
            Tributario_bll tributario_Class = new Tributario_bll(_connection);
            Sistema_bll    sistema_Class    = new Sistema_bll(_connection);
            Imovel_bll     imovel_Class     = new Imovel_bll(_connection);
            Empresa_bll    empresa_Class    = new Empresa_bll(_connection);
            Cidadao_bll    cidadao_Class    = new Cidadao_bll(_connection);

            decimal    _valor_AR      = tributario_Class.Retorna_Valor_Tributo(DateTime.Now.Year, 667);
            List <int> _lista_codigos = tributario_Class.Lista_Codigo_Carta(_codigo_ini, _codigo_fim, _data_vencto);

            PBar.Value = 0;
            //ex = tributario_Class.Excluir_Carta_Cobranca(_remessa);
            //if (ex != null) {
            //    ErrorBox eBox = new ErrorBox("Atenção", ex.Message, ex);
            //    eBox.ShowDialog();
            //}
            _total = _lista_codigos.Count;
            _lista_codigos.Sort();
            foreach (int _codigo_atual in _lista_codigos)
            {
                if (_stop)
                {
                    break;
                }
                if (_pos % 2 == 0)
                {
                    PBar.Value = _pos * 100 / _total;
                    PBar.Update();
                    Refresh();
                    Application.DoEvents();
                }

                if (_codigo_atual > 100000 && _codigo_atual < 300000)
                {
                    if (empresa_Class.EmpresaSuspensa(_codigo_atual))
                    {
                        goto Proximo;
                    }
                }

                List <SpExtrato_carta> Lista_Extrato_Tributo = tributario_Class.Lista_Extrato_Tributo_Carta(Codigo: _codigo_atual, Data_Atualizacao: _data_vencimento);
                if (Lista_Extrato_Tributo.Count == 0)
                {
                    goto Proximo;
                }

                List <SpExtrato_carta> Lista_Extrato_Parcela = tributario_Class.Lista_Extrato_Parcela_Carta(Lista_Extrato_Tributo);
                Lista_Resumo.Clear();
                List <string> _lista_lancamento     = new List <string>();
                string        _descricao_lancamento = "";
                bool          _find = false;
                foreach (SpExtrato_carta item in Lista_Extrato_Parcela)
                {
                    //if ( item.Codlancamento!=5 && item.Codlancamento!=11 && item.Datavencimento <= _data_vencto) {
                    if (item.Codlancamento != 11 && item.Datavencimento <= _data_vencto)
                    {
                        Lista_Resumo.Add(item);
                        _find = false;
                        foreach (string lanc in _lista_lancamento)
                        {
                            if (lanc == item.Desclancamento)
                            {
                                _find = true;
                                break;
                            }
                        }
                        if (!_find)
                        {
                            _descricao_lancamento += item.Desclancamento + ", ";
                            _lista_lancamento.Add(item.Desclancamento);
                        }
                    }
                }
                _descricao_lancamento = _descricao_lancamento.Length == 0?"": _descricao_lancamento.Substring(0, _descricao_lancamento.Length - 2);

                if (Lista_Resumo.Count == 0)
                {
                    goto Proximo;
                }

                Lista_Final.Clear();
//                int nPercDesconto = 1;

                foreach (SpExtrato_carta item in Lista_Resumo)
                {
                    _find = false;
                    int _index = 0;
                    foreach (SpExtrato_carta item2 in Lista_Final)
                    {
                        if (item.Anoexercicio == item2.Anoexercicio)
                        {
                            _find = true;
                            break;
                        }
                        _index++;
                    }
                    decimal _valor_juros = 0;
                    decimal _valor_multa = 0;

                    //decimal _valor_juros = item.Valorjuros * nPercDesconto;
                    //decimal _valor_multa = item.Valormulta * nPercDesconto;
                    if (_find)
                    {
                        Lista_Final[_index].Valortributo  += item.Valortributo;
                        Lista_Final[_index].Valorjuros    += _valor_juros;
                        Lista_Final[_index].Valormulta    += _valor_multa;
                        Lista_Final[_index].Valorcorrecao += item.Valorcorrecao;
                        Lista_Final[_index].Valortotal    += item.Valortributo + _valor_juros + _valor_multa + item.Valorcorrecao;
                    }
                    else
                    {
                        SpExtrato_carta reg = new SpExtrato_carta();
                        reg.Codreduzido   = item.Codreduzido;
                        reg.Anoexercicio  = item.Anoexercicio;
                        reg.Valortributo  = item.Valortributo;
                        reg.Valorjuros    = _valor_juros;
                        reg.Valormulta    = _valor_multa;
                        reg.Valorcorrecao = item.Valorcorrecao;
                        reg.Valortotal    = item.Valortributo + _valor_juros + _valor_multa + item.Valorcorrecao;
                        reg.Dataajuiza    = item.Dataajuiza;
                        Lista_Final.Add(reg);
                    }
                }
                if (Lista_Final.Count == 0)
                {
                    goto Proximo;
                }

                //Soma o boleto
                decimal _valor_boleto = 0;
                foreach (SpExtrato_carta item in Lista_Final)
                {
                    _valor_boleto += Math.Round(item.Valortributo, 2, MidpointRounding.AwayFromZero) + item.Valormulta + item.Valorjuros + Math.Round(item.Valorcorrecao, 2, MidpointRounding.AwayFromZero);
                }

                //Honorários
                _valor_honorario = 0;
                foreach (SpExtrato_carta item in Lista_Resumo)
                {
                    if (item.Dataajuiza != null)
                    {
                        _valor_honorario += ((item.Valortributo + item.Valorcorrecao) * 10) / 100;
                    }
                }

                //AR
                _valor_AR = 0;
                //foreach (SpExtrato_carta item in Lista_Extrato_Parcela) {
                //    if (item.Anoexercicio == 2019 && item.Codlancamento == 78) {
                //        _valor_AR += item.Valortributo;
                //        Parceladocumento RegParcAR = new Parceladocumento {
                //            Codreduzido = _codigo_atual,
                //            Anoexercicio = item.Anoexercicio,
                //            Codlancamento = 78,
                //            Seqlancamento = item.Seqlancamento,
                //            Numparcela = (byte)item.Numparcela,
                //            Codcomplemento = item.Codcomplemento,
                //            Numdocumento = _numero_documento,
                //            Plano = 39
                //        };
                //        ex = tributario_Class.Insert_Parcela_Documento(RegParcAR);
                //    }
                //}

                //Carta_cobranca_detalhe RegDetAR = new Carta_cobranca_detalhe {
                //    Codigo = _codigo_atual,
                //    Remessa = _remessa,
                //    Ano = 2,
                //    Parcela = 1,
                //    Principal = _valor_AR,
                //    Juros = 0,
                //    Multa = 0,
                //    Correcao = 0,
                //    Total = _valor_AR,
                //    Ordem = 3
                //};
                //if (_valor_AR > 0)
                //    ex = tributario_Class.Insert_Carta_Cobranca_Detalhe(RegDetAR);

                _valor_boleto = Convert.ToDecimal(Math.Round(_valor_boleto, 2) + Math.Round(_valor_honorario, 2, mode: MidpointRounding.AwayFromZero) + _valor_AR);

                //Dados contribuinte
                string _nome = "", _cpfcnpj = "", _endereco = "", _bairro = "", _cidade = "", _cep = "", _inscricao = "", _lote = "", _quadra = "", _atividade = "";
                string _convenio = "2873532", _complemento = "", _complemento_entrega = "", _endereco_entrega = "", _bairro_entrega = "", _cidade_entrega = "", _cep_entrega = "";

                Contribuinte_Header_Struct dados = sistema_Class.Contribuinte_Header(_codigo_atual);
                if (dados == null)
                {
                    goto Proximo;
                }
                TipoCadastro _tipo = dados.Tipo;
                _nome        = dados.Nome;
                _cpfcnpj     = dados.Cpf_cnpj;
                _inscricao   = dados.Inscricao;
                _complemento = dados.Complemento == "" ? "" : " " + dados.Complemento;
                _endereco    = dados.Endereco + ", " + dados.Numero.ToString() + _complemento;
                _bairro      = dados.Nome_bairro;
                _cidade      = dados.Nome_cidade + "/" + dados.Nome_uf;
                _cep         = dados.Cep;
                _lote        = dados.Lote_original;
                _quadra      = dados.Quadra_original;
                _atividade   = dados.Atividade;
                if (_tipo == TipoCadastro.Empresa && !dados.Ativo)
                {
                    goto Proximo;
                }

                //Endereço de Entrega
                if (_tipo == TipoCadastro.Imovel)
                {
                    EnderecoStruct endImovel = imovel_Class.Dados_Endereco(_codigo_atual, dados.TipoEndereco);
                    _complemento_entrega = endImovel.Complemento == "" ? "" : " " + endImovel.Complemento;
                    _endereco_entrega    = endImovel.Endereco + ", " + endImovel.Numero.ToString() + _complemento_entrega;
                    _bairro_entrega      = endImovel.NomeBairro;
                    _cidade_entrega      = endImovel.NomeCidade + "/" + endImovel.UF;
                    _cep_entrega         = endImovel.Cep;
                }
                else
                {
                    if (_tipo == TipoCadastro.Empresa)
                    {
                        EmpresaStruct endEmpresa = empresa_Class.Retorna_Empresa(_codigo_atual);
                        //mobiliarioendentrega endEmpresa = empresa_Class.Empresa_Endereco_entrega(_codigo_atual);
                        _complemento_entrega = endEmpresa.Complemento == "" ? "" : " " + endEmpresa.Complemento;
                        _endereco_entrega    = endEmpresa.Nome_logradouro + ", " + endEmpresa.Numero.ToString() + _complemento;
                        _bairro_entrega      = endEmpresa.Bairro_nome;
                        _cidade_entrega      = endEmpresa.Cidade_nome + "/" + endEmpresa.UF;
                        _cep_entrega         = endEmpresa.Cep;
                        if (String.IsNullOrWhiteSpace(endEmpresa.Nome_logradouro))
                        {
                            _endereco_entrega = _endereco;
                            _bairro_entrega   = _bairro;
                            _cidade_entrega   = _cidade;
                            _cep_entrega      = _cep;
                        }
                    }
                    else
                    {
                        if (_tipo == TipoCadastro.Cidadao)
                        {
                            CidadaoStruct endCidadao = cidadao_Class.LoadReg(_codigo_atual);
                            if (endCidadao.EtiquetaR == "S" || endCidadao.EtiquetaR == null)
                            {
                                _complemento_entrega = endCidadao.ComplementoR == "" ? "" : " " + endCidadao.ComplementoR;
                                _endereco_entrega    = endCidadao.EnderecoR + ", " + endCidadao.NumeroR.ToString() + _complemento_entrega;
                                _bairro_entrega      = endCidadao.NomeBairroR;
                                _cidade_entrega      = endCidadao.NomeCidadeR + "/" + endCidadao.UfR;
                                _cep_entrega         = endCidadao.CepR.ToString();
                            }
                            else
                            {
                                _complemento_entrega = endCidadao.ComplementoC == "" ? "" : " " + endCidadao.ComplementoC;
                                _endereco_entrega    = endCidadao.EnderecoC + ", " + endCidadao.NumeroC.ToString() + _complemento_entrega;
                                _bairro_entrega      = endCidadao.NomeBairroC;
                                _cidade_entrega      = endCidadao.NomeCidadeC + "/" + endCidadao.UfC;
                                _cep_entrega         = endCidadao.CepR.ToString();
                            }
                            _endereco = _endereco_entrega;
                            _bairro   = _bairro_entrega;
                            _cidade   = _cidade_entrega;
                            _cep      = _cep_entrega;
                        }
                    }
                }

                string _cep_str    = gtiCore.RetornaNumero(_cep_entrega);
                int    _cep_numero = Convert.ToInt32(_cep_str);
                _cep_entrega = _cep_numero.ToString("00000-000");

                //Se não tiver CEP ou CPF grava exclusão e passa para o próximo
                if (string.IsNullOrWhiteSpace(_cpfcnpj) || string.IsNullOrWhiteSpace(_cep_entrega) || _cep_entrega == "00000-000" || _cep_entrega == "14870-000" || string.IsNullOrWhiteSpace(_endereco_entrega))
                {
                    Carta_cobranca_exclusao regE = new Carta_cobranca_exclusao();
                    regE.Remessa = _remessa;
                    regE.Codigo  = _codigo_atual;
                    ex           = tributario_Class.Insert_Carta_Cobranca_Exclusao(regE);
                    if (ex != null)
                    {
                        ErrorBox eBox = new ErrorBox("Atenção", ex.Message, ex);
                        eBox.ShowDialog();
                    }
                    goto Proximo;
                }

                //***** GERA CÓDIGO DE BARRAS BOLETO REGISTRADO*****
                DateTime _data_base        = Convert.ToDateTime("07/10/1997");
                TimeSpan ts                = _data_vencimento - _data_base;
                int      _fator_vencto     = ts.Days;
                string   _quinto_grupo     = String.Format("{0:D4}", _fator_vencto);
                string   _valor_boleto_str = string.Format("{0:0.00}", _valor_boleto);
                _quinto_grupo += string.Format("{0:D10}", Convert.ToInt64(gtiCore.RetornaNumero(_valor_boleto_str)));
                string _barra = "0019" + _quinto_grupo + String.Format("{0:D13}", Convert.ToInt32(_convenio));
                _barra += String.Format("{0:D10}", _numero_documento) + "17";
                string _campo1    = "0019" + _barra.Substring(19, 5);
                string _digitavel = _campo1 + gtiCore.Calculo_DV10(_campo1).ToString();
                string _campo2    = _barra.Substring(23, 10);
                _digitavel += _campo2 + gtiCore.Calculo_DV10(_campo2).ToString();
                string _campo3 = _barra.Substring(33, 10);
                _digitavel += _campo3 + gtiCore.Calculo_DV10(_campo3).ToString();
                string _campo5 = _quinto_grupo;
                string _campo4 = gtiCore.Calculo_DV11(_barra).ToString();
                _digitavel += _campo4 + _campo5;
                _barra      = _barra.Substring(0, 4) + _campo4 + _barra.Substring(4, _barra.Length - 4);
                //**Resultado final**
                string _linha_digitavel = _digitavel.Substring(0, 5) + "." + _digitavel.Substring(5, 5) + " " + _digitavel.Substring(10, 5) + "." + _digitavel.Substring(15, 6) + " ";
                _linha_digitavel += _digitavel.Substring(21, 5) + "." + _digitavel.Substring(26, 6) + " " + _digitavel.Substring(32, 1) + " " + gtiCore.StringRight(_digitavel, 14);
                string _codigo_barra = gtiCore.Gera2of5Str(_barra);
                //**************************************************
                //_descricao_lancamento += ", AR-DIGITAL";
                //if (_valor_honorario > 0)
                //    _descricao_lancamento += ", DESPESAS JUDICIAIS";

                //****** GRAVA DOCUMENTO ****************
                Numdocumento RegDoc = new Numdocumento {
                    numdocumento  = _numero_documento,
                    Datadocumento = DateTime.Now,
                    Valorguia     = _valor_boleto,
                    Emissor       = "GTI/CCob",
                    Registrado    = true,
                    Percisencao   = 100,
                    Userid        = 508
                };
                ex = tributario_Class.Insert_Documento_Existente(RegDoc);

                //****** GRAVA HEADER **************
                Carta_cobranca Reg = new Carta_cobranca();
                Reg.Remessa          = _remessa;
                Reg.Codigo           = _codigo_atual;
                Reg.Parcela          = 1;
                Reg.Total_Parcela    = 1;
                Reg.Parcela_Label    = Reg.Parcela.ToString("00") + "/" + Reg.Total_Parcela.ToString("00");
                Reg.Nome             = _nome.Length > 50 ? _nome.Substring(0, 50) : _nome;
                Reg.Cpf_cnpj         = _cpfcnpj;
                Reg.Endereco         = _endereco;
                Reg.Bairro           = _bairro ?? "";
                Reg.Cidade           = _cidade ?? "";
                Reg.Cep              = _cep ?? "";
                Reg.Endereco_Entrega = _endereco_entrega;
                Reg.Bairro_Entrega   = _bairro_entrega ?? "";
                Reg.Cidade_Entrega   = _cidade_entrega ?? "";
                Reg.Cep_Entrega      = _cep_entrega;
                Reg.Data_Vencimento  = _data_vencimento;
                Reg.Data_Documento   = DateTime.Now;
                Reg.Inscricao        = _inscricao;
                Reg.Lote             = _lote.Length > 15 ? _lote.Substring(0, 15) : _lote;
                Reg.Quadra           = _quadra.Length > 15 ? _quadra.Substring(0, 15) : _quadra;
                Reg.Atividade        = _atividade.Length > 50 ? _atividade.Substring(0, 50) : _atividade;
                Reg.Numero_Documento = _numero_documento;
                Reg.Nosso_Numero     = _convenio + _numero_documento.ToString("0000000000");
                Reg.Valor_Boleto     = _valor_boleto;
                Reg.Digitavel        = _linha_digitavel;
                Reg.Codbarra         = _codigo_barra;
                Reg.Cep_entrega_cod  = _cep_numero;
                Reg.Lancamento       = _descricao_lancamento;

                ex = tributario_Class.Insert_Carta_Cobranca(Reg);
                if (ex != null)
                {
                    ErrorBox eBox = new ErrorBox("Atenção", ex.Message, ex);
                    eBox.ShowDialog();
                }

                //****** GRAVA DETALHE**************

                foreach (SpExtrato_carta item in Lista_Final)
                {
                    Carta_cobranca_detalhe RegDet2 = new Carta_cobranca_detalhe {
                        Codigo    = _codigo_atual,
                        Remessa   = _remessa,
                        Ano       = item.Anoexercicio,
                        Parcela   = 1,
                        Principal = item.Valortributo,
                        Juros     = item.Valorjuros,
                        Multa     = item.Valormulta,
                        Correcao  = item.Valorcorrecao,
                        Total     = item.Valortotal,
                        Ordem     = 1
                    };
                    ex = tributario_Class.Insert_Carta_Cobranca_Detalhe(RegDet2);
                    if (ex != null)
                    {
                        ErrorBox eBox = new ErrorBox("Atenção", ex.Message, ex);
                        eBox.ShowDialog();
                    }
                }

                //****** GRAVA PARCELA x DOCUMENTO*******

                foreach (SpExtrato_carta item in Lista_Resumo)
                {
                    Parceladocumento RegParc = new Parceladocumento {
                        Codreduzido    = item.Codreduzido,
                        Anoexercicio   = item.Anoexercicio,
                        Codlancamento  = item.Codlancamento,
                        Seqlancamento  = item.Seqlancamento,
                        Numparcela     = Convert.ToByte(item.Numparcela),
                        Codcomplemento = item.Codcomplemento,
                        Numdocumento   = _numero_documento,
                        Plano          = 39
                    };

                    ex = tributario_Class.Insert_Parcela_Documento(RegParc);
                    if (ex != null)
                    {
                        ErrorBox eBox = new ErrorBox("Atenção", ex.Message, ex);
                        eBox.ShowDialog();
                    }
                }

                //********* GRAVA A.R. ***********
                //short _maxSeqAR = tributario_Class.Retorna_Ultima_Seq_AR(_codigo_atual, DateTime.Now.Year);
                //_maxSeqAR++;

                //Debitoparcela regParcelaAR = new Debitoparcela {
                //    Codreduzido = _codigo_atual,
                //    Anoexercicio = Convert.ToInt16(DateTime.Now.Year),
                //    Codlancamento = 78,
                //    Seqlancamento = _maxSeqAR,
                //    Numparcela = 1,
                //    Codcomplemento = 0,
                //    Statuslanc = 3,
                //    Datadebase = DateTime.Now,
                //    Datavencimento = _data_vencimento,
                //    Userid = 508
                //};
                //ex = tributario_Class.Insert_Debito_Parcela(regParcelaAR);

                //Debitotributo regTributoAR = new Debitotributo {
                //    Codreduzido = _codigo_atual,
                //    Anoexercicio = Convert.ToInt16(DateTime.Now.Year),
                //    Codlancamento = 78,
                //    Seqlancamento = _maxSeqAR,
                //    Numparcela = 1,
                //    Codcomplemento = 0,
                //    Codtributo = 667,
                //    Valortributo = _valor_AR
                //};
                //ex = tributario_Class.Insert_Debito_Tributo(regTributoAR);


                //*************************************


                //********* GRAVA HONORÁRIO ***********
                if (_valor_honorario > 0)
                {
                    short _maxSeq = tributario_Class.Retorna_Ultima_Seq_Honorario(_codigo_atual, DateTime.Now.Year);
                    _maxSeq++;

                    Debitoparcela regParcela = new Debitoparcela {
                        Codreduzido    = _codigo_atual,
                        Anoexercicio   = Convert.ToInt16(DateTime.Now.Year),
                        Codlancamento  = 41,
                        Seqlancamento  = _maxSeq,
                        Numparcela     = 1,
                        Codcomplemento = 0,
                        Statuslanc     = 3,
                        Datadebase     = DateTime.Now,
                        Datavencimento = _data_vencimento,
                        Userid         = 236
                    };
                    ex = tributario_Class.Insert_Debito_Parcela(regParcela);

                    Debitotributo regTributo = new Debitotributo {
                        Codreduzido    = _codigo_atual,
                        Anoexercicio   = Convert.ToInt16(DateTime.Now.Year),
                        Codlancamento  = 41,
                        Seqlancamento  = _maxSeq,
                        Numparcela     = 1,
                        Codcomplemento = 0,
                        Codtributo     = 90,
                        Valortributo   = _valor_honorario
                    };
                    ex = tributario_Class.Insert_Debito_Tributo(regTributo);

                    Parceladocumento RegParc = new Parceladocumento {
                        Codreduzido    = _codigo_atual,
                        Anoexercicio   = Convert.ToInt16(DateTime.Now.Year),
                        Codlancamento  = 41,
                        Seqlancamento  = _maxSeq,
                        Numparcela     = 1,
                        Codcomplemento = 0,
                        Numdocumento   = _numero_documento,
                        Plano          = 39
                    };
                    ex = tributario_Class.Insert_Parcela_Documento(RegParc);
                }
                //*************************************
                Carta_cobranca_detalhe RegDet = new Carta_cobranca_detalhe {
                    Codigo    = _codigo_atual,
                    Remessa   = _remessa,
                    Ano       = 1,
                    Parcela   = 1,
                    Principal = _valor_honorario,
                    Juros     = 0,
                    Multa     = 0,
                    Correcao  = 0,
                    Total     = _valor_honorario,
                    Ordem     = 2
                };
                if (_valor_honorario > 0)
                {
                    ex = tributario_Class.Insert_Carta_Cobranca_Detalhe(RegDet);
                }
                _numero_documento++;
                Proximo :;
                _pos++;
            }



            PBar.Value = 100;
            return;
        }
        private void Grava_Dados()
        {
            Sistema_bll    sistema_Class    = new Sistema_bll(_connection);
            Tributario_bll tributario_Class = new Tributario_bll(_connection);

            GTI_Models.modelCore.TipoCadastro _tipo_cadastro = sistema_Class.Tipo_Cadastro(_codigo);

            Contribuinte_Header_Struct _header = sistema_Class.Contribuinte_Header(_codigo);

            string _tipo_divida = _tipo_cadastro == GTI_Models.modelCore.TipoCadastro.Imovel ? "Imobiliário" :
                                  _tipo_cadastro == GTI_Models.modelCore.TipoCadastro.Cidadao ? "Taxas Diversas" : "Mobiliário";
            int _certidao = tributario_Class.Retorna_Ultima_Certidao_Livro(_numero_livro);
            int _pagina   = _certidao;

            Cdas regCda = new Cdas()
            {
                Iddevedor    = _codigo.ToString(),
                Setordevedor = _tipo_divida,
                Dtinscricao  = Convert.ToDateTime(DataInscricaoText.Text),
                Nrocertidao  = _certidao,
                Nrolivro     = _numero_livro,
                Nrofolha     = _pagina,
                Dtgeracao    = DateTime.Now
            };
            Integrativa_bll integrativa_Class = new Integrativa_bll(_connection_integrativa);
            int             _idCda            = integrativa_Class.Insert_Integrativa_Cda(regCda);

            if (_tipo_cadastro != GTI_Models.modelCore.TipoCadastro.Cidadao)
            {
                Cadastro regCadastro = new Cadastro()
                {
                    Idcda              = _idCda,
                    Setordevedor       = _tipo_divida,
                    Crc                = _codigo,
                    Nome               = _header.Nome,
                    Inscricao          = _header.Inscricao,
                    Cpfcnpj            = _header.Cpf_cnpj,
                    Rginscrestadual    = _header.Rg,
                    Localcep           = _header.Cep,
                    Localendereco      = _header.Endereco,
                    Localnumero        = _header.Numero,
                    Localcomplemento   = _header.Complemento,
                    Localbairro        = _header.Nome_bairro,
                    Localcidade        = _header.Nome_cidade,
                    LocalEstado        = _header.Nome_uf,
                    Quadra             = _header.Quadra_original,
                    Lote               = _header.Lote_original,
                    Entregacep         = _header.Cep_entrega,
                    Entregaendereco    = _header.Endereco_entrega,
                    Entreganumero      = _header.Numero_entrega,
                    Entregabairro      = _header.Nome_bairro_entrega,
                    Entregacomplemento = _header.Complemento_entrega,
                    Entregacidade      = _header.Nome_cidade_entrega,
                    Entregaestado      = _header.Nome_uf_entrega,
                    Dtgeracao          = DateTime.Now
                };
                integrativa_Class = new Integrativa_bll(_connection_integrativa);
                int _idCadastro = integrativa_Class.Insert_Integrativa_Cadastro(regCadastro);
            }
            else
            {
                Partes regPartes = new Partes()
                {
                    Idcda           = _idCda,
                    Tipo            = "Principal",
                    Crc             = _codigo,
                    Nome            = _header.Nome,
                    Cpfcnpj         = _header.Cpf_cnpj,
                    Rginscrestadual = _header.Rg,
                    Cep             = _header.Cep,
                    Endereco        = _header.Endereco,
                    Numero          = _header.Numero,
                    Complemento     = _header.Complemento,
                    Bairro          = _header.Nome_bairro,
                    Cidade          = _header.Nome_cidade,
                    Estado          = _header.Nome_uf,
                    Dtgeracao       = DateTime.Now
                };
                integrativa_Class = new Integrativa_bll(_connection_integrativa);
                int _idPartes = integrativa_Class.Insert_Integrativa_Partes(regPartes);
            }
            Imovel_bll  imovel_Class  = new Imovel_bll(_connection);
            Cidadao_bll cidadao_Class = new Cidadao_bll(_connection);
            Empresa_bll empresa_class = new Empresa_bll(_connection);

            if (_tipo_cadastro == GTI_Models.modelCore.TipoCadastro.Imovel)
            {
                List <ProprietarioStruct> ListaPropImovel = imovel_Class.Lista_Proprietario(_codigo);
                foreach (ProprietarioStruct item in ListaPropImovel)
                {
                    CidadaoStruct _cidadao  = cidadao_Class.Dados_Cidadao(item.Codigo);
                    Partes        regPartes = new Partes()
                    {
                        Idcda           = _idCda,
                        Tipo            = item.Principal ? "Principal" : "Compromissário",
                        Crc             = _codigo,
                        Nome            = _cidadao.Nome,
                        Cpfcnpj         = string.IsNullOrWhiteSpace(_cidadao.Cnpj) ? _cidadao.Cpf : _cidadao.Cnpj,
                        Rginscrestadual = _cidadao.Rg,
                        Dtgeracao       = DateTime.Now
                    };
                    if (_cidadao.EtiquetaR == "C")
                    {
                        regPartes.Cep         = _cidadao.CepC.ToString();
                        regPartes.Endereco    = _cidadao.EnderecoC;
                        regPartes.Numero      = _cidadao.NumeroC;
                        regPartes.Complemento = _cidadao.ComplementoC;
                        regPartes.Bairro      = _cidadao.NomeBairroC;
                        regPartes.Cidade      = _cidadao.NomeCidadeC;
                        regPartes.Estado      = _cidadao.UfC;
                    }
                    else
                    {
                        regPartes.Cep         = _cidadao.CepR.ToString();
                        regPartes.Endereco    = _cidadao.EnderecoR;
                        regPartes.Numero      = _cidadao.NumeroR;
                        regPartes.Complemento = _cidadao.ComplementoR;
                        regPartes.Bairro      = _cidadao.NomeBairroR;
                        regPartes.Cidade      = _cidadao.NomeCidadeR;
                        regPartes.Estado      = _cidadao.UfR;
                    }
                    integrativa_Class = new Integrativa_bll(_connection_integrativa);
                    int _idPartes = integrativa_Class.Insert_Integrativa_Partes(regPartes);
                }
            }
            else
            {
                if (_tipo_cadastro == GTI_Models.modelCore.TipoCadastro.Empresa)
                {
                    List <CidadaoStruct> ListaSocio = empresa_class.ListaSocio(_codigo);
                    foreach (CidadaoStruct item in ListaSocio)
                    {
                        CidadaoStruct _cidadao  = cidadao_Class.Dados_Cidadao(item.Codigo);
                        Partes        regPartes = new Partes()
                        {
                            Idcda           = _idCda,
                            Tipo            = "Sócio",
                            Crc             = _codigo,
                            Nome            = _cidadao.Nome,
                            Cpfcnpj         = string.IsNullOrWhiteSpace(_cidadao.Cnpj) ? _cidadao.Cpf : _cidadao.Cnpj,
                            Rginscrestadual = _cidadao.Rg,
                            Dtgeracao       = DateTime.Now
                        };
                        if (_cidadao.EtiquetaR == "C")
                        {
                            regPartes.Cep         = _cidadao.CepC.ToString();
                            regPartes.Endereco    = _cidadao.EnderecoC;
                            regPartes.Numero      = _cidadao.NumeroC;
                            regPartes.Complemento = _cidadao.ComplementoC;
                            regPartes.Bairro      = _cidadao.NomeBairroC;
                            regPartes.Cidade      = _cidadao.NomeCidadeC;
                            regPartes.Estado      = _cidadao.UfC;
                        }
                        else
                        {
                            regPartes.Cep         = _cidadao.CepR.ToString();
                            regPartes.Endereco    = _cidadao.EnderecoR;
                            regPartes.Numero      = _cidadao.NumeroR;
                            regPartes.Complemento = _cidadao.ComplementoR;
                            regPartes.Bairro      = _cidadao.NomeBairroR;
                            regPartes.Cidade      = _cidadao.NomeCidadeR;
                            regPartes.Estado      = _cidadao.UfR;
                        }
                        integrativa_Class = new Integrativa_bll(_connection_integrativa);
                        int _idPartes = integrativa_Class.Insert_Integrativa_Partes(regPartes);
                    }
                }
            }

            foreach (ListViewItem linha in MainListView.Items)
            {
                short _ano   = Convert.ToInt16(linha.Text);
                short _lanc  = Convert.ToInt16(linha.SubItems[1].Text.Substring(0, 2));
                short _seq   = Convert.ToInt16(linha.SubItems[2].Text);
                byte  _parc  = Convert.ToByte(linha.SubItems[3].Text);
                byte  _compl = Convert.ToByte(linha.SubItems[4].Text);

                Exception ex = tributario_Class.Inscrever_Divida_Ativa(_codigo, _ano, _lanc, _seq, _parc, _compl, _numero_livro, _pagina, _certidao, Convert.ToDateTime(DataInscricaoText.Text));

                foreach (SpExtrato item in _listaTributo)
                {
                    if (item.Anoexercicio == _ano && item.Codlancamento == _lanc && item.Seqlancamento == _seq && item.Numparcela == _parc && item.Codcomplemento == _compl)
                    {
                        Cdadebitos regCdaDebito = new Cdadebitos()
                        {
                            Idcda        = _idCda,
                            Codtributo   = item.Codtributo,
                            Tributo      = item.Abrevtributo,
                            Exercicio    = _ano,
                            Lancamento   = _lanc,
                            Seq          = _seq,
                            Nroparcela   = _parc,
                            Complparcela = _compl,
                            Dtvencimento = item.Datavencimento,
                            Vlroriginal  = item.Valortributo,
                            Vlrmultas    = item.Valormulta,
                            Vlrjuros     = item.Valorjuros,
                            Vlrcorrecao  = item.Valorcorrecao,
                            Dtgeracao    = DateTime.Now
                        };
                        int _IdCdaDebito = integrativa_Class.Insert_Integrativa_CdaDebito(regCdaDebito);
                    }
                }
            }
        }
Пример #10
0
        private void PrintButton_Click(object sender, EventArgs e)
        {
//            goto PrintReport;
//          return;
            Imovel_bll  imovel_Class  = new Imovel_bll(_connection);
            Sistema_bll sistema_Class = new Sistema_bll(_connection);

            List <int> _lista_codigos = imovel_Class.Lista_Comunicado_Isencao();
            int        _pos = 1, _total = _lista_codigos.Count;

            foreach (int _codigo in _lista_codigos)
            {
                if (_pos % 10 == 0)
                {
                    PBar.Value = _pos * 100 / _total;
                    PBar.Update();
                    Refresh();
                    Application.DoEvents();
                }

                //Dados contribuinte
                string _nome = "", _cpfcnpj = "", _endereco = "", _bairro = "", _cidade = "", _cep = "", _inscricao = "", _lote = "", _quadra = "";
                string _complemento = "", _complemento_entrega = "", _endereco_entrega = "", _bairro_entrega = "", _cidade_entrega = "", _cep_entrega = "";

                Contribuinte_Header_Struct dados = sistema_Class.Contribuinte_Header(_codigo);
                if (dados == null)
                {
                    goto Proximo;
                }

                _nome        = dados.Nome;
                _cpfcnpj     = dados.Cpf_cnpj;
                _inscricao   = dados.Inscricao;
                _complemento = dados.Complemento == "" ? "" : " " + dados.Complemento;
                _endereco    = dados.Endereco + ", " + dados.Numero.ToString() + _complemento;
                _bairro      = dados.Nome_bairro;
                _cidade      = dados.Nome_cidade + "/" + dados.Nome_uf;
                _cep         = dados.Cep;
                _lote        = dados.Lote_original;
                _quadra      = dados.Quadra_original;

                //Endereço de Entrega
                EnderecoStruct endImovel         = imovel_Class.Dados_Endereco(_codigo, dados.TipoEndereco);
                _complemento_entrega = endImovel.Complemento == "" ? "" : " " + endImovel.Complemento;
                _endereco_entrega    = endImovel.Endereco + ", " + endImovel.Numero.ToString() + _complemento_entrega;
                _bairro_entrega      = endImovel.NomeBairro;
                _cidade_entrega      = endImovel.NomeCidade + "/" + endImovel.UF;
                _cep_entrega         = endImovel.Cep;

                string _cep_str    = gtiCore.RetornaNumero(_cep_entrega);
                int    _cep_numero = Convert.ToInt32(_cep_str);
                _cep_entrega = _cep_numero.ToString("00000-000");

                Comunicado_isencao Reg = new Comunicado_isencao {
                    Remessa          = _remessa,
                    Codigo           = _codigo,
                    Nome             = _nome.Length > 50 ? _nome.Substring(0, 50) : _nome,
                    Cpf_cnpj         = _cpfcnpj,
                    Endereco         = _endereco,
                    Bairro           = _bairro ?? "",
                    Cidade           = _cidade ?? "",
                    Cep              = _cep ?? "",
                    Endereco_entrega = _endereco_entrega,
                    Bairro_entrega   = _bairro_entrega ?? "",
                    Cidade_entrega   = _cidade_entrega ?? "",
                    Cep_entrega      = _cep_entrega,
                    Data_documento   = DateTime.Now,
                    Inscricao        = _inscricao,
                    Lote             = _lote.Length > 15 ? _lote.Substring(0, 15) : _lote,
                    Quadra           = _quadra.Length > 15 ? _quadra.Substring(0, 15) : _quadra,
                    Cep_entrega_cod  = _cep_numero
                };

                Exception ex = imovel_Class.Insert_Comunicado_Isencao(Reg);
                if (ex != null)
                {
                    ErrorBox eBox = new ErrorBox("Atenção", ex.Message, ex);
                    eBox.ShowDialog();
                }
                _pos++;
                Proximo :;
            }
            PBar.Value = 100;
            //ReportCR fRpt = new ReportCR("Comunicado_Isencao", null, null, _remessa);
            //fRpt.ShowDialog();
        }