Пример #1
0
        public static string BuildMessage(string formatFile, params object[] parameterValues)
        {
            if (parameterValues == null)
            {
                return(null);
            }

            string xmlContent = "<root>";

            for (int i = 0; i < parameterValues.Length; i++)
            {
                xmlContent += "<param" + i + ">" + parameterValues[i].ToString().Trim() + "</param" + i + ">";
            }

            xmlContent += "</root>";

            DOMDocument xslDoc = new DOMDocument();
            DOMDocument xmlDoc = new DOMDocument();

            xmlDoc.loadXML(xmlContent);
            xslDoc.load(formatFile);

            return(xmlDoc.transformNode(xslDoc));
        }
Пример #2
0
        //=====================================================
        // NUEVO FUNCION PARA APROBACION FINAL -- SEMAFORO VERDE
        //=====================================================
        private string ConstruirMensajeAprobacion(int idWorkflow, string Referencia, int idEstatusWkf, out string emailTitle, out string emailFromSys)
        {
            DataSet ds = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerDatosEmail, idWorkflow, idEstatusWkf);

            Referencia = Referencia.Trim();
            string workflowName = ds.Tables[0].Rows[0]["wkf_nbr_documento"].ToString();
            string strAccion    = " " + ds.Tables[0].Rows[0]["ewf_nbr_titulo"].ToString();
            string explicacion  = ds.Tables[0].Rows[0]["ewf_desc_explicacion"].ToString();
            string strSubTitulo = "";

            Label lblExplicacion = new Label();

            lblExplicacion.ForeColor = System.Drawing.Color.Green;
            lblExplicacion.Font.Bold = true;
            lblExplicacion.Text      = "ha sido APROBADO";

            explicacion  = lblExplicacion.Text;
            strAccion    = "";
            strSubTitulo = "DOCUMENTO APROBADO";

            emailTitle   = "";
            emailFromSys = "SISTEMA_SPIN@soacat-ve";

            DataSet dsSolicitante     = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerNombreSolicitante, idWorkflow, Referencia);
            string  strSolicitante    = dsSolicitante.Tables[0].Rows[0]["Solicitante"].ToString();
            string  strFechaSolicitud = dsSolicitante.Tables[0].Rows[0]["fecha_solicitud"].ToString();
            string  strData           = "";

            string strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_verde.jpg";

            emailTitle = "DOCUMENTO APROBADO" + " - " + workflowName;

            if ((idWorkflow >= 308 && idWorkflow <= 311) || (idWorkflow == 318))                // CIERRES DE AUXILIARES
            {
                DataSet dstProyecto = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_CargarInfProyectoPorReferencia, Convert.ToInt32(Referencia));
                Referencia += " / Cliente: " + dstProyecto.Tables[0].Rows[0]["cliente"].ToString();
                Referencia += " / Socio: " + dstProyecto.Tables[0].Rows[0]["socio"].ToString();

                dstProyecto = null;
            }

            // param0 = Nombre del WF
            // param1 = Referencia
            // param2 = Fecha de solicitud
            // param3 = Explicación
            // param4 = Acción
            // param5 = Nombre solicitante
            // param6 = Imagen semáforo
            // param7 = Servidor
            string strServidor = System.Net.Dns.GetHostName();

            strData += "<root><param0>" + workflowName + "</param0>";
            strData += "<param1>" + Referencia + "</param1>";
            strData += "<param2>" + strFechaSolicitud + "</param2>";
            strData += "<param3>" + explicacion + "</param3>";
            strData += "<param4>" + strAccion + "</param4>";
            strData += "<param5>" + strSolicitante + "</param5>";
            strData += "<param6>" + strImagenSemaforo + "</param6>";
            strData += "<param7>" + strServidor + "</param7>";
            strData += "<param8>" + strSubTitulo + "</param8></root>";

            DOMDocument xslDoc = new DOMDocument();
            DOMDocument xmlDoc = new DOMDocument();

            xslDoc.load("WFNS001A.xsl");
            xmlDoc.loadXML(strData);

            ds            = null;
            dsSolicitante = null;

            return(xmlDoc.transformNode(xslDoc));
        }
