This commit is contained in:
2021-06-22 07:36:15 -07:00
9 changed files with 511 additions and 99 deletions

View File

@@ -256,7 +256,27 @@ Public Class ClsNominas
Return retorno
End Function
Public Function SUAMovmientosAfiliatoriosGET(cveEmpresa As Integer, FechaInicio As DateTime, FechaFin As DateTime, CveTipoPeriodo As Integer) As Boolean
Dim retorno As Boolean = False
DTSet = New DataSet()
DataAdapter("[PA_Nom_SUAMovmientosAfiliatoriosGET]", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa
.Add("@FechaInicio", SqlDbType.Date).Value = FechaInicio
.Add("@FechaFin", SqlDbType.Date).Value = FechaFin
.Add("@TipoPeriodo", SqlDbType.Int).Value = CveTipoPeriodo
End With
Try
SqlAdapter.Fill(DTSet)
If DTSet.Tables.Count > 0 Then
Data = DTSet.Tables(0)
End If
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el reporte de movimientos Afiliatorios.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return retorno
End Function
Public Function ReportedePercepcionesDeduccionesGet(cveEmpresa As Integer, FechaInicio As DateTime, FechaFin As DateTime, CveTipoPeriodo As Integer) As Boolean
Dim retorno As Boolean = False
DTSet = New DataSet()
@@ -269,6 +289,9 @@ Public Class ClsNominas
End With
Try
SqlAdapter.Fill(DTSet)
If DTSet.Tables.Count > 0 Then
Data = DTSet.Tables(0)
End If
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el reporte de Percepciones.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
@@ -287,6 +310,9 @@ Public Class ClsNominas
End With
Try
SqlAdapter.Fill(DTSet)
If DTSet.Tables.Count > 0 Then
Data = DTSet.Tables(0)
End If
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el reporte de incidencias.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
@@ -304,6 +330,9 @@ Public Class ClsNominas
End With
Try
SqlAdapter.Fill(DTSet)
If DTSet.Tables.Count > 0 Then
Data = DTSet.Tables(0)
End If
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el reporte de acumulados.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())

View File

@@ -3849,6 +3849,7 @@ Public Class ClsPaginas
PaginaDict = New System.Collections.Hashtable
PaginaDict.Add("/Nomina/ISRCalculoAnual.aspx".ToUpper(), 918)
PaginaDict.Add("/Nomina/MovimientosSUA.aspx".ToUpper(), 919)
PaginaDict.Add("/Nomina/Acumulados.aspx".ToUpper(), 916)
PaginaDict.Add("/RH/CalculoSBC.aspx".ToUpper(), 915)
PaginaDict.Add("/Inicio.aspx".ToUpper(), -1)

View File

@@ -269,10 +269,13 @@ Public Class LogicNominas
'If Asistencias > 15 Then
' Asistencias = 15
'End If
If Asistencias <= 0 Then
Asistencias = 1
End If
Dim Vacaciones As Integer = objPersonal.DtResultados.SUM("AplicaVacacion").ToEntero()
DiasIncapacitados = objPersonal.DtResultados.SUM("AplicaIncapacidad").ToEntero()
DiasPagados = Asistencias - Vacaciones
If DiasPagados < 0 Then DiasPagados = 0
If DiasPagados <= 0 Then DiasPagados = 1
Else
continuar = False
End If

View File

