コード例 #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsCallback)
        {
            Master.nBotonera         = 0;
            Master.TituloPagina      = "Detalle de comunicados";
            Master.bFuncionesLocales = true;
            Master.FuncionesJavaScript.Add("Javascript/boxover.js");
            Master.Modulo = "NEUTRAL";
            try
            {
                Session["HAYAVISOS"] = "0";
                //Mostrar avisos únicamente al usuario real, no los de reconexión.
                if ((int)Session["IDFICEPI_PC_ACTUAL"] == (int)Session["IDFICEPI_ENTRADA"] &&
                    (int)Session["IDFICEPI_CVT_ACTUAL"] == (int)Session["IDFICEPI_ENTRADA"])
                {
                    //SqlDataReader dr2 = USUARIOAVISOS.SelectByT314_idusuario(null, (int)Session["UsuarioActual"]);
                    //Victor 17/06/2010: mostrar los avisos del usuario de entrada
                    SqlDataReader dr = USUARIOAVISOS.SelectByT314_idusuario(null, (int)Session["NUM_EMPLEADO_ENTRADA"]);
                    if (dr.Read())
                    {
                        Session["HAYAVISOS"] = "1";
                    }
                    dr.Close();
                    dr.Dispose();
                }
                if (Session["HAYAVISOS"].ToString() == "1")
                {
                    this.Controls.Add(LoadControl("~/Capa_Presentacion/UserControls/AvisosNav.ascx"));
                    Session["HAYAVISOS"] = "0"; //19/12/2014: Victor dixit: para que los avisos salgan una sola vez cuando se entra en la aplicación.
                }
                else
                {   //Si no hay avisos de Admon y hemos accedido desde menú para ver los que hay
                    sMensajeMMOFF = "No existen comunicados de Administración para Ud.";
                    bMostrarMMOFF = true;
                }

                if (bMostrarMMOFF)
                {
                    //this.Controls.Add(LoadControl("~/Capa_Presentacion/UserControls/mensajeOff.ascx"));
                    this.Controls.Add(LoadControl("~/Capa_Presentacion/UserControls/Msg/mmoff.ascx"));
                }
            }
            catch (Exception ex)
            {
                Master.sErrores = Errores.mostrarError("Error al carar la página", ex);
            }
            //1º Se indican (por este orden) la función a la que se va a devolver el resultado
            //   y la función que va a acceder al servidor
            string cbRespuesta = Page.ClientScript.GetCallbackEventReference(this, "arg", "RespuestaCallBack", "context", false);
            string cbLlamada   = "function RealizarCallBack(arg, context)" + "{" + cbRespuesta + ";" + "}";
            //2º Se "registra" la función que va a acceder al servidor.
            Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "RealizarCallBack", cbLlamada, true);
        }
    }
