예제 #1
0
        public Receta ConvertENToModelUI(RecetaEN en)
        {
            Receta model = new Receta();

            model.id            = en.Id;
            model.Nombre        = en.Nombre;
            model.Descripcion   = en.Descripcion;
            model.Foto          = en.Foto;
            model.FechaCreacion = en.FechaCreacion;
            model.Estado        = en.Estado;

            model.IdUsuario     = en.Usuario.Id;
            model.NombreUsuario = en.Usuario.Nick;

            model.UsuariosFavorito = en.UsuariosFavorito.ToList();
            // Pasos ordenados por numero paso
            model.Pasos = new AssemblerPaso().ConvertListENToModel(en.Pasos);
            model.Pasos = model.Pasos.OrderBy(f => f.NumeroPaso).ToList();

            model.Comentarios = new AssemblerComentario().ConvertListENToModel(en.Comentarios);
            //model.Comentarios = en.Comentarios.ToList();

            model.LineasIngrediente = new AssemblerLineaIngrediente().ConvertListENToModel(en.LineasIngrediente);
            //model.LineasIngrediente = en.LineasIngrediente.ToList();

            model.LineasListaCompra = en.LineasListaCompra.ToList();

            return(model);
        }
예제 #2
0
        public int New_(RecetaEN receta)
        {
            try
            {
                SessionInitializeTransaction();
                if (receta.Usuario != null)
                {
                    // Argumento OID y no colección.
                    receta.Usuario = (EnMiNeveraGenNHibernate.EN.EnMiNevera.UsuarioEN)session.Load(typeof(EnMiNeveraGenNHibernate.EN.EnMiNevera.UsuarioEN), receta.Usuario.Id);

                    receta.Usuario.Recetas
                    .Add(receta);
                }

                session.Save(receta);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is EnMiNeveraGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new EnMiNeveraGenNHibernate.Exceptions.DataLayerException("Error in RecetaCAD.", ex);
            }


            finally
            {
                SessionClose();
            }

            return(receta.Id);
        }
예제 #3
0
        public int New_(string p_nombre, string p_descripcion, string p_foto, int p_usuario, Nullable <DateTime> p_fechaCreacion, EnMiNeveraGenNHibernate.Enumerated.EnMiNevera.EstadosEnum p_estado)
        {
            RecetaEN recetaEN = null;
            int      oid;

            //Initialized RecetaEN
            recetaEN        = new RecetaEN();
            recetaEN.Nombre = p_nombre;

            recetaEN.Descripcion = p_descripcion;

            recetaEN.Foto = p_foto;


            if (p_usuario != -1)
            {
                // El argumento p_usuario -> Property usuario es oid = false
                // Lista de oids id
                recetaEN.Usuario    = new EnMiNeveraGenNHibernate.EN.EnMiNevera.UsuarioEN();
                recetaEN.Usuario.Id = p_usuario;
            }

            recetaEN.FechaCreacion = p_fechaCreacion;

            recetaEN.Estado = p_estado;

            //Call to RecetaCAD

            oid = _IRecetaCAD.New_(recetaEN);
            return(oid);
        }
예제 #4
0
        public void Banear(int p_oid)
        {
            /*PROTECTED REGION ID(EnMiNeveraGenNHibernate.CEN.EnMiNevera_Receta_banear) ENABLED START*/

            // Write here your custom code...

            System.Console.WriteLine("\n Entro aqui----------------------------------------------\n");

            RecetaEN receta = new RecetaEN();

            receta = _IRecetaCAD.ReadOIDDefault(p_oid);

            //UsuarioEN usuario = _IUsuarioCAD.ReadOIDDefault(p_usuario);

            System.Console.WriteLine("\n Entro aqui1\n");
            if (receta.Estado.Equals(Enumerated.EnMiNevera.EstadosEnum.publicado))
            {
                System.Console.WriteLine("\n Entro aqui2 \n");
                receta.Estado = Enumerated.EnMiNevera.EstadosEnum.baneado;
            }
            else if (receta.Estado.Equals(Enumerated.EnMiNevera.EstadosEnum.baneado))
            {
                System.Console.WriteLine("\n Entro aqui3\n");
                receta.Estado = Enumerated.EnMiNevera.EstadosEnum.publicado;
            }
            System.Console.WriteLine("\n Entro aqui4 \n");
            _IRecetaCAD.Modify(receta);



            //throw new NotImplementedException ("Method Banear() not yet implemented.");

            /*PROTECTED REGION END*/
        }