@@ -258,6 +258,7 @@ public partial class Nomina_CatConcepto : ClsPaginas
{
if (UsuarioActual.Empresa.UsaContabilidad)
{
DdlCtaContable.DataValueField = "Id";
using (ClsContPAQi ObjConta = new ClsContPAQi(UsuarioActual.Empresa))
{
@@ -336,9 +337,9 @@ public partial class Nomina_CatConcepto : ClsPaginas
if (EsEditar)
{
TieneError = !ObjNomina.UpdateConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, CveConcepto, retencion, CveClasificacion, IdCtaContable, CveTipoGasto, tipoCalculo, CveConceptoContable, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, CveSATConcepto,UsuarioActual.CveEmpresa);
TieneError = !ObjNomina.UpdateConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, CveConcepto, retencion, CveClasificacion, IdCtaContable, CveTipoGasto, tipoCalculo, CveConceptoContable, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, CveSATConcepto, UsuarioActual.CveEmpresa);
if(!TieneError)
if (!TieneError)
{
if (ChkMovtoPermanente.Checked)
{
@@ -346,9 +347,9 @@ public partial class Nomina_CatConcepto : ClsPaginas
}
else
{
if(TxtFormulaTotal.Text == "FNC.[MovimientosPermanentes]")
if (TxtFormulaTotal.Text == "FNC.[MovimientosPermanentes]")
{
// ObjNomina.UpdateConceptoFormula(CveConcepto, "FNC.[MovimientosPermanentes] ", 1);
// ObjNomina.UpdateConceptoFormula(CveConcepto, "FNC.[MovimientosPermanentes] ", 1);
}
}
}
@@ -370,7 +371,7 @@ public partial class Nomina_CatConcepto : ClsPaginas
if (CveConcepto>0)
if (CveConcepto > 0)
{
if (ChkMovtoPermanente.Checked)
{
@@ -451,7 +452,7 @@ public partial class Nomina_CatConcepto : ClsPaginas
TxtFormulaImporte.Text = drow["Formula"].ToString();
TxtFormulaTotal.Text = drow["FormulaTotal"].ToString();
ChkMovtoPermanente.Checked=(TxtFormulaTotal.Text == "FNC.[MovimientosPermanentes]");
ChkMovtoPermanente.Checked = (TxtFormulaTotal.Text == "FNC.[MovimientosPermanentes]");
ChkMovtoPermanente_CheckedChanged(null, null);
TxtFormulaGravada.Text = drow["FormulaGravada"].ToString();
if (drow["EsRetencion"].Equals("1")) ChkRetencion.Checked = true;
@@ -468,7 +469,15 @@ public partial class Nomina_CatConcepto : ClsPaginas
DdlClasificacion.SelectedValueExist(drow["CveClasificacion"]);
DdlTipoGasto.SelectedValueExist(drow["CveTipoGasto"]);
//DdlCtaContable.SelectedValueExist(drow["CveCuenta"]);
if (DdlCtaContable.DataValueField == "Id")
{
DdlCtaContable.SelectedValueExist( drow["IdCtaContable"]);
}
else
{
DdlCtaContable.SelectedValueExist(drow["CveCuenta"]);
}
//if (UsuarioActual.Empresa.TipoContabilidad == 1)
//{
//}
@@ -477,12 +486,17 @@ public partial class Nomina_CatConcepto : ClsPaginas
// DdlCtaContable.SelectedValueExist(drow["IdCtaContable"]);
//}
DdlConceptoSAT.SelectedValueExist(drow["CveSATConcepto"]);
}else
{
CveConcepto = 0;
}
ObjNomina.Dispose();
}
else
{
CveConcepto = 0;
TxtCodigo.Text = "";
TxtConcepto.Text = "";
DdlTipo.SelectedValueExist("-1");

217
Nomina/MovimientosSUA.aspx Normal file
View File

@@ -0,0 +1,217 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="MovimientosSUA.aspx.cs" Inherits="Nomina_MovimientosSUA" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Movimientos SUA
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkDownTxt" Visible="true" OnClick="LnkDownTxt_Click" runat="server"><i class="fa fa-download" aria-hidden="true"></i>Archivo SUA</asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter">
<div class="portlet-title portlet-filterT smalltitle">
<div class="titlefiltros caption">
<div class="row">
<label class="col-md-1">Tipo Período:</label>
<div class="col-md-2">
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" CssClass="select2me" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" Style="width: 100% !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</div>
<label class="col-md-1 mediocol">del:</label>
<div class="col-md-2">
<div class="form-group input-iconright">
<asp:TextBox ID="TxtRpdFechaInicio" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<ajax:MaskedEditExtender ID="MaskedEditExtender3" runat="server" TargetControlID="TxtRpdFechaInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender3" TargetControlID="TxtRpdFechaInicio" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaInicio" runat="server" ControlToValidate="TxtRpdFechaInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaInicio"></ajax:ValidatorCalloutExtender>
</div>
</div>
<label class="col-md-1 mediocol">al:</label>
<div class="col-md-2">
<div class="form-group input-iconright">
<asp:TextBox ID="TxtRpdFechaFin" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<ajax:MaskedEditExtender ID="MaskedEditExtender5" runat="server" TargetControlID="TxtRpdFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender4" TargetControlID="TxtRpdFechaFin" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaFin" runat="server" ControlToValidate="TxtRpdFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaFin"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-1">
<asp:LinkButton ID="LnkConsultar" OnClick="LnkConsultar_Click" runat="server" Text="Consultar" Visible="true" class="btn btn-primary" />
</div>
</div>
</div>
<div class="tools">
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="upDatosSUAM" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet light xspadding bordered " id="pnlDatosAsistencia">
<div class="portlet-title">
<div class="caption ">
<i class="fa fa-user font-yellow-gold"></i>
<span class="caption-subject bold font-black uppercase">Asistencia </span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body " style="padding: 0px;">
<asp:GridView ID="GVAsistencia" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="CodigoNombreCompleto,CvePersonal,Fecha,AplicaIncapacidad,Tipo,TipoAsistencia" ShowHeaderWhenEmpty="true">
<Columns>
<asp:TemplateField HeaderText="Nombre">
<ItemTemplate>
<asp:Label ID="lblcodigoNombreCompleto" runat="server" Text='<%# Eval("CodigoNombreCompleto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-Width="100">
<ItemTemplate>
<asp:Label ID="lblfecha" runat="server" Text='<%# Eval("Fecha","{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo" ItemStyle-Width="200">
<ItemTemplate>
<asp:Label ID="lbltipo" runat="server" Text='<%# Eval("Tipo")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo asistencia" ItemStyle-Width="200">
<ItemTemplate>
<asp:Label ID="lbltipoAsistencia" runat="server" Text='<%# Eval("TipoAsistencia")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
<div class="portlet light xspadding bordered " id="pnlDatosAltasbajas">
<div class="portlet-title">
<div class="caption ">
<i class="fa fa-user font-yellow-gold"></i>
<span class="caption-subject bold font-black uppercase">Altas bajas </span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body " style="padding: 0px;">
<asp:GridView ID="GVAltasBajas" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="CodigoNombreCompleto,CvePersonal,FechaInicio,FechaFin,Tipo" ShowHeaderWhenEmpty="true">
<Columns>
<asp:TemplateField HeaderText="Nombre">
<ItemTemplate>
<asp:Label ID="lblcodigoNombreCompleto" runat="server" Text='<%# Eval("CodigoNombreCompleto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha inicio" ItemStyle-Width="100">
<ItemTemplate>
<asp:Label ID="lblfechaInicio" runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha fin" ItemStyle-Width="100">
<ItemTemplate>
<asp:Label ID="lblfechaFin" runat="server" Text='<%# Eval("FechaFin","{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo" ItemStyle-Width="200">
<ItemTemplate>
<asp:Label ID="lbltipo" runat="server" Text='<%# Eval("Tipo")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
<div class="portlet light xspadding bordered " id="pnlDatosModsalario">
<div class="portlet-title">
<div class="caption ">
<i class="fa fa-user font-yellow-gold"></i>
<span class="caption-subject bold font-black uppercase">Modificación de salario </span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body " style="padding: 0px;">
<asp:GridView ID="GVModSalario" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
DataKeyNames="CodigoNombreCompleto,CvePersonal,Fecha,SalarioDiarioSS" ShowHeaderWhenEmpty="true">
<Columns>
<asp:TemplateField HeaderText="Nombre">
<ItemTemplate>
<asp:Label ID="lblcodigoNombreCompleto" runat="server" Text='<%# Eval("CodigoNombreCompleto")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha" ItemStyle-Width="100">
<ItemTemplate>
<asp:Label ID="lblfecha" runat="server" Text='<%# Eval("Fecha","{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Salario" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="200">
<ItemTemplate>
<asp:Label ID="lblsalarioDiarioSS" runat="server" Text='<%# Eval("SalarioDiarioSS","{0:N2}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="" ItemStyle-Width="20">
<ItemTemplate>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function SaveCsv(filename, data) {
var blob = new Blob([data], { type: 'text/csv' });
if (window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveBlob(blob, filename);
}
else {
var elem = window.document.createElement('a');
elem.href = window.URL.createObjectURL(blob);
elem.download = filename;
document.body.appendChild(elem);
elem.click();
document.body.removeChild(elem);
}
}
</script>
</asp:Content>

View File

@@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
public partial class Nomina_MovimientosSUA : ClsPaginas
{
private DataTable dtMovtosSUA
{
get
{
if (ViewState["dtMovtosSUA"] == null) { return null; }
else { return (DataTable)ViewState["dtMovtosSUA"]; }
}
set { ViewState["dtMovtosSUA"] = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
TxtRpdFechaInicio.Text = string.Format(" {0:dd/MM/yyyy}", DateTime.Now.AddMonths(-1).FirstDayOfMonth());
TxtRpdFechaFin.Text = string.Format(" {0:dd/MM/yyyy}", DateTime.Now.AddMonths(-1).LastDayOfMonth());
CargaTiposPeriodo();
}
}
private void CargaTiposPeriodo()
{
DdlTipoPeriodo.DataSource = GlobalDTTipoPeriodo.FiltraParametros("Estatus = 'Activo'");
DdlTipoPeriodo.DataBind();
DdlTipoPeriodo.Items.Insert(0, new ListItem("Seleccione", "-1"));
if (DdlTipoPeriodo.Items.Count > 0)
{
DdlTipoPeriodo.SelectedIndex = 0;
}
}
protected void LnkConsultar_Click(object sender, EventArgs e)
{
using (ClsNominas onom = new ClsNominas())
{
if (onom.SUAMovmientosAfiliatoriosGET(UsuarioActual.CveEmpresa, TxtRpdFechaInicio.Text.ToDateTime(), TxtRpdFechaFin.Text.ToDateTime(), DdlTipoPeriodo.SelectedValue.ToEntero())
&& onom.DTSetResultados.Tables.Count > 3)
{
GVAsistencia.DataSource = onom.DTSetResultados.Tables[0];
GVAltasBajas.DataSource = onom.DTSetResultados.Tables[1];
GVModSalario.DataSource = onom.DTSetResultados.Tables[2];
dtMovtosSUA = onom.DTSetResultados.Tables[3];
GVAsistencia.DataBind();
GVAltasBajas.DataBind();
GVModSalario.DataBind();
}
}
upDatosSUAM.Update();
}
protected void LnkDownTxt_Click(object sender, EventArgs e)
{
string movtos = "";
string concater = "";
foreach (DataRow item in dtMovtosSUA.Rows)
{
movtos = string.Format("{0}{1}{2}", movtos, concater, item["TxtRow"]);
concater = "\\r\\n";
}
RegistraScript(string.Format("SaveCsv(\"Movt.txt\", '{0}');", movtos));
}
}

View File

@@ -24,6 +24,7 @@
color: #5b9bd1;
}
.txtgridsimula {
width: 100% !important;
min-width: 60px;
@@ -106,6 +107,17 @@
white-space: nowrap;
}
.GvConceptos td {
font-size: 11px;
}
.GvConceptos.table > tbody > tr.ConceptosTotales td {
border-top: 1px solid #E87E04;
color: #fff;
font-size: 13px;
background-color: #E87E04;
}
.GvConceptos.table > tbody > tr > th {
border-top: 1px solid #E87E04;
color: #fff;
@@ -156,7 +168,7 @@
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAccciones" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkAutorizar" Visible="false" OnClick="LnkAutorizar_Click" runat="server"><i class="fa fa-thumbs-up" aria-hidden="true"></i>Autorizar</asp:LinkButton>
</li>
@@ -220,13 +232,13 @@
<li>
<asp:HyperLink ID="HypPDFSTimbrados" Visible="false" onclick="GETPDF(-1,0)" NavigateUrl="#" runat="server"><i class="fa fa-download" aria-hidden="true"></i>Recibos timbrados</asp:HyperLink>
</li>
</contenttemplate>
<triggers>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkListaRaya" />
<asp:PostBackTrigger ControlID="LnkFormatoTabular" />
<asp:PostBackTrigger ControlID="LnkLayoutContable" />
</triggers>
</Triggers>
</asp:UpdatePanel>
</asp:Content>
@@ -234,7 +246,7 @@
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter">
<div class="portlet-title portlet-filterT smalltitle">
@@ -335,10 +347,10 @@
</div>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<ajax:TabContainer ID="Tab" runat="server" Width="100%" AutoPostBack="True">
<ajax:TabPanel ID="TabNominas" runat="server" HeaderText="Nominas">
@@ -552,14 +564,14 @@
</ContentTemplate>
</ajax:TabPanel>
</ajax:TabContainer>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DModalModAsistencia" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpModalAsistencia" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
@@ -617,7 +629,7 @@
</asp:UpdatePanel>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
@@ -626,7 +638,7 @@
<div id="ModalConceptos" class="modal ADS fade" role="dialog">
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UpModalConceptos" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<h4 class="modal-title">Sobre Recibo</h4>
@@ -779,7 +791,7 @@
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporte" runat="server" Text='<%# Eval("ImporteP", "${0:N}") %>' Style="word-break: break-all;display: inline-block;" ></asp:Label>
<asp:Label ID="LtlImporte" runat="server" Text='<%# Eval("ImporteP", "${0:N}") %>' Style="word-break: break-all; display: inline-block;"></asp:Label>
<asp:LinkButton ID="LnkImporte" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
<div style="display: inline-block; width: 29px;">
<asp:LinkButton ID="LnkImportexCalculo" OnClick="LnkImportexCalculo_Click" runat="server" CssClass="btn btn-circle btn-sm btn-xs red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar el importe fijo?" data-btn-ok-label="si"></asp:LinkButton>
@@ -802,7 +814,7 @@
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporteD" runat="server" Text='<%# Eval("ImporteD", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:Label ID="LtlImporteD" runat="server" Text='<%# Eval("ImporteD", "${0:N}") %>' Style="word-break: break-all; display: inline-block;"></asp:Label>
<asp:LinkButton ID="LnkImporteD" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
<div style="display: inline-block; width: 29px;">
<asp:LinkButton ID="LnkImporteDxCalculo" OnClick="LnkImportexCalculo_Click" runat="server" CssClass="btn btn-circle btn-sm btn-xs red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar el importe fijo?" data-btn-ok-label="si"></asp:LinkButton>
@@ -1009,7 +1021,7 @@
<asp:GridView ID="GVMovtoPermanente" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall " AutoGenerateColumns="False"
ShowHeader="false" EmptyDataText="No se encontraron Movimientos"
DataKeyNames="CveMovtoPermanente,CveConcepto,CveCuenta,CvePersonal,Descripcion,TipoDescuento,Valor,VecesAplicar,MontoLimite,FechaInicioAplicacion,Estatus,FechaRegistro">
DataKeyNames="CveMovtoPermanente,CveConcepto,CveCuenta,IdCtaContable,CvePersonal,Descripcion,TipoDescuento,Valor,VecesAplicar,MontoLimite,FechaInicioAplicacion,Estatus,FechaRegistro">
<Columns>
<asp:TemplateField>
<ItemTemplate>
@@ -1124,9 +1136,9 @@
</div>
</div>
<div class="col-md-3">
<div style=" padding-top: 10px; padding-bottom: 14px; ">
¿Activo?
</div>
<div style="padding-top: 10px; padding-bottom: 14px;">
¿Activo?
</div>
<asp:CheckBox ID="ChkEstatus" CssClass="chksino " Text=" " runat="server" />
</div>
<div class="col-md-3">
@@ -1177,12 +1189,13 @@
CssClass="table table-striped table-advance table-hover Widthall ScrollAD GvVacaciones" data-sort="true" data-height="300" ShowHeader="True" EmptyDataText="No se encontraron resultados." ShowHeaderWhenEmpty="true"
AutoGenerateColumns="False" AllowPaging="False" ShowFooter="False" OnRowDataBound="GvVacaciones_RowDataBound">
<Columns>
<asp:BoundField Visible="true" DataField="Periodo" HeaderText="Periodo" HeaderStyle-Width="80" ItemStyle-Width="80" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField Visible="true" DataField="Periodo" HeaderText="Periodo" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField Visible="true" DataField="Dias" HeaderText="Días" ItemStyle-Width="5%" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField Visible="true" DataField="FechaPago" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha pago" ItemStyle-Width="80" ItemStyle-HorizontalAlign="Center" />
<%--<asp:BoundField Visible="true" DataField="Autorizo" ItemStyle-CssClass="truncate" HeaderText="Autorizo" ItemStyle-HorizontalAlign="Left" />--%>
<asp:BoundField Visible="true" DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy}" HeaderText="FechaIng" HeaderStyle-Width="80" ItemStyle-Width="80" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField Visible="true" DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha ing." ItemStyle-Width="80" ItemStyle-HorizontalAlign="Center" />
<%--<asp:BoundField Visible="true" DataField="Usuario" HeaderText="Usuario" ItemStyle-Width="20%" ItemStyle-HorizontalAlign="Left" />--%>
<asp:TemplateField ItemStyle-Width="124">
<asp:TemplateField HeaderStyle-Width="60" ItemStyle-Width="60">
<ItemTemplate>
<div>
@@ -1228,8 +1241,7 @@
<div class="col-md-8">
<asp:Label ID="TxtFechaDiaVacacion" runat="server" Text=""></asp:Label>
-
<asp:Label ID="TxtFechaDiaVacacionFin" runat="server" Text=""></asp:Label>
<asp:Label ID="TxtFechaDiaVacacionFin" runat="server" Text=""></asp:Label>
</div>
</div>
<asp:TextBox ID="TxtFileFormatoVacaciones" CssClass="ADSdropzone hidden" data-maxFile="1" Text="" runat="server"></asp:TextBox>
@@ -1580,16 +1592,16 @@
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div>
</div>
</contenttemplate>
<triggers>
</ContentTemplate>
<Triggers>
<%--<asp:PostBackTrigger ControlID="BtnImprimirsobrerecibo" />--%>
</triggers>
</Triggers>
</asp:UpdatePanel>
</div>
<div id="ModalUpConcepto" class="modal ADS fade" role="dialog">
<asp:UpdatePanel class="modal-dialog " runat="server" ID="UPpanelModalUpConcepto" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<h4 class="modal-title">Modificar o agregar concepto :
@@ -1630,13 +1642,13 @@
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="ModalTablas" class="modal ADS fade" role="dialog">
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UpModalTablas" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<h4 class="modal-title">
@@ -1881,13 +1893,13 @@
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="ModalCalculoISR" class="modal ADS fade" role="dialog">
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UpCalculoISR" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<h4 class="modal-title">
@@ -1990,13 +2002,13 @@
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="DModalNominas" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpCargarNomina" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
@@ -2097,16 +2109,16 @@
</asp:UpdatePanel>
</div>
</div>
</contenttemplate>
<triggers>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkFormato" />
</triggers>
</Triggers>
</asp:UpdatePanel>
</div>
<div id="DModalCargaASistenciaMasiva" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpModalAsistenciaMasiva" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
@@ -2142,12 +2154,12 @@
</asp:UpdatePanel>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="DSimulador" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpSimulador" class="modal-dialog modal-lg" tabindex="-1" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
@@ -2331,7 +2343,7 @@
</asp:UpdatePanel>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
@@ -2347,7 +2359,7 @@
<div class="modal-body">
<asp:UpdatePanel ID="upperiodoreporte" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
@@ -2356,7 +2368,7 @@
</div>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
@@ -2383,20 +2395,20 @@
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRpdFechaInicio" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtRIFechaInicio">Fecha Inicio</asp:Label>
<ajax:maskededitextender id="MaskedEditExtender3" runat="server" targetcontrolid="TxtRpdFechaInicio" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:calendarextender runat="server" id="CalendarExtender3" targetcontrolid="TxtRpdFechaInicio" popupposition="BottomRight" enabled="True" format="dd/MM/yyyy"></ajax:calendarextender>
<ajax:MaskedEditExtender ID="MaskedEditExtender3" runat="server" TargetControlID="TxtRpdFechaInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender3" TargetControlID="TxtRpdFechaInicio" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaInicio" runat="server" ControlToValidate="TxtRpdFechaInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:validatorcalloutextender id="ValidatorCalloutExtender1" runat="server" highlightcssclass="vco" targetcontrolid="rfvRpdFechaInicio"></ajax:validatorcalloutextender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaInicio"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRpdFechaFin" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtRIFechaFin">Fecha Fin</asp:Label>
<ajax:maskededitextender id="MaskedEditExtender5" runat="server" targetcontrolid="TxtRpdFechaFin" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:calendarextender runat="server" id="CalendarExtender4" targetcontrolid="TxtRpdFechaFin" popupposition="BottomRight" enabled="True" format="dd/MM/yyyy"></ajax:calendarextender>
<ajax:MaskedEditExtender ID="MaskedEditExtender5" runat="server" TargetControlID="TxtRpdFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender4" TargetControlID="TxtRpdFechaFin" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaFin" runat="server" ControlToValidate="TxtRpdFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:validatorcalloutextender id="ValidatorCalloutExtender2" runat="server" highlightcssclass="vco" targetcontrolid="rfvRpdFechaFin"></ajax:validatorcalloutextender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaFin"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
@@ -2425,20 +2437,20 @@
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRIFechaInicio" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtRIFechaInicio">Fecha Inicio</asp:Label>
<ajax:maskededitextender id="MaskedEditExtender1" runat="server" targetcontrolid="TxtRIFechaInicio" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:calendarextender runat="server" id="CalendarExtender1" targetcontrolid="TxtRIFechaInicio" popupposition="BottomRight" enabled="True" format="dd/MM/yyyy"></ajax:calendarextender>
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtRIFechaInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="TxtRIFechaInicio" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRIFechaInicio" runat="server" ControlToValidate="TxtRIFechaInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporteInicidencia"></asp:RequiredFieldValidator>
<ajax:validatorcalloutextender id="VcorfvRIFechaInicio" runat="server" highlightcssclass="vco" targetcontrolid="rfvRIFechaInicio"></ajax:validatorcalloutextender>
<ajax:ValidatorCalloutExtender ID="VcorfvRIFechaInicio" runat="server" HighlightCssClass="vco" TargetControlID="rfvRIFechaInicio"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRIFechaFin" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtRIFechaFin">Fecha Fin</asp:Label>
<ajax:maskededitextender id="MaskedEditExtender2" runat="server" targetcontrolid="TxtRIFechaFin" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:calendarextender runat="server" id="CalendarExtender2" targetcontrolid="TxtRIFechaFin" popupposition="BottomRight" enabled="True" format="dd/MM/yyyy"></ajax:calendarextender>
<ajax:MaskedEditExtender ID="MaskedEditExtender2" runat="server" TargetControlID="TxtRIFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender2" TargetControlID="TxtRIFechaFin" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRIFechaFin" runat="server" ControlToValidate="TxtRIFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporteInicidencia"></asp:RequiredFieldValidator>
<ajax:validatorcalloutextender id="VcorfvRIFechaFin" runat="server" highlightcssclass="vco" targetcontrolid="rfvRIFechaFin"></ajax:validatorcalloutextender>
<ajax:ValidatorCalloutExtender ID="VcorfvRIFechaFin" runat="server" HighlightCssClass="vco" TargetControlID="rfvRIFechaFin"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
@@ -2453,7 +2465,7 @@
</div>
<div id="DmodalCompareSua" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpArchivoSua" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
@@ -2793,15 +2805,15 @@
</asp:UpdatePanel>
</div>
</div>
</contenttemplate>
<triggers>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkDownExcelSua" />
</triggers>
</Triggers>
</asp:UpdatePanel>
</div>
<div id="DmodalGetSua" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UpModalGetSUA" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
@@ -2877,7 +2889,7 @@
</asp:UpdatePanel>
</div>
</div>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<asp:TextBox ID="TxtCvePeriodo" CssClass="TxtCvePeriodo hidden" runat="server"></asp:TextBox>
@@ -2885,13 +2897,13 @@
<asp:Button ID="BtnGeneratepdf" CssClass="BtnGeneratepdf hidden" OnClick="BtnGeneratepdf_Click" UseSubmitBehavior="false" runat="server" Text="Button" />
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<contenttemplate>
<ContentTemplate>
<asp:Button ID="BtnGenerateXml" CssClass="BtnGenerateXml hidden" OnClick="BtnGenerateXml_Click" UseSubmitBehavior="false" runat="server" Text="Button" />
<span class="ltlxml">
<asp:Literal ID="LtlXml" runat="server"></asp:Literal></span>
<span class="ltlxmlfin">
<asp:Literal ID="LtlXmlfin" runat="server"></asp:Literal></span>
</contenttemplate>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">

View File

@@ -21,6 +21,16 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
get { return 5; }
}
private DataTable dtNomConceptos
{
get
{
if (ViewState["dtNomConceptos"] == null) { return null; }
else { return (DataTable)ViewState["dtNomConceptos"]; }
}
set { ViewState["dtNomConceptos"] = value; }
}
private DataTable dtPeriodos
{
@@ -179,6 +189,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LnkVerCalculoISR.Visible = (UsuarioActual.CveUsuario == 100);
@@ -217,6 +228,11 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtperinc = null;
using (ClsNominas onom = new ClsNominas())
{
if (onom.GetConceptos(UsuarioActual.CveEmpresa))
{
dtNomConceptos = onom.DtResultados;
}
if (onom.PersonalIncapacidadCatalogos())
{
dtperinc = onom.DtResultados;
@@ -374,6 +390,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
public void cargaDatos(bool cargaasistencia = true)
{
int Estatus = 0;
int CveEmpresa = UsuarioActual.CveEmpresa;
bool continuar = false;
@@ -383,10 +400,10 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtPeriodo = new DataTable();
DataTable dtasistencia = new DataTable();
LnkAutorizar.Visible = false;
Estatus = 5;
if (FiltCvePeriodo > 0)
{
int Estatus = 0;
using (ClsNominas objnom = new ClsNominas())
{
if (objnom.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, FiltCvePeriodo))
@@ -396,10 +413,10 @@ public partial class Nomina_Nomina2 : ClsPaginas
int CvePrePolizaProvision = drow["CvePrePolizaProvision"].ToString().ToEntero();
int CvePrePolizaProvisionAsimilados = drow["CvePrePolizaAsimilables"].ToString().ToEntero();
LnkConceptoEmpleado.Visible = (Estatus == 1);
LnkRegistrarProvision.Visible = (Estatus >= 2);// && CvePrePolizaProvision <= 0;
LnkRegistrarProvision.Visible = (Estatus >= 2) && (CvePrePolizaProvision <= 0 || UsuarioActual.CveUsuario == 100);
LnkConceptoEmpleado.Visible = (Estatus < 2);
LnkCargaAsistenciaMasiva.Visible = (Estatus < 2);
LnkModalPlantillaNomina.Visible = (Estatus < 2);
LnkModalPlantillaNomina.Visible = true;
LnkTimbrarTodos.Visible = (Estatus > 2);
LnkLayoutContable.Visible = (Estatus > 2);
@@ -414,7 +431,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
LnkFormatoTabular.Visible = true;
HypPDFSTimbrados.Visible = true;
if (objnom.GetNominaEmpleado(FiltCveProyecto, FiltCveSubProyecto, FiltCveTurno, FiltCvePeriodo, CveEmpresa, FiltAgrupador, DdlRegimenContratacion.SelectedValue.ToEntero()) && objnom.DTSetResultados.Tables.Count > 1)
if (objnom.GetNominaEmpleado(FiltCveProyecto, FiltCveSubProyecto, FiltCveTurno, FiltCvePeriodo, CveEmpresa, FiltAgrupador, DdlRegimenContratacion.SelectedValue.ToEntero()) && objnom.DTSetResultados.Tables.Count > 4)
{
dtempleados = objnom.DTSetResultados.Tables[3];
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
@@ -425,7 +442,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
continuar = true;
}
LnkTimbrarTodos.Visible = dtempleados.Rows.Count > 0 && dtempleados.COUNT("CvePersonal", "SeTimbro=0 AND CvePersonal >0 AND NomAutorizado =1") > 0;
LnkTimbrarTodos.Visible = (dtempleados.Rows.Count > 0 &&
dtempleados.COUNT("CvePersonal", "SeTimbro=0 AND CvePersonal >0 AND NomAutorizado =1") > 0);
}
}
@@ -835,7 +853,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
#endregion
UpDatos.Update();
LnkAutorizar.Visible = dtempleados.COUNT("CvePersonal", " CvePersonal > 0 AND NomAutorizado =0") > 0;
LnkAutorizar.Visible = (dtempleados.COUNT("CvePersonal", " CvePersonal > 0 AND NomAutorizado =0") > 0) || (Estatus < 2);
}
private void setGVNominas()
{
@@ -1103,10 +1121,16 @@ public partial class Nomina_Nomina2 : ClsPaginas
//AutorizaNom_Nominas
if (continuar && (continuar = Nom.RemoveNom_Nominas(Cve)))
{
Alert("Los movimientos de la nómina fueron eliminados", TipoMensaje.MsgInformacion); cargaDatos();
Nom.Commit();
}
}
if (continuar)
{
Alert("Los movimientos de la nómina fueron eliminados", TipoMensaje.MsgInformacion);
cargaDatos();
}
}
protected void LnkCancelar_Click(object sender, EventArgs e)
@@ -1569,6 +1593,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
if (ObjConta.Conectado && ObjConta.GetCuentas(-1, "-1", 1))
{
DdlCtaContable.DataValueField = "Id";
DdlCtaContable.DataSource = ObjConta.DtResultados;
DdlCtaContable.DataBind();
}
@@ -2465,8 +2490,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
LtlImporte.Visible = true;
LtlImporteD.Visible = true;
LtlImporte.Text = (CveConcepto > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "" : ""));
LtlImporte.Text = (CveConceptoD > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "" : ""));
LtlImporte.Text = ((CveConcepto > 0 || e.Row.CssClass == "ConceptosTotales") ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "" : ""));
LtlImporteD.Text = ((CveConceptoD > 0 || e.Row.CssClass == "ConceptosTotales") ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "" : ""));
LnkImporte.Visible = false;
LnkImporteD.Visible = false;
LnkImportexCalculo.Visible = false;
@@ -4452,18 +4477,20 @@ public partial class Nomina_Nomina2 : ClsPaginas
protected void CargaConcepto()
{
DataTable dt = dtNomConceptos.FiltraParametros(" FormulaTotal = 'FNC.[MovimientosPermanentes]'");
DdlConcepto.Items.Clear();
if (DdlTipo.SelectedValue.Contiene("P", "D", "O"))
{
DdlConcepto.DataSource = get_GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltraParametros(string.Format("Tipo ='{0}' AND FormulaTotal = 'FNC.[MovimientosPermanentes]'", DdlTipo.SelectedValue));
DdlConcepto.DataSource = dt.FiltraParametros(string.Format("Tipo ='{0}'", DdlTipo.SelectedValue));
}
else
{
DdlConcepto.DataSource = get_GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltraParametros(" FormulaTotal = 'FNC.[MovimientosPermanentes]'");
}
DdlConcepto.DataBind();
DdlConcepto.Items.Insert(0, new ListItem("Seleccione", "-1"));
DataRow drow = dt.NewRow();
drow["CveConcepto"] = "-1";
drow["Concepto"] = "Seleccione";
dt.Rows.InsertAt(drow,0);
DdlConcepto.DataSource = dt;
DdlConcepto.SelectedValueExist("-1");
DdlConcepto.DataBind();
//DdlConcepto.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
private void CargaMovtoPermanente()
{
@@ -4509,7 +4536,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
decimal montoLimite = TxtMontoLimite.Text.ToDecimal();
string fechaInicioAplicacion = TxtFechaAplicacion.Text.ToDate().ToString("yyyy/MM/dd");
bool estatus = ChkEstatus.Checked;
int CveCuenta =DdlCtaContable.SelectedValue.ToEntero();
int CveCuenta = DdlCtaContable.SelectedValue.ToEntero() * (DdlCtaContable.DataValueField == "Id" ? -1 : 1);
bool Continuar;
using (ClsNominas ObjMovt = new ClsNominas())
{
@@ -4536,7 +4563,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
decimal montoLimite = TxtMontoLimite.Text.ToDecimal();
string fechaInicioAplicacion = TxtFechaAplicacion.Text.ToDate().ToString("yyyy/MM/dd");
bool estatus = ChkEstatus.Checked;
int CveCuenta = DdlCtaContable.SelectedValue.ToEntero();
int CveCuenta = DdlCtaContable.SelectedValue.ToEntero() * (DdlCtaContable.DataValueField == "Id" ? -1 : 1);
bool Continuar;
using (ClsNominas ObjMovt = new ClsNominas())
{
@@ -4567,6 +4594,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
int cveConcepto = gvRow.DataKey("CveConcepto").ToEntero();
int cvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
int CveCuenta = gvRow.DataKey("CveCuenta").ToEntero();
int IdCtaContable = gvRow.DataKey("IdCtaContable").ToEntero();
string descripcion = gvRow.DataKey("Descripcion");
int tipoDescuento = gvRow.DataKey("TipoDescuento").ToEntero();
double valor = gvRow.DataKey("Valor").ToDouble();
@@ -4576,7 +4604,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
bool estatus = gvRow.DataKey("Estatus") == "1" || gvRow.DataKey("Estatus").ToUpper() == "TRUE";
DateTime fechaRegistro = gvRow.DataKey("FechaRegistro").ToDateTime();
string tipo = "P";
DataRow drow = get_GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltroPrimero(string.Format("Tipo ='{0}'", cveConcepto));
DataRow drow = dtNomConceptos.FiltroPrimero(string.Format("CveConcepto ='{0}'", cveConcepto));
if (drow != null)
{
tipo = drow["Tipo"].ToString();
@@ -4594,7 +4622,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
TxtMontoLimite.Text = montoLimite.ToString();
TxtFechaAplicacion.Text = $"{fechaInicioAplicacion:dd/MM/yyyy}";
DdlCtaContable.SelectedValueExist("-1");
DdlCtaContable.SelectedValueExist(CveCuenta);
if (DdlCtaContable.DataValueField == "Id")
{
DdlCtaContable.SelectedValueExist(IdCtaContable);
}
else
{
DdlCtaContable.SelectedValueExist(CveCuenta);
}
ChkEstatus.Checked = estatus;
this.RegistraScript("$('#DModalMovtoPermanente').modal();");
@@ -4637,10 +4672,25 @@ public partial class Nomina_Nomina2 : ClsPaginas
protected void LnkAutorizar_Click(object sender, EventArgs e)
{
autorizarNomina(-1);
if (autorizarNomina(-1))
{
using (ClsNominas objNomina = new ClsNominas())
{
if (objNomina.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, CvePeriodoSeleccionado) && objNomina.DtResultados.Rows.Count >0)
{
DataRow drow = objNomina.DtResultados.Rows[0];
int Estatus = drow["Estatus"].ToString().ToEntero();
if (Estatus < 2)
{
objNomina.CambiaEstatusPeriodo(CvePeriodoSeleccionado, 2, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
};
}
}
}
}
private void autorizarNomina(int FiltroCvePersonal)
private bool autorizarNomina(int FiltroCvePersonal)
{
bool continuar = true;
@@ -4648,7 +4698,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtr = dtempleados.FiltraParametros(string.Format("(CvePersonal={0} OR {0}=-1) AND CvePersonal > 0 AND NomAutorizado =0", FiltroCvePersonal), "", getcolumnas);
DataTable dtconp = null;
int CvePeriodoSeleccionado = DdlPeriodo.SelectedValue.ToEntero();//cambiar reparar
//int CvePeriodoSeleccionado = DdlPeriodo.SelectedValue.ToEntero();//cambiar reparar
#region PropNomina
int CvePersonal = 0;
@@ -4688,7 +4738,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
else
{
if (objNomina.AddNom_Nominas(-1, 1, CvePersonal, CvePeriodoSeleccionado, SubTotal, 0, 0, Total, CveMoneda, 1, CveMetodoPago, DateTime.Now, "Deducciones nómina",
"", "", "", "", 0, 0, 0, new DateTime(), new DateTime(), new DateTime(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
"", "", "", "", 0, 0, 0, new DateTime(), new DateTime(), new DateTime(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, Autorizado: false))
{
CveNomina = objNomina.CveNomina;
}
@@ -4738,7 +4788,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
int DiasIncapacidad = rtemp["DiasIncapacidad"].ToString().ToEntero();
continuar = objNomina.PA_Nom_NominasAutorizarUP(CvePersonal, CvePeriodoSeleccionado, SalarioDiario, SalarioDiarioIMSS, SalarioDiarioIntegrado, 0, 0, Total, SubTotal, DiasLaborados, DiasFaltados, DiasVacaciones, DiasIncapacidad);
continuar = objNomina.AutorizaNom_Nominas(CvePersonal, CvePeriodoSeleccionado, true);
if (continuar) { continuar = objNomina.AutorizaNom_Nominas(CvePersonal, CvePeriodoSeleccionado, true); }
}
}
@@ -4750,8 +4800,6 @@ public partial class Nomina_Nomina2 : ClsPaginas
if (continuar)
{
objNomina.Commit();
Alert("La nomina se autorizó correctamente.");
cargaDatos();
}
else
{
@@ -4769,6 +4817,12 @@ public partial class Nomina_Nomina2 : ClsPaginas
dtconp.Dispose();
}
if (continuar)
{
Alert("La nomina se autorizó correctamente.");
cargaDatos();
}
return continuar;
}
@@ -6199,8 +6253,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
CvePrePolizaProvision = objnom.DtResultados.Rows[0]["CvePrePoliza"].ToString().ToEntero();
CvePrePolizaasmilidos = objnom.DtResultados.Rows[0]["CvePrePolizaAsimilables"].ToString().ToEntero();
}
string mensaje = string.Format("La provision a sido autorizada.<br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\">Provision </a><br/>", CvePrePolizaProvision );
if (CvePrePolizaasmilidos>0)
string mensaje = string.Format("La provision a sido autorizada.<br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\">Provision </a><br/>", CvePrePolizaProvision);
if (CvePrePolizaasmilidos > 0)
{
mensaje = string.Format("{0} <a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={1}&Tipo=NOMPROV\"> Asimilados</a>", mensaje, CvePrePolizaasmilidos);
@@ -6245,7 +6299,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
str.Append("</tbody>");
str.Append("</table>");
Alert(string.Format("<div>no se pudo registrar la provisión, existen cuentas sin vincular.</div> {0}", str));
}
}
}
}
}

View File

@@ -250,6 +250,14 @@