From ea0fe043a5dec749faf53bbaa900b801dbc1ba80 Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Thu, 9 Sep 2021 07:49:11 -0700 Subject: [PATCH] --- App_Code/ClsNominas.vb | 29 +- App_Code/ClsPaginas.vb | 2 +- App_Code/ClsRH.vb | 60 ++++- General/ExcelToBD.aspx | 102 +++++++ General/ExcelToBD.aspx.cs | 116 ++++++++ Metronic/assets/global/images/spritemap.png | Bin 0 -> 10208 bytes .../assets/global/images/spritemap@2x.png | Bin 0 -> 35675 bytes Nomina/ChecadorAsistencia.aspx | 255 +++++++++++++----- Nomina/ChecadorAsistencia.aspx.cs | 181 +++++++++++-- Nomina/Nomina.aspx | 2 +- Scripts/custom.js | 2 +- vwd.webinfo | 4 + 12 files changed, 660 insertions(+), 93 deletions(-) create mode 100644 General/ExcelToBD.aspx create mode 100644 General/ExcelToBD.aspx.cs create mode 100644 Metronic/assets/global/images/spritemap.png create mode 100644 Metronic/assets/global/images/spritemap@2x.png diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index 5ac824654..f57a14a3c 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -2251,7 +2251,30 @@ Public Class ClsNominas End Try Return retorno End Function - Public Function GetchecadorAdistencia(FechaInicio As DateTime, FechaFin As DateTime, CveEmpresa As Integer) As Boolean + Public Function AsistenciaDetallePorTurnoGet(FechaInicio As DateTime, FechaFin As DateTime, CveEmpresa As Integer, Optional CvePersonal As Integer = -1) As Boolean + Dim retorno As Boolean = False + + Try + DTSet = New DataSet() + DataAdapter("PA_RH_AsistenciaDetallePorTurnoGet", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@FechaInicio", SqlDbType.DateTime).Value = FechaInicio + .Add("@FechaFin", SqlDbType.DateTime).Value = FechaFin + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CvePersonal", SqlDbType.Int).Value = CvePersonal + End With + SqlAdapter.Fill(DTSet) + retorno = True + Catch sqEx As SqlException + retorno = False + OnError("Ocurrió un error al obtener la asistenciadetalle.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + retorno = False + OnError("Ocurrió un error al obtener la asistenciadetalle.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + Public Function GetchecadorAsistencia(FechaInicio As DateTime, FechaFin As DateTime, CveEmpresa As Integer) As Boolean Dim retorno As Boolean = False Try @@ -2266,10 +2289,10 @@ Public Class ClsNominas retorno = True Catch sqEx As SqlException retorno = False - OnError("Ocurrió un error al Realizar el calculo de asistencia.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + OnError("Ocurrió un error al realizar el calculo de asistencia.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) Catch ex As Exception retorno = False - OnError("Ocurrió un error al Realizar el calculo de asistencia.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + OnError("Ocurrió un error al realizar el calculo de asistencia.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) End Try Return retorno End Function diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index ca3dfd4b8..56ab4a401 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -3896,7 +3896,7 @@ Public Class ClsPaginas If Application("GlobalSIGAppPaginas") Is Nothing Then PaginaDict = New System.Collections.Hashtable - PaginaDict.Add("/Nomina/ChecadorAsistencia.aspx".ToUpper(), -1) + PaginaDict.Add("/Nomina/ChecadorAsistencia.aspx".ToUpper(), 921) PaginaDict.Add("/Nomina/ISRCalculoAnual.aspx".ToUpper(), 918) PaginaDict.Add("/Nomina/MovimientosSUA.aspx".ToUpper(), 919) 'PaginaDict.Add("/Nomina/Acumulados.aspx".ToUpper(), 916) diff --git a/App_Code/ClsRH.vb b/App_Code/ClsRH.vb index c7f26d458..c7d98a06d 100644 --- a/App_Code/ClsRH.vb +++ b/App_Code/ClsRH.vb @@ -2438,8 +2438,53 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo End Try Return Retorno + End Function + + + Public Function UpAsistenciaDetalle(CveEmpresa As Integer, registros As List(Of RequestUpAsistenciaDetalle)) As Boolean + Dim Retorno As Boolean = False + Dim xmlProductos As System.Xml.Linq.XDocument = Nothing + If registros IsNot Nothing AndAlso registros.Count > 0 Then + xmlProductos = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("registros", From x In registros Select New System.Xml.Linq.XElement("registro", New System.Xml.Linq.XElement("CveAsistenciaDetalle", x.CveAsistenciaDetalle), New System.Xml.Linq.XElement("CvePersonal", x.CvePersonal), New System.Xml.Linq.XElement("CveAsistenciasInasistencias", x.CveAsistenciasInasistencias), New System.Xml.Linq.XElement("CveSubProyecto", x.CveSubProyecto), New System.Xml.Linq.XElement("Fecha", x.Fecha)))) + End If + Data = New DataTable + SqlDataAdapter("PA_RH_AsistenciaDetalleUP") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@xmlRegistros", SqlDbType.Xml).Value = xmlProductos.ToString() + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + Me.OnError("Ocurrió un error al guardar la Asistencia.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + OnError("Ocurrió un error al guardar la Asistencia.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + Public Function AddChecadorRegistro(CveEmpresa As Integer, registros As List(Of RequestAddChecadorRegistro)) As Boolean + Dim Retorno As Boolean = False + Dim xmlProductos As System.Xml.Linq.XDocument = Nothing + If registros IsNot Nothing AndAlso registros.Count > 0 Then + xmlProductos = New System.Xml.Linq.XDocument(New System.Xml.Linq.XElement("registros", From x In registros Select New System.Xml.Linq.XElement("registro", New System.Xml.Linq.XElement("CveChecador", x.CveChecador), New System.Xml.Linq.XElement("CvePersonal", x.CvePersonal), New System.Xml.Linq.XElement("ChecadorID", x.ChecadorID), New System.Xml.Linq.XElement("Fecha", x.Fecha)))) + End If + Data = New DataTable + SqlDataAdapter("PA_RH_ChecadorAsistenciaAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@xmlRegistros", SqlDbType.Xml).Value = xmlProductos.ToString() + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + Me.OnError("Ocurrió un error al guardar la Asistencia.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + OnError("Ocurrió un error al guardar la Asistencia.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno End Function - Public Function AddAsistenciaMasiva(CvePeriodo As Integer, CveUsuario As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False @@ -7088,3 +7133,16 @@ chkAplicaVacacion As Boolean, chkAplicaIncapacidad As Boolean, chkAplicaRetardo End Sub #End Region End Class +Public Class RequestAddChecadorRegistro + Public Property CveChecador As Integer + Public Property CvePersonal As Integer + Public Property ChecadorID As Integer + Public Property Fecha As DateTime +End Class +Public Class RequestUpAsistenciaDetalle + Public Property CveAsistenciaDetalle As Integer + Public Property Fecha As DateTime + Public Property CvePersonal As Integer + Public Property CveAsistenciasInasistencias As Integer + Public Property CveSubProyecto As Integer +End Class diff --git a/General/ExcelToBD.aspx b/General/ExcelToBD.aspx new file mode 100644 index 000000000..6b74bf170 --- /dev/null +++ b/General/ExcelToBD.aspx @@ -0,0 +1,102 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="ExcelToBD.aspx.cs" Inherits="General_ExcelToBD" %> + + + + + + + + + + + + + + + + + +
+
+
+
+
+ + Paso 1: cargar plantilla +
+
+ +
+
+
+ ingrese el archivo a cargar + +
+ Cargar excel + +
+
+
+ +
+
+ +
+
+
+ + Paso 2: Configuración +
+
+ Mostrar + +
+
+
+
+
+
+ + +
+
+
+
+
+ +
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+ +
+
+
+ Continuar +
+
+
+
+
+
+
+
+ + + diff --git a/General/ExcelToBD.aspx.cs b/General/ExcelToBD.aspx.cs new file mode 100644 index 000000000..cabe4ccdb --- /dev/null +++ b/General/ExcelToBD.aspx.cs @@ -0,0 +1,116 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using ClosedXML.Excel; +using Extensiones; + +public partial class General_ExcelToBD : System.Web.UI.Page +{ + #region propiedades + + private string URLFile + { + get + { + if (ViewState["URLFile"] == null) { return ""; } + else { return ViewState["URLFile"].ToString(); } + } + + set { ViewState["URLFile"] = value; } + } + private string extension + { + get + { + if (ViewState["extension"] == null) { return ""; } + else { return ViewState["extension"].ToString(); } + } + + set { ViewState["extension"] = value; } + } + private List workBooks + { + get + { + if (ViewState["workBooks"] == null) { return null; } + else { return (List)ViewState["workBooks"]; } + } + + set { ViewState["workBooks"] = value; } + } + #endregion + protected void Page_Load(object sender, EventArgs e) + { + + } + + protected void LnkCargarArchivo_Click(object sender, EventArgs e) + { + List filesgral = TxtArchivoXls.getfiles().Archivos; + workBooks = new List(); + foreach (Archivo fileItem in filesgral) + { + extension = System.IO.Path.GetExtension(string.Format(@"{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", ""); + URLFile = fileItem.FileUrl; + } + using (var workbook = new XLWorkbook(URLFile)) + { + int position = 1; + foreach (IXLWorksheet wokitem in workbook.Worksheets) + { + workBooks.Add(new ADSWorksBooks() { Name = wokitem.Name, position = position++ }); + } + + + } + DdlWorkBooks.DataSource = workBooks; + DdlWorkBooks.DataBind(); + if (workBooks.Count > 0) + { + DdlWorkBooks.SelectedIndex = 0; + DdlWorkBooks_SelectedIndexChanged(null,null); + } + } + + protected void DdlWorkBooks_SelectedIndexChanged(object sender, EventArgs e) + { + using (var workbook = new XLWorkbook(URLFile)) + { + + int Filas = 0; + int columnas = 0; + IXLWorksheet workSheet = workbook.Worksheet(DdlWorkBooks.SelectedValue.ToEntero()); + Filas = workSheet.LastColumnUsed().CellCount(); + columnas = workSheet.LastRowUsed().CellCount(); + TxtFilas.Text = Filas.ToString(); + TxtInicia.Text = "1"; + TxtColumnas.Text = Filas.ToString(); + } + + } + + protected void Lnkdoit_Click(object sender, EventArgs e) + { + + } + + protected void LnkContinuar_Click(object sender, EventArgs e) + { + int Filas = 0; + int columnas = 0; + using (var workbook = new XLWorkbook(URLFile)) + { + IXLWorksheet workSheet = workbook.Worksheet(DdlWorkBooks.SelectedValue.ToEntero()); + } + } +} + +[Serializable] +public class ADSWorksBooks +{ + public int position { get; set; } + public string Name { get; set; } +} \ No newline at end of file diff --git a/Metronic/assets/global/images/spritemap.png b/Metronic/assets/global/images/spritemap.png new file mode 100644 index 0000000000000000000000000000000000000000..d711b0f0e6d7e33407fb067e33fdc3a29a299409 GIT binary patch literal 10208 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 Bm{9-# literal 0 HcmV?d00001 diff --git a/Metronic/assets/global/images/spritemap@2x.png b/Metronic/assets/global/images/spritemap@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..ed29b88b6e2154cb6d1b88ab5bf9a3b7eac87d0c GIT binary patch literal 35675 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 literal 0 HcmV?d00001 diff --git a/Nomina/ChecadorAsistencia.aspx b/Nomina/ChecadorAsistencia.aspx index e9b06823b..01a90f0c2 100644 --- a/Nomina/ChecadorAsistencia.aspx +++ b/Nomina/ChecadorAsistencia.aspx @@ -38,6 +38,9 @@ +
  • + Agregar registro +
  • @@ -122,12 +125,15 @@