public static void InsertarParticipante(int codigoUsuario, int codigoSorteo, int codigoPremio) { ISession nhSesion = ManejoNHibernate.IniciarSesion(); try { Sorteo sorteo = CatalogoSorteo.RecuperarPorCodigo(codigoSorteo, nhSesion); Participante participante = new Participante(); participante.FechaParticipacion = DateTime.Now; participante.Premio = CatalogoPremio.RecuperarPorCodigo(codigoPremio, nhSesion); participante.Usuario = CatalogoUsuario.RecuperarPorCodigo(codigoUsuario, nhSesion); sorteo.Participantes.Add(participante); CatalogoSorteo.InsertarActualizar(sorteo, nhSesion); } catch (Exception ex) { throw ex; } finally { nhSesion.Close(); nhSesion.Dispose(); } }
public static DataTable RecuperarTodosPremios() { ISession nhSesion = ManejoNHibernate.IniciarSesion(); try { DataTable tablaPremios = new DataTable(); tablaPremios.Columns.Add("codigoPremio"); tablaPremios.Columns.Add("descripcion"); tablaPremios.Columns.Add("probabilidad"); List <Premio> listaPremios = CatalogoPremio.RecuperarTodos(nhSesion); (from s in listaPremios select s).Aggregate(tablaPremios, (dt, r) => { dt.Rows.Add(r.Codigo, r.Descripcion, r.Probabilidad); return(dt); }); return(tablaPremios); } catch (Exception ex) { throw ex; } finally { nhSesion.Close(); nhSesion.Dispose(); } }
public static void InsertarActualizarPremio(int codigoPremio, string descripcion, int probabilidad) { ISession nhSesion = ManejoNHibernate.IniciarSesion(); try { Premio premio; if (codigoPremio == 0) { premio = new Premio(); } else { premio = CatalogoPremio.RecuperarPorCodigo(codigoPremio, nhSesion); } premio.Descripcion = descripcion; premio.Probabilidad = probabilidad; CatalogoPremio.InsertarActualizar(premio, nhSesion); } catch (Exception ex) { throw ex; } finally { nhSesion.Close(); nhSesion.Dispose(); } }
public ActionResult DeleteConfirmed(int id) { CatalogoPremio catalogoPremio = db.CatalogoPremios.Find(id); db.CatalogoPremios.Remove(catalogoPremio); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "IdCatalogoPremio,Descripcion,FechaCarga,FechaBaja")] CatalogoPremio catalogoPremio) { if (ModelState.IsValid) { db.Entry(catalogoPremio).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(catalogoPremio)); }
public ActionResult Create([Bind(Include = "IdCatalogoPremio,Descripcion,FechaCarga,FechaBaja")] CatalogoPremio catalogoPremio) { if (ModelState.IsValid) { db.CatalogoPremios.Add(catalogoPremio); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(catalogoPremio)); }
// GET: CatalogoPremios/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CatalogoPremio catalogoPremio = db.CatalogoPremios.Find(id); if (catalogoPremio == null) { return(HttpNotFound()); } return(View(catalogoPremio)); }
public static int RecuperarCodigoPremio() { ISession nhSesion = ManejoNHibernate.IniciarSesion(); try { Random rnd = new Random(); int sorteo = rnd.Next(1, 100); int codigoPremio = 0; int probabilidadAnterior = 0; int probabilidadPosterior = 0; List <Premio> listaPremios = CatalogoPremio.RecuperarTodos(nhSesion); foreach (Premio premio in listaPremios) { probabilidadPosterior = probabilidadPosterior + premio.Probabilidad; if (sorteo > probabilidadAnterior && sorteo <= probabilidadPosterior) { codigoPremio = premio.Codigo; break; } probabilidadAnterior = probabilidadAnterior + premio.Probabilidad; } return(codigoPremio); } catch (Exception ex) { throw ex; } finally { nhSesion.Close(); nhSesion.Dispose(); } }