コード例 #1
0
ファイル: AssinaturaDB.cs プロジェクト: icaroferj/ir-api
 // passar o Usuario logado no sistema
 public AssinaturaLista_B(int usuarioIDLogado)
 {
     assinatura = new Assinatura(usuarioIDLogado);
 }
コード例 #2
0
ファイル: Assinatura.cs プロジェクト: icaroferj/ir-api
        private void ExcluirRegistros(int ID)
        {
            try
            {
                Assinatura               oAss    = new Assinatura(this.Control.UsuarioID);
                AssinaturaAno            oAssAno = new AssinaturaAno(this.Control.UsuarioID);
                AssinaturaFormaPagamento oAssFP  = new AssinaturaFormaPagamento(this.Control.UsuarioID);
                AssinaturaCanal          oAssC   = new AssinaturaCanal(this.Control.UsuarioID);
                AssinaturaItem           oAssI   = new AssinaturaItem(this.Control.UsuarioID);

                List <int> lstAno = new List <int>();
                bd.Consulta("SELECT ID FROM tAssinaturaAno WHERE AssinaturaID = " + ID);
                while (bd.Consulta().Read())
                {
                    lstAno.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();

                List <int> lstFP = new List <int>();
                bd.Consulta("SELECT ID FROM tAssinaturaFormaPagamento WHERE AssinaturaID = " + ID);
                while (bd.Consulta().Read())
                {
                    lstFP.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();

                List <int> lstC = new List <int>();
                bd.Consulta("SELECT ID FROM tAssinaturaCanal WHERE AssinaturaID = " + ID);
                while (bd.Consulta().Read())
                {
                    lstC.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();

                List <int> lstI = new List <int>();
                bd.Consulta(@"SELECT tAssinaturaItem.ID 
                                FROM tAssinaturaItem (NOLOCK)
                                INNER JOIN tAssinaturaAno (NOLOCK) ON tAssinaturaAno.ID = tAssinaturaItem.AssinaturaAnoID
                                WHERE tAssinaturaAno.AssinaturaID =  " + ID);
                while (bd.Consulta().Read())
                {
                    lstI.Add(bd.LerInt("ID"));
                }

                bd.FecharConsulta();


                bd.IniciarTransacao();

                foreach (int AnoID in lstAno)
                {
                    oAssAno.Excluir(bd, AnoID);
                }

                foreach (int AssFPID in lstFP)
                {
                    oAssFP.Excluir(bd, AssFPID);
                }

                foreach (int CanalID in lstC)
                {
                    oAssC.Excluir(bd, CanalID);
                }

                foreach (int ItemID in lstI)
                {
                    oAssI.Excluir(bd, ItemID);
                }

                this.Excluir(bd, ID);

                bd.FinalizarTransacao();
            }
            catch (Exception ex)
            {
                bd.DesfazerTransacao();
                throw ex;
            }
            finally
            {
                bd.Fechar();
            }
        }
コード例 #3
0
ファイル: AssinaturaDB.cs プロジェクト: icaroferj/ir-api
 // passar o Usuario logado no sistema
 public AssinaturaLista_B()
 {
     assinatura = new Assinatura();
 }
コード例 #4
0
        public void GerarNovaTemporada()
        {
            List <string> listaAssinatura = new List <string>();

            var assinatura = new Assinatura(UsuarioID > 0 ? UsuarioID : 1657);

            string assinaturas = "";

            Mapeamento.ForEach(delegate(MapeamentoInfo info)
            {
                assinaturas += info.AnteriorID + ",";
            });

            assinaturas = assinaturas.Substring(0, assinaturas.Length - 1);

            string sql = @"SELECT
                        tAssinaturaCliente.*
                        FROM tAssinatura(NOLOCK)
                        INNER JOIN tAssinaturaAno (NOLOCK) ON tAssinaturaAno.AssinaturaID = tAssinatura.ID
                        INNER JOIN tASsinaturaCliente (NOLOCK) ON tAssinaturaAno.ID = tAssinaturaCliente.AssinaturaAnoID
                        WHERE 
                        tAssinatura.Nome NOT LIKE '%eleazar%' AND
                        ASsinaturaTipoID = " + TipoID + " AND Ano = " + this.TemporadaAnterior + @" AND tAssinaturaCliente.Status IN ('R', 'N', 'T') AND StatusImportacao = ''
                        AND tAssinatura.ID IN (" + assinaturas + ")";

            BD bd    = new BD();
            BD bdAno = new BD();

            bd.Consulta(sql);

            var assinaturaID     = 0;
            var novaAssinaturaID = 0;


            try
            {
                while (bd.Consulta().Read())
                {
                    try
                    {
                        assinaturaID = bd.LerInt("AssinaturaID");

                        var n = Mapeamento.Where(c => c.AnteriorID.Equals(assinaturaID));
                        if (n == null)
                        {
                            continue;
                        }
                        else
                        {
                            novaAssinaturaID = n.FirstOrDefault().NovoID;
                        }


                        var anoID = Convert.ToInt32(bdAno.ConsultaValor("SELECT ID FROM tAssinaturaAno(NOLOCK) WHERE Ano = " + TemporadaNova + " AND AssinaturaID = " + novaAssinaturaID));
                        if (anoID == 0)
                        {
                            continue;
                        }

                        var assinaturaBloqueioID = Convert.ToInt32(bdAno.ConsultaValor("SELECT BloqueioID FROM tAssinatura(NOLOCK) WHERE ID = " + novaAssinaturaID));
                        if (assinaturaBloqueioID == 0)
                        {
                            continue;
                        }



                        EstruturaAssinaturaBloqueio item = new EstruturaAssinaturaBloqueio
                        {
                            ClienteID            = bd.LerInt("ClienteID"),
                            AssinaturaID         = novaAssinaturaID,
                            LugarID              = bd.LerInt("LugarID"),
                            AssinaturaAnoID      = anoID,
                            SetorID              = bd.LerInt("SetorID"),
                            AssinaturaBloqueioID = assinaturaBloqueioID
                        };



                        var lista = new List <EstruturaAssinaturaBloqueio>();
                        lista.Add(item);
                        assinatura.Associar(bd.LerInt("ClienteID"), lista, novaAssinaturaID, anoID);

                        bdAno.Executar("UPDATE tAssinaturaCliente SET StatusImportacao = 'Importado' WHERE ID = " + bd.LerInt("ID"));

                        if (!listaAssinatura.Contains(assinaturaID.ToString("0000000000") + novaAssinaturaID.ToString("0000000000")))
                        {
                            this.InsereLog(TipoID, TemporadaAnterior, TipoIDNovo, TemporadaNova, assinaturaID, novaAssinaturaID, FormataData(DateTime.Now.ToShortDateString()), UsuarioID);
                            listaAssinatura.Add(assinaturaID.ToString("0000000000") + novaAssinaturaID.ToString("0000000000"));
                        }
                    }
                    catch (Exception)
                    {
                        continue;
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                bd.Fechar();
                bdAno.Fechar();
            }
        }