コード例 #2
0
    protected string Grabar(string sAccion, string strAvisos)
    {
        string sResul = "";

        #region abrir conexión y transacción
        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccionSerializable(oConn);
        }
        catch (Exception ex)
        {
            if (oConn.State == ConnectionState.Open)
            {
                Conexion.Cerrar(oConn);
            }
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion
        try
        {
            #region Avisos
            if (strAvisos != "")
            {
                string[] aAvisos = Regex.Split(strAvisos, "##");
                foreach (string sIdAviso in aAvisos)
                {
                    if (sIdAviso != "")
                    {
                        USUARIOAVISOS.BorrarTodos(tr, int.Parse(sIdAviso));
                        if (sAccion == "T")
                        {
                            USUARIOAVISOS.InsertarTodos(tr, int.Parse(sIdAviso));
                        }
                    }
                }
            }
            #endregion

            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar los profesionales asignados al aviso", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
コード例 #3
0
        //public string GetCallbackResult()
        //{
        //    //Se envía el resultado al cliente.
        //    return _callbackResultado;
        //}
        //public void RaiseCallbackEvent(string eventArg)
        //{
        //    string sResultado = "";
        //    //1º Si hubiera argumentos, se recogen y tratan.
        //    //string MisArg = eventArg;
        //    string[] aArgs = Regex.Split(eventArg, "@#@");
        //    sResultado = aArgs[0] + @"@#@";

        //    //2º Aquí realizaríamos el acceso a BD, etc,...
        //    switch (aArgs[0])
        //    {
        //        case ("eliminar"):
        //            sResultado += EliminarAviso(aArgs[1]);
        //            break;
        //    }

        //    //3º Damos contenido a la variable que se envía de vuelta al cliente.
        //    _callbackResultado = sResultado;
        //}
        private string ObtenerAvisos()
        {
            StringBuilder sb = new StringBuilder();
            string        sAfect;

            //sb.Append(" aProy = new Array();\n");
            sb.Append("<table id='tblDatos'>");
            //SqlDataReader dr = USUARIOAVISOS.SelectByT314_idusuario(null, int.Parse(Session["UsuarioActual"].ToString()));
            //Victor 17/06/2010: mostrar los avisos del usuario de entrada
            SqlDataReader dr = USUARIOAVISOS.SelectByT314_idusuario(null, (int)Session["NUM_EMPLEADO_ENTRADA"]);

            //int i = 0;
            while (dr.Read())
            {
                //Al haber saltos de línea no puedo usar un array por lo que cargo una tabla oculta
                //sb.Append("\taProy[" + i.ToString() + "] = {" +
                //                "titulo:\"" + Utilidades.escape(dr["t448_titulo"].ToString()) + "\"," +
                //                "texto:\"" + Utilidades.escape(dr["t448_texto"].ToString()) + "\"};\n");
                //i++;
                sAfect = "";
                sb.Append("<tr id='" + dr["t448_idaviso"].ToString() + "' titulo='" + dr["t448_titulo"].ToString() + "'");
                sb.Append(" texto='" + dr["t448_texto"].ToString() + "' afect='");
                if ((bool)dr["t448_IAP"])
                {
                    sAfect += "IAP, ";
                }
                if ((bool)dr["t448_PGE"])
                {
                    sAfect += "PGE, ";
                }
                if ((bool)dr["t448_PST"])
                {
                    sAfect += "PST, ";
                }
                if (sAfect.Length > 0)
                {
                    sAfect = sAfect.Substring(0, sAfect.Length - 2);
                }
                else
                {
                    sAfect = "NINGUNO";
                }
                sb.Append(sAfect);
                sb.Append("'><td></td></tr>");
            }
            sb.Append("</table>");
            dr.Close();
            dr.Dispose();
            return(sb.ToString());
        }
コード例 #4
0
    private string EliminarAviso(string sIdAviso)
    {
        string sResul = "OK@#@";

        #region abrir conexión y transacción
        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccion(oConn);
        }
        catch (Exception ex)
        {
            if (oConn.State == ConnectionState.Open)
            {
                Conexion.Cerrar(oConn);
            }
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion

        try
        {
            if (sIdAviso != "")
            {
                //Victor 17/06/2010: mostrar los avisos del usuario de entrada
                //USUARIOAVISOS.Delete(tr, int.Parse(sIdAviso), int.Parse(Session["UsuarioActual"].ToString()));
                //int iNumAvisos = USUARIOAVISOS.CountByUsuario(tr, int.Parse(Session["UsuarioActual"].ToString()));
                USUARIOAVISOS.Delete(tr, int.Parse(sIdAviso), (int)Session["NUM_EMPLEADO_ENTRADA"]);
                int iNumAvisos = USUARIOAVISOS.CountByUsuario(tr, (int)Session["NUM_EMPLEADO_ENTRADA"]);
                if (iNumAvisos == 0)
                {
                    Session["HAYAVISOS"] = "0";
                }
            }
            Conexion.CommitTransaccion(tr);
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al eliminar el aviso " + sIdAviso, ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
コード例 #5
0
    protected string Grabar(string sCodAviso, string strDatosBasicos, string strDatosRecursos)
    {
        string   sResul = "", sOpcionBD, sDesc, sTitulo, sDescLong;
        bool     bIAP = false, bPGE = false, bPST = false;
        int      iCodAviso, iCodRecurso;
        DateTime?dIniV = null;
        DateTime?dFinV = null;

        #region abrir conexión y transacción
        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccionSerializable(oConn);
        }
        catch (Exception ex)
        {
            if (oConn.State == ConnectionState.Open)
            {
                Conexion.Cerrar(oConn);
            }
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion
        try
        {
            if (sCodAviso == "0")
            {
                iCodAviso = -1;
            }
            else
            {
                iCodAviso = int.Parse(sCodAviso);
            }
            #region Datos generales
            if (strDatosBasicos != "")//No se ha modificado nada de la pestaña general
            {
                string[] aDatosTarea = Regex.Split(strDatosBasicos, "##");
                ///aDatosTarea[0] = Denominacion aviso
                ///aDatosTarea[1] = Titulo aviso
                ///aDatosTarea[2] = Texto libre
                ///aDatosTarea[3] = chkIAP
                ///aDatosTarea[4] = chkPGE
                ///aDatosTarea[5] = chkPST
                ///aDatosTarea[6] = txtValIni
                ///aDatosTarea[7] = txtValFin
                sDesc     = Utilidades.unescape(aDatosTarea[0]);
                sTitulo   = Utilidades.unescape(aDatosTarea[1]);
                sDescLong = Utilidades.unescape(aDatosTarea[2]);
                if (aDatosTarea[3] == "1")
                {
                    bIAP = true;
                }
                if (aDatosTarea[4] == "1")
                {
                    bPGE = true;
                }
                if (aDatosTarea[5] == "1")
                {
                    bPST = true;
                }
                if (aDatosTarea[6] != "")
                {
                    dIniV = DateTime.Parse(aDatosTarea[6]);
                }
                if (aDatosTarea[7] != "")
                {
                    dFinV = DateTime.Parse(aDatosTarea[7]);
                }

                if (iCodAviso <= 0)
                {
                    iCodAviso = TEXTOAVISOS.Insert(tr, sDesc, sTitulo, sDescLong, bIAP, bPGE, bPST, dIniV, dFinV);
                }
                else
                {
                    TEXTOAVISOS.Update(tr, iCodAviso, sDesc, sTitulo, sDescLong, bIAP, bPGE, bPST, dIniV, dFinV);
                }
            }
            #endregion
            #region Recursos
            if (strDatosRecursos != "")
            {
                string[] aRecursos = Regex.Split(strDatosRecursos, "///");

                foreach (string oRec in aRecursos)
                {
                    string[] aValores = Regex.Split(oRec, "##");
                    ///aValores[0] = opcionBD;
                    ///aValores[1] = idRecurso;
                    if (aValores[0] != "")
                    {
                        sOpcionBD   = aValores[0];
                        iCodRecurso = int.Parse(aValores[1]);
                        if (iCodRecurso == -1)
                        {                         //Queremos operar sobre todos los profesionales
                            USUARIOAVISOS.BorrarTodos(tr, iCodAviso);
                            if (sOpcionBD == "I") //Queremos asignar el aviso a todos los profesionales
                            {
                                USUARIOAVISOS.InsertarTodos(tr, iCodAviso);
                            }
                            break;
                        }
                        switch (sOpcionBD)
                        {
                        case "I":
                            USUARIOAVISOS.Insert(tr, iCodAviso, iCodRecurso);
                            break;

                        case "D":
                            USUARIOAVISOS.Delete(tr, iCodAviso, iCodRecurso);
                            break;
                        }
                    }
                }
            }
            #endregion

            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@" + DateTime.Now.ToString() + "@#@" + Session["UsuarioActual"].ToString() + "@#@" +
                     Session["APELLIDO1"].ToString() + " " + Session["APELLIDO2"].ToString() + ", " + Session["NOMBRE"].ToString() + "@#@" +
                     iCodAviso.ToString();
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar los datos del aviso", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }