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); }
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); }