public NivelEN NivelItem(int id) { NivelEN result = null; try { SessionInitializeTransaction(); String sql = @"select self.Nivel FROM ItemEN self " + "where self.Id = :p_Id"; IQuery query = session.CreateQuery(sql).SetParameter("p_Id", id); result = query.UniqueResult <NivelEN>(); SessionCommit(); } catch (Exception ex) { SessionRollBack(); if (ex is ReciclaUAGenNHibernate.Exceptions.ModelException) { throw ex; } throw new ReciclaUAGenNHibernate.Exceptions.DataLayerException("Error in ItemRESTCAD.", ex); } finally { SessionClose(); } return(result); }
public static NivelDTOA Convert(NivelEN en, NHibernate.ISession session = null) { NivelDTOA dto = null; NivelRESTCAD nivelRESTCAD = null; NivelCEN nivelCEN = null; NivelCP nivelCP = null; if (en != null) { dto = new NivelDTOA(); nivelRESTCAD = new NivelRESTCAD(session); nivelCEN = new NivelCEN(nivelRESTCAD); nivelCP = new NivelCP(session); // // Attributes dto.Id = en.Id; dto.Numero = en.Numero; dto.Puntuacion = en.Puntuacion; // // TravesalLink // // Service } return(dto); }
public HttpResponseMessage BuscarPorId(int idNivel) { // CAD, CEN, EN, returnValue NivelRESTCAD nivelRESTCAD = null; NivelCEN nivelCEN = null; NivelEN nivelEN = null; NivelDTOA returnValue = null; try { SessionInitializeWithoutTransaction(); nivelRESTCAD = new NivelRESTCAD(session); nivelCEN = new NivelCEN(nivelRESTCAD); // Data nivelEN = nivelCEN.BuscarPorId(idNivel); // Convert return if (nivelEN != null) { returnValue = NivelAssembler.Convert(nivelEN, session); } } catch (Exception e) { if (e.GetType() == typeof(HttpResponseException)) { throw e; } else if (e.GetType() == typeof(ReciclaUAGenNHibernate.Exceptions.ModelException) && e.Message.Equals("El token es incorrecto")) { throw new HttpResponseException(HttpStatusCode.Forbidden); } else if (e.GetType() == typeof(ReciclaUAGenNHibernate.Exceptions.ModelException) || e.GetType() == typeof(ReciclaUAGenNHibernate.Exceptions.DataLayerException)) { throw new HttpResponseException(HttpStatusCode.BadRequest); } else { throw new HttpResponseException(HttpStatusCode.InternalServerError); } } finally { SessionClose(); } // Return 404 - Not found if (returnValue == null) { return(this.Request.CreateResponse(HttpStatusCode.NotFound)); } // Return 200 - OK else { return(this.Request.CreateResponse(HttpStatusCode.OK, returnValue)); } }
public HttpResponseMessage NivelItem(int idItem) { // CAD, EN ItemRESTCAD itemRESTCAD = null; ItemEN itemEN = null; // returnValue NivelEN en = null; NivelDTOA returnValue = null; try { SessionInitializeWithoutTransaction(); itemRESTCAD = new ItemRESTCAD(session); // Exists Item itemEN = itemRESTCAD.ReadOIDDefault(idItem); if (itemEN == null) { throw new HttpResponseException(this.Request.CreateResponse(HttpStatusCode.NotFound, "Item#" + idItem + " not found")); } // Rol // TODO: paginación en = itemRESTCAD.NivelItem(idItem); // Convert return if (en != null) { returnValue = NivelAssembler.Convert(en, session); } } catch (Exception e) { if (e.GetType() == typeof(HttpResponseException)) { throw e; } else if (e.GetType() == typeof(ReciclaUAGenNHibernate.Exceptions.ModelException) && e.Message.Equals("El token es incorrecto")) { throw new HttpResponseException(HttpStatusCode.Forbidden); } else if (e.GetType() == typeof(ReciclaUAGenNHibernate.Exceptions.ModelException) || e.GetType() == typeof(ReciclaUAGenNHibernate.Exceptions.DataLayerException)) { throw new HttpResponseException(HttpStatusCode.BadRequest); } else { throw new HttpResponseException(HttpStatusCode.InternalServerError); } } finally { SessionClose(); } // Return 204 - Empty if (returnValue == null) { return(this.Request.CreateResponse(HttpStatusCode.NoContent)); } // Return 200 - OK else { return(this.Request.CreateResponse(HttpStatusCode.OK, returnValue)); } }
public void WhenBuscoUnNivelPorEseNivel() { nivel = nivelCEN.BuscarPorId(-1); }
public void WhenBuscoElNivelPosSuId() { nivel = nivelCEN.BuscarPorId(nivelId); }
public ReciclaUAGenNHibernate.EN.ReciclaUA.JuegoEN SiguienteItem(int p_oid, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_tipocontenedor) { /*PROTECTED REGION ID(ReciclaUAGenNHibernate.CP.ReciclaUA_Juego_siguienteItem) ENABLED START*/ IJuegoCAD juegoCAD = null; JuegoCEN juegoCEN = null; JuegoEN juegoEN = null; INivelCAD nivelCAD = null; NivelCEN nivelCEN = null; NivelEN nivelEN = null; try { SessionInitializeTransaction(); juegoCAD = new JuegoCAD(session); juegoCEN = new JuegoCEN(juegoCAD); juegoEN = juegoCAD.BuscarPorId(p_oid); nivelCAD = new NivelCAD(session); nivelCEN = new NivelCEN(nivelCAD); IList <NivelEN> niveles = new List <NivelEN>(); ItemCAD Itemcad = new ItemCAD(session); niveles = nivelCAD.BuscarTodos(0, -1); nivelEN = niveles [juegoEN.NivelActual - 1]; IList <ItemEN> itemsen = Itemcad.BuscarItemsPorNivel(nivelEN.Id); if (itemsen [juegoEN.ItemActual].Material.Contenedor == p_tipocontenedor) { //Acierto juegoEN.Aciertos++; //Decimal penalizacion = 1 / juegoEN.IntentosItemActual; Decimal penalizacion = Decimal.Divide(1, juegoEN.IntentosItemActual); juegoEN.Puntuacion += Decimal.ToDouble(Decimal.Multiply(Convert.ToDecimal(nivelEN.Puntuacion), penalizacion)); juegoEN.IntentosItemActual = 1; if (juegoEN.ItemActual + 1 < itemsen.Count) { juegoEN.ItemActual++; } else { juegoEN.ItemActual = 0; niveles = nivelCAD.BuscarTodos(0, -1); if (juegoEN.NivelActual < niveles.Count) { juegoEN.NivelActual++; } else { juegoEN.Finalizado = true; } } } else { //Fallo juegoEN.Fallos++; juegoEN.IntentosItemActual++; } juegoCAD.Modificar(juegoEN); SessionCommit(); } catch (Exception ex) { SessionRollBack(); throw ex; } finally { SessionClose(); } return(juegoEN); /*PROTECTED REGION END*/ }