Merge branch 'master' of http://192.168.10.111:8383/SIG
This commit is contained in:
@@ -2273,6 +2273,23 @@ Public Class ClsNominas
|
|||||||
Return Retorno
|
Return Retorno
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
|
Public Function UpdatePeriodoEnvioPrenomina(CvePeriodo As Integer, CveEmpresa As Integer, PreAsistenciaEnviada As Boolean) As Boolean
|
||||||
|
Dim Retorno As Boolean = False
|
||||||
|
DataAdapter("PA_Nom_PeriodoEnvioPrenominaUpdate")
|
||||||
|
With SqlAdapter.SelectCommand.Parameters
|
||||||
|
.Add("@CvePeriodo", SqlDbType.Int).Value = CvePeriodo
|
||||||
|
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||||
|
.Add("@PreAsistenciaEnviada", SqlDbType.Int).Value = PreAsistenciaEnviada
|
||||||
|
End With
|
||||||
|
Try
|
||||||
|
SqlAdapter.Fill(Data)
|
||||||
|
Retorno = True
|
||||||
|
Catch ex As Exception
|
||||||
|
OnError("Ocurrió un error al actualizar el envio de Pre asistencia del periodo.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
|
||||||
|
End Try
|
||||||
|
Return Retorno
|
||||||
|
End Function
|
||||||
|
|
||||||
Public Function RemovePeriodo(CvePeriodo As Integer) As Boolean
|
Public Function RemovePeriodo(CvePeriodo As Integer) As Boolean
|
||||||
Dim Retorno As Boolean = False
|
Dim Retorno As Boolean = False
|
||||||
|
|
||||||
|
|||||||
@@ -216,18 +216,27 @@
|
|||||||
<asp:GridView ID="GVRegDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros" DataKeyNames="CvePersonal,NombreCompleto"
|
<asp:GridView ID="GVRegDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros" DataKeyNames="CvePersonal,NombreCompleto"
|
||||||
CssClass="ADSCROLLER2 table table-striped table-advance table-hover Widthall" data-rows="1" data-cols="3" data-heightmenos="100" data-heightfijo="600" Style="text-align: center;" GridLines="None">
|
CssClass="ADSCROLLER2 table table-striped table-advance table-hover Widthall" data-rows="1" data-cols="3" data-heightmenos="100" data-heightfijo="600" Style="text-align: center;" GridLines="None">
|
||||||
<Columns>
|
<Columns>
|
||||||
<%--<asp:TemplateField HeaderText="Codigo" ItemStyle-HorizontalAlign="Left" >
|
<asp:TemplateField HeaderText="Codigo" ItemStyle-HorizontalAlign="Left" >
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:Label ID="LtlNumero" runat="server" CssClass="truncate" Width="50" Text='<%# Eval("Codigo") %>'> </asp:Label>
|
<div class="row">
|
||||||
|
<div class="col-md-2" style="margin-top:-5px!important">
|
||||||
|
<asp:CheckBox runat="server" ID="Chk" Visible="false" />
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6" style="margin-top:-5px!important">
|
||||||
|
<asp:Label ID="LtlNumero" runat="server" CssClass="truncate" Width="50" Text='<%# Eval("Codigo") %>'> </asp:Label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:TemplateField>--%>
|
</asp:TemplateField>
|
||||||
<%-- <asp:TemplateField HeaderText="Personal" ItemStyle-HorizontalAlign="Left">
|
<%-- <asp:TemplateField HeaderText="Personal" ItemStyle-HorizontalAlign="Left">
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:Label ID="lblIPersonal" runat="server" CssClass="truncate" Width="250" Text='<%# Eval("NombreCompleto") %>'> </asp:Label>
|
<asp:Label ID="lblIPersonal" runat="server" CssClass="truncate" Width="250" Text='<%# Eval("NombreCompleto") %>'> </asp:Label>
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:TemplateField>--%>
|
</asp:TemplateField>--%>
|
||||||
|
|
||||||
<asp:HyperLinkField DataTextField="Codigo" HeaderText="Código" DataNavigateUrlFields="CvePersonal" DataNavigateUrlFormatString="Personal.aspx?CvePersonal={0}" ItemStyle-HorizontalAlign="Left" Target="_blank" />
|
<%--<asp:HyperLinkField DataTextField="Codigo" HeaderText="Código" DataNavigateUrlFields="CvePersonal" DataNavigateUrlFormatString="Personal.aspx?CvePersonal={0}" ItemStyle-HorizontalAlign="Left" Target="_blank" />--%>
|
||||||
<asp:HyperLinkField DataTextField="NombreCompleto" HeaderText="Personal" DataNavigateUrlFields="CvePersonal" DataNavigateUrlFormatString="Personal.aspx?CvePersonal={0}" ItemStyle-HorizontalAlign="Left" Target="_blank" />
|
<asp:HyperLinkField DataTextField="NombreCompleto" HeaderText="Personal" DataNavigateUrlFields="CvePersonal" DataNavigateUrlFormatString="Personal.aspx?CvePersonal={0}" ItemStyle-HorizontalAlign="Left" Target="_blank" />
|
||||||
<asp:TemplateField HeaderText="Faltas" ItemStyle-HorizontalAlign="Right">
|
<asp:TemplateField HeaderText="Faltas" ItemStyle-HorizontalAlign="Right">
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
Option Strict On
|
Option Strict On
|
||||||
|
|
||||||
|
|
||||||
|
Imports DocumentFormat.OpenXml.Wordprocessing
|
||||||
Imports Extensiones
|
Imports Extensiones
|
||||||
Imports System
|
Imports System
|
||||||
Imports System.Data
|
Imports System.Data
|
||||||
|
Imports System.Runtime.Remoting
|
||||||
|
Imports System.ServiceModel.Security
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -158,6 +161,18 @@ Partial Class RH_RepChecadorPreAsistencia
|
|||||||
End Property
|
End Property
|
||||||
|
|
||||||
|
|
||||||
|
Public Property VerChkSeleccionPersonal As Boolean
|
||||||
|
Get
|
||||||
|
If ViewState("VerChkSeleccionPersonal") Is Nothing Then
|
||||||
|
ViewState("VerChkSeleccionPersonal") = False
|
||||||
|
End If
|
||||||
|
Return Boolean.Parse(ViewState("VerChkSeleccionPersonal").ToString)
|
||||||
|
End Get
|
||||||
|
Set(value As Boolean)
|
||||||
|
ViewState("VerChkSeleccionPersonal") = value
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
'Private Property dtPeriodos As DataTable
|
'Private Property dtPeriodos As DataTable
|
||||||
' Get
|
' Get
|
||||||
' If ViewState("dtPeriodos") Is Nothing Then
|
' If ViewState("dtPeriodos") Is Nothing Then
|
||||||
@@ -375,24 +390,24 @@ Partial Class RH_RepChecadorPreAsistencia
|
|||||||
' DdlPeriodo.DataSource = Nothing
|
' DdlPeriodo.DataSource = Nothing
|
||||||
End If
|
End If
|
||||||
|
|
||||||
objNomina.Dispose()
|
objNomina.Dispose()
|
||||||
|
|
||||||
Dim DtTempFechaInicial As DataTable = DTPeriodos.FiltraParametros("Estatus = 1")
|
Dim DtTempFechaInicial As DataTable = DTPeriodos.FiltraParametros("Estatus = 1")
|
||||||
|
|
||||||
|
|
||||||
DdlPeriodo.DataBind()
|
DdlPeriodo.DataBind()
|
||||||
|
|
||||||
If DtTempFechaInicial.Rows.Count > 0 Then
|
If DtTempFechaInicial.Rows.Count > 0 Then
|
||||||
Dim temCvePeriodoNomi As Integer = DtTempFechaInicial(0)("CvePeriodo").ToString().ToEntero
|
Dim temCvePeriodoNomi As Integer = DtTempFechaInicial(0)("CvePeriodo").ToString().ToEntero
|
||||||
DdlPeriodo.SelectedValueExist(temCvePeriodoNomi)
|
DdlPeriodo.SelectedValueExist(temCvePeriodoNomi)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
DdlPeriodo.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
|
DdlPeriodo.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
|
||||||
UPFiltros.Update()
|
UPFiltros.Update()
|
||||||
' BtnConsultar.Enabled = True
|
' BtnConsultar.Enabled = True
|
||||||
Else
|
Else
|
||||||
|
|
||||||
DTPeriodos = Nothing
|
DTPeriodos = Nothing
|
||||||
DdlPeriodo.DataSource = Nothing
|
DdlPeriodo.DataSource = Nothing
|
||||||
|
|
||||||
'DdlRango.Visible = False
|
'DdlRango.Visible = False
|
||||||
@@ -535,12 +550,12 @@ Partial Class RH_RepChecadorPreAsistencia
|
|||||||
Dim FilCveDepartamento As Integer = DdlDepartamento.SelectedValue.ToEntero
|
Dim FilCveDepartamento As Integer = DdlDepartamento.SelectedValue.ToEntero
|
||||||
|
|
||||||
Dim FilasFiltradas = From fila In GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros(FiltroSubProyecto).AsEnumerable()
|
Dim FilasFiltradas = From fila In GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros(FiltroSubProyecto).AsEnumerable()
|
||||||
Let Inicio = fila.Field(Of Date)("FechaInicio")
|
Let Inicio = fila.Field(Of Date)("FechaInicio")
|
||||||
Let FechaFinOriginal = fila.Field(Of Date?)("FechaFin")
|
Let FechaFinOriginal = fila.Field(Of Date?)("FechaFin")
|
||||||
Let FechaFin = If(FechaFinOriginal.HasValue, FechaFinOriginal.Value, Now)
|
Let FechaFin = If(FechaFinOriginal.HasValue, FechaFinOriginal.Value, Now)
|
||||||
Where Inicio <= FechaInicioPeriodoFiltro AndAlso FechaInicioPeriodoFiltro <= FechaFin _
|
Where Inicio <= FechaInicioPeriodoFiltro AndAlso FechaInicioPeriodoFiltro <= FechaFin _
|
||||||
AndAlso (FilCveDepartamento = -1 OrElse fila.Field(Of Integer)("CveDepartamento") = FilCveDepartamento)
|
AndAlso (FilCveDepartamento = -1 OrElse fila.Field(Of Integer)("CveDepartamento") = FilCveDepartamento)
|
||||||
Select fila
|
Select fila
|
||||||
|
|
||||||
DtPersonal = FilasFiltradas.CopyToDataTable()
|
DtPersonal = FilasFiltradas.CopyToDataTable()
|
||||||
|
|
||||||
@@ -1937,6 +1952,11 @@ Partial Class RH_RepChecadorPreAsistencia
|
|||||||
Else
|
Else
|
||||||
lblFaltas.Text = "-"
|
lblFaltas.Text = "-"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If VerChkSeleccionPersonal Then
|
||||||
|
e.Row.FCCheckBox("Chk").Visible = True
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -2482,8 +2502,14 @@ Partial Class RH_RepChecadorPreAsistencia
|
|||||||
DVEnvioMasivo.Visible = True
|
DVEnvioMasivo.Visible = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
VerChkSeleccionPersonal = True
|
||||||
|
|
||||||
UpDatos.Update()
|
UpDatos.Update()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
GvBind()
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Function PeriodoBloqueado(CvePeriodo As Integer) As Boolean
|
Private Function PeriodoBloqueado(CvePeriodo As Integer) As Boolean
|
||||||
@@ -2552,16 +2578,28 @@ Partial Class RH_RepChecadorPreAsistencia
|
|||||||
|
|
||||||
For Each GvRow As GridViewRow In GVRegDatos.Rows
|
For Each GvRow As GridViewRow In GVRegDatos.Rows
|
||||||
|
|
||||||
Dim CvePersonal As Integer = GvRow.DataKey("CvePersonal").ToEntero
|
If GvRow.RowType = DataControlRowType.DataRow Then
|
||||||
|
|
||||||
|
Dim Chk As CheckBox = GvRow.FCCheckBox("Chk")
|
||||||
|
|
||||||
|
If Chk.Checked Then
|
||||||
|
Dim CvePersonal As Integer = GvRow.DataKey("CvePersonal").ToEntero
|
||||||
|
If Not ObjRH.AddPreAsistencia(CvePersonal, FechaCarga, DdlAsistenciaInacistenciaCarga.SelectedValue.ToEntero, TxtPorcentajePago.Text.ToDecimal, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
|
||||||
|
TxtHorasDobles.Text.ToDecimal, TxtHorasTriples.Text.ToDecimal, DdlMotivoHoraExtra.SelectedValue.ToEntero, TxtObs.Text) Then
|
||||||
|
ProcesoOK = False
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
If Not ObjRH.AddPreAsistencia(CvePersonal, FechaCarga, DdlAsistenciaInacistenciaCarga.SelectedValue.ToEntero, TxtPorcentajePago.Text.ToDecimal, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
|
|
||||||
TxtHorasDobles.Text.ToDecimal, TxtHorasTriples.Text.ToDecimal, DdlMotivoHoraExtra.SelectedValue.ToEntero, TxtObs.Text) Then
|
|
||||||
ProcesoOK = False
|
|
||||||
Exit For
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
If ProcesoOK Then
|
||||||
|
'ProcesoOK =
|
||||||
|
adasd
|
||||||
|
End If
|
||||||
|
|
||||||
If ProcesoOK Then
|
If ProcesoOK Then
|
||||||
ObjRH.Commit()
|
ObjRH.Commit()
|
||||||
Alert("Carga realizada correctamente.")
|
Alert("Carga realizada correctamente.")
|
||||||
@@ -2569,9 +2607,369 @@ Partial Class RH_RepChecadorPreAsistencia
|
|||||||
Else
|
Else
|
||||||
ObjRH.RollBack()
|
ObjRH.RollBack()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Private Sub EnviarPreAsistencia()
|
||||||
|
|
||||||
|
|
||||||
|
For Each dRow As DataRow In DtPersonal.Rows
|
||||||
|
|
||||||
|
Dim Fecha As Date = FechaInicioPeriodo
|
||||||
|
Dim ContadorFaltas As Integer = 0
|
||||||
|
objRH = New ClsRH
|
||||||
|
If objRH.PreAsistenciaRegistrosGet(FechaInicioPeriodo, FechaFinPeriodo, DdlTurno.SelectedValue.ToEntero, UsuarioActual.Empresa.CveEmpresa, True) Then
|
||||||
|
DTChecadorRegistros = objRH.DtResultados
|
||||||
|
End If
|
||||||
|
objRH.Dispose()
|
||||||
|
|
||||||
|
Dim registrosPersonal As DataTable = DTChecadorRegistros.FiltraParametros(" CvePersonal = " & dRow(0).ToString())
|
||||||
|
|
||||||
|
Dim CveTurno As Integer = dRow("CveTurno").ToString.ToEntero
|
||||||
|
Dim DiaDescanso As Integer = GlobalDTTurno(UsuarioActual.CveEmpresa).FiltroPrimeroValor("DiaDescanso", $" CveTurno = {CveTurno} ").ToEntero - 1 'El -1 es por que en .net el domingo empieza 0 y en la sql en 1
|
||||||
|
Dim Codigo As String = dRow("Codigo").ToString
|
||||||
|
|
||||||
|
If registrosPersonal.Rows.Count > 0 Then
|
||||||
|
DTHorarioPersonal = DTHorarios.FiltraParametros(" CveChecadorHorario = " & registrosPersonal(0)("CveHorario").ToString() & "")
|
||||||
|
Retardos = 0
|
||||||
|
|
||||||
|
For x As Integer = 1 To (DiasPeriodo)
|
||||||
|
|
||||||
|
Dim ReRow As DataRow = Resultados.NewRow
|
||||||
|
ReRow("CvePersonal") = dRow(0).ToString()
|
||||||
|
ReRow("NombreCompleto") = dRow("NombreCompleto").ToString()
|
||||||
|
ReRow("Codigo") = Codigo
|
||||||
|
ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString()
|
||||||
|
ReRow("SalarioDiario") = dRow("SalarioDiario").ToString()
|
||||||
|
ReRow("CveAsistenciasInasistencias") = "-1"
|
||||||
|
ReRow("PorcentajePago") = "0"
|
||||||
|
ReRow("Fecha") = Fecha.ToString()
|
||||||
|
ReRow("Retraso") = "False"
|
||||||
|
ReRow("Asistio") = "True"
|
||||||
|
ReRow("Inconsistencia") = "False"
|
||||||
|
ReRow("Descanso") = "False"
|
||||||
|
ReRow("Entrada") = "ND"
|
||||||
|
ReRow("Salida") = "ND"
|
||||||
|
ReRow("FaltaRetraso") = "False"
|
||||||
|
ReRow("FaltaPorRetrasos") = "False"
|
||||||
|
ReRow("DiaInhabil") = "False"
|
||||||
|
ReRow("Mensaje") = ""
|
||||||
|
ReRow("FaltaRetardosAcumulados") = "False"
|
||||||
|
ReRow("DiaInhabil") = "False"
|
||||||
|
ReRow("DiaInhabilStr") = ""
|
||||||
|
ReRow("DiaVacacion") = "False"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = "-1"
|
||||||
|
ReRow("TipoCorto") = ""
|
||||||
|
ReRow("Sancion") = "False"
|
||||||
|
|
||||||
|
ReRow("HorasDobles") = 0
|
||||||
|
ReRow("HorasTriples") = 0
|
||||||
|
ReRow("CveMotivoHoraExtra") = -1
|
||||||
|
ReRow("Observacion") = ""
|
||||||
|
|
||||||
|
Dim diaSemana As Integer = Fecha.DayOfWeek
|
||||||
|
Dim Asistencia As Boolean = True
|
||||||
|
|
||||||
|
Dim Horario As DataTable = HorarioDiario(Fecha, DTHorarioPersonal, DiaDescanso)
|
||||||
|
Dim DiaLaboral As Boolean = Boolean.Parse(Horario(0)(0).ToString())
|
||||||
|
|
||||||
|
Dim HorarioEntrada As TimeSpan = TimeSpan.Parse(Horario(0)(1).ToString())
|
||||||
|
Dim HorarioSalidaComida As TimeSpan = TimeSpan.Parse(Horario(0)(2).ToString())
|
||||||
|
Dim HorarioEntradaComida As TimeSpan = TimeSpan.Parse(Horario(0)(3).ToString())
|
||||||
|
Dim HorarioSalida As TimeSpan = TimeSpan.Parse(Horario(0)(4).ToString())
|
||||||
|
|
||||||
|
Dim FechaHoraEntrada As DateTime
|
||||||
|
Dim FechahoraSalida As DateTime
|
||||||
|
Dim turnoNocturno As Boolean
|
||||||
|
|
||||||
|
Dim FechaHoraRegistroEntrada As DateTime
|
||||||
|
Dim FechaHoraRegistroSalida As DateTime
|
||||||
|
|
||||||
|
FechaHoraEntrada = Fecha + HorarioEntrada
|
||||||
|
If Not turnoNocturno Then
|
||||||
|
FechahoraSalida = Fecha + HorarioEntrada + (HorarioSalida - HorarioEntrada)
|
||||||
|
Else
|
||||||
|
FechahoraSalida = FechahoraSalida.AddDays(1) - HorarioEntrada + HorarioSalida
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim tempDatetime1 As DateTime = FechaHoraEntrada.AddHours(-2) 'la entrada se podra checar hasta dos horas antes de la hora de entrada
|
||||||
|
Dim tempDatetime2 As DateTime = FechahoraSalida.AddHours(4) 'Legalmente no se pueden hacer mas de 3 horas extras al día
|
||||||
|
|
||||||
|
Dim tabladelDia As DataTable = registrosPersonal.FiltraParametros(" CvePersonal = " & dRow(0).ToString() & " AND FechaRegistro >= '" & tempDatetime1.ToShortDateString & "' AND FechaRegistro <= '" & tempDatetime2.ToString() & "'")
|
||||||
|
|
||||||
|
|
||||||
|
If DTPreAsistenciasInasistencias.FiltraParametros(" CvePersonal = " & dRow(0).ToString() & " AND Fecha = '" & Fecha & "'").Rows.Count > 0 Then
|
||||||
|
|
||||||
|
Dim DTPreasistencia As DataTable = DTPreAsistenciasInasistencias.FiltraParametros(" CvePersonal = " & dRow(0).ToString() & " AND Fecha = '" & Fecha & "'")
|
||||||
|
|
||||||
|
If DTPreasistencia IsNot Nothing AndAlso DTPreasistencia.Rows.Count > 0 Then
|
||||||
|
ReRow("CveAsistenciasInasistencias") = DTPreasistencia.Rows(0)("CveAsistenciasInasistencias").ToString()
|
||||||
|
ReRow("HorasDobles") = DTPreasistencia.Rows(0)("HorasDobles").ToString.ToDecimal
|
||||||
|
ReRow("HorasTriples") = DTPreasistencia.Rows(0)("HorasTriples").ToString.ToDecimal
|
||||||
|
ReRow("CveMotivoHoraExtra") = DTPreasistencia.Rows(0)("CveMotivoHoraExtra").ToString.ToEntero
|
||||||
|
ReRow("Observacion") = DTPreasistencia.Rows(0)("Observacion").ToString
|
||||||
|
ReRow("PorcentajePago") = DTPreasistencia.Rows(0)("PorcentajePago").ToString.ToDecimal
|
||||||
|
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If ReRow("CveAsistenciasInasistencias").ToString.ToEntero > 0 Then
|
||||||
|
|
||||||
|
Dim drowAsistenciaInasistencia As DataRow = GlobalDTAsistenciasInasistencias(UsuarioActual.CveEmpresa).FiltroPrimero($"CveAsistenciasInasistencias={ReRow("CveAsistenciasInasistencias").ToString.ToEntero}")
|
||||||
|
|
||||||
|
ReRow("Asistio") = drowAsistenciaInasistencia("AplicaAsistencia").ToString = "Aplica"
|
||||||
|
ReRow("PorcentajePago") = DTPreAsistenciasInasistencias(0)("PorcentajePago").ToString.ToDecimal
|
||||||
|
ReRow("Descanso") = drowAsistenciaInasistencia("AplicaVacacion").ToString = "Aplica"
|
||||||
|
ReRow("DiaInhabil") = "False"
|
||||||
|
ReRow("DiaVacacion") = drowAsistenciaInasistencia("AplicaVacacion").ToString = "Aplica"
|
||||||
|
ReRow("FaltaRetardosAcumulados") = drowAsistenciaInasistencia("AplicaFalta").ToString = "Aplica"
|
||||||
|
ReRow("Retraso") = drowAsistenciaInasistencia("AplicaRetardo").ToString = "Aplica"
|
||||||
|
ReRow("FaltaRetraso") = False 'Not drowAsistenciaInasistencia("AplicaAsistencia").ToString = "Aplica"
|
||||||
|
ReRow("TipoCorto") = drowAsistenciaInasistencia("TipoCorto").ToString
|
||||||
|
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not ReRow("CveAsistenciasInasistencias").ToString.ToEntero > 0 Then
|
||||||
|
|
||||||
|
'If tabladelDia.Rows.Count > 0 AndAlso tabladelDia.Rows.Count <> 4 And DiaLaboral = False Then
|
||||||
|
If tabladelDia.Rows.Count > 0 AndAlso tabladelDia.Rows.Count <> 4 Then
|
||||||
|
'Dim drowAsistenciaInasistencia As DataRow = GlobalDTAsistenciasInasistencias(UsuarioActual.CveEmpresa).FiltroPrimero($"CveAsistenciasInasistencias={ReRow("CveAsistenciasInasistencias").ToString.ToEntero}")
|
||||||
|
|
||||||
|
ReRow("Asistio") = False
|
||||||
|
ReRow("PorcentajePago") = 0
|
||||||
|
ReRow("Descanso") = False
|
||||||
|
ReRow("DiaInhabil") = False
|
||||||
|
ReRow("DiaVacacion") = False
|
||||||
|
ReRow("FaltaRetardosAcumulados") = False
|
||||||
|
ReRow("Retraso") = False
|
||||||
|
ReRow("FaltaRetraso") = False
|
||||||
|
ReRow("TipoCorto") = "_ND"
|
||||||
|
|
||||||
|
Else
|
||||||
|
Dim CountRegistros As Integer = tabladelDia.Rows.Count
|
||||||
|
Dim Inconsistencia As Boolean = False
|
||||||
|
|
||||||
|
If Not DiaLaboral Then
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaDescanso
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
ReRow("Descanso") = "True"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim TempDTValidaciones As DataTable = DTDiasInhabiles.FiltraParametros(" FechaInhabil = '" & Fecha.ToString() & "'")
|
||||||
|
If TempDTValidaciones.Rows.Count > 0 Then
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
ReRow("DiaInhabil") = "True"
|
||||||
|
ReRow("DiaInhabilStr") = TempDTValidaciones(0)("DiaInhabil").ToString()
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaDescanso
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
Else
|
||||||
|
ReRow("DiaInhabil") = "False"
|
||||||
|
ReRow("DiaInhabilStr") = ""
|
||||||
|
End If
|
||||||
|
|
||||||
|
TempDTValidaciones = DtVacaciones.FiltraParametros(" Fecha = '" & Fecha.ToString() & "' AND CvePersonal = " & dRow(0).ToString())
|
||||||
|
|
||||||
|
If TempDTValidaciones.Rows.Count > 0 Then
|
||||||
|
ReRow("DiaVacacion") = "True"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaDescanso
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
|
||||||
|
Else
|
||||||
|
ReRow("DiaVacacion") = "False"
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If Fecha >= NowADS() Then
|
||||||
|
ReRow("Asistio") = "True"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveASistenciaInasistenciaAsistio
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
Else
|
||||||
|
|
||||||
|
If ReRow("DiaVacacion").ToString() <> "True" And ReRow("Descanso").ToString() <> "True" Then
|
||||||
|
|
||||||
|
If CountRegistros > 0 Then
|
||||||
|
|
||||||
|
FechaHoraRegistroEntrada = DateTime.Parse(tabladelDia(0)("FechaRegistro").ToString())
|
||||||
|
FechaHoraRegistroSalida = DateTime.Parse(tabladelDia(tabladelDia.Rows.Count - 1)("FechaRegistro").ToString())
|
||||||
|
|
||||||
|
If Not (FechaHoraRegistroEntrada - FechaHoraEntrada).TotalMinutes > TolFalEntradaMin Then
|
||||||
|
If (FechaHoraRegistroEntrada - FechaHoraEntrada).TotalMinutes > TolRetEntradaMin Then
|
||||||
|
|
||||||
|
Retardos = Retardos + 1
|
||||||
|
ReRow("Mensaje") = ReRow("Mensaje").ToString() & vbLf & "Retardo"
|
||||||
|
|
||||||
|
If Retardos >= TolRetAcumulados Then
|
||||||
|
ReRow("Asistio") = "False"
|
||||||
|
ReRow("FaltaRetardosAcumulados") = "True"
|
||||||
|
ReRow("Mensaje") = ReRow("Mensaje").ToString() & vbLf & " Falta por " & TolRetAcumulados & " acumulados. "
|
||||||
|
Retardos = 0
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta
|
||||||
|
ReRow("PorcentajePago") = "0"
|
||||||
|
Else
|
||||||
|
ReRow("Asistio") = "True"
|
||||||
|
ReRow("Retraso") = "True"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaRetardo
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
ReRow("Asistio") = "True"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveASistenciaInasistenciaAsistio
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
Asistencia = False
|
||||||
|
ReRow("Mensaje") = ReRow("Mensaje").ToString() & vbLf & "Falta por retardo."
|
||||||
|
ReRow("FaltaRetraso") = "True"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta
|
||||||
|
ReRow("PorcentajePago") = "0"
|
||||||
|
End If
|
||||||
|
|
||||||
|
If FechahoraSalida > FechaHoraRegistroSalida Then
|
||||||
|
|
||||||
|
Dim diferenciasalidaMinutos As Integer = (FechahoraSalida - FechaHoraRegistroSalida).TotalMinutes.ToString().ToEntero
|
||||||
|
|
||||||
|
If RetSalidaAntes Then
|
||||||
|
If diferenciasalidaMinutos > TolSalidaAntesMin Then
|
||||||
|
|
||||||
|
ReRow("Asistio") = "True"
|
||||||
|
ReRow("Retraso") = "True"
|
||||||
|
ReRow("Mensaje") = ReRow("Mensaje").ToString() & vbLf & "Retraso por salida antes de tiempo (" & diferenciasalidaMinutos & " minutos)."
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaRetardo
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
Else
|
||||||
|
ReRow("Asistio") = "True"
|
||||||
|
ReRow("Retraso") = "False"
|
||||||
|
ReRow("Mensaje") = ReRow("Mensaje").ToString() & vbLf & "Salida antes de tiempo (" & diferenciasalidaMinutos & " minutos)."
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveASistenciaInasistenciaAsistio
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Else
|
||||||
|
ReRow("Asistio") = "False"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta
|
||||||
|
ReRow("PorcentajePago") = "0"
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
If ReRow("Asistio").ToString() = "True" Then ReRow("PorcentajePago") = "100" Else ReRow("PorcentajePago") = "0"
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
'adasdasd
|
||||||
|
|
||||||
|
|
||||||
|
Resultados.Rows.Add(ReRow)
|
||||||
|
Fecha = Fecha.AddDays(1)
|
||||||
|
|
||||||
|
Next x
|
||||||
|
Else
|
||||||
|
|
||||||
|
For x As Integer = 1 To (DiasPeriodo)
|
||||||
|
|
||||||
|
Dim ReRow As DataRow = Resultados.NewRow
|
||||||
|
|
||||||
|
ReRow("CvePersonal") = dRow(0).ToString()
|
||||||
|
ReRow("NombreCompleto") = dRow("NombreCompleto").ToString()
|
||||||
|
ReRow("Codigo") = Codigo
|
||||||
|
ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString()
|
||||||
|
ReRow("SalarioDiario") = dRow("SalarioDiario").ToString()
|
||||||
|
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta
|
||||||
|
ReRow("PorcentajePago") = "0"
|
||||||
|
|
||||||
|
ReRow("Fecha") = Fecha.ToString()
|
||||||
|
ReRow("Retraso") = "False"
|
||||||
|
ReRow("Inconsistencia") = "False"
|
||||||
|
ReRow("Descanso") = "False"
|
||||||
|
ReRow("FaltaPorRetrasos") = "False"
|
||||||
|
ReRow("Entrada") = "ND"
|
||||||
|
ReRow("Salida") = "ND"
|
||||||
|
ReRow("Mensaje") = ""
|
||||||
|
ReRow("FaltaRetardosAcumulados") = "False"
|
||||||
|
ReRow("FaltaRetardosAcumulados") = "False"
|
||||||
|
ReRow("DiaInhabil") = "False"
|
||||||
|
ReRow("DiaInhabilStr") = ""
|
||||||
|
ReRow("DiaVacacion") = "False"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = "-1"
|
||||||
|
ReRow("TipoCorto") = ""
|
||||||
|
ReRow("Sancion") = "False"
|
||||||
|
|
||||||
|
ReRow("HorasDobles") = 0
|
||||||
|
ReRow("HorasTriples") = 0
|
||||||
|
ReRow("CveMotivoHoraExtra") = -1
|
||||||
|
ReRow("Observacion") = ""
|
||||||
|
|
||||||
|
If dRow("CveChecadorHorario").ToString().ToEntero > 0 Then
|
||||||
|
|
||||||
|
DTHorarioPersonal = DTHorarios.FiltraParametros(" CveChecadorHorario = " & dRow("CveChecadorHorario").ToString().ToEntero & "")
|
||||||
|
|
||||||
|
If Fecha >= NowADS() Then
|
||||||
|
ReRow("Asistio") = "True"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveASistenciaInasistenciaAsistio
|
||||||
|
Else
|
||||||
|
ReRow("Asistio") = "False"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim Horario As DataTable = HorarioDiario(Fecha, DTHorarioPersonal, DiaDescanso)
|
||||||
|
Dim DiaLaboral As Boolean = Boolean.Parse(Horario(0)(0).ToString())
|
||||||
|
|
||||||
|
If Not DiaLaboral Then
|
||||||
|
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaDescanso
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
ReRow("Descanso") = "True"
|
||||||
|
Else
|
||||||
|
|
||||||
|
Dim TempDTValidaciones As DataTable = DTDiasInhabiles.FiltraParametros(" FechaInhabil = '" & Fecha.ToString() & "'")
|
||||||
|
|
||||||
|
If TempDTValidaciones.Rows.Count > 0 Then
|
||||||
|
ReRow("DiaInhabil") = "True"
|
||||||
|
ReRow("DiaInhabilStr") = TempDTValidaciones(0)("DiaInhabil").ToString()
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaDescanso
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
Else
|
||||||
|
ReRow("DiaInhabil") = "False"
|
||||||
|
ReRow("DiaInhabilStr") = ""
|
||||||
|
ReRow("PorcentajePago") = "0"
|
||||||
|
End If
|
||||||
|
|
||||||
|
TempDTValidaciones = DtVacaciones.FiltraParametros(" Fecha = '" & Fecha.ToString() & "' AND CvePersonal = " & dRow(0).ToString())
|
||||||
|
|
||||||
|
If TempDTValidaciones.Rows.Count > 0 Then
|
||||||
|
ReRow("DiaVacacion") = "True"
|
||||||
|
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaDescanso
|
||||||
|
ReRow("PorcentajePago") = "100"
|
||||||
|
Else
|
||||||
|
ReRow("DiaVacacion") = "False"
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Resultados.Rows.Add(ReRow)
|
||||||
|
Fecha = Fecha.AddDays(1)
|
||||||
|
|
||||||
|
Next
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
@@ -292,8 +292,15 @@ Partial Class Ventas_PVCobranza
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
If e.Row.DBCampo("AplicaImpresionPorAnt").ToEntero() = 1 Then
|
If e.Row.DBCampo("AplicaImpresionPorAnt").ToEntero() = 1 Then
|
||||||
e.Row.FCLinkButton("BtnPagar").Visible = False
|
'SI TIENE SALDO, QUE APLIQUE EL PAGO
|
||||||
|
If e.Row.DBCampo("Saldo").ToDecimal() > 0 Then
|
||||||
|
e.Row.FCLinkButton("BtnPagar").Visible = True
|
||||||
|
e.Row.FCLinkButton("LnkImprimir").Visible = False
|
||||||
|
Else
|
||||||
|
e.Row.FCLinkButton("BtnPagar").Visible = False
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -467,6 +474,10 @@ Partial Class Ventas_PVCobranza
|
|||||||
MsgError = "Error al aplicar el corte"
|
MsgError = "Error al aplicar el corte"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If MsgError = "" AndAlso Not ObjVentas2.UpdateVentaTicketImpreso(CveVenta, 0) Then
|
||||||
|
MsgError = "No se pudo desmarcar la impresión"
|
||||||
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
MsgError = "Error al registrar prepólizas"
|
MsgError = "Error al registrar prepólizas"
|
||||||
End If
|
End If
|
||||||
|
|||||||
Reference in New Issue
Block a user