Пример #3
0
        private string ConstruirMensaje(int idWorkflow, string Referencia, int idEstatusWkf, out string emailTitle, out string emailFromSys)
        {
            /*
             * DataSet ds = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(),Queries.WF_ObtenerDatosEmail,idWorkflow,idEstatusWkf);
             *
             * Referencia = Referencia.Trim();
             * string workflowName = ds.Tables[0].Rows[0]["wkf_nbr_documento"].ToString();
             * emailTitle = ds.Tables[0].Rows[0]["ewf_nbr_titulo"].ToString();
             * string explicacion = ds.Tables[0].Rows[0]["ewf_desc_explicacion"].ToString();
             * emailFromSys = "SISTEMA_SPIN@soacat-ve";
             *
             * DataSet dsSolicitante = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(),Queries.WF_ObtenerNombreSolicitante,idWorkflow,Referencia);
             * string strSolicitante = dsSolicitante.Tables[0].Rows[0]["Solicitante"].ToString();
             * string strData = "";
             *
             * if( (idWorkflow >= 308 && idWorkflow <= 311) || ( idWorkflow == 318 ) ) // CIERRES DE AUXILIARES
             * {
             *      DataSet dstProyecto = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(),Queries.WF_CargarInfProyectoPorReferencia,Convert.ToInt32(Referencia));
             *      Referencia += " / Cliente: " + dstProyecto.Tables[0].Rows[0]["cliente"].ToString();
             *      Referencia += " / Socio: " + dstProyecto.Tables[0].Rows[0]["socio"].ToString();
             * }
             *
             * string strServidor=System.Net.Dns.GetHostName();//GetHostByAddress(Request.ServerVariables["REMOTE_ADDR"]).HostName;
             * strData += "<root><param0>"+workflowName+"</param0>";
             * strData += "<param1>"+Referencia+"</param1>";
             * strData += "<param2>"+strSolicitante+"</param2>";
             * strData += "<param3>"+explicacion+"</param3>";
             * strData += "<param4>"+strServidor+"</param4></root>";
             *
             * DOMDocument xslDoc = new DOMDocument();
             * DOMDocument xmlDoc = new DOMDocument();
             *
             * xslDoc.load("EWIGF001A.xsl");
             * xmlDoc.loadXML(strData);
             */


            //=====================================================
            // NUEVO FORMATO DE CORREO
            //=====================================================
            DataSet ds = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerDatosEmail, idWorkflow, idEstatusWkf);

            Referencia = Referencia.Trim();
            string workflowName = ds.Tables[0].Rows[0]["wkf_nbr_documento"].ToString();
            string strAccion    = " " + ds.Tables[0].Rows[0]["ewf_nbr_titulo"].ToString();
            string explicacion  = ds.Tables[0].Rows[0]["ewf_desc_explicacion"].ToString();

            emailTitle   = "";
            emailFromSys = "SISTEMA_SPIN@soacat-ve";
            string strSubTitulo = "";

            DataSet dsSolicitante     = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerNombreSolicitante, idWorkflow, Referencia);
            string  strSolicitante    = dsSolicitante.Tables[0].Rows[0]["Solicitante"].ToString();
            string  strFechaSolicitud = dsSolicitante.Tables[0].Rows[0]["fecha_solicitud"].ToString();
            string  strData           = "";

            string strImagenSemaforo = "";

            if (idEstatusWkf == 310 || idEstatusWkf == 280)
            {
                if (idEstatusWkf == 310)                // SOLICITADO
                {
                    emailTitle = "Pendiente por " + strAccion + " - " + workflowName;
                }
                if (idEstatusWkf == 280)                // RECHAZO PARCIAL
                {
                    emailTitle = strAccion + " - " + workflowName;
                    strAccion  = "";
                }

                strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_amarillo.jpg";
                strSubTitulo      = strAccion + " DE DOCUMENTOS";
            }
            if (idEstatusWkf == 250)            // REVISADO
            {
                emailTitle        = strAccion + " - " + workflowName;
                strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_amarillo.jpg";
                strSubTitulo      = "DOCUMENTO " + strAccion;
                strAccion         = "";
            }
            if (idEstatusWkf == 270)            // RECHAZO TOTAL
            {
                emailTitle        = strAccion + " - " + workflowName;
                strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_rojo.jpg";
                strSubTitulo      = strAccion + " DE DOCUMENTOS";
                strAccion         = "";
            }

            if ((idWorkflow >= 308 && idWorkflow <= 311) || (idWorkflow == 318))                // CIERRES DE AUXILIARES
            {
                DataSet dstProyecto = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_CargarInfProyectoPorReferencia, Convert.ToInt32(Referencia));
                Referencia += " / Cliente: " + dstProyecto.Tables[0].Rows[0]["cliente"].ToString();
                Referencia += " / Socio: " + dstProyecto.Tables[0].Rows[0]["socio"].ToString();

                dstProyecto = null;
            }

            // param0 = Nombre del WF
            // param1 = Referencia
            // param2 = Fecha de solicitud
            // param3 = Explicación
            // param4 = Acción
            // param5 = Nombre solicitante
            // param6 = Imagen semáforo
            // param7 = Servidor
            // param8 = SubTitulo
            string strServidor = System.Net.Dns.GetHostName();

            strData += "<root><param0>" + workflowName + "</param0>";
            strData += "<param1>" + Referencia + "</param1>";
            strData += "<param2>" + strFechaSolicitud + "</param2>";
            strData += "<param3>" + explicacion + "</param3>";
            strData += "<param4>" + strAccion + "</param4>";
            strData += "<param5>" + strSolicitante + "</param5>";
            strData += "<param6>" + strImagenSemaforo + "</param6>";
            strData += "<param7>" + strServidor + "</param7>";
            strData += "<param8>" + strSubTitulo + "</param8></root>";

            DOMDocument xslDoc = new DOMDocument();
            DOMDocument xmlDoc = new DOMDocument();

            if ((idWorkflow >= 303 && idWorkflow <= 305) || (idWorkflow == 300) || (idWorkflow == 322)) // INFORMES DE GASTOS
            {
                if (idEstatusWkf == 270)                                                                // RECHAZO TOTAL
                {
                    xslDoc.load("WFNS001A.xsl");
                }
                else
                {
                    xslDoc.load("WFIG001A.xsl");
                }
            }
            else
            {
                xslDoc.load("WFNS001A.xsl");
            }

            xmlDoc.loadXML(strData);
            ds            = null;
            dsSolicitante = null;
            //=====================================================
            //=====================================================


            return(xmlDoc.transformNode(xslDoc));
        }