Пример #1
0
        public List <Sumario> GetRoles()
        {
            int b = 0;

            int.TryParse(codd, out b);
            List <Sumario>         ld  = new List <Sumario>();
            List <EntidadeDominio> ldd = new StatusDAO().consultar(new Status());

            if (b != 0)
            {
                ldd = ldd.Where(x => ((Status)x).Passageiro.passagem.Voo.ID == b).ToList();
            }
            List <EntidadeDominio> lldd = new DepartamentoDAO().consultar(new Departamento()
            {
                Pass = new Passagens()
                {
                    ID = b
                }
            });

            foreach (Status s in ldd)
            {
                Sumario su = new Sumario();
                su.Qtd           = 1;
                su.Dep.ID        = s.Atual.ID;
                su.Voo           = s.Passageiro.passagem.Voo;
                su.Dep.Nome      = s.Atual.Nome;
                su.IsDesembarque = s.IsDesembarque;
                if (s.IsDesembarque)
                {
                    su.Aero.ID    = s.Passageiro.passagem.Voo.LO_chegada.ID;
                    su.Aero.Nome  = s.Passageiro.passagem.Voo.LO_chegada.Nome;
                    su.Aero.sigla = s.Passageiro.passagem.Voo.LO_chegada.sigla;
                }
                else
                {
                    su.Aero.ID    = s.Passageiro.passagem.Voo.LO_partida.ID;
                    su.Aero.Nome  = s.Passageiro.passagem.Voo.LO_partida.Nome;
                    su.Aero.sigla = s.Passageiro.passagem.Voo.LO_partida.sigla;
                }
                if (ld.Count == 0)
                {
                    if (b == 0 || (b == su.Voo.ID))
                    {
                        ld.Add(su);
                    }
                }
                else
                {
                    bool exists = false;
                    foreach (Sumario sum in ld)
                    {
                        if (s.Atual.ID == sum.Dep.ID && s.IsDesembarque == sum.IsDesembarque)
                        {
                            if (b == 0 || (b == su.Voo.ID))
                            {
                                exists = true;
                            }
                        }
                    }
                    if (!exists)
                    {
                        su.Qtd           = 1;
                        su.Dep.ID        = s.Atual.ID;
                        su.Voo           = s.Passageiro.passagem.Voo;
                        su.Dep.Nome      = s.Atual.Nome;
                        su.IsDesembarque = s.IsDesembarque;
                        if (s.IsDesembarque)
                        {
                            su.Aero.ID    = s.Passageiro.passagem.Voo.LO_chegada.ID;
                            su.Aero.Nome  = s.Passageiro.passagem.Voo.LO_chegada.Nome;
                            su.Aero.sigla = s.Passageiro.passagem.Voo.LO_chegada.sigla;
                        }
                        else
                        {
                            su.Aero.ID    = s.Passageiro.passagem.Voo.LO_partida.ID;
                            su.Aero.Nome  = s.Passageiro.passagem.Voo.LO_partida.Nome;
                            su.Aero.sigla = s.Passageiro.passagem.Voo.LO_partida.sigla;
                        }
                        if (b == 0 || b == su.Voo.ID)
                        {
                            ld.Add(su);
                        }
                    }
                    foreach (Sumario sum in ld)
                    {
                        if (s.Atual.ID == sum.Dep.ID)
                        {
                            if (((b == 0) || (b == su.Voo.ID)) && s.IsDesembarque == sum.IsDesembarque && exists == true)
                            {
                                sum.Qtd++;
                            }
                        }
                    }
                }
            }
            for (int q = 0; q < ld.Count; q++)
            {
                for (int s = 0; s < ldd.Count; s++)
                {
                    {
                        if (getantes_ou_dps(lldd, ((Sumario)ld[q]), ((Status)ldd[s])))
                        {
                            ((Sumario)ld[q]).Qtd_nao_passaram++;
                        }
                        else
                        {
                            ((Sumario)ld[q]).Qtd_passaram++;
                        }
                    }
                }
            }
            return(ld);
        }