private static void PopulatedAgenda_Turistas_Trilhos(Trails4HealthDbContext dbContext) { Turista turista1 = dbContext.Turista.SingleOrDefault(tu => tu.NIF == "987654321"); Turista turista2 = dbContext.Turista.SingleOrDefault(tu => tu.NIF == "234567889"); Turista turista3 = dbContext.Turista.SingleOrDefault(tu => tu.NIF == "589455366"); Turista turista4 = dbContext.Turista.SingleOrDefault(tu => tu.NIF == "977654321"); Turista turista5 = dbContext.Turista.SingleOrDefault(tu => tu.NIF == "123456789"); Turista turista6 = dbContext.Turista.SingleOrDefault(tu => tu.NIF == "568123456"); Trilho trilho1 = dbContext.Trilho.SingleOrDefault(t => t.Nome_Trilho == "Poço do Inferno"); Trilho trilho2 = dbContext.Trilho.SingleOrDefault(t => t.Nome_Trilho == "Torre"); Trilho trilho3 = dbContext.Trilho.SingleOrDefault(t => t.Nome_Trilho == "Covão de Santa Maria"); Trilho trilho4 = dbContext.Trilho.SingleOrDefault(t => t.Nome_Trilho == "Corredor de Mouros"); Trilho trilho5 = dbContext.Trilho.SingleOrDefault(t => t.Nome_Trilho == "Vale Glaciar do Zezere"); dbContext.Agenda_Turista_Trilho.Add(new Agenda_Turista_Trilho { TuristaId = turista2.TuristaId, TrilhoId = trilho1.TrilhoId, Data_Reserva = new DateTime(2017, 11, 11), Data_Prevista_Inicio_Trilho = new DateTime(2017, 1, 26), Tempo_Gasto = 00, Estado_Agendamento = "Agendado", Data_Estado_Agendamento = new DateTime(2017, 11, 24) }); dbContext.Agenda_Turista_Trilho.Add(new Agenda_Turista_Trilho { TuristaId = turista4.TuristaId, TrilhoId = trilho5.TrilhoId, Data_Reserva = new DateTime(2017, 10, 03), Data_Prevista_Inicio_Trilho = new DateTime(2017, 11, 30), Tempo_Gasto = 00, Estado_Agendamento = "Agendado", Data_Estado_Agendamento = new DateTime(2017, 11, 27) }); dbContext.Agenda_Turista_Trilho.Add(new Agenda_Turista_Trilho { TuristaId = turista2.TuristaId, TrilhoId = trilho2.TrilhoId, Data_Reserva = new DateTime(2017, 07, 03), Data_Prevista_Inicio_Trilho = new DateTime(2017, 10, 15), Tempo_Gasto = 50, Estado_Agendamento = "Realizado", Data_Estado_Agendamento = new DateTime(2017, 12, 02) }); dbContext.Agenda_Turista_Trilho.Add(new Agenda_Turista_Trilho { TuristaId = turista2.TuristaId, TrilhoId = trilho5.TrilhoId, Data_Reserva = new DateTime(2017, 11, 10), Data_Prevista_Inicio_Trilho = new DateTime(2017, 11, 18), Tempo_Gasto = 00, Estado_Agendamento = "Não Realizado", Data_Estado_Agendamento = new DateTime(2017, 11, 27) }); dbContext.Agenda_Turista_Trilho.Add(new Agenda_Turista_Trilho { TuristaId = turista3.TuristaId, TrilhoId = trilho3.TrilhoId, Data_Reserva = new DateTime(2017, 11, 15), Data_Prevista_Inicio_Trilho = new DateTime(2017, 12, 16), Tempo_Gasto = 00, Estado_Agendamento = "Cancelado", Data_Estado_Agendamento = new DateTime(2017, 12, 15) }); }
public VisualizarEstatisticas(Trilho t, IRepositorioTrails rp) { trilho = t; TrilhosPercorridos = rp.TrilhosPercorridos.Where(tp => tp.ID_Trilho == t.ID_Trilho); Turistas = rp.Turistas; }
public async Task <IActionResult> Edit(int id, [Bind("TrilhoId,Nome_Trilho,Local_Inicio_Trilho,Local_Fim_Trilho,Distancia_Total,Duracao_Media,Esta_Ativo,Tempo_Gasto,ProfessorId,DificuldadeId")] Trilho trilho) { if (id != trilho.TrilhoId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(trilho); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TrilhoExists(trilho.TrilhoId)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } ViewData["DificuldadeId"] = new SelectList(_context.Set <Dificuldade>(), "DificuldadeId", "DificuldadeId", trilho.DificuldadeId); ViewData["ProfessorId"] = new SelectList(_context.Professor, "ProfessorId", "DataNascimento", trilho.ProfessorId); return(View(trilho)); }
public async Task <IActionResult> Create([Bind("TrilhoId,Nome_Trilho,Local_Inicio_Trilho,Local_Fim_Trilho,Distancia_Total,Duracao_Media,Esta_Ativo,Tempo_Gasto,ProfessorId,DificuldadeId")] Trilho trilho) { if (ModelState.IsValid) { _context.Add(trilho); await _context.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewData["DificuldadeId"] = new SelectList(_context.Set <Dificuldade>(), "DificuldadeId", "DificuldadeId", trilho.DificuldadeId); ViewData["ProfessorId"] = new SelectList(_context.Professor, "ProfessorId", "DataNascimento", trilho.ProfessorId); return(View(trilho)); }
public async Task <IActionResult> Editar(int?id) { if (id == null) { return(NotFound()); } // registo do trilho seleccionado Trilho trilho = await _context.Trilhos.SingleOrDefaultAsync(m => m.TrilhoID == id); // registo do ultimo EstadoTrilho do trilho seleccionado EstadoTrilho ultimoEstadoTrilho = await _context.EstadoTrilhos.SingleOrDefaultAsync(uet => uet.TrilhoID == id && uet.DataFim == null); // if (ultimoEstadoTrilho == null) { return(NotFound("GET: ultimoEstadoTrilho == null")); } // if (trilho == null) { return(NotFound("GET: trilho == null")); } // ViewModel com dados para exibir ViewModelTrilho VMTrilho = new ViewModelTrilho { TrilhoID = trilho.TrilhoID, TrilhoNome = trilho.Nome, TrilhoInicio = trilho.Inicio, TrilhoFim = trilho.Fim, TrilhoDistancia = trilho.Distancia, //TrilhoFoto = trilho.Foto, TrilhoFoto = trilho.Foto, TrilhoDesativado = trilho.Desativado, TrilhoDetalhes = trilho.Detalhes, TrilhoSumario = trilho.Sumario, DificuldadeID = trilho.DificuldadeID, // fica com o Id do ultimo estado inserido para mostrar na view:GET EstadoID = ultimoEstadoTrilho.EstadoID }; // passar campos pretendidos (Trilho, Dificuldade e Estado) para a view ViewData["DificuldadeID"] = new SelectList(_context.Dificuldades, "DificuldadeID", "Nome", VMTrilho.DificuldadeID); ViewData["EstadoID"] = new SelectList(_context.Estados, "EstadoID", "Nome", VMTrilho.EstadoID); return(View(VMTrilho)); }
public async Task <IActionResult> BuscarTrilho(int?id) { if (id == null) { return(NotFound()); } Trilho t = repository.Trilhos.FirstOrDefault(tr => tr.ID_Trilho == id); if (t == null) { return(NotFound()); } return(View(t)); }
public ViewResult Trilho(int id) { //BuscarTrilho(id); Trilho t = repository.Trilhos.SingleOrDefault(tr => tr.ID_Trilho == id); VisualizarEstatisticas ve = new VisualizarEstatisticas(t, repository); if (ModelState.IsValid) { //Repository.AddResponse(response); return(View("EstatisticasTrilho", ve)); } else { // There are validation errors return(View(repository)); } }
public async Task <IActionResult> Editar(int id, [Bind("TrilhoID,TrilhoNome,TrilhoInicio,TrilhoFim,TrilhoDetalhes," + "TrilhoSumario,TrilhoDistancia,TrilhoFoto,TrilhoDesativado,DificuldadeID,EstadoID,TrilhoImagem,ImageFile")] ViewModelTrilho VMTrilho) { // crio novo trilho a partir dos valores introduzidos no form (ver Bind) Trilho trilho = new Trilho { TrilhoID = VMTrilho.TrilhoID, Nome = VMTrilho.TrilhoNome, Inicio = VMTrilho.TrilhoInicio, Fim = VMTrilho.TrilhoFim, Distancia = VMTrilho.TrilhoDistancia, //Foto = VMTrilho.TrilhoFoto, Foto = VMTrilho.TrilhoFoto, Desativado = VMTrilho.TrilhoDesativado, Detalhes = VMTrilho.TrilhoDetalhes, Sumario = VMTrilho.TrilhoSumario, DificuldadeID = VMTrilho.DificuldadeID }; if (VMTrilho.ImageFile != null) { // upload de imagem // nota: criado controlador UploadFiles, ver mudanças em ViewModelTrilho e Trilho.cs using (var memoryStream = new MemoryStream()) { await VMTrilho.ImageFile.CopyToAsync(memoryStream); trilho.Foto = memoryStream.ToArray(); } } // registo do ultimo EstadoTrilho do trilho seleccionado EstadoTrilho ultimoEstadoTrilho = await _context.EstadoTrilhos.SingleOrDefaultAsync(uet => uet.TrilhoID == id && uet.DataFim == null); // if (ultimoEstadoTrilho == null) { return(NotFound("POST: ultimoEstadoTrilho = NULL")); } // EstadoTrilho a inserir (se novo Estado) EstadoTrilho novoEstadoTrilho = new EstadoTrilho { Trilho = trilho, EstadoID = VMTrilho.EstadoID, DataInicio = DateTime.Now }; if (id != trilho.TrilhoID) { return(NotFound("POST: TrilhoID NotFound")); } if (ModelState.IsValid) { try { // Update dbo.trilhos _context.Update(trilho); // Update + insert dbo.EstadoTrilhos if (ultimoEstadoTrilho.EstadoID != VMTrilho.EstadoID) { ultimoEstadoTrilho.DataFim = DateTime.Now; _context.Update(ultimoEstadoTrilho); _context.Add(novoEstadoTrilho); //return NotFound("POST: VMTrilho.EstadoIdAnterior != VMTrilho.EstadoID"); } await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TrilhoExists(trilho.TrilhoID)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } // se modelo inválido fica na mma view com os dados introduzidos no form ViewData["DificuldadeID"] = new SelectList(_context.Dificuldades, "DificuldadeID", "Nome", VMTrilho.DificuldadeID); ViewData["EstadoID"] = new SelectList(_context.Estados, "EstadoID", "Nome", VMTrilho.EstadoID); return(View(VMTrilho)); }
public async Task <IActionResult> Criar([Bind("TrilhoID,TrilhoNome,TrilhoInicio,TrilhoFim,TrilhoDetalhes,TrilhoSumario," + "TrilhoDistancia,TrilhoFoto, TrilhoDesativado,DificuldadeID,EstadoID,ImageFile")] ViewModelTrilho trilhoVM) { // Colocar registos da dbo.Trilhos numa lista var trilhos = _context.Trilhos .Include(t => t.Dificuldade); ListaTrilhosBD = trilhos.ToListAsync().Result; // se existir um trilho com o mesmo Nome, mostra msg ErroNomeTrilho e reinsere dados introduzidos na mma View // ** fazer com query á B.D. (se houver tempo) foreach (var et in ListaTrilhosBD) { if (et.Nome.Equals(trilhoVM.TrilhoNome)) { ViewData["ErroNomeTrilho"] = "*Já existe um trilho com esse nome!"; ViewData["DificuldadeID"] = new SelectList(_context.Dificuldades, "DificuldadeID", "Nome", trilhoVM.DificuldadeID); ViewData["EstadoID"] = new SelectList(_context.Estados, "EstadoID", "Nome", trilhoVM.EstadoID); return(View(trilhoVM)); } } if (ModelState.IsValid) { // crio novo trilho a partir dos valores introduzidos no form (ver Bind) Trilho trilho = new Trilho { Nome = trilhoVM.TrilhoNome, Inicio = trilhoVM.TrilhoInicio, Fim = trilhoVM.TrilhoFim, Distancia = trilhoVM.TrilhoDistancia, //Foto = trilhoVM.TrilhoFoto, Desativado = trilhoVM.TrilhoDesativado, Detalhes = trilhoVM.TrilhoDetalhes, Sumario = trilhoVM.TrilhoSumario, DificuldadeID = trilhoVM.DificuldadeID }; if (trilhoVM.ImageFile != null) { // upload de imagem // nota: criado controlador UploadFiles, ver mudanças em ViewModelTrilho e Trilho.cs using (var memoryStream = new MemoryStream()) { await trilhoVM.ImageFile.CopyToAsync(memoryStream); trilho.Foto = memoryStream.ToArray(); } } // coloco trilho na tabela dbo.Trilhos _context.Add(trilho); EstadoTrilho estadoTrilho = new EstadoTrilho { Trilho = trilho, EstadoID = trilhoVM.EstadoID, DataInicio = DateTime.Now }; // coloco estadoTrilho na tabela dbo.EstadoTrilhos _context.Add(estadoTrilho); await _context.SaveChangesAsync(); return(RedirectToAction("Index")); } // se modelo inválido fica na mma view com os dados introduzidos no form ViewData["DificuldadeID"] = new SelectList(_context.Dificuldades, "DificuldadeID", "Nome", trilhoVM.DificuldadeID); ViewData["EstadoID"] = new SelectList(_context.Estados, "EstadoID", "Nome", trilhoVM.EstadoID); return(View(trilhoVM)); }