From fd3e6dda26b4f3afd14af61f78e096803a2eb9ea Mon Sep 17 00:00:00 2001 From: caudillochon Date: Tue, 25 Mar 2025 03:23:34 -0700 Subject: [PATCH] nominas css --- Metronic/assets/admin/layout/css/custom.css | 6 +- .../assets/layouts/layout3/css/custom.css | 6 +- Nomina/Nomina.aspx.cs | 327 ++++++++++++------ Scripts/custom.js | 2 +- Styles/Custom.css | 49 ++- Styles/Estilos2.css | 67 +++- 6 files changed, 335 insertions(+), 122 deletions(-) diff --git a/Metronic/assets/admin/layout/css/custom.css b/Metronic/assets/admin/layout/css/custom.css index a513b7607..f35671cd1 100644 --- a/Metronic/assets/admin/layout/css/custom.css +++ b/Metronic/assets/admin/layout/css/custom.css @@ -195,7 +195,11 @@ table > tr > th.adsCol, table.table > tr > th.adsCol { } .Totales, .table-striped > tbody > tr.Totales { - background: rgba(103, 128, 159, 0.65) !important; + background: #9cacc1 !important; + border-color: #9cacc1; +} +.Totales td, .table-striped > tbody > tr.Totales td{ + border-color: #9cacc1; } .btnopaco { diff --git a/Metronic/assets/layouts/layout3/css/custom.css b/Metronic/assets/layouts/layout3/css/custom.css index bb719eb0d..b36d43082 100644 --- a/Metronic/assets/layouts/layout3/css/custom.css +++ b/Metronic/assets/layouts/layout3/css/custom.css @@ -207,9 +207,13 @@ table > tr > th.adsCol ,table.table > tr > th.adsCol{ z-index: 550; } .Totales, .table-striped > tbody > tr.Totales { - background: rgba(103, 128, 159, 0.65) !important; + background: #9cacc1 !important; + border-color: #9cacc1 !important; } +.Totales td, .table-striped > tbody > tr.Totales td{ + border-color: #9cacc1; +} .btnopaco { background-color: rgba(0,0,0,0.2); color: #FFF; diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index 2998d580c..6936779b5 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -15,6 +15,7 @@ using System.Text.RegularExpressions; using iTextSharp.text.pdf.parser; using Profact.TimbraCFDI40; using Ionic.Zip; +using DocumentFormat.OpenXml.Drawing; public partial class Nomina_Nomina2 : ClsPaginas { @@ -5098,7 +5099,27 @@ public partial class Nomina_Nomina2 : ClsPaginas var dedcborderColor = ClosedXML.Excel.XLColor.FromArgb(99, 37, 35); ClosedXML.Excel.XLColor colorperp = ClosedXML.Excel.XLColor.FromArgb(51, 153, 102); ClosedXML.Excel.XLColor colorded = ClosedXML.Excel.XLColor.FromArgb(150, 54, 52); + ClosedXML.Excel.XLColor colororange = ClosedXML.Excel.XLColor.FromArgb(247, 150, 70); ClosedXML.Excel.IXLCell celda; + DataTable dtConceptos = this.dtConceptos.FiltraParametros("(Tipo ='P' AND EsPadre = 1 AND EsFormula =0) OR (Tipo = 'D' AND EsPadre = 1 AND EsFormula =0) OR Tipo = 'O' AND EsPadre = 1 AND EsFormula =0"); + DataTable dtFiltrado = dtConceptos.Clone(); // Clonar la estructura del DataTable + + foreach (GridViewRow row in GvPersonalizarExcel.Rows) + { + string columnaDB = row.DataKey("ColumnaDB").Replace("[","").Replace("]",""); // Suponiendo que la columna "ColumnaDB" está en la segunda celda (index 1) + string tipoDB = row.DataKey("TipoDB"); // Suponiendo que la columna "TipoDB" está en la cuarta celda (index 3) + //string tipo = tipoDB == "P" ? "1" : (tipoDB == "D" ? "2" : (tipoDB == "O" ? "3" : "5")); + // Filtrar dtConceptos basado en los valores del GridView + var filasFiltradas = dtConceptos.AsEnumerable() + .Where(r => string.Format("V_{0}" , r["CveConcepto"]) == columnaDB //&& r["Tipo"].ToString() == tipoDB + ); + + if (filasFiltradas.Any()) + { + dtFiltrado.Merge(filasFiltradas.CopyToDataTable()); + } + } + dtConceptos = dtFiltrado; var libro = wb.AddWorksheet("Nomina"); int column = 1; int filainicio = 3; @@ -5136,32 +5157,37 @@ public partial class Nomina_Nomina2 : ClsPaginas Titlecell(libro, "Pago", filainicio + 3, column, false, true, PercborderColor); Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor); libro.Column(column).Width = 15; - foreach (DataRow row in dtConceptos.FiltraParametros("Tipo ='P' AND EsPadre = 1 AND EsFormula =0").Rows) + if (dtConceptos.FiltraParametros("Tipo ='P'").Rows.Count > 0) { + + foreach (DataRow row in dtConceptos.FiltraParametros("Tipo ='P'").Rows) + { + column++; + if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0)) + { + libro.Column(column).Hide(); + } + else + { + Titlecell(libro, row["Concepto"].ToString(), filainicio + 2, column, true, false, PercborderColor); + Titlecell(libro, row["Codigo"].ToString(), filainicio + 3, column, false, true, PercborderColor); + Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor); + libro.Column(column).Width = 15; + } + } column++; - if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0)) - { - libro.Column(column).Hide(); - } - else - { - Titlecell(libro, row["Concepto"].ToString(), filainicio + 2, column, true, false, PercborderColor); - Titlecell(libro, row["Codigo"].ToString(), filainicio + 3, column, false, true, PercborderColor); - Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor); - libro.Column(column).Width = 15; - } - } - column++; - TitleRange(libro, "Percepciones", filainicio + 2, column, filainicio + 3, column, true, true, PercborderColor); - Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor); - libro.Column(column).Width = 15; - if (iniciotipe < column) - { - libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center; - TitleRange(libro, "Percepciones", filainicio + 1, iniciotipe + 1, filainicio + 1, column, true, true, PercborderColor); - libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Merge().Value = "Percepciones"; + TitleRange(libro, "Percepciones", filainicio + 2, column, filainicio + 3, column, true, true, PercborderColor); + Titlecell(libro, "", filainicio + 4, column, true, true, PercborderColor); + libro.Column(column).Width = 15; + if (iniciotipe < column) + { + libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center; + TitleRange(libro, "Percepciones", filainicio + 1, iniciotipe + 1, filainicio + 1, column, true, true, PercborderColor); + libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Merge().Value = "Percepciones"; + } + } iniciotipe = column; int finPercepciones = iniciotipe; @@ -5172,33 +5198,37 @@ public partial class Nomina_Nomina2 : ClsPaginas TitleRange(libro, "Perm. Faltas", filainicio + 3, column, filainicio + 3, column, false, true, dedcborderColor); Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor); libro.Column(column).Width = 15; - foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' AND EsPadre = 1 AND EsFormula =0").Rows) + if (dtConceptos.FiltraParametros("Tipo ='D'").Rows.Count > 0) { + foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D'").Rows) + { + column++; + if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0)) + { + libro.Column(column).Hide(); + } + else + { + Titlecell(libro, row["Concepto"].ToString(), filainicio + 2, column, true, false, dedcborderColor); + Titlecell(libro, row["Codigo"].ToString(), filainicio + 3, column, false, true, dedcborderColor); + Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor); + libro.Column(column).Width = 15; + } + + } + column++; - if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0)) + TitleRange(libro, "Deducciones", filainicio + 2, column, filainicio + 3, column, true, true, dedcborderColor); + libro.Column(column).Width = 15; + if (iniciotipe < column) { - libro.Column(column).Hide(); - } - else - { - Titlecell(libro, row["Concepto"].ToString(), filainicio + 2, column, true, false, dedcborderColor); - Titlecell(libro, row["Codigo"].ToString(), filainicio + 3, column, false, true, dedcborderColor); + libro.Range(filainicio + 1, iniciotipe + 2, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center; + TitleRange(libro, "Deducciones", filainicio + 1, iniciotipe + 2, filainicio + 1, column, true, true, dedcborderColor); Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor); - libro.Column(column).Width = 15; } } - column++; - TitleRange(libro, "Deducciones", filainicio + 2, column, filainicio + 3, column, true, true, dedcborderColor); - libro.Column(column).Width = 15; - if (iniciotipe < column) - { - libro.Range(filainicio + 1, iniciotipe + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center; - TitleRange(libro, "Deducciones", filainicio + 1, iniciotipe + 1, filainicio + 1, column, true, true, dedcborderColor); - Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor); - } - int findeducciones = column; //column++; @@ -5209,6 +5239,46 @@ public partial class Nomina_Nomina2 : ClsPaginas libro.Cell(filainicio + 1, column).Value = " "; libro.Range(filainicio + 2, column, filainicio + 3, column).Merge().Value = "Total"; libro.Column(column).Width = 15; + + int iniciotiob = column; + + + if (dtConceptos.FiltraParametros("Tipo ='O'").Rows.Count > 0) + { + + foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'O' ").Rows) + { + column++; + if ((dtempleados.SUM(string.Format("[V_{0}]", row["CveConcepto"].ToString())) == 0)) + { + libro.Column(column).Hide(); + } + else + { + Titlecell(libro, row["Concepto"].ToString(), filainicio + 2, column, true, false, dedcborderColor); + Titlecell(libro, row["Codigo"].ToString(), filainicio + 3, column, false, true, dedcborderColor); + Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor); + libro.Column(column).Width = 15; + } + + } + + column++; + TitleRange(libro, "Obligaciones", filainicio + 2, column, filainicio + 3, column, true, true, dedcborderColor); + libro.Column(column).Width = 15; + if (iniciotipe < column) + { + libro.Range(filainicio + 1, iniciotiob + 1, filainicio + 1, column).Style.Alignment.Horizontal = ClosedXML.Excel.XLAlignmentHorizontalValues.Center; + TitleRange(libro, "Obligaciones", filainicio + 1, iniciotiob + 1, filainicio + 1, column, true, true, dedcborderColor); + Titlecell(libro, "", filainicio + 4, column, true, true, dedcborderColor); + } + } + + + + + + iniciotipe = column; @@ -5216,8 +5286,21 @@ public partial class Nomina_Nomina2 : ClsPaginas int maxnocolumn = column; libro.Range(filainicio + 1, 1, filainicio + 4, maxnocolumn).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; libro.Range(filainicio + 1, 1, filainicio + 4, maxnocolumn).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189)); - libro.Range(filainicio + 1, incioConceptos, filainicio + 4, finPercepciones).Style.Fill.SetBackgroundColor(colorperp); - libro.Range(filainicio + 1, finPercepciones + 1, filainicio + 4, findeducciones).Style.Fill.SetBackgroundColor(colorded); + + if (dtConceptos.FiltraParametros("Tipo ='P'").Rows.Count > 0) + { + libro.Range(filainicio + 1, incioConceptos, filainicio + 4, finPercepciones).Style.Fill.SetBackgroundColor(colorperp); + } + + if (dtConceptos.FiltraParametros("Tipo ='D'").Rows.Count > 0) + { + libro.Range(filainicio + 1, finPercepciones + 2, filainicio + 4, findeducciones).Style.Fill.SetBackgroundColor(colorded); + } + + if (dtConceptos.FiltraParametros("Tipo ='O'").Rows.Count > 0) + { + libro.Range(filainicio + 1, findeducciones + 2, filainicio + 4, maxnocolumn).Style.Fill.SetBackgroundColor(colororange); + } int Fila = filainicio + 3; int cveSupProyecto = -5; @@ -5269,70 +5352,80 @@ public partial class Nomina_Nomina2 : ClsPaginas column++; libro.Cell(Fila, column).Value = ""; - foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'P' AND EsPadre = 1 AND EsFormula =0").Rows) + + if (dtConceptos.FiltraParametros("Tipo ='P'").Rows.Count > 0) { - column++; - string Concepto = string.Format("V_{0}", row["CveConcepto"]); - libro.Cell(Fila, column).Value = erow[Concepto]; - libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; - - - if (newsubproyecto) + foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'P' ").Rows) { - libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); - libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; + column++; + string Concepto = string.Format("V_{0}", row["CveConcepto"]); + libro.Cell(Fila, column).Value = erow[Concepto]; + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + + + if (newsubproyecto) + { + libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); + libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; + } + } - } + column++; + libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorperp); + Titlecell(libro, erow["SumaPercepciones"], Fila, column, false, false, PercborderColor); + libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + if (newsubproyecto) + { + libro.Cell(Fila - 2, column).Style.Fill.SetBackgroundColor(colorperp); + Titlecell(libro, "", Fila - 2, column, false, false, PercborderColor); + libro.Cell(Fila - 3, column).Style.Fill.SetBackgroundColor(colorperp); + libro.Cell(Fila - 3, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; + libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; + Titlecell(libro, dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)), Fila - 3, column, true, true, PercborderColor); + //libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); + } - column++; - libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorperp); - Titlecell(libro, erow["SumaPercepciones"], Fila, column, false, false, PercborderColor); - libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; - libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; - if (newsubproyecto) - { - libro.Cell(Fila - 2, column).Style.Fill.SetBackgroundColor(colorperp); - Titlecell(libro, "", Fila - 2, column, false, false, PercborderColor); - libro.Cell(Fila - 3, column).Style.Fill.SetBackgroundColor(colorperp); - libro.Cell(Fila - 3, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; - libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; - Titlecell(libro, dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)), Fila - 3, column, true, true, PercborderColor); - //libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaPercepciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); } column++; libro.Cell(Fila, column).Value = ""; - foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' AND EsPadre = 1 AND EsFormula =0").Rows) - { - column++; - string Concepto = string.Format("V_{0}", row["CveConcepto"]); - libro.Cell(Fila, column).Value = erow[Concepto]; - libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + if (dtConceptos.FiltraParametros("Tipo ='D'").Rows.Count > 0) + { + + foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'D' ").Rows) + { + column++; + string Concepto = string.Format("V_{0}", row["CveConcepto"]); + libro.Cell(Fila, column).Value = erow[Concepto]; + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + + if (newsubproyecto) + { + libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); + libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; + } + } + + column++; + libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorded); + Titlecell(libro, erow["SumaDeducciones"], Fila, column, false, false, dedcborderColor); + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; if (newsubproyecto) { - libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); + libro.Cell(Fila - 2, column).Style.Fill.SetBackgroundColor(colorded); + Titlecell(libro, "", Fila - 2, column, false, false, dedcborderColor); + libro.Cell(Fila - 3, column).Style.Fill.SetBackgroundColor(colorded); + libro.Cell(Fila - 3, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; + Titlecell(libro, dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)), Fila - 3, column, true, true, dedcborderColor); + //libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); } } - - column++; - libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colorded); - Titlecell(libro, erow["SumaDeducciones"], Fila, column, false, false, dedcborderColor); - libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; - libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; - if (newsubproyecto) - { - libro.Cell(Fila - 2, column).Style.Fill.SetBackgroundColor(colorded); - Titlecell(libro, "", Fila - 2, column, false, false, dedcborderColor); - libro.Cell(Fila - 3, column).Style.Fill.SetBackgroundColor(colorded); - libro.Cell(Fila - 3, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; - libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; - Titlecell(libro, dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)), Fila - 3, column, true, true, dedcborderColor); - //libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); - } //column++; //libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166)); //libro.Cell(Fila, column).Value = erow["SumaEspecie"]; @@ -5352,25 +5445,43 @@ public partial class Nomina_Nomina2 : ClsPaginas libro.Cell(Fila - 3, column).Value = dtempleados.SUM("Total", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); } - //foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'O' AND EsPadre = 1 ").Rows) - //{ - // column++; - // string Concepto = string.Format("V_{0}", row["CveConcepto"]); - // libro.Cell(Fila, column).Value = erow[Concepto]; - - // if (newsubproyecto) - // { - // libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); - // } - //} //column++; - //libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(166, 166, 166)); - //libro.Cell(Fila, column).Value = erow["SumaObligaciones"]; - //if (newsubproyecto) - //{ - // libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaObligaciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); - //} + //libro.Cell(Fila, column).Value = ""; + + if (dtConceptos.FiltraParametros("Tipo ='O'").Rows.Count > 0) + { + + foreach (DataRow row in dtConceptos.FiltraParametros("Tipo = 'O' ").Rows) + { + column++; + string Concepto = string.Format("V_{0}", row["CveConcepto"]); + libro.Cell(Fila, column).Value = erow[Concepto]; + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + + if (newsubproyecto) + { + libro.Cell(Fila - 3, column).Value = dtempleados.SUM(Concepto, string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); + libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; + } + } + + column++; + libro.Cell(Fila, column).Style.Fill.SetBackgroundColor(colororange); + Titlecell(libro, erow["SumaObligaciones"], Fila, column, false, false, dedcborderColor); + libro.Cell(Fila, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;\"\""; + libro.Cell(Fila, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; + if (newsubproyecto) + { + libro.Cell(Fila - 2, column).Style.Fill.SetBackgroundColor(colororange); + Titlecell(libro, "", Fila - 2, column, false, false, dedcborderColor); + libro.Cell(Fila - 3, column).Style.Fill.SetBackgroundColor(colororange); + libro.Cell(Fila - 3, column).Style.Font.FontColor = ClosedXML.Excel.XLColor.White; + libro.Cell(Fila - 3, column).Style.NumberFormat.Format = "#,##0.00;-#,##0.00;"; + Titlecell(libro, dtempleados.SUM("SumaObligaciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)), Fila - 3, column, true, true, dedcborderColor); + //libro.Cell(Fila - 3, column).Value = dtempleados.SUM("SumaDeducciones", string.Format("CveSubProyecto ={0} AND CvePersonal > 0 ", oldcveSupProyecto)); + } + } } libro.Rows(Fila - 2, Fila).Delete(); diff --git a/Scripts/custom.js b/Scripts/custom.js index 87c0f9fff..2527cecf3 100644 --- a/Scripts/custom.js +++ b/Scripts/custom.js @@ -428,7 +428,7 @@ function adssigscrollJSLoad() { let Trowthis = $(this); stylosrow = `${stylosrow} table#${Tid}.adssigscroll tr:nth-child(${numberitem}) { top: ${top}px; }`; - top = top + Trowthis.outerHeight(true); + top = top + (Trowthis.outerHeight(true)-1); numberitem = numberitem + 1; }); } diff --git a/Styles/Custom.css b/Styles/Custom.css index 6387cba6b..c1c4e6959 100644 --- a/Styles/Custom.css +++ b/Styles/Custom.css @@ -183,4 +183,51 @@ float:none; .portlet { margin-bottom :10px; } - \ No newline at end of file + + + +/*Begin ScrollADS V2*/ +/* +.divContainerads { + width: 100%; + max-height: calc(100vh - 260px); + overflow-y: auto; +} + +table.adssigscroll { + min-width: 100%; + background-color: #fff; +} + + table.adssigscroll tbody, table.adssigscroll thead { + background-color: #fff; + } + + table.adssigscroll tr { + background-color: inherit; + } + + table.adssigscroll tr.stickyRow { + position: sticky; + top: 0; + background-color: inherit; + z-index: 4; + } + +.tr_order tr > th::after { + content: "\f0dc"; + font: normal normal normal 14px / 1 FontAwesome; + display: inline-block; + margin-left: 5px; + color: #32A1CF; +} + +.tr_order tr > th.asce::after { + content: "\f0de"; +} + +.tr_order tr > th.desc::after { + content: "\f0dd"; +} +*/ +/*END ScrollADS V2*/ \ No newline at end of file diff --git a/Styles/Estilos2.css b/Styles/Estilos2.css index ec25052b2..c058024a9 100644 --- a/Styles/Estilos2.css +++ b/Styles/Estilos2.css @@ -91,6 +91,7 @@ a.cerrar_sesion:hover { .Titulos { background-color: #DDD; + border-color:#DDD; color:#333; font-size:14px; text-align:center; @@ -350,18 +351,19 @@ div.truncate:hover { width: 1px; height: 3px; } -.Totales -{ - background:rgba(103, 128, 159, 0.65); - color:#FFFFFF; - font-weight:bold; - font-style:normal; - +.Totales { + background: #9cacc1; + border-color: #9cacc1; + color: #FFFFFF; + font-weight: bold; + font-style: normal; } -tr.Totales:hover{ - - background:rgba(103, 128, 159, 0.65) !important; +.Totales td{ + border-color: #9cacc1; +} +tr .Totales:hover { + background: #9cacc1 !important; } a.Totales { @@ -696,3 +698,48 @@ input[type=date] } + +/*Begin ScrollADS V2*/ + +.divContainerads { + width: 100%; + max-height: calc(100vh - 260px); + overflow-y: auto; +} + +table.adssigscroll { + min-width: 100%; + background-color: #fff; +} + + table.adssigscroll tbody, table.adssigscroll thead { + background-color: #fff; + } + + table.adssigscroll tr { + background-color: inherit; + } + + table.adssigscroll tr.stickyRow { + position: sticky; + top: 0; /* Se mantiene pegado en la parte superior */ + background-color: inherit; /* Para que no se superponga con otros elementos */ + z-index: 4; /* Asegura que esté sobre otros elementos */ + } + +.tr_order tr > th::after { + content: "\f0dc"; + font: normal normal normal 14px / 1 FontAwesome; + display: inline-block; + margin-left: 5px; + color: #32A1CF; +} + +.tr_order tr > th.asce::after { + content: "\f0de"; +} + +.tr_order tr > th.desc::after { + content: "\f0dd"; +} +/*END ScrollADS V2*/ \ No newline at end of file