From 1096d1907d9591787055ca95e22e4b5aac62c5ae Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Tue, 21 Jul 2020 09:03:00 -0700 Subject: [PATCH] avance aun falta probar cosas --- OI/DocumentoDetalle.aspx | 11 ++++- OI/DocumentoDetalle.aspx.cs | 99 ++++++++++++++++++++++++++----------- 2 files changed, 78 insertions(+), 32 deletions(-) diff --git a/OI/DocumentoDetalle.aspx b/OI/DocumentoDetalle.aspx index f84a72807..fd387dcc1 100644 --- a/OI/DocumentoDetalle.aspx +++ b/OI/DocumentoDetalle.aspx @@ -72,8 +72,15 @@
- - +
+ + + +
+
+ + +
diff --git a/OI/DocumentoDetalle.aspx.cs b/OI/DocumentoDetalle.aspx.cs index 315d1512b..d8a3f2ac5 100644 --- a/OI/DocumentoDetalle.aspx.cs +++ b/OI/DocumentoDetalle.aspx.cs @@ -36,20 +36,23 @@ public partial class OI_DocumentoDetalle : ClsPaginas } } + private string ArchivoAdjuntoNombre + { + get + { + return ViewState["ArchivoAdjuntoNombre"].ToString(); + } + + set + { + ViewState["ArchivoAdjuntoNombre"] = value; + } + } + protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { - //CargarUsuarios(); - //CargarSubCategoria(); - //CargarResponsable(); - //CargarCveDocumento(); - //if (this.CveDocumento > 0) - //{ - // CargarDocumentoYaExistente(); - // CargarUsuariosAutorizo(); - // ConfiguracionActualizar(); - //} Cargar(); } } @@ -105,6 +108,10 @@ public partial class OI_DocumentoDetalle : ClsPaginas TxtResponsable.Text = Documento["Responsable"].ToString(); TxtObs.InnerText = Documento["Observacion"].ToString(); + ArchivoAdjuntoNombre = Documento["ArchivoFisico"].ToString(); + string[] ArchivoAux = Documento["ArchivoFisico"].ToString().Split('_'); + string ArchivoAdjunto = ArchivoAux[2]; + LkbDescargarArchivo.Text = string.Format("Descargar Archivo: {0}",ArchivoAdjunto); } } ObjOI.Dispose(); @@ -151,29 +158,31 @@ public partial class OI_DocumentoDetalle : ClsPaginas { string RutaArchivo = "-1"; List Filesgral = TxtDocumentoFile.getfiles().Archivos; - - foreach (Archivo fileItem in Filesgral) + if (TxtDocumentoFile.Text != "") { - try + foreach (Archivo fileItem in Filesgral) { - string Version = TxtVersion.Text; - string NombreArchivo = fileItem.filenameO; - //Preparamos la ruta donde moveremos el archivo cargado - string NombreArchivoGuardado = string.Format("{0}_{1}_{2}", CveDocumento, Version, NombreArchivo); - string RutaDestino = UsuarioActual.Empresa.Ruta + @"DocumentosRepo\" + NombreArchivoGuardado; - - //Si no existe la carpeta donde se guardan se crea - if (!Directory.Exists(UsuarioActual.Empresa.Ruta + @"\DocumentosRepo")) + try { - Directory.CreateDirectory(UsuarioActual.Empresa.Ruta + @"\DocumentosRepo"); + string Version = TxtVersion.Text; + string NombreArchivo = fileItem.filenameO; + //Preparamos la ruta donde moveremos el archivo cargado + string NombreArchivoGuardado = string.Format("{0}_{1}_{2}", CveDocumento, Version, NombreArchivo); + string RutaDestino = UsuarioActual.Empresa.Ruta + @"DocumentosRepo\" + NombreArchivoGuardado; + + //Si no existe la carpeta donde se guardan se crea + if (!Directory.Exists(UsuarioActual.Empresa.Ruta + @"\DocumentosRepo")) + { + Directory.CreateDirectory(UsuarioActual.Empresa.Ruta + @"\DocumentosRepo"); + } + //Movemos el archivo de la carpeta temporal hacia la carpeta de la empresa + System.IO.File.Move(fileItem.FileUrl, RutaDestino); + RutaArchivo = NombreArchivoGuardado; + } + catch (Exception e) + { + Alert(e.Message); } - //Movemos el archivo de la carpeta temporal hacia la carpeta de la empresa - System.IO.File.Move(fileItem.FileUrl, RutaDestino); - RutaArchivo = RutaDestino; - } - catch (Exception e) - { - Alert(e.Message); } } return RutaArchivo; @@ -220,7 +229,7 @@ public partial class OI_DocumentoDetalle : ClsPaginas if (!(CveDocumento > 0)) { TieneError = true; - this.ErrorMensaje = "Hubo un error al guardr el Documento"; + this.ErrorMensaje = "Hubo un error al guardar el Documento"; } return CveDocumento; } @@ -263,5 +272,35 @@ public partial class OI_DocumentoDetalle : ClsPaginas } #endregion + #region "DESCARGAR ARCHIVO" + protected void LkbSubirNuevoArchivo_Click(object sender,EventArgs e) + { + DivDescargarArchivo.Visible = false; + DivSubirArchivo.Visible = true; + UpDerecha.Update(); + } + + protected void LkbDescargarNuevoArchivo_Click(object sender,EventArgs e) + { + DivDescargarArchivo.Visible = true; + DivSubirArchivo.Visible = false; + UpDerecha.Update(); + } + + protected void LkbDescargarArchivo_Click(object sender,EventArgs e) + { + string Ruta = string.Format("{0}Empresas/{1}/Temp/RH/{2}", ModExtensiones.DirectorioBaseEmpresas, UsuarioActual.CveEmpresa, ArchivoAdjuntoNombre); + byte[] archivoBytes = File.ReadAllBytes(Ruta); + + HttpContext.Current.Response.Clear(); + HttpContext.Current.Response.ClearContent(); + HttpContext.Current.Response.ContentType = "application/octet-stream"; + HttpContext.Current.Response.AddHeader("Content-Disposition", String.Format("attachment;filename={0}", ArchivoAdjuntoNombre)); + HttpContext.Current.Response.AddHeader("Content-Length", archivoBytes.Length.ToString()); + HttpContext.Current.Response.OutputStream.Write(archivoBytes, 0, archivoBytes.Length); + HttpContext.Current.Response.End(); + } + #endregion + } \ No newline at end of file