public override void salvar(EntidadeDominio entidade) { if (connection.State == ConnectionState.Closed) { connection.Open(); } Passagens Classe = (Passagens)entidade; foreach (Departamento d in Classe.Departamentos) { pst.Dispose(); pst = new NpgsqlCommand(); pst.CommandText = "insert into dep_pass ( pass_id, id_dep ) values ( :no,:nomm )"; parameters = new NpgsqlParameter[] { new NpgsqlParameter("no", Classe.ID), new NpgsqlParameter("nomm", d.ID) }; pst.Parameters.Clear(); pst.Parameters.AddRange(parameters); pst.Connection = connection; pst.CommandType = CommandType.Text; pst.ExecuteNonQuery(); } pst.CommandText = "commit work"; pst.ExecuteNonQuery(); connection.Close(); return; }
/// <summary> /// Método que Recebe parametros da View passagens.cshtml, por meio do clique em um link. /// Os Parametros são passados atravez da URL /// </summary> /// <param name="Id">Id da passagem a ser comprada</param> /// <param name="DataIda">Data de Ida</param> /// <param name="DataVolta">Data de Volta</param> /// <param name="IdDestino">Id do Destino</param> /// <param name="NomeDestino">Nome do Destino</param> /// <param name="IdOrigem">Id da Origem</param> /// <param name="NomeOrigem">Nome da Origem</param> /// <param name="Preco">Preço da passagem</param> /// <param name="Tipo">Tipo da passagem: 0 para ida, 1 para ida e volta</param> /// <returns>Outra view, contendo os Detalhes da passagem selecionada e campos extras para serem preenchidos</returns> public ActionResult comprarPassagem(int Id = 0, string DataIda = "", string DataVolta = "", int IdDestino = 0, string NomeDestino = "", int IdOrigem = 0, string NomeOrigem = "", int Preco = 0, int Tipo = 0) { Passagens passagem = new Passagens(Id, Tipo, IdOrigem, IdDestino, DataIda, DataVolta, Preco, NomeOrigem, NomeDestino); ViewBag.passagem = passagem; ViewData["passag"] = passagem; return(View(passagem)); }
public void OnGet(int partida, int chegada, string date) { if (partida != 0 && chegada != 0) { GetRoles = Getvoo(partida, chegada, date); if (GetRoles.Count > 0) { Passagens gr = ((Passagens)GetRoles.ElementAt(0)); var sCoord = new GeoCoordinate(gr.LO_partida.lat, gr.LO_partida.lng); var eCoord = new GeoCoordinate(gr.LO_chegada.lat, gr.LO_partida.lng); dist = eCoord.GetDistanceTo(sCoord).ToString(); //distFrom(gr.LO_chegada.lat, gr.LO_chegada.lng, gr.LO_partida.lat, gr.LO_partida.lng).ToString(); } } }
public ActionResult ComprarPassagem(String txtCartao) { String valor = Utils.Voos.valorPassagem.ToString(); valor = valor.Replace(",", "."); var url = "http://localhost:8090/validarCompra/" + valor + "&" + txtCartao + ""; var client = new HttpClient(); var response = client.GetAsync(url).GetAwaiter().GetResult(); var banco = new InstituicaoFinanceira(); if (response.IsSuccessStatusCode) { var bancoJson = response.Content.ReadAsStringAsync().GetAwaiter().GetResult(); banco = JsonConvert.DeserializeObject <InstituicaoFinanceira>(bancoJson); banco.saldo = banco.saldo - Utils.Voos.valorPassagem; Utils.MeuBanco(banco); banco = Utils.InstituicaoFinanceira; url = "http://localhost:8090/editarBanco"; client = new HttpClient(); response = client.PutAsJsonAsync(url, banco).GetAwaiter().GetResult(); var voo = Utils.Voos; voo.qtdAssentos = Utils.Voos.qtdAssentos - 1; Utils.MeuVoo(voo); url = "http://localhost:8090/editarVoo"; client = new HttpClient(); response = client.PutAsJsonAsync(url, Utils.Voos).GetAwaiter().GetResult(); Passagens passagem = new Passagens(); url = "http://localhost:8090/novaPassagem/" + Utils.Clientes.id + "&" + Utils.Voos.id + ""; client = new HttpClient(); response = client.GetAsync(url).GetAwaiter().GetResult(); return(RedirectToAction("MinhasPassagens")); } else { var voos = TodosVoos(); ViewBag.Encontrados = "Número do cartão invalido ou saldo insuficiente!"; return(View("Index", voos)); } }
public string processar(EntidadeDominio entidade) { Passagens Classe = (Passagens)entidade; AssentoDAO DAO = new AssentoDAO(); for (int i = 1; i <= Classe.QTD; i++) { DAO.salvar(new Assento(new Check_in()) { tipo = Classe.Tipo, Tag = "A" + i, viagem = new Passagens() { ID = Classe.ID } }); } return(null); }
public override void salvar(EntidadeDominio entidade) { if (connection.State == ConnectionState.Closed) { connection.Open(); } Passagens Classe = (Passagens)entidade; pst.Dispose(); pst = new NpgsqlCommand(); pst.CommandText = "insert into passagens ( class_id, avi_id,data_chegada,data_partida,pass_lo_chegada,pass_lo_partida,qtd ) values ( :nome,:nom,:no,:nod,:node,:nodei,:dev ) returning pass_id"; parameters = new NpgsqlParameter[] { new NpgsqlParameter("nome", Classe.Tipo.ID), new NpgsqlParameter("nom", Classe.Aviao_v.ID), new NpgsqlParameter("no", Classe.DT_chegada), new NpgsqlParameter("nod", Classe.DT_partida), new NpgsqlParameter("node", Classe.LO_chegada.ID), new NpgsqlParameter("nodei", Classe.LO_partida.ID), new NpgsqlParameter("dev", Classe.QTD) }; pst.Parameters.Clear(); pst.Parameters.AddRange(parameters); pst.Connection = connection; pst.CommandType = CommandType.Text; Classe.ID = (int)pst.ExecuteScalar(); pst.CommandText = "commit work"; pst.ExecuteNonQuery(); connection.Close(); IDAO DAO = new AssentoDAO(); for (int i = 1; i <= Classe.QTD; i++) { DAO.salvar(new Assento(new Check_in()) { tipo = Classe.Tipo, Tag = "A" + i, viagem = new Passagens() { ID = Classe.ID } }); } DAO = new DepartamentoDAO(); DAO.salvar(Classe); return; }
public string processar(EntidadeDominio entidade) { string resposta = ""; Passagens pass = (Passagens)entidade; if (pass.QTD <= 0) { resposta += "quantidade inválida\n"; } if (pass.LO_chegada.ID == 0) { resposta += "aeroporto de chegada inválido\n"; } if (pass.LO_partida.ID == 0) { resposta += "aeroporto de partida inválido\n"; } if (pass.LO_chegada.ID == pass.LO_partida.ID) { resposta += "aeroporto de partida e chegada iguais\n"; } if (pass.DT_partida <= DateTime.Now) { resposta += "partida não pode ser antes do cadastro\n"; } if (pass.DT_chegada <= DateTime.Now) { resposta += "chegada não pode ser antes do cadastro\n"; } if ((pass.DT_chegada - pass.DT_partida).TotalHours <= 1.0) { resposta += "a viagem não pode durar menos que uma hora\n"; } if (!string.IsNullOrEmpty(resposta)) { return(resposta); } else { return(null); } }
public override void alterar(EntidadeDominio entidade) { try { if (connection.State == ConnectionState.Closed) { connection.Open(); } Passagens Classe = (Passagens)entidade; pst.CommandText = "UPDATE passagens SET class_id=:nome, avi_id=:nom ,data_chegada=:no ,data_partida=:nod ,pass_lo_chegada=:node,pass_lo_partida=:nodei,qtd=:dev WHERE pass_id=:co"; parameters = new NpgsqlParameter[] { new NpgsqlParameter("nome", Classe.Tipo.ID), new NpgsqlParameter("nom", Classe.Aviao_v.ID), new NpgsqlParameter("no", Classe.DT_chegada), new NpgsqlParameter("nod", Classe.DT_partida), new NpgsqlParameter("node", Classe.LO_chegada.ID), new NpgsqlParameter("nodei", Classe.LO_partida.ID), new NpgsqlParameter("dev", Classe.QTD), new NpgsqlParameter("co", Classe.ID) }; pst.Parameters.Clear(); pst.Parameters.AddRange(parameters); pst.Connection = connection; pst.CommandType = CommandType.Text; pst.ExecuteNonQuery(); pst.CommandText = "commit work"; pst.ExecuteNonQuery(); connection.Close(); return; } catch (Exception e) { throw e; } }
public ActionResult DevolverPassagem(Passagens passagem) { var url = "http://localhost:8090/deletarPassagem/" + passagem.id + ""; var client = new HttpClient(); var response = client.DeleteAsync(url).GetAwaiter().GetResult(); var banco = Utils.InstituicaoFinanceira; banco.saldo = banco.saldo + Utils.Voos.valorPassagem; url = "http://localhost:8090/editarBanco"; client = new HttpClient(); response = client.PutAsJsonAsync(url, banco).GetAwaiter().GetResult(); var voo = Utils.Voos; voo.qtdAssentos = Utils.Voos.qtdAssentos + 1; Utils.MeuVoo(voo); url = "http://localhost:8090/editarVoo"; client = new HttpClient(); response = client.PutAsJsonAsync(url, Utils.Voos).GetAwaiter().GetResult(); return(RedirectToAction("MinhasPassagens")); }
public override List <EntidadeDominio> consultar(EntidadeDominio entidade) { try { if (connection.State == ConnectionState.Closed) { connection.Open(); } pst.Dispose(); Passagens Classe = (Passagens)entidade; string sql = null; if (Classe.ID == 0 && Classe.LO_chegada.ID == 0 && Classe.LO_partida.ID == 0) { sql = "SELECT * FROM passagens "; } else if (Classe.LO_chegada.ID == 0 && Classe.LO_partida.ID != 0) { sql = "SELECT pass_id,pass_lo_chegada ,pass_lo_partida ,qtd ,avi_id ,class_id ,data_partida ,data_chegada, class_nome,b.nome p_nome,c.nome c_nome, b.lat p_lat,c.lat c_lat, b.lng p_lng,c.lng c_lng, peso FROM passagens join aeroporto b on(b.aero_id=pass_lo_partida) join aeroporto c on(c.aero_id=pass_lo_chegada) join classe using(class_id) WHERE pass_lo_partida = :cod"; } else if (Classe.LO_chegada.ID != 0 && Classe.LO_partida.ID != 0) { sql = "SELECT pass_id,pass_lo_chegada ,pass_lo_partida ,qtd ,avi_id ,class_id ,data_partida ,data_chegada, class_nome,b.nome p_nome,c.nome c_nome, b.lat p_lat,c.lat c_lat, b.lng p_lng,c.lng c_lng, peso FROM passagens join aeroporto b on(b.aero_id=pass_lo_partida) join aeroporto c on(c.aero_id=pass_lo_chegada) join classe using(class_id) WHERE pass_lo_partida = :cod and pass_lo_chegada = :codd and date(data_partida)=:code"; } else { sql = "SELECT * FROM passagens WHERE pass_id= :co"; } pst = new NpgsqlCommand(); pst.CommandText = sql; parameters = new NpgsqlParameter[] { new NpgsqlParameter("co", Classe.ID), new NpgsqlParameter("cod", Classe.LO_partida.ID), new NpgsqlParameter("codd", Classe.LO_chegada.ID), new NpgsqlParameter("code", Classe.DT_partida) }; pst.Parameters.Clear(); pst.Parameters.AddRange(parameters); pst.Connection = connection; pst.CommandType = CommandType.Text; //pst.ExecuteNonQuery(); vai = pst.ExecuteReader(); List <EntidadeDominio> Classes = new List <EntidadeDominio>(); Passagens p; while (vai.Read()) { p = new Passagens(); p.ID = Convert.ToInt32(vai["pass_id"]); p.DT_chegada = Convert.ToDateTime(vai["data_chegada"]); p.DT_partida = Convert.ToDateTime(vai["data_partida"]); p.LO_chegada.ID = Convert.ToInt32(vai["pass_lo_chegada"].ToString()); p.LO_partida.ID = Convert.ToInt32(vai["pass_lo_partida"].ToString()); p.Tipo.ID = Convert.ToInt32(vai["class_id"]); p.Aviao_v.ID = Convert.ToInt32(vai["avi_id"]); if (Classe.LO_partida.ID != 0) { p.LO_chegada.Nome = (vai["c_nome"].ToString()); p.LO_partida.Nome = (vai["p_nome"].ToString()); p.LO_chegada.lat = Convert.ToDouble(vai["c_lat"]); p.LO_partida.lat = Convert.ToDouble(vai["p_lat"]); p.LO_chegada.lng = Convert.ToDouble(vai["c_lng"]); p.LO_partida.lng = Convert.ToDouble(vai["p_lng"]); p.Tipo.Nome = (vai["class_nome"].ToString()); p.Tipo.Peso = Convert.ToDouble(vai["peso"]); } if (vai["qtd"] != DBNull.Value) { p.QTD = Convert.ToInt32(vai["qtd"]); } Classes.Add(p); } vai.Close(); connection.Close(); return(Classes); } catch (NpgsqlException ora) { throw ora; } }
public void OnGet(string cod, string code) { if (!autenticar(1)) { return; } var usu = HttpContext.Session.GetObjectFromJson <Usuarios>("login"); if (usu == null) { Response.Redirect(("./")); return; } res = commands["CONSULTAR"].execute(new Cliente() { usuario = usu }); //usu if (res.Entidades.Count > 0) { id_cli = res.Entidades.ElementAt(0).ID.ToString(); } var venn = HttpContext.Session.GetObjectFromJson <Venda>(devil); if (venn != null) { ven = venn; } listItems = GetRoles(); if (!string.IsNullOrEmpty(cod)) { liv.ID = int.Parse(cod); //gp.Colocar_preco.Clear(); //gp.Colocar_preco.Add(liv); var roles = commands["CONSULTAR"].execute(liv).Entidades; Passagem_Venda pass = new Passagem_Venda() { Pass = roles.Cast <Passagens>().ToList() }; res = commands["CONSULTAR"].execute(pass); liv = pass.Pass.ElementAt(0); bool chk = false; foreach (Viagem item in ven.Viagems) { if (item.Voo.ID == liv.ID) { item.qtd++; item.Valor = item.Valor_Unidade * item.qtd; chk = true; break; } } if (!chk) { Viagem item = new Viagem() { Voo = liv, qtd = 1, Valor = liv.Preco_uni, Valor_Unidade = liv.Preco_uni, Tipo = liv.Tipo }; ven.Viagems.Add(item); } } if (!string.IsNullOrEmpty(code)) { liv.ID = int.Parse(code); var roles = commands["CONSULTAR"].execute(liv).Entidades; Passagem_Venda pass = new Passagem_Venda() { Pass = roles.Cast <Passagens>().ToList() }; res = commands["CONSULTAR"].execute(pass); liv = pass.Pass.ElementAt(0); foreach (Viagem item in ven.Viagems) { if (item.Voo.ID == liv.ID) { item.qtd--; item.Valor = item.Valor_Unidade * item.qtd; if (item.qtd <= 0) { ven.Viagems.Remove(item); } break; } } } HttpContext.Session.SetObjectAsJson(devil, ven); //*/ }