示例#1
0
        public void Destroy(int id
                            )
        {
            try
            {
                SessionInitializeTransaction();
                TemaEN temaEN = (TemaEN)session.Load(typeof(TemaEN), id);
                session.Delete(temaEN);
                SessionCommit();
            }

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


            finally
            {
                SessionClose();
            }
        }
示例#2
0
        public TemaEN ReadOIDDefault(int id
                                     )
        {
            TemaEN temaEN = null;

            try
            {
                SessionInitializeTransaction();
                temaEN = (TemaEN)session.Get(typeof(TemaEN), id);
                SessionCommit();
            }

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


            finally
            {
                SessionClose();
            }

            return(temaEN);
        }
示例#3
0
        public static TemaModel ConvertENToModelUI(TemaEN en)
        {
            TemaModel tema = new TemaModel();

            tema.Id          = en.Id;
            tema.Titulo      = en.Titulo;
            tema.Descripcion = en.Descripcion;
            tema.Estado      = en.Estado.ToString();
            tema.Usuario     = en.Usuario.Nick;
            tema.Email       = en.Usuario.Email;
            tema.Texto       = "";

            try
            {
                string   parseDate = en.Fecha.ToString();
                string[] fecha     = parseDate.Split(' ');
                tema.Fecha = fecha[0];
            }
            catch
            {
                tema.Fecha = "Fecha desconocida";
            }

            return(tema);
        }
示例#4
0
        public int New_(TemaEN tema)
        {
            try
            {
                SessionInitializeTransaction();
                if (tema.Usuario != null)
                {
                    // Argumento OID y no colección.
                    tema.Usuario = (DSMGitGenNHibernate.EN.DSMGit.UsuarioEN)session.Load(typeof(DSMGitGenNHibernate.EN.DSMGit.UsuarioEN), tema.Usuario.Email);

                    tema.Usuario.Temas
                    .Add(tema);
                }

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

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


            finally
            {
                SessionClose();
            }

            return(tema.Id);
        }
示例#5
0
        public int New_(string p_descripcion, DSMGitGenNHibernate.Enumerated.DSMGit.EstadoTemaEnum p_estado, string p_usuario, string p_titulo, Nullable <DateTime> p_fecha)
        {
            TemaEN temaEN = null;
            int    oid;

            //Initialized TemaEN
            temaEN             = new TemaEN();
            temaEN.Descripcion = p_descripcion;

            temaEN.Estado = p_estado;


            if (p_usuario != null)
            {
                // El argumento p_usuario -> Property usuario es oid = false
                // Lista de oids id
                temaEN.Usuario       = new DSMGitGenNHibernate.EN.DSMGit.UsuarioEN();
                temaEN.Usuario.Email = p_usuario;
            }

            temaEN.Titulo = p_titulo;

            temaEN.Fecha = p_fecha;

            //Call to TemaCAD

            oid = _ITemaCAD.New_(temaEN);
            return(oid);
        }
示例#6
0
        public TemaEN ReadOID(int id
                              )
        {
            TemaEN temaEN = null;

            temaEN = _ITemaCAD.ReadOID(id);
            return(temaEN);
        }
示例#7
0
        // GET: Tema/Details/5
        public ActionResult Details(int id)
        {
            SessionInitialize();
            TemaCAD   temaCAD   = new TemaCAD(session);
            TemaEN    temaEN    = temaCAD.ReadOIDDefault(id);
            TemaModel temaModel = TemaAssembler.ConvertENToModelUI(temaEN);

            SessionClose();
            return(View(temaModel));
        }
示例#8
0
        public void Modify(int p_Tema_OID, string p_descripcion, DSMGitGenNHibernate.Enumerated.DSMGit.EstadoTemaEnum p_estado, string p_titulo, Nullable <DateTime> p_fecha)
        {
            TemaEN temaEN = null;

            //Initialized TemaEN
            temaEN             = new TemaEN();
            temaEN.Id          = p_Tema_OID;
            temaEN.Descripcion = p_descripcion;
            temaEN.Estado      = p_estado;
            temaEN.Titulo      = p_titulo;
            temaEN.Fecha       = p_fecha;
            //Call to TemaCAD

            _ITemaCAD.Modify(temaEN);
        }
        // GET: Notificacion/Create
        public void CreateNT(int tema, string usuario)
        {
            SessionInitialize();
            TemaCAD    temCAD = new TemaCAD(session);
            TemaEN     temaa  = temCAD.ReadOIDDefault(tema);
            UsuarioCAD usuCAD = new UsuarioCAD(session);
            UsuarioEN  usuEN  = usuCAD.ReadOIDDefault(usuario);

            string receptor = temaa.Usuario.Email;
            string nombret  = temaa.Titulo;
            string nombreu  = usuEN.Nick;

            NotificacionCEN noti = new NotificacionCEN();

            noti.New_(nombreu + " te ha respondido al tema " + nombret + " .", receptor);
        }
示例#10
0
        public void Cerrar(int p_oid)
        {
            /*PROTECTED REGION ID(DSMGitGenNHibernate.CEN.DSMGit_Tema_cerrar) ENABLED START*/
            TemaEN tema = _ITemaCAD.ReadOID(p_oid);

            if (tema.Estado == Enumerated.DSMGit.EstadoTemaEnum.abierto)
            {
                tema.Estado = Enumerated.DSMGit.EstadoTemaEnum.cerrado;
                bool result = true;
            }
            _ITemaCAD.Modify(tema);
            // Write here your custom code...

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

            /*PROTECTED REGION END*/
        }
示例#11
0
// Modify default (Update all attributes of the class)

        public void ModifyDefault(TemaEN tema)
        {
            try
            {
                SessionInitializeTransaction();
                TemaEN temaEN = (TemaEN)session.Load(typeof(TemaEN), tema.Id);

                temaEN.Descripcion = tema.Descripcion;



                temaEN.Estado = tema.Estado;



                temaEN.Titulo = tema.Titulo;


                temaEN.Etiquetas = tema.Etiquetas;


                temaEN.Fecha = tema.Fecha;

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

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


            finally
            {
                SessionClose();
            }
        }
示例#12
0
        public ActionResult Delete(int id, FormCollection collection)
        {
            try
            {
                // TODO: Add delete logic here

                SessionInitialize();
                TemaCAD   temaCAD = new TemaCAD(session);
                TemaCEN   temaCEN = new TemaCEN(temaCAD);
                TemaEN    temaEN  = temaCEN.ReadOID(id);
                TemaModel tema    = TemaAssembler.ConvertENToModelUI(temaEN);

                RespuestaCAD           resCAD = new RespuestaCAD(session);
                RespuestaCEN           resCEN = new RespuestaCEN(resCAD);
                IList <RespuestaEN>    resEN  = resCEN.DameRespuestaPorTema(tema.Id);
                IList <RespuestaModel> res    = RespuestaAssembler.ConvertListENToModel(resEN);
                SessionClose();

                foreach (RespuestaModel r in res)
                {
                    new RespuestaCEN().Destroy(r.Id);
                }


                SessionClose();

                new TemaCEN().Destroy(id);



                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }