public void ProcesarCalculo(IEntityBase value) { EProcPlaniProcCalc objE = (EProcPlaniProcCalc)value; EPlanilla objEPla = new EPlanilla(); EProcPlaCalc objECal = new EProcPlaCalc(); EProcPlaReg objEReg = new EProcPlaReg(); EPrestaCuota objECta = new EPrestaCuota(); EProcPlaRes objERes = new EProcPlaRes(); RHDOQry.PlanillaDet objDPla = new RHDOQry.PlanillaDet(); RHDOMnt.ProcPlaCalc objDProc = new RHDOMnt.ProcPlaCalc(); RHDOQry.ProcPlaReg objDReg = new RHDOQry.ProcPlaReg(); RHDOMnt.ProcPlaReg objDRegMnt = new RHDOMnt.ProcPlaReg(); RHDOMnt.PrestaCuota objDCta = new RHDOMnt.PrestaCuota(); RHDOMnt.ProcPlaRes objDRes = new RHDOMnt.ProcPlaRes(); objEPla.IdEmpresa = objE.IdEmpresa; objEPla.IdPlanilla = objE.IdPlanilla; objECal.IdPeriodo = objE.IdPeriodo; objECal.IdEmpresa = objE.IdEmpresa; objECal.IdForPago = objE.IdForPago; objECal.IdPlanilla = objE.IdPlanilla; objECal.NuProcAnual = objE.NuProcAnual; objECal.StOrigen = ConstTipoRegularizacion.NINGUNO; objECal.IdMes = objE.IdMes; objECal.IdPersonal = objE.IdPersonal; objEReg.IdPeriodo = objE.IdPeriodo; objEReg.IdEmpresa = objE.IdEmpresa; objEReg.IdForPago = objE.IdForPago; objEReg.IdPlanilla = objE.IdPlanilla; objEReg.NuProcAnual = objE.NuProcAnual; objEReg.IdTipRegula = ConstTipoRegularizacion.REGULARIZACION; objEReg.IdPersonal = objE.IdPersonal; objECta.IdPeriProc = objE.IdPeriodo; objECta.IdEmpresa = objE.IdEmpresa; objECta.IdForPago = objE.IdForPago; objECta.IdPlanilla = objE.IdPlanilla; objECta.NuProcAnual = objE.NuProcAnual; objECta.IdPersonal = objE.IdPersonal; objERes.IdPeriodo = objE.IdPeriodo; objERes.IdEmpresa = objE.IdEmpresa; objERes.IdForPago = objE.IdForPago; objERes.IdPlanilla = objE.IdPlanilla; objERes.NuProcAnual = objE.NuProcAnual; objERes.IdPersonal = objE.IdPersonal; DataTable dt = objDPla.GetConceptosHabilitados(objEPla); DataView dv = new DataView(dt); DataTable dtReg = objDReg.GetConceptoRegula(objEReg); try { using (TransactionScope tx = new TransactionScope()) { /*************** PROCESOS ADICIONALES ***************************/ switch (objE.IdPlanilla) { case ConstPlanilla.GRATIFICACION_EMPLEADO: case ConstPlanilla.GRATIFICACION_OBRERO: /*************** CREAR HORA GRATIFICAICONES ***************************/ objDProc.CrearHorasGratificacion(objECal); break; case ConstPlanilla.SUBSIDIO_EMPLEADO: case ConstPlanilla.SUBSIDIO_OBRERO: /*************** CREAR HORA Subsidio ***************************/ objDProc.CrearHorasSubsidio(objECal); break; } /*************** Limpiar las tablas para el proceso***************************/ objDCta.RevierteCuotasCobradas(objECta); objDProc.EliminaDatosProcActual(objECal); objDProc.EliminaTablasTemp(objECal); /*************** Procesar Remuneraciones ***********************************/ objDProc.CrearTablasTemp(objECal); dv.RowFilter = "idTipConcep='" + ConstTipoConcepPlanilla.REMUNERACION + "'"; dv.Sort = "nuSecuen ASC"; foreach (DataRowView drv in dv) { objECal.IdConRemu = drv["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } /*************** Procesar Regularizaciones *********************************/ objDProc.EliminaTablasTemp(objECal); objECal.StOrigen = ConstTipoRegularizacion.REGULARIZACION; objDProc.CrearTablasTemp(objECal); foreach (DataRow dr in dtReg.Rows) { objECal.IdConRemu = dr["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } objDRegMnt.ProcRegulaXMonto(objEReg); /*************** Procesar Retenciones/Aportaciones *************************/ objDProc.EliminaTablasTemp(objECal); objECal.StOrigen = ConstTipoRegularizacion.NINGUNO; objDProc.CrearTablasTemp(objECal); dv.RowFilter = "idTipConcep='" + ConstTipoConcepPlanilla.RETENCION + "'"; foreach (DataRowView drv in dv) { objECal.IdConRemu = drv["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } dv.RowFilter = "idTipConcep='" + ConstTipoConcepPlanilla.APORTACION + "'"; foreach (DataRowView drv in dv) { objECal.IdConRemu = drv["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } objDProc.EliminaTablasTemp(objECal); /********************* Procesar Prestamos **************************/ objDCta.CobrarCuotasXPlanilla(objECta); /*************** Procesar Calculos Finales *************************/ objDRes.EliminaDatosProcActual(objERes); objDRes.ProcResultadosCalcActual(objERes); tx.Complete(); } } catch (Exception ex) { throw ex; } }
private void ProcesarCalculo(IEntityBase value) { ELiquidacion objE = (ELiquidacion)value; EPlanilla objEPla = new EPlanilla(); EProcPlaCalc objECal = new EProcPlaCalc(); EProcPlaReg objEReg = new EProcPlaReg(); EPrestaCuota objECta = new EPrestaCuota(); EProcPlaRes objERes = new EProcPlaRes(); RHDOQry.PlanillaDet objDPla = new RHDOQry.PlanillaDet(); RHDOMnt.ProcPlaCalc objDProc = new RHDOMnt.ProcPlaCalc(); RHDOQry.ProcPlaReg objDReg = new RHDOQry.ProcPlaReg(); RHDOMnt.ProcPlaReg objDRegMnt = new RHDOMnt.ProcPlaReg(); RHDOMnt.PrestaCuota objDCta = new RHDOMnt.PrestaCuota(); RHDOMnt.ProcPlaRes objDRes = new RHDOMnt.ProcPlaRes(); objEPla.IdEmpresa = objE.IdEmpresa; objEPla.IdPlanilla = objE.IdPlanilla; objECal.IdPeriodo = objE.IdPeriodo; objECal.IdEmpresa = objE.IdEmpresa; objECal.IdForPago = objE.IdForPago; objECal.IdPlanilla = objE.IdPlanilla; objECal.NuProcAnual = objE.NuProcAnual; objECal.StOrigen = ConstTipoRegularizacion.NINGUNO; objECal.IdMes = objE.IdMes; objECal.IdPersonal = objE.IdPersonal; objEReg.IdPeriodo = objE.IdPeriodo; objEReg.IdEmpresa = objE.IdEmpresa; objEReg.IdForPago = objE.IdForPago; objEReg.IdPlanilla = objE.IdPlanilla; objEReg.NuProcAnual = objE.NuProcAnual; objEReg.IdTipRegula = ConstTipoRegularizacion.REGULARIZACION; objEReg.IdPersonal = objE.IdPersonal; objECta.IdPeriProc = objE.IdPeriodo; objECta.IdEmpresa = objE.IdEmpresa; objECta.IdForPago = objE.IdForPago; objECta.IdPlanilla = objE.IdPlanilla; objECta.NuProcAnual = objE.NuProcAnual; objECta.IdPersonal = objE.IdPersonal; objERes.IdPeriodo = objE.IdPeriodo; objERes.IdEmpresa = objE.IdEmpresa; objERes.IdForPago = objE.IdForPago; objERes.IdPlanilla = objE.IdPlanilla; objERes.NuProcAnual = objE.NuProcAnual; objERes.IdPersonal = objE.IdPersonal; DataTable dt = objDPla.GetConceptosHabilitados(objEPla); DataView dv = new DataView(dt); DataTable dtReg = objDReg.GetConceptoRegula(objEReg); /*************** Limpiar las tablas para el proceso***************************/ objDCta.RevierteCuotasCobradasLiquidacion(objECta); objDProc.EliminaDatosProcActual(objECal); objDProc.EliminaTablasTemp(objECal); /*************** Procesar Remuneraciones ***********************************/ objDProc.CrearTablasTemp(objECal); dv.RowFilter = "idTipConcep='" + ConstTipoConcepPlanilla.REMUNERACION + "'"; dv.Sort = "nuSecuen ASC"; foreach (DataRowView drv in dv) { objECal.IdConRemu = drv["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } /*************** Procesar Regularizaciones *********************************/ objDProc.EliminaTablasTemp(objECal); objECal.StOrigen = ConstTipoRegularizacion.REGULARIZACION; objDProc.CrearTablasTemp(objECal); foreach (DataRow dr in dtReg.Rows) { objECal.IdConRemu = dr["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } objDRegMnt.ProcRegulaXMonto(objEReg); /*************** Procesar Retenciones/Aportaciones *************************/ objDProc.EliminaTablasTemp(objECal); objECal.StOrigen = ConstTipoRegularizacion.NINGUNO; objDProc.CrearTablasTemp(objECal); dv.RowFilter = "idTipConcep='" + ConstTipoConcepPlanilla.RETENCION + "'"; foreach (DataRowView drv in dv) { objECal.IdConRemu = drv["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } dv.RowFilter = "idTipConcep='" + ConstTipoConcepPlanilla.APORTACION + "'"; foreach (DataRowView drv in dv) { objECal.IdConRemu = drv["idConRemu"].ToString(); objDProc.ProcCalculoXConcepto(objECal); } objDProc.EliminaTablasTemp(objECal); /********************* Procesar Prestamos **************************/ //objDCta.CobrarCuotasXPlanilla(objECta); /*************** Procesar Calculos Finales *************************/ objDRes.EliminaDatosProcActual(objERes); objDRes.ProcResultadosCalcActual(objERes); }