public int Crear(string p_nombre, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_contenedor, int p_usuario)
        {
            /*PROTECTED REGION ID(ReciclaUAGenNHibernate.CEN.ReciclaUA_Material_crear_customized) ENABLED START*/

            MaterialEN materialEN = null;

            int oid;

            //Initialized MaterialEN
            materialEN            = new MaterialEN();
            materialEN.Nombre     = p_nombre;
            materialEN.EsValido   = Enumerated.ReciclaUA.EstadoEnum.enProceso;
            materialEN.Contenedor = p_contenedor;


            if (p_usuario != -1)
            {
                materialEN.Usuario    = new ReciclaUAGenNHibernate.EN.ReciclaUA.UsuarioEN();
                materialEN.Usuario.Id = p_usuario;
            }

            //Call to MaterialCAD

            oid = _IMaterialCAD.Crear(materialEN);
            return(oid);
            /*PROTECTED REGION END*/
        }
Esempio n. 2
0
        public HttpResponseMessage SiguienteItem(int p_oid, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_tipocontenedor)
        {
            // CP, returnValue
            JuegoCP juegoCP = null;

            JuegoDTOA returnValue;
            JuegoEN   en;

            try
            {
                SessionInitializeTransaction();

                string token = "";
                if (Request.Headers.Authorization != null)
                {
                    token = Request.Headers.Authorization.ToString();
                }
                int id = new UsuarioCEN().CheckToken(token);



                juegoCP = new JuegoCP(session);

                // Operation
                en = juegoCP.SiguienteItem(p_oid, p_tipocontenedor);
                SessionCommit();

                // Convert return
                returnValue = JuegoAssembler.Convert(en, session);
            }

            catch (Exception e)
            {
                SessionRollBack();

                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 200 - OK
            return(this.Request.CreateResponse(HttpStatusCode.OK, returnValue));
        }
        private void init(int id
                          , ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum tipo, ReciclaUAGenNHibernate.EN.ReciclaUA.PuntoReciclajeEN punto, System.Collections.Generic.IList <ReciclaUAGenNHibernate.EN.ReciclaUA.AccionReciclarEN> acciones)
        {
            this.Id = id;


            this.Tipo = tipo;

            this.Punto = punto;

            this.Acciones = acciones;
        }
Esempio n. 4
0
        public void Modificar(int p_Contenedor_OID, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_tipo)
        {
            ContenedorEN contenedorEN = null;

            //Initialized ContenedorEN
            contenedorEN      = new ContenedorEN();
            contenedorEN.Id   = p_Contenedor_OID;
            contenedorEN.Tipo = p_tipo;
            //Call to ContenedorCAD

            _IContenedorCAD.Modificar(contenedorEN);
        }
        public void Modificar(int p_Material_OID, string p_nombre, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_contenedor, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.EstadoEnum p_esValido)
        {
            MaterialEN materialEN = null;

            //Initialized MaterialEN
            materialEN            = new MaterialEN();
            materialEN.Id         = p_Material_OID;
            materialEN.Nombre     = p_nombre;
            materialEN.Contenedor = p_contenedor;
            materialEN.EsValido   = p_esValido;
            //Call to MaterialCAD

            _IMaterialCAD.Modificar(materialEN);
        }
        private void init(int id
                          , string nombre, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum contenedor, System.Collections.Generic.IList <ReciclaUAGenNHibernate.EN.ReciclaUA.ItemEN> items, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.EstadoEnum esValido, ReciclaUAGenNHibernate.EN.ReciclaUA.UsuarioEN usuario)
        {
            this.Id = id;


            this.Nombre = nombre;

            this.Contenedor = contenedor;

            this.Items = items;

            this.EsValido = esValido;

            this.Usuario = usuario;
        }
Esempio n. 7
0
        public int Crear(ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_tipo, int p_punto)
        {
            ContenedorEN contenedorEN = null;
            int          oid;

            //Initialized ContenedorEN
            contenedorEN      = new ContenedorEN();
            contenedorEN.Tipo = p_tipo;


            if (p_punto != -1)
            {
                // El argumento p_punto -> Property punto es oid = false
                // Lista de oids id
                contenedorEN.Punto    = new ReciclaUAGenNHibernate.EN.ReciclaUA.PuntoReciclajeEN();
                contenedorEN.Punto.Id = p_punto;
            }

            //Call to ContenedorCAD

            oid = _IContenedorCAD.Crear(contenedorEN);
            return(oid);
        }
 public ContenedorEN(int id, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum tipo, ReciclaUAGenNHibernate.EN.ReciclaUA.PuntoReciclajeEN punto, System.Collections.Generic.IList <ReciclaUAGenNHibernate.EN.ReciclaUA.AccionReciclarEN> acciones
                     )
 {
     this.init(Id, tipo, punto, acciones);
 }
Esempio n. 9
0
        public System.Collections.Generic.IList <ReciclaUAGenNHibernate.EN.ReciclaUA.PuntoReciclajeEN> BuscarPuntosCercanosPorContenedor(double p_latitud, double p_longitud, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_tipo, int p_limit)
        {
            /*PROTECTED REGION ID(ReciclaUAGenNHibernate.CEN.ReciclaUA_PuntoReciclaje_buscarPuntosCercanosPorContenedor) ENABLED START*/
            PuntoReciclajeCP  cp   = new PuntoReciclajeCP();
            PuntoReciclajeCEN cen  = new PuntoReciclajeCEN();
            ContenedorCEN     cenc = new ContenedorCEN();

            IList <PuntoReciclajeEN> cercanos = cp.ObtenerPuntosCercanos(p_latitud, p_longitud, -1);

            var query = cercanos.Where(punto => cenc.BuscarContenedoresPorPunto(punto.Id).Any(contenedor => contenedor.Tipo == p_tipo));

            if (p_limit > 0)
            {
                query = query.Take(p_limit);
            }

            return(query.ToList());

            /*PROTECTED REGION END*/
        }
 public MaterialEN(int id, string nombre, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum contenedor, System.Collections.Generic.IList <ReciclaUAGenNHibernate.EN.ReciclaUA.ItemEN> items, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.EstadoEnum esValido, ReciclaUAGenNHibernate.EN.ReciclaUA.UsuarioEN usuario
                   )
 {
     this.init(Id, nombre, contenedor, items, esValido, usuario);
 }
Esempio n. 11
0
        public HttpResponseMessage BuscarPuntosCercanosPorContenedor(double p_latitud, double p_longitud, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_tipo, int p_limit)
        {
            // CAD, CEN, returnValue
            PuntoReciclajeRESTCAD puntoReciclajeRESTCAD = null;
            PuntoReciclajeCEN     puntoReciclajeCEN     = null;

            System.Collections.Generic.List <PuntoReciclajeDTOA> returnValue = null;
            System.Collections.Generic.List <PuntoReciclajeEN>   en;

            try
            {
                SessionInitializeTransaction();
                string token = "";
                if (Request.Headers.Authorization != null)
                {
                    token = Request.Headers.Authorization.ToString();
                }
                int id = new UsuarioCEN().CheckToken(token);



                puntoReciclajeRESTCAD = new PuntoReciclajeRESTCAD(session);
                puntoReciclajeCEN     = new PuntoReciclajeCEN(puntoReciclajeRESTCAD);


                // Operation
                en = puntoReciclajeCEN.BuscarPuntosCercanosPorContenedor(p_latitud, p_longitud, p_tipo, p_limit).ToList();
                SessionCommit();

                // Convert return
                if (en != null)
                {
                    returnValue = new System.Collections.Generic.List <PuntoReciclajeDTOA>();
                    foreach (PuntoReciclajeEN entry in en)
                    {
                        returnValue.Add(PuntoReciclajeAssembler.Convert(entry, session));
                    }
                }
            }

            catch (Exception e)
            {
                SessionRollBack();

                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 200 - OK
            return(this.Request.CreateResponse(HttpStatusCode.OK, returnValue));
        }
        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*/
        }
Esempio n. 13
0
        public void SiguienteItem(int p_oid, ReciclaUAGenNHibernate.Enumerated.ReciclaUA.TipoContenedorEnum p_tipocontenedor)
        {
            /*PROTECTED REGION ID(ReciclaUAGenNHibernate.CEN.ReciclaUA_Juego_siguienteItem) ENABLED START*/


            JuegoCAD Juegocad = new JuegoCAD();
            JuegoEN  juegoen  = Juegocad.BuscarPorId(p_oid);

            ItemCAD Itemcad = new ItemCAD();

            IList <ItemEN> itemsen = Itemcad.BuscarItemsPorNivel(juegoen.NivelActual.Id);

            if (itemsen [juegoen.ItemActual].Material.Contenedor == p_tipocontenedor)
            {
                //Acierto
                juegoen.Aciertos++;
                double penalizacion = 1 / juegoen.IntentosItemActual;

                /*
                 * if (juegoen.IntentosItemActual == 1) {
                 *      penalizacion = 1;
                 * }
                 * else if (juegoen.IntentosItemActual == 2) {
                 *      penalizacion = 0.75;
                 * }
                 * else if (juegoen.IntentosItemActual == 3) {
                 *      penalizacion = 0.5;
                 * }
                 * else{
                 *      penalizacion = 0.25;
                 * }
                 */
                juegoen.Puntuacion += Convert.ToInt32(juegoen.NivelActual.Puntuacion * penalizacion);

                juegoen.IntentosItemActual = 1;


                if (juegoen.ItemActual < itemsen.Count)
                {
                    juegoen.ItemActual++;
                }
                else
                {
                    juegoen.ItemActual = 0;
                }

                //Obtener siguente nivel

                //juegoen.NivelActual++;

                //Si No existe siguiente nivel

                //juegoen.Finalizado = true;
            }
            else
            {
                //Fallo
                juegoen.Fallos++;
                juegoen.IntentosItemActual++;
            }

            Juegocad.Modificar(juegoen);

            /*PROTECTED REGION END*/
        }