/// <summary> /// Responsável por inserir na base de dados vários clientes caso não exista nenhum cliente na base de dados /// </summary> /// <param name="context">Contexto da aplicação</param> private static void inicializarClientes(AirUberDbContext context) { if (!context.Cliente.Any()) { HistoricoTransacoeMonetarias h1 = new HistoricoTransacoeMonetarias(); ContaDeCreditos conta1 = new ContaDeCreditos() { JetCashActual = 10000, HistoricoTransacoeMonetarias = h1 }; HistoricoTransacoeMonetarias h2 = new HistoricoTransacoeMonetarias(); ContaDeCreditos conta2 = new ContaDeCreditos() { JetCashActual = 15000, HistoricoTransacoeMonetarias = h2 }; context.Cliente.Add(new Cliente { Nome = "Artur", Apelido = "Esteves", Ativo = true, DataCriacao = DateTime.Now, ContaDeCreditos = conta1, Contacto = "+351...", Email = "*****@*****.**" }); context.Cliente.Add(new Cliente { Nome = "João", Apelido = "Rafael", Ativo = true, ContaDeCreditos = conta2, DataCriacao = DateTime.Now, Contacto = "+351...", Email = "*****@*****.**" }); } }
/// <summary> /// Responsável por inserir na base de dados várias viagens caso não exista nenhuma viagem na base de dados /// </summary> /// <param name="context">Contexto da aplicação</param> private static void inicializarViagens(AirUberDbContext context, UserManager <ApplicationUser> userManager) { //aqui associar uma lista de extras ao jato if (!context.Reserva.Any()) { ContaDeCreditos conta1 = new ContaDeCreditos() { JetCashActual = 4542 }; //Novo cliente Cliente Miguel = new Cliente() { Nome = "Miguel", Apelido = "Esteves", Ativo = true, ContaDeCreditos = conta1, DataCriacao = DateTime.Now, Contacto = "2222", Email = "*****@*****.**", UserName = "******" }; //var result = userManager.CreateAsync(Miguel, "ost:43636/Acc").Result; /*if (result.Succeeded) * { * userManager.AddToRoleAsync(Miguel, Roles.ROLE_CLIENTE); * }*/ context.Cliente.Add(Miguel); context.SaveChanges(); Reserva reserva1 = new Reserva() { DataPartida = DateTime.Now, DataChegada = new DateTime(2016, 12, 31), AeroportoPartidaId = 1, AeroportoDestinoId = 2, JatoId = 1, Cliente = Miguel, Custo = 3500.5m }; Reserva reserva2 = new Reserva() { DataPartida = DateTime.Now, DataChegada = new DateTime(2017, 1, 1), AeroportoPartidaId = 2, AeroportoDestinoId = 3, JatoId = 1, Cliente = Miguel, Custo = 7483.23m, Avaliacao = 5 }; context.Reserva.Add(reserva1); context.Reserva.Add(reserva2); foreach (Companhia c in context.Companhia) { if (c.CompanhiaId == 1) //pq o Jato 1 está ligado à companhia 1 -> está hardcoded aqui pq é apenas para testar { c.ListaReservas.Add(reserva1); c.ListaReservas.Add(reserva2); context.Update(c); } } Miguel.ListaReservas.Add(reserva1); context.Update(Miguel); } }
/// <summary> /// Responsável por inserir na base de dados várias companhias caso não exista nenhuma companhia na base de dados /// </summary> /// <param name="context">Contexto da aplicação</param> private static void inicializarCompanhias(AirUberDbContext context) { if (!context.Companhia.Any()) { HistoricoTransacoeMonetarias h1 = new HistoricoTransacoeMonetarias(); ContaDeCreditos conta1 = new ContaDeCreditos() { HistoricoTransacoeMonetarias = h1, JetCashActual = 1000000 }; HistoricoTransacoeMonetarias h2 = new HistoricoTransacoeMonetarias(); ContaDeCreditos conta2 = new ContaDeCreditos() { HistoricoTransacoeMonetarias = h2, JetCashActual = 2000000 }; ContaDeCreditos conta3 = new ContaDeCreditos() { JetCashActual = 3000000 }; context.Companhia.Add(new Companhia { Nome = "Transportes Aéreos Portugueses - TAP", Contact = "+351 707 205 700", PaisId = 1, // Portugal Nif = "506623602", ContaDeCreditos = conta1, DataCriacao = DateTime.Now, //Activada = true, EstadoId = 1, Email = "*****@*****.**", Morada = "Edificio 25, Aeroporto de Lisboa 1750 - 364 Lisboa" }); context.Companhia.Add(new Companhia { Nome = "Ryanair", Contact = "+353 1 945 12 12", PaisId = 5, // República da Irelanda Nif = "980489806", ContaDeCreditos = conta2, DataCriacao = DateTime.Now, //Activada = false, EstadoId = 2, Email = "*****@*****.**", Morada = "8, R. Alexandre Herculano 50, 1250 Lisboa" }); context.Companhia.Add(new Companhia { Nome = "EasyJet Airline Company Limited", Contact = "+351 707 500 176", PaisId = 6, // Reino Unido Nif = "980467101", ContaDeCreditos = conta2, DataCriacao = DateTime.Now, //Activada = false, EstadoId = 2, Email = "*****@*****.**", Morada = "Hangar 89, London Luton Airport, Luton, Bedfordshire LU2 9PF" }); } }