Пример #1
0
        public string ActualizarCasoArchivos(FormCollection collection, IEnumerable <HttpPostedFileBase> files)
        {
            string IDUsuario         = "";
            string idRegistro        = "";
            string respuestaBizagi   = "";
            string archivoConvertido = "";

            try
            {
                if (System.Web.HttpContext.Current.Session["NroCasoTemp"] != null)
                {
                    idRegistro = System.Web.HttpContext.Current.Session["IdRegistro"].ToString();
                    IDUsuario  = System.Web.HttpContext.Current.Session["IDUsuario"].ToString();
                    Convert.ToInt32(IDUsuario);
                    ViewData["IDUsuario"] = IDUsuario;
                    int numCaso     = Convert.ToInt32(System.Web.HttpContext.Current.Session["NroCasoTemp"]);
                    var archivoSoli = collection["txtArchivoContratista"];

                    // Conversión de archivos
                    string archivosBase64    = "";
                    string archivosNombres   = "";
                    string archivosRespaldos = "";
                    foreach (string upload in Request.Files)
                    {
                        if (Request.Files[upload].FileName != "")
                        {
                            //string path = AppDomain.CurrentDomain.BaseDirectory + "./";
                            string path     = Path.GetTempPath();
                            string filename = Request.Files[upload].FileName;
                            Request.Files[upload].SaveAs(Path.Combine(path, filename));
                            archivoConvertido = ConversorBase64.convertirABase64(path + filename);
                            if (upload != null)
                            {
                                archivosBase64     = archivoConvertido;
                                archivosNombres    = archivoConvertido;
                                archivosRespaldos += @"<File fileName=""" + filename + @""">" + archivoConvertido + @"</File>";
                                //archivosRespaldos += @"<File fileName='" + filename + @"'>" + archivoConvertido + @"</File>";
                            }
                        }
                    }

                    //LipigasEntityManagerSoa.EntityManagerSOASoapClient servicioQuery = new LipigasEntityManagerSoa.EntityManagerSOASoapClient();
                    //DemoLipiEntity.EntityManagerSOASoapClient servicioQuery = new DemoLipiEntity.EntityManagerSOASoapClient();
                    DesEntity.EntityManagerSOASoapClient servicioQuery = new DesEntity.EntityManagerSOASoapClient();

                    //Escribir log CSV
                    UtilController.EscribirLog("Caso a actualizar", "ActualizarCasoArchivos", Convert.ToString(numCaso));
                    //Fin CSV

                    //XML PARA ACTUALIZAR VALORES DEL CASO
                    string queryActualizarCaso = @"<BizAgiWSParam>
                                                    <Entities idCase='" + numCaso + @"'>
                                                        <OrdendeTrabajoMedidor key='" + idRegistro + @"'>
                                                            <RespaldoAtencion>" + archivosRespaldos + @"</RespaldoAtencion>
                                                        </OrdendeTrabajoMedidor>
                                                    </Entities>
                                               </BizAgiWSParam>";

                    System.Web.HttpContext.Current.Session["NroCasoTemp"] = null;

                    //Escribir log CSV
                    queryActualizarCaso = queryActualizarCaso.Replace("\n", "");
                    queryActualizarCaso = queryActualizarCaso.Replace("\t", "");
                    queryActualizarCaso = queryActualizarCaso.Replace("\r", "");
                    UtilController.EscribirLog("Datos a actualizar", "ActualizarCasoArchivos", queryActualizarCaso);
                    //Fin CSV

                    respuestaBizagi = servicioQuery.saveEntityAsString(queryActualizarCaso);
                    respuestaBizagi = respuestaBizagi.Replace("\n", "");
                    respuestaBizagi = respuestaBizagi.Replace("\t", "");
                    respuestaBizagi = respuestaBizagi.Replace("\r", "");

                    //Escribir log CSV
                    UtilController.EscribirLog("Respuesta", "ActualizarCasoArchivos", respuestaBizagi);
                    //Fin CSV
                }
            }
            catch (Exception ex)
            {
                //Escribir log CSV
                UtilController.EscribirLog("ERROR", "ActualizarCasoArchivos", ex.Message);
                //Fin CSV
            }

            return(respuestaBizagi);
        }
Пример #2
0
        public string ActualizarCaso(FormCollection collection, IEnumerable <HttpPostedFileBase> files)
        {
            string   respuestaBizagi = string.Empty;
            DateTime fechaDeVisita   = DateTime.MinValue;
            string   IDUsuario       = "";
            string   idRegistro      = "";

            try
            {
                IDUsuario = System.Web.HttpContext.Current.Session["IDUsuario"].ToString();
                Convert.ToInt32(IDUsuario);
                ViewData["IDUsuario"] = IDUsuario;
                int numCaso          = Convert.ToInt32(collection["txtNumCaso"]);
                var fechaVisita      = collection["txtFechaDeVisita"];
                var archivoSoli      = collection["txtArchivoContratista"];
                var comentarioCierre = collection["txtComentarioCierre"];

                fechaDeVisita = Convert.ToDateTime(fechaVisita);
                fechaDeVisita.ToString("yyyy-MM-dd HH':'mm':'ss");

                // Conversión de archivos
                string archivosBase64    = "";
                string archivosNombres   = "";
                string archivosRespaldos = "";
                foreach (string upload in Request.Files)
                {
                    if (Request.Files[upload].FileName != "")
                    {
                        //string path = AppDomain.CurrentDomain.BaseDirectory + "./";
                        string path     = Path.GetTempPath();
                        string filename = Request.Files[upload].FileName;
                        Request.Files[upload].SaveAs(Path.Combine(path, filename));
                        string archivoConvertido = ConversorBase64.convertirABase64(path + filename);
                        if (upload != null)
                        {
                            archivosBase64     = archivoConvertido;
                            archivosNombres    = archivoConvertido;
                            archivosRespaldos += @"<File fileName='" + filename + @"'>" + archivoConvertido + @"</File>";
                        }
                    }
                }

                //LipigasEntityManagerSoa.EntityManagerSOASoapClient servicioQuery = new LipigasEntityManagerSoa.EntityManagerSOASoapClient();
                //DemoLipiEntity.EntityManagerSOASoapClient servicioQuery = new DemoLipiEntity.EntityManagerSOASoapClient();
                DesEntity.EntityManagerSOASoapClient servicioQuery = new DesEntity.EntityManagerSOASoapClient();

                //Escribir log CSV
                UtilController.EscribirLog("Caso a actualizar", "ActualizarCaso", Convert.ToString(numCaso));
                //Fin CSV

                //XML PARA ACTUALIZAR VALORES DEL CASO
                string queryActualizarCaso = @"<BizAgiWSParam>
                                                    <Entities>
                                                        <OrdendeTrabajoMedidor businessKey=""NroCaso='" + numCaso + @"'"">
                                                            <ComentarioCierreSolicitud>" + comentarioCierre + @"</ComentarioCierreSolicitud>
                                                            <FechadeVisita>" + fechaVisita + @"</FechadeVisita>
                                                        </OrdendeTrabajoMedidor>
                                                    </Entities>
                                               </BizAgiWSParam>";

                //Escribir log CSV
                UtilController.EscribirLog("Datos a actualizar", "ActualizarCaso", queryActualizarCaso);
                //Fin CSV

                respuestaBizagi = servicioQuery.saveEntityAsString(queryActualizarCaso);
                respuestaBizagi = respuestaBizagi.Replace("\n", "");
                respuestaBizagi = respuestaBizagi.Replace("\t", "");
                respuestaBizagi = respuestaBizagi.Replace("\r", "");

                //Obtener id del registro actualizado para ocuparlo como filtro en el metodo para actualizar archivo
                //Transformar respuesta STRING de Bizagi a XML para poder recorrer los nodos
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(respuestaBizagi);
                XmlNodeList rows = doc.GetElementsByTagName("OrdendeTrabajoMedidor");

                if (rows != null)
                {
                    foreach (XmlNode row in rows)
                    {
                        if (doc.GetElementsByTagName("OrdendeTrabajoMedidor")[0] != null)
                        {
                            idRegistro = doc.GetElementsByTagName("OrdendeTrabajoMedidor")[0].InnerText;
                        }
                    }
                }

                //Escribir log CSV
                UtilController.EscribirLog("Respuesta", "ActualizarCaso", respuestaBizagi);
                //Fin CSV
                System.Web.HttpContext.Current.Session["NroCasoTemp"] = numCaso;
                System.Web.HttpContext.Current.Session["IdRegistro"]  = idRegistro;
            }
            catch (Exception ex)
            {
                //Escribir log CSV
                UtilController.EscribirLog("ERROR", "ActualizarCaso", ex.Message);
                //Fin CSV
            }

            return(respuestaBizagi);
        }