From 233920860fb8248c834cb000e140a75f3e0e970e Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Mon, 21 Jun 2021 09:57:46 -0700 Subject: [PATCH] --- App_Code/ClsNominas.vb | 31 ++++- App_Code/ClsPaginas.vb | 1 + App_Code/LogicNominas.vb | 5 +- Nomina/ConceptoNomina.aspx.cs | 26 +++- Nomina/MovimientosSUA.aspx | 217 ++++++++++++++++++++++++++++++++++ Nomina/MovimientosSUA.aspx.cs | 74 ++++++++++++ Nomina/Nomina.aspx | 134 +++++++++++---------- Nomina/Nomina.aspx.cs | 114 +++++++++++++----- vwd.webinfo | 8 ++ 9 files changed, 511 insertions(+), 99 deletions(-) create mode 100644 Nomina/MovimientosSUA.aspx create mode 100644 Nomina/MovimientosSUA.aspx.cs diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index 593e54e06..23ac5b7b2 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -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()) diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index 2e98da7cf..88aee1725 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -3850,6 +3850,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) diff --git a/App_Code/LogicNominas.vb b/App_Code/LogicNominas.vb index 7e9d8cc88..49432dc6c 100644 --- a/App_Code/LogicNominas.vb +++ b/App_Code/LogicNominas.vb @@ -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 diff --git a/Nomina/ConceptoNomina.aspx.cs b/Nomina/ConceptoNomina.aspx.cs index b798fb34e..a3ed53073 100644 --- a/Nomina/ConceptoNomina.aspx.cs +++ b/Nomina/ConceptoNomina.aspx.cs @@ -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"); diff --git a/Nomina/MovimientosSUA.aspx b/Nomina/MovimientosSUA.aspx new file mode 100644 index 000000000..312fdbe6f --- /dev/null +++ b/Nomina/MovimientosSUA.aspx @@ -0,0 +1,217 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="MovimientosSUA.aspx.cs" Inherits="Nomina_MovimientosSUA" %> + + + + + + + Movimientos SUA + + + + + + +
  • + Archivo SUA +
  • +
    +
    +
    + + + + + + +
    +
    +
    +
    + + +
    + + + +
    + + +
    +
    + + + + + +
    +
    + +
    +
    + + + + + +
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    + +
    +
    + + +
    +
    +
    + + Asistencia +
    +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    +
    +
    + + Altas bajas +
    +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    +
    +
    + + Modificación de salario +
    +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    +
    +
    +
    + + + + + diff --git a/Nomina/MovimientosSUA.aspx.cs b/Nomina/MovimientosSUA.aspx.cs new file mode 100644 index 000000000..57ae06071 --- /dev/null +++ b/Nomina/MovimientosSUA.aspx.cs @@ -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)); + } +} \ No newline at end of file diff --git a/Nomina/Nomina.aspx b/Nomina/Nomina.aspx index 72004b2fa..ba548fceb 100644 --- a/Nomina/Nomina.aspx +++ b/Nomina/Nomina.aspx @@ -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 @@ - +
  • Autorizar
  • @@ -220,13 +232,13 @@
  • Recibos timbrados
  • -
    - +
    + - +
    @@ -234,7 +246,7 @@ - +
    @@ -335,10 +347,10 @@
    -
    +
    - + @@ -552,14 +564,14 @@ - + @@ -626,7 +638,7 @@ @@ -2425,20 +2437,20 @@
    Fecha Inicio - - + + - +
    Fecha Fin - - + + - +
    @@ -2453,7 +2465,7 @@ @@ -2885,13 +2897,13 @@ - + - +
    diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index 94242dff5..63eb40ab1 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -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.
    Provision
    ", CvePrePolizaProvision ); - if (CvePrePolizaasmilidos>0) + string mensaje = string.Format("La provision a sido autorizada.
    Provision
    ", CvePrePolizaProvision); + if (CvePrePolizaasmilidos > 0) { mensaje = string.Format("{0} Asimilados", mensaje, CvePrePolizaasmilidos); @@ -6245,7 +6299,7 @@ public partial class Nomina_Nomina2 : ClsPaginas str.Append(""); str.Append(""); Alert(string.Format("
    no se pudo registrar la provisión, existen cuentas sin vincular.
    {0}", str)); - } + } } } } diff --git a/vwd.webinfo b/vwd.webinfo index 5fb864961..9a8ca7cdf 100644 --- a/vwd.webinfo +++ b/vwd.webinfo @@ -250,6 +250,14 @@ + + + + + + + +