Ejemplo n.º 1
0
        public List <Acft> LerAcfts(Grupo grupo)
        {
            DataTable   dt    = LerAcfts_DataTable(grupo);
            List <Acft> acfts = new List <Acft>();

            acfts = (
                from row in dt.AsEnumerable()
                select new Acft
            {
                donoGrupo = grupo,
                Id = (int)row["ID"],
                Matricula = row["Matricula"].ToString(),
                Tipo = row["Tipo"].ToString(),
                Velocidade = (int)row["Velocidade"],
                Altitude = (int)row["Altitude"],

                //CorFonteMatricula = Color.FromName(row["CorFonteMatricula"].ToString()),
                //CorFonteAltitude = Color.FromName(row["CorFonteAltitude"].ToString()),
                //CorLinhas = Color.FromName(row["CorLinhas"].ToString()),
                //CorPerimetro = Color.FromName(row["CorPerimetro"].ToString()),

                CorFonteMatricula = Cores.toColor(row["CorFonteMatricula"].ToString()),
                CorFonteAltitude = Cores.toColor(row["CorFonteAltitude"].ToString()),
                CorLinhas = Cores.toColor(row["CorLinhas"].ToString()),
                CorPerimetro = Cores.toColor(row["CorPerimetro"].ToString()),

                MostrarMatricula = (bool)row["MostrarMatricula"],
                MostrarRumo = (bool)row["MostrarRumo"],
                MostrarPerimetro = (bool)row["MostrarPerimetro"]
            }

                ).ToList();

            List <Local> locais = new List <Local>();

            foreach (var acft in acfts)
            {
                acft.locais = LerLocais(grupo, acft);
            }

            return(acfts);
        }
Ejemplo n.º 2
0
        public void InserirAlterarAcft(Acft acft, bool manterConexaoAberta = true)
        {
            OleDbCommand command = null;
            string       sql     = "";

            if (acft.Id == 0)
            {
                sql += " INSERT INTO Acft                                                    ";
                sql += " (                                                                   ";
                sql += "   Id_Grupo, Id, Matricula, Tipo, Velocidade, Altitude,              ";
                sql += "   CorFonteMatricula, CorFonteAltitude, CorLinhas, CorPerimetro,     ";
                sql += "   MostrarMatricula, MostrarRumo, MostrarPerimetro                   ";
                sql += " )                                                                   ";
                sql += " VALUES                                                              ";
                sql += " (                                                                   ";
                sql += "   @Id_Grupo, @Id, @Matricula, @Tipo, @Velocidade, @Altitude,        ";
                sql += "   @CorFonteMatricula, @CorFonteAltitude, @CorLinhas, @CorPerimetro, ";
                sql += "   @MostrarMatricula, @MostrarRumo, @MostrarPerimetro                ";
                sql += " )                                                                   ";

                command = new OleDbCommand(sql, conexao);

                acft.Id = LerNovoId("Acft");

                command.Parameters.AddWithValue("@Id_Grupo", acft.donoGrupo.Id);
                command.Parameters.AddWithValue("@Id", acft.Id);
                command.Parameters.AddWithValue("@Matricula", acft.Matricula);
                command.Parameters.AddWithValue("@Tipo", acft.Tipo);
                command.Parameters.AddWithValue("@Velocidade", acft.Velocidade);
                command.Parameters.AddWithValue("@Altitude", acft.Altitude);

                command.Parameters.AddWithValue("@CorFonteMatricula", Cores.toARGB(acft.CorFonteMatricula));
                command.Parameters.AddWithValue("@CorFonteAltitude", Cores.toARGB(acft.CorFonteAltitude));
                command.Parameters.AddWithValue("@CorLinhas", Cores.toARGB(acft.CorLinhas));
                command.Parameters.AddWithValue("@CorPerimetro", Cores.toARGB(acft.CorPerimetro));

                command.Parameters.AddWithValue("@MostrarMatricula", acft.MostrarMatricula);
                command.Parameters.AddWithValue("@MostrarRumo", acft.MostrarRumo);
                command.Parameters.AddWithValue("@MostrarPerimetro", acft.MostrarPerimetro);
            }
            else
            {
                sql += "UPDATE Acft SET                               ";
                sql += "       Matricula         = @Matricula,         ";
                sql += "       Tipo              = @Tipo,              ";
                sql += "       Velocidade        = @Velocidade,        ";
                sql += "       Altitude          = @Altitude,          ";

                sql += "       CorFonteMatricula = @CorFonteMatricula, ";
                sql += "       CorFonteAltitude  = @CorFonteAltitude,  ";
                sql += "       CorLinhas         = @CorLinhas,         ";
                sql += "       CorPerimetro      = @CorPerimetro,      ";

                sql += "       MostrarMatricula  = @MostrarMatricula,  ";
                sql += "       MostrarRumo       = @MostrarRumo,       ";
                sql += "       MostrarPerimetro  = @MostrarPerimetro   ";

                sql += " WHERE Id = @Id ";

                command = new OleDbCommand(sql, conexao);

                command.Parameters.AddWithValue("@Matricula", acft.Matricula);
                command.Parameters.AddWithValue("@Tipo", acft.Tipo);
                command.Parameters.AddWithValue("@Velocidade", acft.Velocidade);
                command.Parameters.AddWithValue("@Altitude", acft.Altitude);

                command.Parameters.AddWithValue("@CorFonteMatricula", Cores.toARGB(acft.CorFonteMatricula));
                command.Parameters.AddWithValue("@CorFonteAltitude", Cores.toARGB(acft.CorFonteAltitude));
                command.Parameters.AddWithValue("@CorLinhas", Cores.toARGB(acft.CorLinhas));
                command.Parameters.AddWithValue("@CorPerimetro", Cores.toARGB(acft.CorPerimetro));

                command.Parameters.AddWithValue("@MostrarMatricula", acft.MostrarMatricula);
                command.Parameters.AddWithValue("@MostrarRumo", acft.MostrarRumo);
                command.Parameters.AddWithValue("@MostrarPerimetro", acft.MostrarPerimetro);
                //where
                command.Parameters.AddWithValue("@Id", acft.Id);
            }

            ExecutarComando(command, manterConexaoAberta);

            ExcluirLocaisAcft(acft);
            InserirLocais(acft.locais);
        }