예제 #5
0
        public RecetaEN ReadOIDDefault(int id)
        {
            RecetaEN recetaEN = null;

            try
            {
                SessionInitializeTransaction();
                recetaEN = (RecetaEN)session.Get(typeof(RecetaEN), id);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is EnMiNeveraGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new EnMiNeveraGenNHibernate.Exceptions.DataLayerException("Error in RecetaCAD.", ex);
            }


            finally
            {
                SessionClose();
            }

            return(recetaEN);
        }
예제 #6
0
        public void Destroy(int id)
        {
            try
            {
                SessionInitializeTransaction();
                RecetaEN recetaEN = (RecetaEN)session.Load(typeof(RecetaEN), id);
                session.Delete(recetaEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is EnMiNeveraGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new EnMiNeveraGenNHibernate.Exceptions.DataLayerException("Error in RecetaCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }
예제 #7
0
        public bool banearCP(int p_oid, int p_usuario)
        {
            //IPedidoCAD _IPedidoCAD = null;
            //PedidoCEN pedidoCEN = null;
            //ArticuloCP articuloCP = null;
            int        oid        = -1;
            bool       devuelve   = false;
            RecetaCEN  recetaCEN  = null;
            UsuarioCEN usuarioCEN = null;

            try
            {
                SessionInitializeTransaction();
                RecetaCAD recetaCAD = new RecetaCAD(session);
                recetaCEN = new RecetaCEN(recetaCAD);
                UsuarioCAD usuarioCAD = new UsuarioCAD(session);
                usuarioCEN = new UsuarioCEN(usuarioCAD);
                RecetaEN recetaEN = new RecetaEN();
                recetaEN = recetaCAD.ReadOIDDefault(p_oid);
                UsuarioEN usuarioEN = new UsuarioEN();
                usuarioEN        = usuarioCAD.ReadOIDDefault(p_usuario);
                recetaEN.Usuario = usuarioEN;
                System.Console.WriteLine("\n Entro aqui1 \n");
                if (recetaEN.Estado.Equals(EstadosEnum.publicado))
                {
                    System.Console.WriteLine("\n Entro aqui2\n");
                    recetaEN.Estado = EstadosEnum.baneado;
                    devuelve        = true;
                }
                else if (recetaEN.Estado.Equals(EstadosEnum.baneado))
                {
                    System.Console.WriteLine("\n Entro aqui3\n");
                    recetaEN.Estado = EstadosEnum.publicado;
                    devuelve        = true;
                }
                System.Console.WriteLine("\n Entro aqui4 \n");
                recetaCAD.Modify(recetaEN);
                SessionCommit();
            }
            catch (Exception ex)
            {
                SessionRollBack();
                throw ex;
            }
            finally
            {
                SessionClose();
            }

            return(devuelve);
        }
예제 #8
0
        public void Modify(int p_Receta_OID, string p_nombre, string p_descripcion, string p_foto, Nullable <DateTime> p_fechaCreacion, EnMiNeveraGenNHibernate.Enumerated.EnMiNevera.EstadosEnum p_estado)
        {
            RecetaEN recetaEN = null;

            //Initialized RecetaEN
            recetaEN               = new RecetaEN();
            recetaEN.Id            = p_Receta_OID;
            recetaEN.Nombre        = p_nombre;
            recetaEN.Descripcion   = p_descripcion;
            recetaEN.Foto          = p_foto;
            recetaEN.FechaCreacion = p_fechaCreacion;
            recetaEN.Estado        = p_estado;
            //Call to RecetaCAD

            _IRecetaCAD.Modify(recetaEN);
        }
예제 #9
0
        public bool cambiarNumPasos(int p_oid, int p_num_paso_old, int p_num_paso_new, int p_receta, int p_usuario)
        {
            bool       devuelve   = false;
            RecetaCEN  recetaCEN  = null;
            PasosCEN   pasosCEN   = null;
            UsuarioCEN usuarioCEN = null;

            try
            {
                SessionInitializeTransaction();
                RecetaCAD recetaCAD = new RecetaCAD(session);
                recetaCEN = new RecetaCEN(recetaCAD);
                UsuarioCAD usuarioCAD = new UsuarioCAD(session);
                usuarioCEN = new UsuarioCEN(usuarioCAD);
                PasosCAD pasosCAD = new PasosCAD(session);
                pasosCEN = new PasosCEN(pasosCAD);
                PasosEN pasosEN = new PasosEN();
                pasosEN = pasosCAD.ReadOIDDefault(p_oid);
                RecetaEN recetaEN = new RecetaEN();
                recetaEN = recetaCAD.ReadOIDDefault(p_receta);
                UsuarioEN usuarioEN = new UsuarioEN();
                usuarioEN        = usuarioCAD.ReadOIDDefault(p_usuario);
                recetaEN.Usuario = usuarioEN;
                pasosEN.Receta   = recetaEN;
                System.Console.WriteLine("\n Entro aqui1 \n");
                if (pasosEN.NumeroPaso != p_num_paso_new)
                {
                    pasosEN.NumeroPaso = p_num_paso_new;
                    pasosCAD.Modify(pasosEN);
                }

                SessionCommit();
            }
            catch (Exception ex)
            {
                SessionRollBack();
                throw ex;
            }
            finally
            {
                SessionClose();
            }

            return(devuelve);
        }
예제 #10
0
        public bool guardarFavorito(int p_oid, int p_receta)
        {
            bool devuelve = false;

            UsuarioCEN usuarioCEN = null;
            RecetaCEN  recetaCEN  = null;


            try
            {
                SessionInitializeTransaction();
                UsuarioCAD usuarioCAD = new UsuarioCAD(session);
                usuarioCEN = new UsuarioCEN(usuarioCAD);
                UsuarioEN usuarioEN = new UsuarioEN();
                usuarioEN = usuarioCAD.ReadOIDDefault(p_oid);
                RecetaCAD recetaCAD = new RecetaCAD(session);
                recetaCEN = new RecetaCEN(recetaCAD);
                RecetaEN recetaEN = new RecetaEN();
                recetaEN = recetaCAD.ReadOIDDefault(p_oid);

                if (!usuarioEN.Favoritos.Contains(recetaEN))
                {
                    usuarioEN.Favoritos.Add(recetaEN);
                    devuelve = true;
                }
                else
                {
                    usuarioEN.Favoritos.Remove(recetaEN);
                }
                SessionCommit();
            }
            catch (Exception ex)
            {
                SessionRollBack();
                throw ex;
            }
            finally
            {
                SessionClose();
            }

            return(devuelve);
        }
예제 #11
0
        public void CrearLineaIngrediente(int p_oid, int p_cantidad, EnMiNeveraGenNHibernate.Enumerated.EnMiNevera.UnidadesEnum p_unidad, string p_nombre)
        {
            /*PROTECTED REGION ID(EnMiNeveraGenNHibernate.CEN.EnMiNevera_Receta_crearLineaIngrediente) ENABLED START*/

            // Write here your custom code...

            RecetaEN           receta      = _IRecetaCAD.ReadOIDDefault(p_oid);
            LineaIngredienteEN linea       = new LineaIngredienteEN();
            IngredienteEN      ingrediente = new IngredienteEN();

            linea.Cantidad    = p_cantidad;
            linea.Unidad      = p_unidad;
            linea.Ingrediente = ingrediente;


            //throw new NotImplementedException ("Method CrearLineaIngrediente() not yet implemented.");

            /*PROTECTED REGION END*/
        }
예제 #12
0
        public void Modify(RecetaEN receta)
        {
            try
            {
                SessionInitializeTransaction();
                RecetaEN recetaEN = (RecetaEN)session.Load(typeof(RecetaEN), receta.Id);

                recetaEN.Nombre = receta.Nombre;


                recetaEN.Descripcion = receta.Descripcion;


                recetaEN.Foto = receta.Foto;


                recetaEN.FechaCreacion = receta.FechaCreacion;


                recetaEN.Estado = receta.Estado;

                session.Update(recetaEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is EnMiNeveraGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new EnMiNeveraGenNHibernate.Exceptions.DataLayerException("Error in RecetaCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }