From 630b77d14e66f1edf0d94f6a9f3700edf0ffd272 Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Fri, 5 Jul 2024 10:12:26 -0700 Subject: [PATCH] --- App_Code/ClsSAT.vb | 32 +++ Nomina/Nomina.aspx | 400 +++++++++++++++--------------- Nomina/Nomina.aspx.cs | 77 +++++- SAT/SolicitudesIngresoSat.aspx | 40 ++- SAT/SolicitudesIngresoSat.aspx.cs | 10 +- 5 files changed, 357 insertions(+), 202 deletions(-) diff --git a/App_Code/ClsSAT.vb b/App_Code/ClsSAT.vb index 35de3e019..61a3dc72c 100644 --- a/App_Code/ClsSAT.vb +++ b/App_Code/ClsSAT.vb @@ -4,6 +4,7 @@ Option Explicit On Imports System.Data Imports System.Data.SqlClient Imports System.Net +Imports System.Xml Imports Extensiones Imports GemBox.Spreadsheet @@ -252,6 +253,37 @@ Public Class ClsSAT End Function + Public Function SolicitudesDetalleProcesa(cveSolicitudDetalle As Int32, tipo As Int32, rutaxmls As List(Of String), cveEmpresa As Int32, insertaMetadata As Int32) As Boolean + Dim retorno As Boolean = False + Dim xmlDoc As New XmlDocument() + + ' Crear el elemento raíz + Dim rootElement As XmlElement = xmlDoc.CreateElement("folder") + xmlDoc.AppendChild(rootElement) + + ' Añadir los elementos con el atributo urlfile + For Each url In rutaxmls + Dim archivoElement As XmlElement = xmlDoc.CreateElement("archivo") + archivoElement.SetAttribute("urlfile", url) + rootElement.AppendChild(archivoElement) + Next + DataAdapter("PA_Gral_Sat_SolicitudesDetalleProcesa", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@CveSolicitudDetalle", SqlDbType.Int).Value = cveSolicitudDetalle + .Add("@Tipo", SqlDbType.Int).Value = tipo + .Add("@Xmlarchivos", SqlDbType.Xml).Value = xmlDoc.ToString() + .Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa + .Add("@InsertaMetadata", SqlDbType.Int).Value = insertaMetadata + End With + Try + SqlAdapter.Fill(Data) + retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener los registros", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return retorno + End Function #Region "LISTADO 69B" diff --git a/Nomina/Nomina.aspx b/Nomina/Nomina.aspx index 4d9f4b82e..fa8c75001 100644 --- a/Nomina/Nomina.aspx +++ b/Nomina/Nomina.aspx @@ -1417,6 +1417,12 @@ CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("MontoLimite","{0:###,###.##}")%>'> + + + + + @@ -1432,202 +1438,7 @@ - + @@ -5036,6 +4847,7 @@ + @@ -5043,6 +4855,7 @@ + @@ -5283,7 +5096,202 @@ + diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index e7bcf46a6..efcdaa665 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -7198,11 +7198,11 @@ public partial class Nomina_Nomina2 : ClsPaginas } using (ClsNominas ObjMovt = new ClsNominas()) { - ObjMovt.GetMovtoPermanenteSaldos(UsuarioActual.CveEmpresa,SRCvePersonal, CcveMovtoPermanente); + ObjMovt.GetMovtoPermanenteSaldos(UsuarioActual.CveEmpresa, SRCvePersonal, CcveMovtoPermanente); GVMovtoPermanenteSaldos.DataSource = ObjMovt.DtResultados; GVMovtoPermanenteSaldos.DataBind(); } - + CargaConcepto(); DdlConcepto.SelectedValueExist(cveConcepto); TxtDescripcion.Text = descripcion.ToString(); @@ -8796,7 +8796,7 @@ public partial class Nomina_Nomina2 : ClsPaginas protected void BtnGeneratepdf_Click(object sender, EventArgs e) { byte[] pdf = new byte[1]; - string nombre = "recibo"; + string nombre = $"recibos {LtlPeriodoseleccionado.Text}"; bool confiniquito = false; int CvePersonal = TxtCvePersonal.Text.ToEntero(); int CvePeriodo = TxtCvePeriodo.Text.ToEntero(); if (CvePersonal > 0) @@ -8805,7 +8805,7 @@ public partial class Nomina_Nomina2 : ClsPaginas { if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa)) { - nombre = ObjNomina.SerieFolio; + nombre = $"{ObjNomina.Codigo}{ObjNomina.Nombre} {ObjNomina.SerieFolio}"; } if (ObjNomina.GetNom_NominasDetalles(-1, CvePersonal, CvePeriodo, "-1")) @@ -9992,6 +9992,75 @@ public partial class Nomina_Nomina2 : ClsPaginas } + + protected void BtnEfectivaleXLS_Click(object sender, EventArgs e) + { + + + ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook(); + + var libro = wb.AddWorksheet("Layout"); + int row = 1; + int column = 1; + + libro.Cell(row, column++).Value = "XSUBTOTAL"; + //libro.Cell(row, column++).Value = ""; + row = row + 1; + column = 1; + + libro.Cell(row, column++).Value = "XCLIENTE"; + libro.Cell(row, column++).Value = "XTIPOPEDIDO"; + libro.Cell(row, column++).Value = "XNUMERO"; + libro.Cell(row, column++).Value = "XIMPORTE"; + //libro.Cell(row, column++).Value = "CLABE"; + //libro.Cell(row, column++).Value = "Neto"; + int maxxolumn = column; + libro.Range(row, 1, row, column - 1).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; + libro.Range(row, 1, row, column - 1).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189)); + DataRow dcon; + decimal subtotal = 0; + if (dtempleados != null && dtempleados.Rows.Count > 0 && dtConceptos != null && dtConceptos.Rows.Count > 0 && (dcon = dtConceptos.FiltroPrimero("Tipo ='P' AND Codigo = 'P028' ")) != null) + { + foreach (DataRow dRow in dtempleados.FiltraParametros("CvePersonal > 0").Rows) + { + decimal importe = dRow[string.Format("V_{0}", dcon["CveConcepto"])].ToString().ToDecimal(); + if (importe > 0) + { + subtotal = subtotal + importe; + row++; + column = 1; + libro.Cell(row, column++).Value = "'103646-1"; + libro.Cell(row, column++).Value = "'DISPERSION"; + libro.Cell(row, column++).Value = string.Format("'{0}", dRow["Codigo"]); + libro.Cell(row, column++).Value = importe; + } + } + } + libro.Cell(1, 2).Value = subtotal; + + libro.Columns().AdjustToContents(); // Adjust columns to fit content + + System.IO.Stream fs = new System.IO.MemoryStream(); + wb.SaveAs(fs); + fs.Position = 0; + System.IO.MemoryStream memoryStream = new System.IO.MemoryStream(); + using (System.IO.Stream input = fs) + + { + input.CopyTo(memoryStream); + } + memoryStream.Position = 0; + + Response.Clear(); + Response.Buffer = true; + + Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; + Response.AddHeader("content-disposition", string.Format("attachment;filename={0}.xlsx", "ListadePago")); + Response.BinaryWrite(memoryStream.ToArray()); + Response.End(); + + + } protected void BtnModalBancosProcesar_Click(object sender, EventArgs e) { diff --git a/SAT/SolicitudesIngresoSat.aspx b/SAT/SolicitudesIngresoSat.aspx index bdacc82d4..7273d458d 100644 --- a/SAT/SolicitudesIngresoSat.aspx +++ b/SAT/SolicitudesIngresoSat.aspx @@ -61,6 +61,9 @@
  • Solicitudes
  • +
  • + Caga XML Local +
  • @@ -155,7 +158,7 @@
    -
    + @@ -557,7 +560,42 @@
    + +