Exemple #1
0
 public bool PontoDeVendaAtualizar(PontoDeVendaController ponto)
 {
     try
     {
         if (!new PontoDeVendaDao().PontoDeVendaAtualizar(ponto))
         {
             return(false);
         }
         var logC = new LogController
         {
             TB012_Id        = 0,
             TB011_Id        = ponto.Tb002AlteradoPorI,
             TB000_IdTabela  = 26,
             TB000_Tabela    = "Anotações",
             TB000_Data      = DateTime.Now,
             TB000_Descricao = string.Format(MensagensLog.L0068, ponto.TB002_id)
         };
         new LogNegocios().LogInsert(logC);
         return(true);
     }
     catch (Exception ex)
     {
         // ReSharper disable once PossibleIntendedRethrow
         throw ex;
     }
 }
        public PontoDeVendaController PontoDeVenda(long tb002Id)
        {
            var retorno = new PontoDeVendaController {
                Empresa = new EmpresaController()
            };

            try
            {
                var sSql = new StringBuilder();

                sSql.Append("SELECT * ");
                sSql.Append(" FROM dbo.TB002_PontosDeVenda ");
                sSql.Append(" WHERE ");
                sSql.Append(" TB002_id = ");
                sSql.Append(tb002Id);

                var con     = new SqlConnection(ParametrosDAO.StringConexao);
                var command = new SqlCommand(sSql.ToString(), con);
                command.CommandTimeout = 300;

                con.Open();
                var reader = command.ExecuteReader();

                while (reader.Read())
                {
                    retorno.TB002_id                            = Convert.ToInt64(reader["TB002_id"]);
                    retorno.Empresa.TB001_id                    = Convert.ToInt64(reader["TB001_id"]);
                    retorno.TB002_Ponto                         = reader["TB002_Ponto"].ToString().TrimEnd();
                    retorno.Tb002StatusS                        = reader["TB002_Status"].ToString().TrimEnd();
                    retorno.Tb002FamiliarAdesaoValor            = Convert.ToDouble(reader["TB002_FamiliarAdesaoValor"]);
                    retorno.Tb002FamiliarAdesaoAliquota         = Convert.ToDouble(reader["TB002_FamiliarAdesaoAliquota"]);
                    retorno.Tb002FamiliarMensalidadeValor       = Convert.ToDouble(reader["TB002_FamiliarMensalidadeValor"]);
                    retorno.Tb002FamiliarMensalidadeAliquota    = Convert.ToDouble(reader["TB002_FamiliarMensalidadeAliquota"]);
                    retorno.Tb002FamiliarAdesaoFormaS           = reader["TB002_FamiliarAdesaoForma"].ToString();
                    retorno.Tb002FamiliarMensalidadeFormaS      = reader["TB002_FamiliarMensalidadeForma"].ToString();
                    retorno.Tb002ParceiroAdesaoFormaS           = reader["TB002_ParceiroAdesaoForma"].ToString();
                    retorno.Tb002ParceiroAdesaoValor            = Convert.ToDouble(reader["TB002_ParceiroAdesaoValor"]);
                    retorno.Tb002ParceiroAdesaoAliquota         = Convert.ToDouble(reader["TB002_ParceiroAdesaoAliquota"]);
                    retorno.Tb002ParceiroMensalidadeFormaS      = reader["TB002_ParceiroMensalidadeForma"].ToString();
                    retorno.Tb002ParceiroMensalidadeValor       = Convert.ToDouble(reader["TB002_ParceiroMensalidadeValor"]);
                    retorno.Tb002ParceiroMensalidadeAliquota    = Convert.ToDouble(reader["TB002_ParceiroMensalidadeAliquota"]);
                    retorno.Tb002CorporativoAdesaoFormaS        = reader["TB002_CorporativoAdesaoForma"].ToString();
                    retorno.Tb002CorporativoAdesaoValor         = Convert.ToDouble(reader["TB002_CorporativoAdesaoValor"]);
                    retorno.Tb002CorporativoAdesaoAliquota      = Convert.ToDouble(reader["TB002_CorporativoAdesaoAliquota"]);
                    retorno.Tb002CorporativoMensalidadeFormaS   = reader["TB002_CorporativoMensalidadeForma"].ToString();
                    retorno.Tb002CorporativoMensalidadeValor    = Convert.ToDouble(reader["TB002_CorporativoMensalidadeValor"]);
                    retorno.Tb002CorporativoMensalidadeAliquota = Convert.ToDouble(reader["TB002_CorporativoMensalidadeAliquota"]);
                }

                con.Close();
            }
            catch (Exception ex)
            {
                // ReSharper disable once PossibleIntendedRethrow
                throw ex;
            }
            return(retorno);
        }
        public ContratosController ContratoParceiroSelect(long tb012Id)
        {
            ContratosController    retorno         = new ContratosController();
            PontoDeVendaController objPontoDeVenda = new PontoDeVendaController();
            PessoaController       objTitular      = new PessoaController();

            retorno.PontoDeVenda      = objPontoDeVenda;
            retorno.Titular           = objTitular;
            retorno.Unidade           = new UnidadeController();
            retorno.Unidade.Pais      = new PaisController();
            retorno.Unidade.Estado    = new EstadoController();
            retorno.Unidade.Municipio = new MunicipioController();

            try
            {
                SqlConnection con  = new SqlConnection(ParametrosDAO.StringConexao);
                StringBuilder sSql = new StringBuilder();

                sSql.Append(" SELECT dbo.TB012_Contratos.TB012_CicloContrato, dbo.TB012_Contratos.TB012_DiaVencimento, dbo.TB012_Contratos.TB012_id, dbo.TB012_Contratos.TB012_TipoContrato, dbo.TB012_Contratos.TB002_id, dbo.TB012_Contratos.TB012_Inicio, dbo.TB012_Contratos.TB012_Fim, ");
                sSql.Append(" dbo.TB012_Contratos.TB012_AceiteContrato, dbo.TB012_Contratos.TB012_DataAceiteContrato, dbo.TB012_Contratos.TB012_CadastradoEm, dbo.TB012_Contratos.TB012_CadastradorPor, ");
                sSql.Append(" dbo.TB012_Contratos.TB012_AlteradoEm, dbo.TB012_Contratos.TB012_AlteradoPor, dbo.TB012_Contratos.TB004_Cep AS CEPContrato, TB006_Municipio_Contrato.TB006_id AS MunicipioContrato, ");
                sSql.Append(" TB006_Municipio_Contrato.TB006_Municipio, dbo.TB005_Estado.TB005_Id, dbo.TB005_Estado.TB005_Estado, dbo.TB003_Pais.TB003_id, dbo.TB003_Pais.TB003_Pais, ");
                sSql.Append(" dbo.TB012_Contratos.TB012_Logradouro, dbo.TB012_Contratos.TB012_Numero, dbo.TB012_Contratos.TB012_Bairro, dbo.TB012_Contratos.TB012_Complemento, ");
                sSql.Append(" dbo.TB012_Contratos.TB012_InformacoesPortal, dbo.TB012_Contratos.TB012_ContratoCancelarMotivo, dbo.TB012_Contratos.TB012_ContratoCancelarDescricao, dbo.TB012_Contratos.TB012_Status, ");
                sSql.Append(" dbo.TB012_Contratos.TB013_id,   dbo.TB020_Unidades.TB020_CategoriaExibicao,                   dbo.TB020_Unidades.TB020_Matriz, dbo.TB020_Unidades.TB020_Desconto, dbo.TB020_Unidades.TB006_id, dbo.TB006_Municipio.TB006_id AS Unidade_TB006_id, ");
                sSql.Append(" TB005_Estado_1.TB005_Id AS Unidade_TB005_Id, TB005_Estado_1.TB003_Id AS Unidade_TB003_Id, dbo.TB020_Unidades.TB020_TipoPessoa");
                sSql.Append(" FROM dbo.TB006_Municipio AS TB006_Municipio_Contrato INNER JOIN");
                sSql.Append(" dbo.TB012_Contratos ON TB006_Municipio_Contrato.TB006_id = dbo.TB012_Contratos.TB006_id INNER JOIN");
                sSql.Append(" dbo.TB005_Estado ON TB006_Municipio_Contrato.TB005_Id = dbo.TB005_Estado.TB005_Id INNER JOIN");
                sSql.Append(" dbo.TB003_Pais ON dbo.TB005_Estado.TB003_Id = dbo.TB003_Pais.TB003_id INNER JOIN");
                sSql.Append(" dbo.TB020_Unidades ON dbo.TB012_Contratos.TB012_id = dbo.TB020_Unidades.TB012_id INNER JOIN");
                sSql.Append(" dbo.TB006_Municipio ON dbo.TB020_Unidades.TB006_id = dbo.TB006_Municipio.TB006_id INNER JOIN");
                sSql.Append(" dbo.TB005_Estado AS TB005_Estado_1 ON dbo.TB006_Municipio.TB005_Id = TB005_Estado_1.TB005_Id");
                sSql.Append(" WHERE dbo.TB012_Contratos.TB012_id = ");
                sSql.Append(tb012Id);
                sSql.Append("  AND dbo.TB020_Unidades.TB020_Matriz = 1");

                SqlCommand command = new SqlCommand(sSql.ToString(), con);
                command.CommandTimeout = 300;

                con.Open();
                SqlDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    retorno.TB012_Id            = Convert.ToInt64(reader["TB012_Id"]);
                    retorno.TB012_Inicio        = Convert.ToDateTime(reader["TB012_Inicio"]);
                    retorno.TB012_Fim           = Convert.ToDateTime(reader["TB012_Fim"]);
                    retorno.TB012_StatusS       = reader["TB012_Status"].ToString();
                    retorno.TB004_Cep           = reader["CEPContrato"].ToString();
                    retorno.TB012_Logradouro    = reader["TB012_Logradouro"].ToString();
                    retorno.TB012_Numero        = reader["TB012_Numero"].ToString();
                    retorno.TB012_Bairro        = reader["TB012_Bairro"].ToString();
                    retorno.TB012_Complemento   = reader["TB012_Complemento"].ToString();
                    retorno.TB012_DiaVencimento = reader["TB012_DiaVencimento"] is DBNull ? 5 : Convert.ToInt16(reader["TB012_DiaVencimento"]);
                    retorno.TB012_CicloContrato = reader["TB012_CicloContrato"] is DBNull?retorno.TB012_Inicio.Month.ToString() + retorno.TB012_Inicio.Year.ToString() : reader["TB012_CicloContrato"].ToString();

                    var bojPontoDeVenda = new PontoDeVendaController();
                    retorno.PontoDeVenda          = bojPontoDeVenda;
                    retorno.PontoDeVenda.TB002_id = Convert.ToInt64(reader["TB002_id"]);
                    var objPais = new PaisController();
                    retorno.Pais          = objPais;
                    retorno.Pais.TB003_id = Convert.ToInt64(reader["TB003_id"]);
                    var objEstado = new EstadoController();
                    retorno.Estado          = objEstado;
                    retorno.Estado.TB005_Id = Convert.ToInt64(reader["TB005_Id"]);

                    var objMunicipio = new MunicipioController();
                    retorno.Municipio          = objMunicipio;
                    retorno.Municipio.TB006_id = Convert.ToInt64(reader["MunicipioContrato"]);
                    retorno.Titular            = new PessoaController {
                        TB013_id = Convert.ToInt64(reader["TB013_id"])
                    };

                    retorno.Unidade.TB020_TipoPessoa        = Convert.ToInt16(reader["TB020_TipoPessoa"]);
                    retorno.Unidade.Pais.TB003_id           = Convert.ToInt64(reader["Unidade_TB003_Id"]);
                    retorno.Unidade.Estado.TB005_Id         = Convert.ToInt64(reader["Unidade_TB005_Id"]);
                    retorno.Unidade.Municipio.TB006_id      = Convert.ToInt64(reader["Unidade_TB006_id"]);
                    retorno.Unidade.TB020_CategoriaExibicao = reader["TB020_CategoriaExibicao"].ToString().TrimEnd();
                }
                con.Close();
            }
            catch (Exception ex)
            {
                // ReSharper disable once PossibleIntendedRethrow
                throw ex;
            }
            return(retorno);
        }
        private void RenovarPlanoFamiliar()
        {
            try
            {
                txtMensagens.Focus();
                txtMensagens.Text = "Iniciando processo de renovação.";
                for (int y = 0; y < dgwLista.RowCount; y++)
                {
                    if (Convert.ToBoolean(dgwLista.Rows[y].Cells["Renovar"].Value) == true)
                    {
                        List <ParcelaController> Parcelas = new List <ParcelaController>();

                        /*Dados da Ultima Parcela*/
                        ParcelaNegocios   Parcela_N     = new ParcelaNegocios();
                        ParcelaController UltimaParcela = new ParcelaController();
                        UltimaParcela = Parcela_N.UltimaParcelaRenovacao(Convert.ToInt64(dgwLista.Rows[y].Cells["TB012_id"].Value.ToString()));


                        /****************************************************/
                        try
                        {
                            for (int i = 0; i < 12; i++)
                            {
                                ParcelaController Parcela  = new ParcelaController();
                                PlanoController   objPlano = new PlanoController();

                                Parcela.Plano = objPlano;

                                if (cnkExportarArquivo.Checked == true)
                                {
                                    Parcela.TB016_LoteExportacao = 0;
                                }
                                else
                                {
                                    Parcela.TB016_LoteExportacao = -1;
                                }



                                List <ParcelaProdutosController> ParcelaItens_L = new List <ParcelaProdutosController>();

                                //Recuperar Empresa Pelo Local de Cadastro
                                PontoDeVendaNegocios PontoDeVenda_N = new PontoDeVendaNegocios();

                                EmpresaNegocios Empresa_N = new EmpresaNegocios();



                                PontoDeVendaController Ponto = new PontoDeVendaNegocios().PontoDeVendaEmpresa(Convert.ToInt64(dgwLista.Rows[y].Cells["TB002_id"].Value.ToString()));



                                Parcela.Empresa = new EmpresaNegocios().Empresa(Ponto.Empresa.TB001_id);



                                PessoaNegocios Titular_N = new PessoaNegocios();

                                Parcela.Pessoa = Titular_N.pessoaSelectId(Convert.ToInt64(dgwLista.Rows[y].Cells["TB013_id"].Value.ToString()));

                                Parcela.Pessoa.Municipio.TB006_Municipio     = Parcela.Pessoa.Municipio.TB006_Municipio;
                                Parcela.Pessoa.Municipio.Estado.TB005_Estado = Parcela.Pessoa.Municipio.Estado.TB005_Estado;
                                Parcela.Pessoa.TB013_CPFCNPJ = dgwLista.Rows[y].Cells["TB013_CPFCNPJ"].Value.ToString().Replace(".", "").Replace(",", "").Replace("/", "").Replace("-", "").Trim();

                                Parcela.TB012_id      = Convert.ToInt64(dgwLista.Rows[y].Cells["TB012_id"].Value.ToString());
                                Parcela.TB016_Parcela = i + 1;
                                Parcela.TB016_Emissao = DateTime.Now;



                                Int32 Ano = Convert.ToInt32(cmbPesquisaCiclo.Text.Substring(cmbPesquisaCiclo.Text.Length - 4, 4));
                                Int16 Mes = Convert.ToInt16(cmbPesquisaCiclo.Text.Replace(Ano.ToString(), ""));
                                Ano++;
                                string Ciclo = Mes.ToString() + Ano.ToString();
                                Parcela.TB012_CicloContrato = Convert.ToInt32(Ciclo);

                                Parcela.TB016_FormaPagamentoS = "1";
                                Parcela.TB016_EmitirBoleto    = 1;


                                if (i == 0)
                                {
                                    Parcela.TB016_Vencimento = Convert.ToDateTime(UltimaParcela.TB016_Vencimento.Day + "/" + UltimaParcela.TB016_Vencimento.Month + "/" + UltimaParcela.TB016_Vencimento.Year).AddMonths(1);
                                }
                                else
                                {
                                    Parcela.TB016_Vencimento = Convert.ToDateTime(Parcelas[i - 1].TB016_Vencimento.Day + "/" + Parcelas[i - 1].TB016_Vencimento.Month + "/" + Parcelas[i - 1].TB016_Vencimento.Year).AddMonths(1);
                                }

                                Parcela.TB016_StatusS = "1";

                                //Filtrar Distribuição de major, menor e isento
                                PessoaNegocios Participantes_N = new PessoaNegocios();
                                List <CategoriaIdadeControler> Participantes_L = Participantes_N.MembrosAtivosDoConrato(Convert.ToInt64(dgwLista.Rows[y].Cells["TB012_id"].Value.ToString()), Parcela.TB016_Vencimento);

                                CategoriaIdadeNegocios  CategoriaIdade_N = new CategoriaIdadeNegocios();
                                CategoriaIdadeControler DadosFiltroIdade = CategoriaIdade_N.DistribuicaoIsencaoIdade(Participantes_L);
                                //Localiar Plano's conforme itens de filtro
                                PlanoController        filtro          = new PlanoController();
                                PontoDeVendaController ObjPontoDeVenda = new PontoDeVendaController();
                                filtro.PontoDeVenda = ObjPontoDeVenda;

                                filtro.TB015_Maiores         = DadosFiltroIdade.Maior;
                                filtro.TB015_Menores         = DadosFiltroIdade.Menor;
                                filtro.TB015_Isentos         = DadosFiltroIdade.Isento;
                                filtro.PontoDeVenda.TB002_id = Convert.ToInt64(Convert.ToInt64(dgwLista.Rows[y].Cells["TB002_id"].Value.ToString()));

                                PlanoNegocios Plano_N = new PlanoNegocios();
                                DataSet       Plano   = new DataSet();

                                Plano = Plano_N.PlanoVendaContezino(filtro, 1, 0, 1);

                                Parcela.Plano.TB015_Maiores = filtro.TB015_Maiores;
                                Parcela.Plano.TB015_Menores = filtro.TB015_Menores;
                                Parcela.Plano.TB015_Isentos = filtro.TB015_Isentos;

                                Parcela.Plano.TB015_IOF              = Convert.ToDouble(Plano.Tables[0].Rows[0]["TB015_IOF"].ToString());
                                Parcela.Plano.TB015_TipoVencimento   = Convert.ToInt16(Plano.Tables[0].Rows[0]["TB015_TipoVencimento"].ToString());
                                Parcela.Plano.TB015_EspecieDocumento = Plano.Tables[0].Rows[0]["TB015_EspecieDocumento"].ToString();
                                Parcela.Plano.TB015_BoletoDesc1      = Plano.Tables[0].Rows[0]["TB015_BoletoDesc1"].ToString();
                                Parcela.Plano.TB015_BoletoDesc2      = Plano.Tables[0].Rows[0]["TB015_BoletoDesc2"].ToString();
                                Parcela.Plano.TB015_BoletoDesc3      = Plano.Tables[0].Rows[0]["TB015_BoletoDesc3"].ToString();
                                Parcela.Plano.TB015_BoletoDesc4      = Plano.Tables[0].Rows[0]["TB015_BoletoDesc4"].ToString();
                                Parcela.Plano.TB015_BoletoDesc5      = Plano.Tables[0].Rows[0]["TB015_BoletoDesc5"].ToString();
                                Parcela.TB016_Juros         = Convert.ToDouble(Plano.Tables[0].Rows[0]["TB015_Juros"].ToString());
                                Parcela.TB016_Multa         = Convert.ToDouble(Plano.Tables[0].Rows[0]["TB015_Multa"].ToString());
                                Parcela.TB016_DiaVencimento = Parcela.TB016_Vencimento.Day;



                                //Incluir Planos Possiveis para cada Parcela
                                Parcela.TB016_Valor       = Convert.ToDouble(Plano.Tables[0].Rows[0]["ValorPlano"].ToString());
                                Parcela.TB015_id          = Convert.ToInt64(Plano.Tables[0].Rows[0]["TB015_id"].ToString());
                                Parcela.TB015_Plano       = Plano.Tables[0].Rows[0]["TB015_Plano"].ToString();
                                Parcela.TB016_Entrada     = 0;
                                Parcela.TB016_ValorAdesao = 0;

                                ProdutoNegocios          PlanoProduto_N = new ProdutoNegocios();
                                List <ProdutoController> PlanoProduto_L = PlanoProduto_N.ProdutoPlano(Parcela.TB015_id);

                                //*******************Inserir Parcela
                                foreach (ProdutoController Produto in PlanoProduto_L)
                                {
                                    ParcelaProdutosController ParcelaItem = new ParcelaProdutosController();
                                    ParcelaItem.TB017_id        = Produto.TB014_id;
                                    ParcelaItem.TB017_IdProteus = Produto.TB014_IdProtheus;
                                    ParcelaItem.TB017_Item      = Produto.TB014_Produto;
                                    ParcelaItem.TB017_Maior     = Produto.TB014_Maiores;
                                    ParcelaItem.TB017_Menor     = Produto.TB014_Menores;
                                    ParcelaItem.TB017_Isento    = Produto.TB014_Isentos;

                                    if (Produto.TB014_Menores > 0)
                                    {
                                        Produto.TB014_ValorUnitario = Produto.TB014_ValorUnitario * filtro.TB015_Menores;
                                        ParcelaItem.TB017_Item      = ParcelaItem.TB017_Item + "( * " + filtro.TB015_Menores + ")";
                                    }

                                    if (Produto.TB014_Isentos > 0)
                                    {
                                        ParcelaItem.TB017_Item      = ParcelaItem.TB017_Item + "( * " + filtro.TB015_Isentos + ")";
                                        Produto.TB014_ValorUnitario = Produto.TB014_ValorUnitario * filtro.TB015_Isentos;
                                    }

                                    ParcelaItem.TB017_ValorUnitario = Produto.TB014_ValorUnitario;
                                    if (Produto.TB014_ValorMultiplo == 1)
                                    {
                                        ParcelaItem.TB017_ValorUnitario = (ParcelaItem.TB017_ValorUnitario * ParcelaItem.TB017_Maior) + (ParcelaItem.TB017_ValorUnitario * ParcelaItem.TB017_Menor);
                                        Produto.TB014_ValorUnitario     = (Produto.TB014_ValorUnitario * ParcelaItem.TB017_Maior) + (Produto.TB014_ValorUnitario * ParcelaItem.TB017_Menor);
                                    }

                                    ParcelaItem.TB017_ValorDesconto = 0;

                                    ParcelaItem.TB017_ValorFinal = Produto.TB014_ValorUnitario - ParcelaItem.TB017_ValorDesconto;
                                    string[] vValor = ParcelaItem.TB017_ValorFinal.ToString().Split(',');

                                    string v1 = vValor[0];
                                    string v2 = "0";

                                    if (ParcelaItem.TB017_ValorFinal > 0.01)
                                    {
                                        if (vValor[1].Length > 1)
                                        {
                                            v2 = vValor[1].Substring(0, 2);
                                        }
                                        else
                                        {
                                            v2 = vValor[1];
                                        }
                                    }
                                    ParcelaItem.TB017_ValorFinal = Convert.ToDouble(v1 + "," + v2);

                                    ParcelaItens_L.Add(ParcelaItem);
                                }

                                double Valor = 0;
                                for (int p = 0; p < ParcelaItens_L.Count; p++)
                                {
                                    Valor = Valor + ParcelaItens_L[p].TB017_ValorFinal;
                                }
                                Parcela.TB016_Valor = Valor;

                                /*Inserir Produto da Parcela*/
                                Parcela.ParcelaProduto_L = ParcelaItens_L;

                                Parcelas.Add(Parcela);
                            }

                            Parcela_N.GerarCobrancasParcela(Parcelas, ParametrosInterface.objUsuarioLogado.TB011_Id);
                            /*Alterar Ciclo do contrato*/
                            ContratoNegocios Contrato_N = new ContratoNegocios();
                            Contrato_N.CicloContratoAtualizar(Convert.ToInt64(dgwLista.Rows[y].Cells["TB012_id"].Value.ToString()), Parcelas[0].TB012_CicloContrato, ParametrosInterface.objUsuarioLogado.TB011_Id, UltimaParcela.TB016_Vencimento.AddYears(1));


                            /*Gerar Boletos*/
                            List <ParcelaController> BoletosEmitidos = Parcela_N.ParcelasParaEmissaoBoleto(Convert.ToInt64(dgwLista.Rows[y].Cells["TB012_id"].Value.ToString()), ParametrosInterface.objUsuarioLogado.TB011_Id, 0);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message, "Erro ao executar operação", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }

                        /*****************************************************/
                    }
                }

                /*Atualizar List*/
                PopularListaParaRenovacao();
                lblExportarTotalDeContratos.Text = "Boletos emitidos, pronto para exportar aquivo";
                mnuListaRenovar.Enabled          = true;

                MessageBox.Show("Operação Concluida", "Renovação", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Erro ao executar operação", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void mnuPontoVendaSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                var ponto = new PontoDeVendaController();
                ponto.Empresa = new EmpresaController();

                ponto.TB002_Ponto = txtPontoVenda.Text;
                ponto.Tb002FamiliarAdesaoFormaS   = cmbFamiliarComissaoAdesaoForma.SelectedValue.ToString();
                ponto.Tb002FamiliarAdesaoValor    = Convert.ToDouble(txtFamiliarComissaoAdesaoValor.Text.Replace("R$", ""));
                ponto.Tb002FamiliarAdesaoAliquota = Convert.ToDouble(txtFamiliarComissaoAdesaoAliquota.Text.Replace("%", ""));

                ponto.Tb002FamiliarMensalidadeFormaS   = cmbFamiliarComissaoMensalidadeForma.SelectedValue.ToString();
                ponto.Tb002FamiliarMensalidadeValor    = Convert.ToDouble(txtFamiliarComissaoMensalidadeValor.Text.Replace("R$", ""));
                ponto.Tb002FamiliarMensalidadeAliquota = Convert.ToDouble(txtFamiliarComissaoMensalidadeAliquota.Text.Replace("%", ""));

                ponto.Tb002StatusS        = cmbPontoVendaStatus.SelectedValue.ToString();
                ponto.Empresa.TB001_id    = Convert.ToInt64(cmbEmpresa.SelectedValue);
                ponto.Tb002CadastradoPorI = ParametrosInterface.objUsuarioLogado.TB011_Id;
                ponto.Tb002AlteradoPorI   = ParametrosInterface.objUsuarioLogado.TB011_Id;

                ponto.Tb002ParceiroAdesaoFormaS   = cmbParceiroComissaoAdesaoForma.SelectedValue.ToString();
                ponto.Tb002ParceiroAdesaoValor    = Convert.ToDouble(txtParceiroComissaoAdesaoValor.Text.Replace("R$", ""));
                ponto.Tb002ParceiroAdesaoAliquota = Convert.ToDouble(txtParceiroComissaoAdesaoAliquota.Text.Replace("%", ""));

                ponto.Tb002ParceiroMensalidadeFormaS   = cmbParceiroComissaoMensalidadeForma.SelectedValue.ToString();
                ponto.Tb002ParceiroMensalidadeValor    = Convert.ToDouble(txtParceiroComissaoMensalidadeValor.Text.Replace("R$", ""));
                ponto.Tb002ParceiroMensalidadeAliquota = Convert.ToDouble(txtParceiroComissaoMensalidadeAliquota.Text.Replace("%", ""));

                ponto.Tb002CorporativoAdesaoFormaS   = cmbCorporativoComissaoAdesaoForma.SelectedValue.ToString();
                ponto.Tb002CorporativoAdesaoValor    = Convert.ToDouble(txtCorporativoComissaoAdesaoValor.Text.Replace("R$", ""));
                ponto.Tb002CorporativoAdesaoAliquota = Convert.ToDouble(txtCorporativoComissaoAdesaoAliquota.Text.Replace("%", ""));

                ponto.Tb002CorporativoMensalidadeFormaS   = cmbCorporativoComissaoMensalidadeForma.SelectedValue.ToString();
                ponto.Tb002CorporativoMensalidadeValor    = Convert.ToDouble(txtCorporativoComissaoMensalidadeValor.Text.Replace("R$", ""));
                ponto.Tb002CorporativoMensalidadeAliquota = Convert.ToDouble(txtCorporativoComissaoMensalidadeAliquota.Text.Replace("%", ""));


                if (_id > 0)
                {
                    /*Atualizar*/
                    ponto.TB002_id = _id;
                    if (new PontoDeVendaNegocios().PontoDeVendaAtualizar(ponto))
                    {
                        MessageBox.Show(MensagensDoSistema._0018, @"Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        return;
                    }
                    MessageBox.Show(@"Operação não pode ser completada", @"Erro ao executar operação", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    //    /*Cadastar*/

                    //}
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, @"Erro ao executar operação", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        public PontoDeVendaController PontoDeVendaEmpresa(long tb002Id)
        {
            var retorno = new PontoDeVendaController {
                Empresa = new EmpresaController()
            };

            try
            {
                var sSql = new StringBuilder();

                sSql.Append(" SELECT  ");
                sSql.Append(" dbo.TB002_PontosDeVenda.TB002_id ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB001_id ");
                sSql.Append(" ,dbo.TB001_Empresa.TB001_RazaoSocial ");
                sSql.Append(" ,dbo.TB001_Empresa.TB001_CNPJ ");
                sSql.Append(" ,dbo.TB001_Empresa.TB001_Cep ");
                sSql.Append(" ,dbo.TB001_Empresa.TB001_Municipio_ID ");
                sSql.Append(" ,dbo.TB001_Empresa.TB001_Logradouro ");
                sSql.Append(" ,dbo.TB001_Empresa.TB001_Numero ");
                sSql.Append(" ,dbo.TB006_Municipio.TB006_Municipio ");
                sSql.Append(" ,dbo.TB005_Estado.TB005_Sigla ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_FamiliarAdesaoForma ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_FamiliarAdesaoValor ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_FamiliarAdesaoAliquota  ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_FamiliarMensalidadeForma ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_FamiliarMensalidadeValor ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_FamiliarMensalidadeAliquota  ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_ParceiroAdesaoForma ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_ParceiroAdesaoValor ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_ParceiroAdesaoAliquota  ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_ParceiroMensalidadeForma ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_ParceiroMensalidadeValor ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_ParceiroMensalidadeAliquota ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_CorporativoAdesaoForma ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_CorporativoAdesaoValor ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_CorporativoAdesaoAliquota ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_CorporativoMensalidadeForma ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_CorporativoMensalidadeValor ");
                sSql.Append(" ,dbo.TB002_PontosDeVenda.TB002_CorporativoMensalidadeAliquota ");
                sSql.Append(" FROM ");
                sSql.Append(" dbo.TB002_PontosDeVenda ");
                sSql.Append(" INNER JOIN ");
                sSql.Append(" dbo.TB001_Empresa  ");
                sSql.Append(" ON  ");
                sSql.Append(" dbo.TB002_PontosDeVenda.TB001_id = dbo.TB001_Empresa.TB001_id ");
                sSql.Append(" INNER JOIN ");
                sSql.Append(" dbo.TB006_Municipio ");
                sSql.Append(" ON  ");
                sSql.Append(" dbo.TB001_Empresa.TB001_Municipio_ID = dbo.TB006_Municipio.TB006_id  ");
                sSql.Append(" INNER JOIN ");
                sSql.Append(" dbo.TB005_Estado ON dbo.TB006_Municipio.TB005_Id = dbo.TB005_Estado.TB005_Id ");
                sSql.Append(" WHERE ");
                sSql.Append(" dbo.TB002_PontosDeVenda.TB002_id = ");
                sSql.Append(tb002Id);

                var con     = new SqlConnection(ParametrosDAO.StringConexao);
                var command = new SqlCommand(sSql.ToString(), con);
                command.CommandTimeout = 300;

                con.Open();
                var reader = command.ExecuteReader();

                while (reader.Read())
                {
                    retorno.Empresa.TB001_id                    = Convert.ToInt64(reader["TB001_id"]);
                    retorno.Empresa.TB001_RazaoSocial           = reader["TB001_RazaoSocial"].ToString().TrimEnd();
                    retorno.Empresa.Cidade                      = reader["TB006_Municipio"].ToString().TrimEnd();
                    retorno.Empresa.TB001_CNPJ                  = Convert.ToUInt64(reader["TB001_CNPJ"].ToString().TrimEnd().TrimStart()).ToString(@"00\.000\.000\/0000\-00");
                    retorno.Empresa.TB001_Logradouro            = reader["TB001_Logradouro"].ToString().TrimEnd() + ", " + reader["TB001_Numero"].ToString().TrimEnd();
                    retorno.Empresa.TB001_UF                    = reader["TB005_Sigla"].ToString().TrimEnd();
                    retorno.Tb002FamiliarAdesaoFormaS           = reader["TB002_FamiliarAdesaoForma"].ToString();
                    retorno.Tb002FamiliarAdesaoValor            = Convert.ToDouble(reader["TB002_FamiliarAdesaoValor"].ToString());
                    retorno.Tb002FamiliarAdesaoAliquota         = Convert.ToDouble(reader["TB002_FamiliarAdesaoAliquota"].ToString());
                    retorno.Tb002FamiliarMensalidadeFormaS      = reader["TB002_FamiliarMensalidadeForma"].ToString();
                    retorno.Tb002FamiliarMensalidadeValor       = Convert.ToDouble(reader["TB002_FamiliarMensalidadeValor"].ToString());
                    retorno.Tb002FamiliarMensalidadeAliquota    = Convert.ToDouble(reader["TB002_FamiliarMensalidadeAliquota"].ToString());
                    retorno.Tb002ParceiroAdesaoFormaS           = reader["TB002_ParceiroAdesaoForma"].ToString();
                    retorno.Tb002ParceiroAdesaoValor            = Convert.ToDouble(reader["TB002_ParceiroAdesaoValor"].ToString());
                    retorno.Tb002ParceiroAdesaoAliquota         = Convert.ToDouble(reader["TB002_ParceiroAdesaoAliquota"].ToString());
                    retorno.Tb002ParceiroMensalidadeFormaS      = reader["TB002_ParceiroMensalidadeForma"].ToString();
                    retorno.Tb002ParceiroMensalidadeValor       = Convert.ToDouble(reader["TB002_ParceiroMensalidadeValor"].ToString());
                    retorno.Tb002ParceiroMensalidadeAliquota    = Convert.ToDouble(reader["TB002_ParceiroMensalidadeAliquota"].ToString());
                    retorno.Tb002CorporativoAdesaoFormaS        = reader["TB002_CorporativoAdesaoForma"].ToString();
                    retorno.Tb002CorporativoAdesaoValor         = Convert.ToDouble(reader["TB002_CorporativoAdesaoValor"].ToString());
                    retorno.Tb002CorporativoAdesaoAliquota      = Convert.ToDouble(reader["TB002_CorporativoAdesaoAliquota"].ToString());
                    retorno.Tb002CorporativoMensalidadeFormaS   = reader["TB002_CorporativoMensalidadeForma"].ToString();
                    retorno.Tb002CorporativoMensalidadeValor    = Convert.ToDouble(reader["TB002_CorporativoMensalidadeValor"].ToString());
                    retorno.Tb002CorporativoMensalidadeAliquota = Convert.ToDouble(reader["TB002_CorporativoMensalidadeAliquota"].ToString());
                }

                con.Close();
            }
            catch (Exception ex)
            {
                // ReSharper disable once PossibleIntendedRethrow
                throw ex;
            }
            return(retorno);
        }
        public bool PontoDeVendaAtualizar(PontoDeVendaController ponto)
        {
            var con = new SqlConnection(ParametrosDAO.StringConexao);

            var cmdTb002 = con.CreateCommand();

            var sSqltb002 = new StringBuilder();

            sSqltb002.Append("update TB002_PontosDeVenda set ");
            sSqltb002.Append("TB002_Ponto =  ");
            sSqltb002.Append("'");
            sSqltb002.Append(ponto.TB002_Ponto.ToUpper().TrimEnd());
            sSqltb002.Append("'");
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_FamiliarAdesaoForma = ");
            sSqltb002.Append(ponto.Tb002FamiliarAdesaoFormaS);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_FamiliarAdesaoValor = ");
            sSqltb002.Append(ponto.Tb002FamiliarAdesaoValor.ToString(CultureInfo.InvariantCulture).Replace(".", "").Replace(",", "."));
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_FamiliarAdesaoAliquota = ");
            sSqltb002.Append(ponto.Tb002FamiliarAdesaoAliquota);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_FamiliarMensalidadeForma = ");
            sSqltb002.Append(ponto.Tb002FamiliarMensalidadeFormaS);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_FamiliarMensalidadeValor = ");
            sSqltb002.Append(ponto.Tb002FamiliarMensalidadeValor.ToString(CultureInfo.InvariantCulture).Replace(".", "").Replace(",", "."));
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_FamiliarMensalidadeAliquota = ");
            sSqltb002.Append(ponto.Tb002FamiliarMensalidadeAliquota);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_ParceiroAdesaoForma = ");
            sSqltb002.Append(ponto.Tb002ParceiroAdesaoFormaS);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_ParceiroAdesaoValor = ");
            sSqltb002.Append(ponto.Tb002ParceiroAdesaoValor.ToString(CultureInfo.InvariantCulture).Replace(".", "").Replace(",", "."));
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_ParceiroAdesaoAliquota = ");
            sSqltb002.Append(ponto.Tb002ParceiroAdesaoAliquota);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_ParceiroMensalidadeForma = ");
            sSqltb002.Append(ponto.Tb002ParceiroMensalidadeFormaS);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_ParceiroMensalidadeValor = ");
            sSqltb002.Append(ponto.Tb002ParceiroMensalidadeValor.ToString(CultureInfo.InvariantCulture).Replace(".", "").Replace(",", "."));
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_ParceiroMensalidadeAliquota = ");
            sSqltb002.Append(ponto.Tb002ParceiroMensalidadeAliquota);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_CorporativoAdesaoForma = ");
            sSqltb002.Append(ponto.Tb002CorporativoAdesaoFormaS);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_CorporativoAdesaoValor = ");
            sSqltb002.Append(ponto.Tb002CorporativoAdesaoValor.ToString(CultureInfo.InvariantCulture).Replace(".", "").Replace(",", "."));
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_CorporativoAdesaoAliquota = ");
            sSqltb002.Append(ponto.Tb002CorporativoAdesaoAliquota);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_CorporativoMensalidadeForma = ");
            sSqltb002.Append(ponto.Tb002CorporativoMensalidadeFormaS);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_CorporativoMensalidadeValor = ");
            sSqltb002.Append(ponto.Tb002CorporativoMensalidadeValor.ToString(CultureInfo.InvariantCulture).Replace(".", "").Replace(",", "."));
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_CorporativoMensalidadeAliquota = ");
            sSqltb002.Append(ponto.Tb002CorporativoMensalidadeAliquota);
            sSqltb002.Append(",");
            sSqltb002.Append(" TB002_AlteradoEm =  ");
            sSqltb002.Append("'");
            sSqltb002.Append(DateTime.Now.ToString("MM/dd/yyyy"));
            sSqltb002.Append("'");
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_Status = ");
            sSqltb002.Append(ponto.Tb002StatusS);
            sSqltb002.Append(",");
            sSqltb002.Append("TB001_id = ");
            sSqltb002.Append(ponto.Empresa.TB001_id);
            sSqltb002.Append(",");
            sSqltb002.Append("TB002_AlteradoPor = ");
            sSqltb002.Append(ponto.Tb002AlteradoPorI);
            sSqltb002.Append(" where  TB002_id= ");
            sSqltb002.Append(ponto.TB002_id);
            cmdTb002.CommandText = sSqltb002.ToString();

            con.Open();
            var tran = con.BeginTransaction();

            try
            {
                cmdTb002.Transaction = tran;
                cmdTb002.ExecuteNonQuery();
                //Comando 1 executado com sucesso!
                tran.Commit();
            }
            catch (SqlException)
            {
                tran.Rollback();
                return(false);
            }
            finally
            {
                con.Close();
            }

            return(true);
        }
        /// <summary>
        /// Descrição:  Retorna lista com detalhes dos pontos de venda
        /// Autor:      Fabiano Gonçalves Elias
        /// Data:       30/10/2017
        /// **********************************************************************************************************
        /// Data Alteração      Autor       Descrição
        /// </summary>
        public List <PontoDeVendaController> PontoDeVendaLista()
        {
            var retornoList = new List <PontoDeVendaController>();

            try
            {
                var con  = new SqlConnection(ParametrosDAO.StringConexao);
                var sSql = new StringBuilder();

                sSql.Append(" SELECT dbo.TB002_PontosDeVenda.TB002_id, dbo.TB001_Empresa.TB001_NomeFantasia, dbo.TB002_PontosDeVenda.TB002_Ponto, dbo.TB002_PontosDeVenda.TB002_FamiliarAdesaoForma,  ");
                sSql.Append(" dbo.TB002_PontosDeVenda.TB002_FamiliarAdesaoValor, dbo.TB002_PontosDeVenda.TB002_FamiliarAdesaoAliquota, dbo.TB002_PontosDeVenda.TB002_FamiliarMensalidadeForma, dbo.TB002_PontosDeVenda.TB002_FamiliarMensalidadeValor, ");
                sSql.Append(" dbo.TB002_PontosDeVenda.TB002_FamiliarMensalidadeAliquota, dbo.TB002_PontosDeVenda.TB002_CadastradoEm, dbo.TB002_PontosDeVenda.TB002_CadastradoPor, dbo.TB002_PontosDeVenda.TB002_AlteradoEm, ");
                sSql.Append(" dbo.TB002_PontosDeVenda.TB002_AlteradoPor, dbo.TB002_PontosDeVenda.TB002_Status, CadastradoPor.TB011_NomeExibicao AS NomeCadastradoPor, AlteradoPor.TB011_NomeExibicao AS NomeAlteradoPor ");
                sSql.Append(" FROM dbo.TB002_PontosDeVenda INNER JOIN ");
                sSql.Append(" dbo.TB001_Empresa ON dbo.TB002_PontosDeVenda.TB001_id = dbo.TB001_Empresa.TB001_id INNER JOIN ");
                sSql.Append(" dbo.TB011_APPUsuarios AS CadastradoPor ON dbo.TB002_PontosDeVenda.TB002_CadastradoPor = CadastradoPor.TB011_Id INNER JOIN ");
                sSql.Append(" dbo.TB011_APPUsuarios AS AlteradoPor ON dbo.TB002_PontosDeVenda.TB002_Status = AlteradoPor.TB011_Id ");
                sSql.Append(" ORDER BY dbo.TB001_Empresa.TB001_NomeFantasia, dbo.TB002_PontosDeVenda.TB002_Ponto ");

                var command = new SqlCommand(sSql.ToString(), con);
                command.CommandTimeout = 300;

                con.Open();
                var reader = command.ExecuteReader();

                while (reader.Read())
                {
                    var obj = new PontoDeVendaController
                    {
                        Empresa = new EmpresaController
                        {
                            TB001_NomeFantasia = Convert.ToString(reader["TB001_NomeFantasia"])
                        },
                        TB002_id = Convert.ToInt64(reader["TB002_id"]),
                        Tb002FamiliarAdesaoAliquota = Convert.ToDouble(reader["TB002_FamiliarAdesaoAliquota"]),
                        Tb002StatusS = Enum.GetName(typeof(PontoDeVendaController.Tb002StatusE),
                                                    Convert.ToInt16(reader["TB002_Status"])),
                        TB002_Ponto = Convert.ToString(reader["TB002_Ponto"]),
                        Tb002FamiliarAdesaoValor         = Convert.ToDouble(reader["TB002_FamiliarAdesaoValor"]),
                        Tb002FamiliarMensalidadeValor    = Convert.ToDouble(reader["TB002_FamiliarMensalidadeValor"]),
                        Tb002FamiliarMensalidadeAliquota = Convert.ToDouble(reader["TB002_FamiliarMensalidadeAliquota"]),
                        Tb002CadastradoEm         = Convert.ToDateTime(reader["TB002_CadastradoEm"]),
                        Tb002CadastradoPor        = Convert.ToString(reader["NomeCadastradoPor"]),
                        Tb002AlteradoEm           = Convert.ToDateTime(reader["TB002_AlteradoEm"]),
                        Tb002AlteradoPor          = Convert.ToString(reader["NomeAlteradoPor"]),
                        Tb002FamiliarAdesaoFormaS = Enum.GetName(typeof(PontoDeVendaController.Tb002FamiliarAdesaoFormaE),
                                                                 Convert.ToInt16(reader["TB002_FamiliarAdesaoForma"])),
                        Tb002FamiliarMensalidadeFormaS = Enum.GetName(typeof(PontoDeVendaController.Tb002FamiliarMensalidadeFormaE),
                                                                      Convert.ToInt16(reader["TB002_FamiliarMensalidadeForma"]))
                    };

                    retornoList.Add(obj);
                }

                con.Close();
            }
            catch (Exception ex)
            {
                // ReSharper disable once PossibleIntendedRethrow
                throw ex;
            }
            return(retornoList);
        }