$xHFrm->addHElem("<p class='aviso'>La {$miFecha}, El Mes Anterior==" . $xF->getFechaMesAnterior() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, dos meses atras==" . $xF->getFechaMesAnterior(false, 2) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} - 30 Dias==" . $xF->setRestarDias(30) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} + 30 Dias==" . $xF->setSumarDias(30) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} + 2 meses==" . $xF->setSumarMeses(2) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} - 2 meses==" . $xF->setRestarMeses(2) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Nombre del Dia==" . $xF->getDayName() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Dia Inicial del mes==" . $xF->getDiaInicial() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Obtener Dia Habil==" . $xF->getDiaHabil() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Dias desde el 31Dic2013==" . $xF->setRestarFechas($xF->get(), "2013-12-31") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Buscar Sabado(D6) para el dia de hoy==" . $xF->getDiaAbonoSemanal(6) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Buscar NOMBRE Sabado(D6) para el dia de hoy==" . $xF->getDayName($xF->getDiaAbonoSemanal(6)) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-02") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-11") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-18") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-20") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-24") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-29") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-31") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Obtener dias Loborales en el mes==" . $xF->getDiasHabilesEnRango("2014-03-31", "2014-03-01") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Obtener entero del mes==" . $xF->getInt(fechasys()) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, DIAS CORRIENTES DE MES" . $xF->getDiasCorrientesDeMes() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, sumar 7 dias time stamp 84600==" . $xF->getFechaByInt($xF->getInt(fechasys()) + (7 + 1) * 84600) . "</p>"); $xHFrm->addHElem("<p class='aviso'>" . $xF->getMessages(OUT_HTML) . "</p>"); //$xHFrm->addHTML("<p>Esto es un parrafo de prueba</p>"); echo $xHFrm->get(); echo $xP->setBodyEnd(); echo $xP->end(); //===================================================================================================== ?>
function getInteresDevengado($fecha_de_calculo = false, $parcialidad = false, $fecha_anterior = false, $solo_mora_corriente = false) { $FECHA_DE_OPERACION = $fecha_de_calculo == false ? fechasys() : $fecha_de_calculo; $OProd = $this->getOProductoDeCredito(); $xF = new cFecha(0, $FECHA_DE_OPERACION); $credito = $this->mNumeroCredito; $PERIODO_A_PAGAR = $parcialidad === false ? $this->getPeriodoActual() : $parcialidad; $ESTADO_ACTUAL = $this->getEstadoActual(); $TASA_NORMAL = $this->getTasaDeInteres(); $TASA_MORA = $this->getTasaDeMora(); $SALDO_ACTUAL = $this->getSaldoActual(); $BASE_NORMAL = $this->getSaldoActual(); $BASE_MORA = $this->getSaldoActual(); $TIPO_DE_PAGO = $this->getTipoDePago(); $PAGOS_SIN_CAPITAL = $this->getPagosSinCapital(); $DIAS_NORMAL = 0; $DIAS_MORA = 0; $DIVISOR_DE_INTERESES = EACP_DIAS_INTERES; $MONTO_ORIGINAL_DE_CREDITO = $this->getMontoAutorizado(); $rw = $this->getDatosDeCredito(); $socio = $this->getClaveDePersona(); $fecha = $this->getFechaDeMinistracion(); $msg = ""; $interes = 0; $moratorio = 0; $cobranza = 0; $xF2 = new cFecha(); $xPlan = null; $PlanInit = false; if ($fecha_anterior == false) { $credito = setNoMenorQueCero($credito); $sqlDev = "SELECT * FROM `creditos_sdpm_acumulado` WHERE credito = {$credito} "; $DDev = obten_filas($sqlDev); $FECHA_DE_ULTIMO_PAGO = isset($DDev["fechaActual"]) ? $DDev["fechaActual"] : $this->getFechaDeMinistracion(); } else { $FECHA_DE_ULTIMO_PAGO = $fecha_anterior; } //pre evaluadores if ($xF2->getInt($FECHA_DE_ULTIMO_PAGO) < $xF2->getInt($FECHA_DE_OPERACION)) { $DIAS_NORMAL = $xF->setRestarFechas($FECHA_DE_OPERACION, $FECHA_DE_ULTIMO_PAGO); if ($this->getPeriocidadDePago() == CREDITO_TIPO_PERIOCIDAD_FINAL_DE_PLAZO) { } else { $xPlan = $this->getOPlanDePagos(); $PlanInit = $xPlan->init(); $DLetra = $xPlan->getOLetra($PERIODO_A_PAGAR); $FECHA_COMPROMETIDA_DE_PAGO = $DLetra->getFechaDePago(); //$MONTO_PAGADO_DE_PARCIALIDAD = 0; } if ($TASA_MORA > 0) { if ($this->getPeriocidadDePago() == CREDITO_TIPO_PERIOCIDAD_FINAL_DE_PLAZO) { $FECHA_COMPROMETIDA_DE_PAGO = $this->getFechaDeMora(); $DIAS_MORA = $xF->setRestarFechas($FECHA_DE_OPERACION, $FECHA_COMPROMETIDA_DE_PAGO); $DIAS_MORA = $DIAS_MORA < 0 ? 0 : $DIAS_MORA; $msg .= "WARN\tDIAS_MORA\tDias de mora Calculado entre {$FECHA_DE_OPERACION} y {$FECHA_COMPROMETIDA_DE_PAGO}\r\n"; $msg .= "WARN\tBASE_MORA_LETRA\tBase de Mora {$BASE_NORMAL}, por Dias {$DIAS_MORA} a TASA {$TASA_MORA}, desde el dia {$FECHA_COMPROMETIDA_DE_PAGO}\r\n"; } else { if ($PlanInit == true) { if (isset($FECHA_COMPROMETIDA_DE_PAGO) and $FECHA_COMPROMETIDA_DE_PAGO != false) { $DIAS_MORA = $xF->setRestarFechas($FECHA_DE_OPERACION, $FECHA_COMPROMETIDA_DE_PAGO); $DIAS_MORA = $DIAS_MORA < 0 ? 0 : $DIAS_MORA; $BASE_MORA = $DLetra->getCapital(); // + $DLetra->getInteres() + $DLetra->getOtros(); //$DIAS_MES = $xF->g if ($solo_mora_corriente == true) { if ($DIAS_MORA > $xF->getDiasCorrientesDeMes()) { $DIAS_MORA = $xF->getDiasCorrientesDeMes(); } } $msg .= "WARN\tBASE_MORA_LETRA\tBase de Mora {$BASE_MORA}, por Dias {$DIAS_MORA} a TASA {$TASA_MORA}, desde el dia {$FECHA_COMPROMETIDA_DE_PAGO}\r\n"; $msg .= "WARN\tDIAS_MORA\tDias de mora Calculado entre {$FECHA_DE_OPERACION} y {$FECHA_COMPROMETIDA_DE_PAGO}\r\n"; } else { $msg .= "WARN\tMORA\tSin datos para letra {$PERIODO_A_PAGAR}\r\n"; } } else { $msg .= "WARN\tNO_INIT\tPLAN NO INICIADO\r\n"; } $msg .= $xPlan->getMessages(OUT_TXT); } //Ajustar dias de mora MAXIMO if ($DIAS_MORA > INTERES_DIAS_MAXIMO_DE_MORA) { $DIAS_MORA = INTERES_DIAS_MAXIMO_DE_MORA; } if ($DIAS_NORMAL > INTERES_DIAS_MAXIMO_A_DEVENGAR) { $DIAS_NORMAL = INTERES_DIAS_MAXIMO_A_DEVENGAR; } if ($BASE_NORMAL <= 0) { $BASE_MORA = 0; $DIAS_MORA = 0; $TASA_MORA = 0; } eval($OProd->getPreModInteres()); $moratorio = $BASE_MORA * $DIAS_MORA * $TASA_MORA / $DIVISOR_DE_INTERESES; $interes = $BASE_NORMAL * $DIAS_NORMAL * $TASA_NORMAL / $DIVISOR_DE_INTERESES; if ($OProd->getAplicaMoraPorGastos() == SYS_UNO) { $cobranza = $moratorio; $msg .= "WARN\tBASE_CBZA_LETRA\tBase de Cobranza {$moratorio}\r\n"; $moratorio = 0; } //POS Valuadores eval($OProd->getPosModInteres()); $msg .= "{$socio}\t {$credito}\tSALDO: {$BASE_NORMAL}\t DIAS : {$DIAS_NORMAL}\tINTERES : {$interes}\tMORA : {$moratorio}\r\n"; } else { $msg .= "OK\tTASA_MORA\t Tasa de Mora ({$TASA_MORA}) CERO\r\n"; } } else { $msg .= "WARN\tNO_CALCULO\tNo se Calculan Devengados ({$FECHA_DE_OPERACION}|{$FECHA_DE_ULTIMO_PAGO})\r\n"; } $arrInteres[SYS_INTERES_NORMAL] = $interes; $arrInteres[SYS_INTERES_MORATORIO] = $moratorio; $arrInteres[SYS_GASTOS_DE_COBRANZA] = $cobranza; $this->mMessages .= $msg; $arrInteres[SYS_MSG] = $msg; return $arrInteres; }