public tblAhorrosCdtsLiquidacion gmtdCalcularLiquidacion(int tintCdt) { blAhorrosCdtCausacion causacion = new blAhorrosCdtCausacion(); tblAhorrosCdt Cdt = new blAhorrosCdt().gmtdConsultarCdt(tintCdt); tblConfiguracione configuracion = new blConfiguracion().gmtdConsultaConfiguracion(); Int32 intMontoDiarioRetencion = (Int32)configuracion.intMontoDiarioParaRetenciondeCdt; decimal decPorcentajeRetencionDiario = (Int32)configuracion.fltPorcentajeparaRetencionenCdt; //if (!new blAhorrosCdtCausacion().gmtdConsultarExistenciaCausacionCdt(tintCdt)) //{ // if (!causacion.gmtdInsertarCausacionIndividual(tintCdt)) // return new tblAhorrosCdtsLiquidacion(); //} decimal decInteresCdt = new blAhorrosCdtCausacion().gmtdSumarCausacion(tintCdt); decimal decValorInteresEstipulado = ((Cdt.decMontoCdt * (Cdt.decInteresesCdt / 100) / 12) * Cdt.intMesesCdt); decimal decValorDiarioIntereses = decInteresCdt / (propiedades.diferenciaEntreFechas(Cdt.dtmFechaIniCdt, DateTime.Now, propiedades.DiferenciasFecha.Dias)); if (DateTime.Now >= Cdt.dtmFechaFinCdt && decInteresCdt < decValorInteresEstipulado) { decInteresCdt = decValorInteresEstipulado; } decimal decValorRetencionCdt = 0; if (decValorDiarioIntereses >= intMontoDiarioRetencion) { decValorRetencionCdt = decInteresCdt * (decPorcentajeRetencionDiario / 100); } decimal decTotalLiquidacionCdt = Cdt.decMontoCdt + decInteresCdt - decValorRetencionCdt; tblAhorrosCdtsLiquidacion liquidacion = new tblAhorrosCdtsLiquidacion(); liquidacion.dtmFechaLiquidacionCdt = DateTime.Now; liquidacion.decBrutoLiquidacion = Cdt.decMontoCdt + decInteresCdt; liquidacion.decInteresesLiquidacion = decInteresCdt; liquidacion.decNetolLiquidacionCdt = decTotalLiquidacionCdt; liquidacion.decRetencionLiquidacionCdt = decValorRetencionCdt; liquidacion.intNumeroCdt = tintCdt; liquidacion.strFormulario = "Liquidacion CDT"; return(liquidacion); }
/// <summary> Inserta una cuenta de ahorro a futuro. </summary> /// <param name="tobjIngreso"> Un objeto del tipo ingreso. </param> /// <returns> Un string que indica si se ejecuto o no la operación. </returns> public string gmtdInsertar(tblIngreso tobjIngreso) { if (tobjIngreso.ingresoAbonoaDeuda != null) { for (int a = 0; a < tobjIngreso.ingresoAbonoaDeuda.Count; a++) { tobjIngreso.ingresoAbonoaDeuda[a].strCodigoPar = new blDeudas().gmtdConsultar(tobjIngreso.ingresoAbonoaDeuda[a].intCodDeu).strCodigoPar; } } if (tobjIngreso.ingresoAbonoaPrestamo != null) { tobjIngreso.ingresoAbonoaPrestamo.strCodigoPar = new blCreditos().gmtdConsultar(tobjIngreso.ingresoAbonoaPrestamo.intCodigoCre).strCodigoPar; } if (tobjIngreso.ingresoAbonoaVenta != null) { tobjIngreso.ingresoAbonoaVenta.strCodigoPar = new blVentas().gmtdConsultar(tobjIngreso.ingresoAbonoaVenta.intCodVenta).strNombreCliente; } if (tobjIngreso.ingresoAhorro != null) { tobjIngreso.ingresoAhorro.strCodigoPar = "0001"; } if (tobjIngreso.ingresoAhorroaFuturo != null) { for (int a = 0; a < tobjIngreso.ingresoAhorroaFuturo.Count; a++) { tobjIngreso.ingresoAhorroaFuturo[a].strCodigoPar = "0001"; } } if (tobjIngreso.ingresoAhorroCdt != null) { tobjIngreso.ingresoAhorro.strCodigoPar = "0001"; } if (tobjIngreso.ingresoAhorroEstudiantil != null) { tobjIngreso.ingresoAhorroEstudiantil.strCodigoPar = "0001"; } if (tobjIngreso.ingresoAhorroFijo != null) { tobjIngreso.ingresoAhorroFijo.strCodigoPar = "0001"; } if (tobjIngreso.ingresoAhorroNavideño != null) { for (int a = 0; a < tobjIngreso.ingresoAhorroNavideño.Count; a++) { tobjIngreso.ingresoAhorroNavideño[a].strCodigoPar = "0001"; } } if (tobjIngreso.ingresoCuota != null) { tobjIngreso.ingresoCuota.strCodigoPar = new blPrimarios().gmtdConsultar(tobjIngreso.ingresoCuota.strCodServiciop).strCodigoPar; tobjIngreso.ingresoCuota.fechasCuotas = new List <tblSociosPagosCuota>(); char[] delimitador = { ',' }; string[] vector = tobjIngreso.ingresoCuota.strMeses.Split(delimitador); for (int b = 0; b < vector.Length; b++) { int intMes = this.calcularNumeroMes(vector[b].ToString()); tblSociosPagosCuota objSocioPagoCuota = new tblSociosPagosCuota(); objSocioPagoCuota.dtmFechaPag = tobjIngreso.dtmFechaRec; objSocioPagoCuota.intAño = tobjIngreso.ingresoCuota.intAño; objSocioPagoCuota.intCodigoIng = 0; objSocioPagoCuota.intMes = intMes; objSocioPagoCuota.intSocio = tobjIngreso.ingresoCuota.intCodigoSoc; tobjIngreso.ingresoCuota.fechasCuotas.Add(objSocioPagoCuota); } } if (tobjIngreso.ingresoOtrosIngresos != null) { for (int a = 0; a < tobjIngreso.ingresoOtrosIngresos.Count; a++) { tobjIngreso.ingresoOtrosIngresos[a].strCodigoPar = new blOtroIngreso().gmtdConsultar(tobjIngreso.ingresoOtrosIngresos[a].strCodOtrosIngresos).strCodigoPar; } } if (tobjIngreso.ingresoPrestamo != null) { for (int a = 0; a < tobjIngreso.ingresoPrestamo.Count; a++) { tobjIngreso.ingresoPrestamo[a].strParCapital = new blCreditosLinea().gmtdConsultar(new blCreditos().gmtdConsultar(tobjIngreso.ingresoPrestamo[a].intCodigoPre).strCodLineadeCredito).strParCapital; tobjIngreso.ingresoPrestamo[a].strParInteres = new blCreditosLinea().gmtdConsultar(new blCreditos().gmtdConsultar(tobjIngreso.ingresoPrestamo[a].intCodigoPre).strCodLineadeCredito).strParInteres; tobjIngreso.ingresoPrestamo[a].strParMora = new blCreditosLinea().gmtdConsultar(new blCreditos().gmtdConsultar(tobjIngreso.ingresoPrestamo[a].intCodigoPre).strCodLineadeCredito).strParMora; } } if (tobjIngreso.ingresoAbonoaPrestamo != null) { tobjIngreso.ingresoAbonoaPrestamo.bitDeducirAbonodelMonto = (bool)new blConfiguracion().gmtdConsultaConfiguracion().bitDeducirAbonosdelMontodelPrestamo; } XmlDocument xml = blRecibosIngresos.SerializeServicio(tobjIngreso); string strRetorno = new daoRecibosIngresos().gmtdInsertar(xml); if (strRetorno == "0") { return("- Ha ocurrido un error al registrar el ingreso."); } else { return(strRetorno + "+Ingreso ingresado."); } if (tobjIngreso.ingresoCuota != null) { int tintAño = new blConfiguracion().gmtdConsultaConfiguracion().intAnoEvaluado; int tintMes = new blConfiguracion().gmtdConsultaConfiguracion().intMesEvaluado; this.gmtdIngresarNumeroRifa(tobjIngreso.ingresoCuota.intCodigoSoc, tintAño, tintMes); } return(strRetorno); }