<?php echo getRawHeader(); $docto = $cuenta; $fechaRecibo = date("Y-m-d"); $sql_d_ide = "SELECT * FROM operaciones_mvtos\n\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\tfecha_operacion = '{$fechaRecibo}'\n\t\t\t\t\t\t\tAND docto_afectado = {$docto}\n\t\t\t\t\t\t\tAND tipo_operacion=235"; $dIDE = obten_filas($sql_d_ide); $ide = $dIDE["afectacion_real"]; $xInv = new cCuentaInversionPlazoFijo($docto, false, 0); $dcuentas = $xInv->getDatosInArray(); $idsocio = $dcuentas["numero_socio"]; $docto = $dcuentas["numero_cuenta"]; $dias = $dcuentas["dias_invertidos"]; $tasa = $dcuentas["tasa_otorgada"]; $capital = $dcuentas["saldo_cuenta"]; // + $ide);( $vencimiento = sumardias($dcuentas["inversion_fecha_vcto"], $dias); $interes = $capital * $dias * $tasa / EACP_DIAS_INTERES; $xSoc = new cSocio($idsocio); $xSoc->init(); $DSoc = $xSoc->getDatosInArray(); $domicilio_del_socio = $xSoc->getDomicilio(); $nombre_del_socio = $xSoc->getNombreCompleto(); $numero_de_socio = $idsocio; $tasa = getFMoney($tasa * 100); $isr = getISRByInversion($capital, $dias); $aliquidar = $capital + $interes - $isr; $nombre = $nombre_del_socio; echo "\n\t<p class='bigtitle'>CONSTANCIA PROVISIONAL DE DEPOSITO A PLAZO</p>\n\t<hr />"; // obtiene datos del socio $direccion = $domicilio_del_socio; $rfc = $DSoc["rfc"];
$afected_row = mysql_affected_rows($rs); @mysql_free_result($rs); //Generar la Notificacion si existe una Llamada sin compromiso if ($afected_row > 0) { $fecha_venc_notif = sumardias($fecha_default, $dias_para_notificar); $sql_notif = "INSERT INTO seguimiento_notificaciones\n\t\t\t\t\t\t\t\t(socio_notificado, numero_solicitud, numero_notificacion, fecha_notificacion, oficial_de_seguimiento, fecha_vencimiento,\n\t\t\t\t\t\t\t\tprocedimiento_proximo, capital, interes, moratorio, otros_cargos, total, observaciones, estatus_notificacion, tipo_credito, domicilio_completo)\n\t\t\t\t\t\t\t\tVALUES\n\t\t\t\t\t\t\t\t({$socio}, {$solicitud}, {$idnnew}, '{$fecha_default}', {$iduser}, '{$fecha_venc_notif}', '{$tnotif}',\n\t\t\t\t\t\t\t\t{$mletra}, {$interes}, {$interes_moratorio}, {$otros_cargos}, {$total}, '{$observaciones}', 'pendiente', 'automatizado', '{$domicilio}')"; $x = my_query($sql_notif); if ($x["stat"] == false) { $msg .= date("H:s:i") . "\t\t" . $x[SYS_MSG] . "\t\n"; } else { $msg .= date("H:s:i") . "\t\t" . $x["info"] . "\t\n"; } } } else { //Generar la Notificacion $fecha_venc_notif = sumardias($fecha_default, $dias_para_notificar); $sql_notif = "INSERT INTO seguimiento_notificaciones\n\t\t\t\t(socio_notificado, numero_solicitud, numero_notificacion, fecha_notificacion, oficial_de_seguimiento, fecha_vencimiento,\n\t\t\t\tprocedimiento_proximo, capital, interes, moratorio, otros_cargos, total, observaciones, estatus_notificacion, tipo_credito, domicilio_completo)\n\t\t\t\tVALUES\n\t\t\t\t({$socio}, {$solicitud}, {$idnnew}, '{$fecha_default}', {$iduser}, '{$fecha_venc_notif}', '{$tnotif}',\n\t\t\t\t{$mletra}, {$interes}, {$interes_moratorio}, {$otros_cargos}, {$total}, '{$observaciones}', 'pendiente', 'automatizado', '{$domicilio}')"; $x = my_query($sql_notif); if ($x["stat"] == false) { $msg .= date("H:s:i") . "\t\t" . $x[SYS_MSG] . "\t\n"; } else { $msg .= date("H:s:i") . "\t\t" . $x["info"] . "\t\n"; } } } elseif ($dias_vencidos > 60) { //Inicio Proc. Extrajudicial } } //end while fwrite($RFile, $msg); @mysql_free_result($rsPic);
/** * Funcion que genera el Credito Reconvenido * @param float $monto_reconvenido Monto del capital por el Cual se reconviene el credito * @param float $interes_reconvenido Monto del interes por el Cual se reconviene el credito * * @return boolean false/true segun el resultado de la funcion */ function setReconvenido($monto_reconvenido, $interes_reconvenido, $tasa_reconvenida, $periocidad_reconvenida, $pagos_reconvenidos, $observaciones = "", $fecha = false, $recibo = false, $FormaDePago = false, $producto = false, $conservarPlan = false) { $sucess = false; $fecha = $fecha == false ? fechasys() : $fecha; $producto = $producto == false ? $this->getClaveDeProducto() : $producto; $plan_de_pagos = $this->getNumeroDePlanDePagos(); if ($this->mCreditoInicializado == true) { $dias = $periocidad_reconvenida * $pagos_reconvenidos; $vence = sumardias($fecha, $dias); $credito = $this->getNumeroDeCredito(); //$interes_normal = ($saldo_historico * $dias_normales * ($tasa_interes * $factor_interes)) / EACP_DIAS_INTERES; $interes_normal = 0; $FInteres = new cFormula("interes_normal"); $saldo_historico = $this->getMontoAutorizado(); // $monto_reconvenido; $saldo_actual = $this->getSaldoActual(); //$monto_reconvenido; $dias_normales = $dias; $tasa_interes = $tasa_reconvenida; $factor_interes = 1; if ($this->mIVAIncluido == "1") { $factor_interes = 1 / (1 + $this->getTasaIVA()); } //eval( $FInteres->getFormula() ); //Agregar el SQL $xRC = new cCreditos_reconvenio(); $idconvenio = $xRC->query()->getLastID(); $xRC->idcreditos_reconvenio($idconvenio); $xClon = $this->setClonar($saldo_actual, $saldo_historico); $xRC->numero_solicitud($xClon); $xRC->codigo($this->getClaveDePersona()); $xRC->credito_origen($this->getNumeroDeCredito()); $xRC->dias($dias); $xRC->eacp(EACP_CLAVE); $xRC->fecha_reconvenio($fecha); $xRC->idusuario(getUsuarioActual()); $xRC->interes_diario_re($interes_normal); $xRC->interes_pendiente($interes_reconvenido); $xRC->monto_reconvenido($monto_reconvenido); $xRC->pagos_reconvenidos($pagos_reconvenidos); $xRC->periocidad_reconvenida($periocidad_reconvenida); $xRC->sucursal(getSucursal()); $xRC->tasa_reconvenida($tasa_reconvenida); $xRC->vence($vence); $x = $xRC->query()->insert()->save(); if ($x != false) { //Modificar movimientos $observaciones = $observaciones == "" ? "" : "RNV {$idconvenio}. {$credito}|{$xClon}"; //Agregare el Movimiento $cRecReest = new cReciboDeOperacion(RECIBOS_TIPO_ESTADISTICO, true, $recibo); if ($recibo == false) { $cRecReest->setNuevoRecibo($this->mNumeroSocio, $xClon, $fecha, 1, RECIBOS_TIPO_ESTADISTICO, $observaciones, DEFAULT_CHEQUE, TESORERIA_COBRO_NINGUNO, DEFAULT_RECIBO_FISCAL, $this->mGrupoAsociado); } /* * No generar poliza, ya que no ha cumplido el pago sostenido */ //agregar Movimiento por el Monto Reconvenido $cRecReest->setNuevoMvto($fecha, $monto_reconvenido, OPERACION_CLAVE_REESTRUCTURA, 1, $observaciones, 1); $this->mMessages .= $cRecReest->getMessages(); //agregar el Movimiento por Intereses no pagados $xCredClon = new cCredito($xClon); $xCredClon->init(); //Actualizar el saldo y demas $cEsUp = array($this->obj()->tipo_autorizacion()->get() => CREDITO_AUTORIZACION_REESTRUCTURADO, $this->obj()->saldo_vencido()->get() => 0); $xCredClon->setUpdate($cEsUp); $this->setUpdate($cEsUp); $xCredClon->setAbonoCapital($this->getSaldoActual(), $this->mParcialidadActual, DEFAULT_CHEQUE, TESORERIA_COBRO_NINGUNO, DEFAULT_RECIBO_FISCAL, $observaciones); $this->mMessages .= $xCredClon->getMessages(); $sucess = true; $this->mMessages .= $this->setChangeNumeroDeSolicitud($xClon, true); //Cambiar Producto $this->mMessages .= $this->setCambioProducto($producto, $tasa_reconvenida); //cambiar fecha de ministracion $this->mMessages .= $this->setCambiarFechaMinistracion($fecha); //Cambiar Monto Ministrado // $this->mMessages .= $this->setCambiarMontoAutorizado($monto_reconvenido, true); //Ministrar $this->setForceMinistracion(); $this->setMinistrar(DEFAULT_RECIBO_FISCAL, DEFAULT_CHEQUE, $monto_reconvenido, DEFAULT_CUENTA_BANCARIA, 0, 0, "REESTRUCTURA DE CREDITO {$xClon} ", $fecha, false, TESORERIA_PAGO_NINGUNO); if ($this->getTasaDeInteres() != $tasa_reconvenida) { $this->mMessages .= $this->setCambiarTasaNormal($tasa_reconvenida); } $this->mMessages .= $this->setCambiarPeriocidad($periocidad_reconvenida, $pagos_reconvenidos, $FormaDePago); $this->mMessages .= $this->setCambiarMontoMinistrado($monto_reconvenido, true); if ($conservarPlan == true) { if ($plan_de_pagos != false) { //$xRec = new cReciboDeOperacion(RECIBOS_TIPO_PLAN_DE_PAGO, true, $plan_de_pagos); //$xRec->init(); //$xRec->setDocumento($this->getNumeroDeCredito()); $xPlan = new cPlanDePagos($plan_de_pagos); //$xPlan->init(); $xPlan->setCambiarRelacionados($credito); $this->mMessages .= $xPlan->getMessages(OUT_TXT); } } } //END IF //$this->setReestructurarIntereses(); } //END Credito Inicializado return $sucess; }
function __construct($numero_de_cuenta, $socio = 0, $dias_invertidos = 0, $tasa = false, $fecha = false) { $xT = new cTipos(); $this->mNumeroCuenta = $xT->cInt($numero_de_cuenta); $xF = new cFecha(); $socio = $xT->cInt($socio); if ($socio != 0) { $this->mSocioTitular = $socio; } $this->mFechaOperacion = $fecha == false ? fechasys() : $fecha; $tasa = $tasa == false ? 0 : $tasa; if (isset($numero_de_cuenta)) { $this->init(); //Datos para Operar //Inicia los dias Invertidos y la Tasa de Interes $this->mDiasInvertidos = $dias_invertidos > 0 ? $dias_invertidos : $this->mDiasInvertidos; $this->mTasaInteres = $tasa > 0 ? $tasa : $this->mTasaInteres; //Asigna la fecha de Vencimiento $this->mFechaVencimiento = $dias_invertidos > 0 ? sumardias($this->mFechaOperacion, $this->mDiasInvertidos) : $this->mFechaVencimiento; //Array de estatus no permitidos para operar $this->mEstatusNoOperativos = array(20, 30, 31); } //vuelve a verificar los datos, despues de iniciar las cuentas $this->mDiasInvertidos = (!isset($this->mDiasInvertidos) or $this->mDiasInvertidos == false) ? 0 : $this->mDiasInvertidos; $this->mTasaInteres = (!isset($this->mTasaInteres) or $this->mTasaInteres == false) ? 0 : $this->mTasaInteres; //Asigna la fecha de Vencimiento $this->mFechaVencimiento = (!isset($this->mFechaVencimiento) or $this->mFechaVencimiento == false) ? fechasys() : $this->mFechaVencimiento; }
function vencer_intereses_de_inversion($recibo = false, $fecha = false) { //DATE_ADD(CURDATE(), INTERVAL 1 DAY) //Vencer los Intereses de las Inversiones de Ma�ana $fecha_programada = sumardias($fecha, 1); $sucursal = getSucursal(); $msg = "================= VENCIMIENTO_DE_INTERESES_SOBRE_INVERSION DEL DIA {$fecha_programada} =========\r\n"; $SQL500 = "SELECT\n\t\t\t\t\t `operaciones_mvtos`.*\n\t\t\t\t\tFROM\n\t\t\t\t\t `operaciones_mvtos` `operaciones_mvtos`\n\t\t\t\t\tWHERE\n\t\t\t\t\t (`operaciones_mvtos`.`fecha_afectacion` = '{$fecha_programada}')\n\t\t\t\t\t AND\n\t\t\t\t\t (`operaciones_mvtos`.`tipo_operacion` = 500)\n\t\t\t\t\t AND\n\t\t\t\t\t (`operaciones_mvtos`.`sucursal`='{$sucursal}')"; $rs = mysql_query($SQL500, cnnGeneral()); if (!$rs) { $msg .= "LA CONSULTA NO SE EJECUTO (CODE: " . mysql_errno() . ")"; } while ($rw = mysql_fetch_array($rs)) { $iddocto = $rw["docto_afectado"]; $idsocio = $rw["socio_afectado"]; $interes = $rw["afectacion_real"]; //Informacion de la Cuenta $xCta = new cCuentaInversionPlazoFijo($iddocto, $idsocio); $xCta->init(); $infoCapt = $xCta->getDatosInArray(); $saldo = $infoCapt["saldo_cuenta"]; $periodo = $infoCapt["inversion_periodo"]; $dias = $infoCapt["dias_invertidos"]; $destinoInteres = $infoCapt["destino_del_interes"]; $cuenta_de_int = $infoCapt["cuenta_de_intereses"]; $isr_a_retener = 0; //CUENTA_INTERESES //Suma el Interes mas el Capital switch ($destinoInteres) { case "": $montofinal = $saldo; $xIC = cCuentaALaVista($idsocio, $cuenta_de_int); $xIC->init(); $xIC->setDeposito($interes, "NA", "ninguno", "NA", "DEPOSITO_AUTOMATICO_INVERSION_CTA_{$iddocto}", 99, $fecha, $recibo); setPolizaProforma($recibo, 222, $interes, $idsocio, $cuenta_de_int, TM_ABONO); $msg .= $xIC->getMessages(); break; default: $montofinal = $saldo + $interes; //Agregar el Movimiento, 222 == depositos de Interes setNuevoMvto($idsocio, $iddocto, $recibo, $fecha_programada, $interes, 222, $periodo, "DEPOSITO_AUTOMATICO"); $msg .= date("H:i:s") . "\t{$idsocio}\t{$iddocto}\tAgregando el INTERES POR DEPOSITAR por {$interes}\r\n"; setPolizaProforma($recibo, 222, $interes, $idsocio, $iddocto, TM_ABONO); break; } setPolizaProforma($recibo, 500, $interes, $idsocio, $iddocto, TM_CARGO); /** * Generar el ISR por Inversiones */ $isr_a_retener = getISRByInversion($saldo, $dias); // if ($isr_a_retener > 0) { setNuevoMvto($idsocio, $iddocto, $recibo, $fecha_programada, $isr_a_retener, 234, $periodo, "ISR_AUTOMATICO", -1); $msg .= date("H:i:s") . "\t{$idsocio}\t{$iddocto}\tAgregando el ISR por RETENER por {$isr_a_retener}\r\n"; //Agregar la Prepoliza setPolizaProforma($recibo, 222, $isr_a_retener, $idsocio, $iddocto, TM_CARGO); setPolizaProforma($recibo, 234, $isr_a_retener, $idsocio, $iddocto, TM_ABONO); //Disminuir el ISR del Monto a Pagar $montofinal -= $isr_a_retener; } //Actualizar la Cuenta de Captacion $sqlUCta = "UPDATE captacion_cuentas\n\t SET\n\t fecha_afectacion='{$fecha_programada}',\n\t saldo_cuenta={$montofinal}\n\t WHERE numero_cuenta={$iddocto}\n\t AND\n\t numero_socio={$idsocio}"; $x = my_query($sqlUCta); if ($x["stat"] == false) { $msg .= $x[SYS_MSG] . "\r\n"; } else { $msg .= date("H:i:s") . "\t{$idsocio}\t{$iddocto}\tActualizando la Cuenta a Saldo {$montofinal} y Fecha Afectacion {$fecha_programada} \r\n"; } } //fin de busqueda $SQL_U_500 = "UPDATE operaciones_mvtos SET\n\t\t\t estatus_mvto=30,\n\t\t\t docto_neutralizador = {$recibo}\n\t\t\t WHERE\n\t\t\t (`operaciones_mvtos`.`fecha_afectacion` = '{$fecha_programada}')\n\t\t\t AND\n\t\t\t (`operaciones_mvtos`.`tipo_operacion` = 500)\n\t\t\t AND\n\t\t\t (`operaciones_mvtos`.`sucursal`='{$sucursal}')"; $x = my_query($SQL_U_500); if ($x["stat"] == false) { $msg .= $x[SYS_MSG] . "\r\n"; } else { $msg .= date("H:i:s") . "\t\t\tActualizando el INTERES POR DEPOSITAR a 'PAGADO' (" . $x["info"] . ")\r\n"; } return $msg; }
} /*------------------------------ Obtiene datos mediante sentencias dinamicas */ $estatusactual = 98; /* Determina si el Pago es en una sola Ministracion, genera el IDAD */ if ($periocidad == CREDITO_TIPO_PERIOCIDAD_FINAL_DE_PLAZO) { $intdev = $idmonto * $tasaot / EACP_DIAS_INTERES; // Interes Diario para Pagos Fijos $idpagos = 1; $fechavcto = $ds_sol["fecha_vencimiento"]; $diasaut = restarfechas($fechavcto, $fecha_ministracion_propuesta); $msg .= "WARN\tLos Dias Autorizados cambian a {$diasaut}, se respeta la fecha de vencimiento ({$fechavcto})\r\n"; $xFRM->addCreditoComandos($idsolicitud); } else { $intdev = $idmonto * $tasaot / EACP_DIAS_INTERES; // Interes Diario a Cero para otros Casos $fechavcto = sumardias($fecha_ministracion_propuesta, $diasaut); $msg .= "WARN\tLa Fecha de Vencimiento es actualizada al " . getFechaLarga($fechavcto) . "; los dias autorizados son de {$diasaut}\r\n"; $msg .= "WARN\tPARA OBTENER LOS DEMAS DOCUMENTOS DEBE GENERAR EL PLAN DE PAGOS\r\n"; } /* ------------------------------ sentencia update -------------------------- */ if ($sucess == true) { $xCred->setAutorizado($idmonto, $idpagos, $periocidad, $TipoDeAutorizacion, $fechaaut, $idautorizacion, $idtipodepago, $fecha_ministracion_propuesta, $idnivelderiesgo, $diasaut, $fechavcto, $estatusactual, $sdoactual, $intdev, $fechaultmvto, $TasaDeInteres); /* si es Credito de Grupos solidarios, Actualiza los Mvtos de Otorgacion */ if ($OConv->getEsProductoDeGrupos() == true) { $sqlusolc = "UPDATE operaciones_mvtos\tSET estatus_mvto = 10\tWHERE\n\t\t\t\tgrupo_asociado={$gpoasoc}\tAND (tipo_operacion=112) AND (estatus_mvto=40)"; my_query($sqlusolc); } //Eliminar Plan de Pagos $plan = setNoMenorQueCero($xCred->getNumeroDePlanDePagos()); if ($plan > 0) { $xPlan = new cPlanDePagos($plan);
function getDiaAbonoQuincenal($dia_primer_periodo, $dia_segundo_periodo, $date = false) { $this->set($date); $dias_del_mes = $this->getDiasDelMes(); $dia_en_el_mes = $this->dia(); $fecha_de_pago = $date == false ? $this->mFecha : $date; $dif_mes = 0; $dias_ajustados = 0; $diferencia_en_el_mes = 0; $i_primer_periodo = $dia_primer_periodo - 8; if ($i_primer_periodo < 0) { $i_primer_periodo = 0; } $f_primer_periodo = $dia_primer_periodo + 8; $i_segundo_periodo = $dia_segundo_periodo - 8; if ($i_segundo_periodo < $f_primer_periodo) { $i_segundo_periodo = $f_primer_periodo + 1; } $f_segundo_periodo = $dia_segundo_periodo + 8; if ($f_segundo_periodo > $dias_del_mes) { $f_segundo_periodo = $dias_del_mes; } if ($dia_en_el_mes >= $i_primer_periodo && $dia_en_el_mes <= $f_primer_periodo) { $fecha_de_pago = date("Y-m", strtotime($date)) . "-" . $dia_primer_periodo; } elseif ($dia_en_el_mes >= $i_segundo_periodo && $dia_en_el_mes <= $f_segundo_periodo) { $fecha_de_pago = date("Y-m", strtotime($date)) . "-" . $dia_segundo_periodo; } elseif ($dia_en_el_mes > $f_segundo_periodo) { $diferencia_en_el_mes = $dias_del_mes - $dia_en_el_mes; $dias_ajustados = $diferencia_en_el_mes + $dia_primer_periodo; $fecha_de_pago = sumardias($date, $dias_ajustados); } return $fecha_de_pago; }
$apellidopaterno = ""; if ($clavedepersona == DEFAULT_SOCIO) { $sucess = false; $msg .= "ERROR\tEl Usuario debe estar relacionado con una persona\r\n"; } else { $xSoc = new cSocio($clavedepersona); $xSoc->init(); $nombrecompleto = $xSoc->getNombre(); $apellidomaterno = $xSoc->getApellidoMaterno(); $apellidopaterno = $xSoc->getApellidoPaterno(); } $nivelacceso = $_POST["idNivelAcceso"]; $puesto = $_POST["idPuesto"]; $estatus = "activo"; $sucursal = $_POST["idSucursal"]; $FechaDeExpiracion = sumardias(fechasys(), EXPIRE_PASSWORDS_IN_DAYS); $xBtn = new cHButton(""); $oFRM = new cHForm("frmausuarios", "altausuarios.frm.php"); foreach ($_POST as $campo => $valor) { //echo "$campo === $valor<br />"; } if (strlen($nombreusuario) > 20) { $msg .= "ERROR\tEl Nombre de Usuario no puede tener mas de 20 caracteres\r\n"; $sucess = false; } if (strlen($nombreusuario) < 4) { $msg .= "ERROR\tEl Nombre de Usuario no puede tener menos de 4 caracteres\r\n"; $sucess = false; } if ($nivelacceso >= $_SESSION["SN_d567c9b2d95fbc0a51e94d665abe9da3"]) { $msg .= "ERROR\tUsted no Puede Asignar Permisos Mayores a su Nivel\r\n";
$socio = $rw["numero_socio"]; $credito = $rw["numero_solicitud"]; $fecha_de_ministracion = $rw["fecha_ministracion"]; $dias = $rw["dias_autorizados"]; $tipo_de_pago = $rw["tipo_de_pago"]; $tipo_de_calculo_int = $rw["tipo_de_calculo_de_interes"]; $monto_ministrado = $rw["monto_ministrado"]; //credito //fecha de ministraci�n //fecha de $dias_transcurridos = restarfechas($fecha_de_migracion, $fecha_de_ministracion); $abonos = 0; $intereses = 0; $moratorios = 0; for ($i = 0; $i <= $dias_transcurrridos; $i++) { $fecha_de_corte = sumardias($fecha_de_ministracion, $i); $isKey = "{$credito}-{$fecha_de_corte}"; $capital = round($arrPagos[$isKey . "-120"], 2); $interes = round($arrPagos[$isKey . "-140"], 2) + round($arrPagos[$isKey . "-142"], 2); $mora = round($arrPagos[$isKey . "-141"], 2); $abonos += $capital; $intereses += $interes; $moratorios += $mora; $saldo = $monto_ministrado - $abonos; $estatus = 10; $sqlIEvent = "INSERT INTO creditos_datos_dinamicos\n\t\t\t\t\t\t\t\t\t\t\t\t(numero_de_credito, numero_de_socio, fecha_de_corte, saldo,\n\t\t\t\t\t\t\t\t\t\t\t\tnumero_de_parcialidad, estatus_del_credito, estatus_de_la_parcialidad,\n\t\t\t\t\t\t\t\t\t\t\t\tfecha_de_mora, fecha_de_vencimiento,\n\n\t\t\t\t\t\t\t\t\t\t\t\tabono_interes_normal,\n\t\t\t\t\t\t\t\t\t\t\t\tabono_interes_moratorio,\n\t\t\t\t\t\t\t\t\t\t\t\tinteres_normal_devengado,\n\t\t\t\t\t\t\t\t\t\t\t\tinteres_moratorio_devengado,\n\n\t\t\t\t\t\t\t\t\t\t\t\tsuma_interes_normal_devengado,\n\t\t\t\t\t\t\t\t\t\t\t\tsuma_interes_normal_pagado,\n\t\t\t\t\t\t\t\t\t\t\t\tsuma_interes_moratorio_devengado,\n\t\t\t\t\t\t\t\t\t\t\t\tsuma_interes_moratorio_pagado\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\tVALUES\n\t\t\t\t\t\t\t\t\t\t\t\t({$credito}, {$socio}, '{$fecha_de_corte}',\n\t\t\t\t\t\t\t\t\t\t\t\t{$saldo}, 1, {$estatus}, 10,\n\t\t\t\t\t\t\t\t\t\t\t\t'2009-3-7', '2009-3-7',\n\t\t\t\t\t\t\t\t\t\t\t\t{$interes}, {$mora}, 0, 0,\n\t\t\t\t\t\t\t\t\t\t\t\t0, 0, 0, 0) "; } } //Iniciar dia uno, sumar cada caso //Determinar el Estatus break;
function setNuevoMvto($socio, $solicitud, $recibo, $fecha_operacion, $monto, $tipo_operacion, $parcialidad, $observaciones, $signo_afectacion = 1) { $sucess = false; // --------------------------------------- VALOR SQL DEL MVTO.------------------------------------------------------- // VALORES FIJOS $smf = "idusuario, codigo_eacp, socio_afectado, docto_afectado, recibo_afectado, fecha_operacion, "; // PERIODOS $smf .= "periodo_contable, periodo_cobranza, periodo_seguimiento, "; $smf .= "periodo_anual, periodo_mensual, periodo_semanal, "; // AFECTACIONES $smf .= "afectacion_cobranza, afectacion_contable, afectacion_estadistica, "; $smf .= "afectacion_real, valor_afectacion, "; // FECHAS Y TIPOS $smf .= "idoperaciones_mvtos, tipo_operacion, estatus_mvto, periodo_socio, "; $smf .= "fecha_afectacion, fecha_vcto, "; // SALDOS $smf .= "saldo_anterior, saldo_actual, detalles, sucursal, tasa_asociada, dias_asociados"; // $iduser = $_SESSION["SN_b80bb7740288fda1f201890375a60c8f"]; $eacp = EACP_CLAVE; // PERIODOS $percont = EACP_PER_CONTABLE; // Periodo Contable $percbza = EACP_PER_COBRANZA; // Periodo Cobranza. $perseg = EACP_PER_SEGUIMIENTO; // Period de Seguimiento. $permens = date("m", strtotime($fecha_operacion)); // Periodo mes $persem = date("W", strtotime($fecha_operacion)); // Periodo de dias en la semana. $peranual = date("Y", strtotime($fecha_operacion)); // A�o Natural. $persoc = $parcialidad; // periodo del Socio. $estatus_mvto = 30; //$signo_afectacion = 1; //Obtiene la Afectacion por la afectacion el recibo //$sqlTMvto = "SELECT afectacion_en_recibo FROM operaciones_tipos WHERE idoperaciones_tipos=$tipo_operacion LIMIT 0,1"; //$dFils = obten_filas($sqlTMvto); //$signo_afectacion = $dFils["afectacion_en_recibo"]; if (!$signo_afectacion) { $signo_afectacion = 1; } $fecha_vcto = sumardias($fecha_operacion, DIAS_PAGO_VARIOS); $sucursal = getSucursal(); if ($monto < 0) { //$signo_afectacion = -1; //$monto = $monto * -1; } $afect_cbza = $monto; $afect_seg = $monto; $afect_cont = $monto; $afect_esta = $monto; $idoperacion = folios(2); $smv = "{$iduser}, '{$eacp}', {$socio}, {$solicitud}, {$recibo}, '{$fecha_operacion}',\r\n\t\t\t\t\t{$percont}, {$percbza}, {$perseg}, {$peranual}, {$permens}, {$persem},\r\n\t\t\t\t\t{$afect_cbza}, {$afect_cont}, {$afect_esta},\r\n\t\t\t\t\t{$monto}, {$signo_afectacion},\r\n\t\t\t\t\t{$idoperacion}, {$tipo_operacion}, {$estatus_mvto}, {$persoc},\r\n\t\t\t\t\t'{$fecha_operacion}', '{$fecha_vcto}',\r\n\t\t\t\t\t0, {$monto}, '{$observaciones}', '{$sucursal}', 0, 0\r\n\t\t\t\t\t"; $SQl_comp = "INSERT INTO operaciones_mvtos({$smf}) VALUES ({$smv})"; if ($monto != 0) { $exec = my_query($SQl_comp); if ($exec["stat"] == false) { $sucess = false; } else { $sucess = true; } } return $sucess; }
function setGenerarPlanDePagos() { $msg = ""; $cRec = new cReciboDeOperacion(10); $xRec = $cRec->setNuevoRecibo(DEFAULT_SOCIO, DEFAULT_CREDITO, fechasys(), 1, 10, "RECIBO_DE_AJUSTES_DE_PLAN_DE_PAGOS"); $msg .= "\t\tRECIBO\tEl Recibo de Operacion es {$xRec}\r\n"; $cRec->setNumeroDeRecibo($xRec, true); //Concilia Creditos sin Planes de Pago a SISBANCS $sql = "SELECT * FROM creditos_solicitud WHERE (SELECT\n\t\t\t\t\t\t\t\tCOUNT(credito) FROM sisbancs_suma_amorizaciones\n\t\t\t\t\t\t\t\tWHERE credito = creditos_solicitud.numero_solicitud) = 0\n\t\t\t\t\t\t\t\tAND saldo_actual > 0\n\t\t\t\t\t\t\t\tAND estatus_actual != 50 "; $rs = getRecordset($sql); while ($rw = mysql_fetch_array($rs)) { $socio = $rw["numero_socio"]; $credito = $rw["numero_solicitud"]; $saldo_actual = $rw["saldo_actual"]; $letra = $rw["ultimo_periodo_afectado"] + 1; $fecha = sumardias($rw["fecha_ultimo_mvto"], $rw["periocidad_de_pago"]); $monto = $saldo_actual; $msg .= "{$socio}\t{$credito}\tAGREGAR\tUnica Letra por el SALDO de {$saldo_actual} \r\n"; $sqlIS = "INSERT INTO sisbancs_amortizaciones(socio, credito, parcialidad, fecha_de_vencimiento,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsaldo_vigente, saldo_vencido, interes_vigente, interes_vencido, saldo_interes_vencido, interes_moratorio,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\testatus, iva_interes_normal, iva_interes_moratorio)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tVALUES ({$socio}, {$credito}, {$letra}, '{$fecha}',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{$saldo_actual}, 0, 0, 0, 0, 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1, 0, 0)"; $cRec->setNuevoMvto($fecha, $monto, 410, $letra, "", 1, false, $socio, $credito); $x = my_query($sqlIS); if ($x["stat"] == false) { $msg .= "{$socio}\t{$credito}\tERROR\t \r\n"; } } $msg .= $cRec->getMessages("txt"); return $msg; }
* */ if (MODULO_SEGUIMIENTO_ACTIVADO == true) { $aliasFil = getSucursal() . "-eventos-al-cierre-de-seguimiento-del-dia-{$fechaop}"; $xLog = new cFileLog($aliasFil); $idrecibo = DEFAULT_RECIBO; $messages .= "=======================================================================================\r\n"; $messages .= "=========================\t\t" . EACP_NAME . " \r\n"; $messages .= "=========================\t\t" . getSucursal() . " \r\n"; $messages .= "=======================================================================================\r\n"; $messages .= "=========================\t\tINICIANDO EL CIERRE DE SEGUIMIENTO ====================\r\n"; $messages .= "=========================\t\tRECIBO: {$idrecibo}\t\t\t\t ====================\r\n"; $messages .= "=========================\t\tFECHA: {$fechaop}\t\t\t\t\t ====================\r\n"; $messages .= "=======================================================================================\r\n"; //Avisos $dia_siguiente = sumardias($fechaop, 1); $xAv = new cAlertasDelSistema($dia_siguiente); $messages .= $xAv->setGenerarAlCierre($dia_siguiente); $messages .= vencer_notificaciones(); $messages .= vencer_llamadas(); $messages .= vencer_compromisos(); $xLlam = new cLlamada(); $xLlam->setCancelarLlamadasAnteriores($fechaop); $messages .= setLlamadasDiariasCreditosNo360($fechaop, $idrecibo); $messages .= setLlamadasDiariasPorMora($fechaop, $idrecibo); $xLog->setWrite($messages); $xLog->setClose(); if (ENVIAR_MAIL_LOGS == true) { $xLog->setSendToMail("TR.Eventos del Cierre del Seguimiento"); } }
function s_week($ignium) { $aImgs = array(); $aImgs["no_cumplido"] = "red_dot.png"; $aImgs["cancelado"] = "black_dot.png"; $aImgs["pendiente"] = "yellow_dot.png"; $aImgs["cumplido"] = "green_dot.png"; $aMsg = array(); $aMsg["no_cumplido"] = "NO CUMPLIDO"; $aMsg["cancelado"] = "CANCELADO"; $aMsg["pendiente"] = "PENDIENTE"; $aMsg["cumplido"] = "CUMPLIDO"; $td = ""; $th = ""; $cls = "day_1"; for ($i = 0; $i <= 6; $i++) { $dia = sumardias($ignium, $i); $ndia = dia_semana($dia); $ncdia = getFechaLarga($dia); $compro = ""; $sqlob = "SELECT socios.codigo,\n\t\t\t\tsocios.nombre,\n\t\t\t\tseguimiento_compromisos.tipo_compromiso,\n\t\t\t\tseguimiento_compromisos.anotacion,\n\t\t\t\tseguimiento_compromisos.idseguimiento_compromisos AS 'id',\n\t\t\t\tseguimiento_compromisos.estatus_compromiso\n\t\t\t\tFROM socios, seguimiento_compromisos\n\t\t\t\tWHERE seguimiento_compromisos.socio_comprometido=socios.codigo\n\t\t\t\tAND seguimiento_compromisos.fecha_vencimiento='{$dia}'"; $rs = mysql_query($sqlob); while ($rwc = mysql_fetch_array($rs)) { $imgestat = $aImgs[$rwc["estatus_compromiso"]]; $msgt = $aMsg[$rwc["estatus_compromiso"]]; $id = $rwc["id"]; $tipo = str_replace("promesa_de_", "", $rwc["tipo_compromiso"]); $compro .= "\n\n\t\t\t\t<tr>\n\t\t\t\t<td \tclass=\"strech\" id=\"c@{$id}\"\n\t\t\t\t\t\ttitle='{$msgt} [{$rwc['1']}]'\n\t\t\t\t\t\tonclick='show_compromiso(\"{$id}\");'><img alt=\"Estatus: {$rwc['5']} \" src=\"../images/seguimiento/{$imgestat}\" align=\"middle\" title='{$msgt} [{$rwc['1']}]' /> {$rwc['0']} - " . $tipo . "</td>\n\t\t\t\t</tr>"; } @mysql_free_result($rs); //Agregar compromisos de pago $sqLetras = "SELECT\n\t\t\t\t`creditos_solicitud`.`numero_socio`,\n\t\t\t\t`socios`.`nombre`,\n\t\t\t\t`creditos_solicitud`.`tipo_convenio`,\n\t\t\t\t`letras`.`periodo_socio`,\n\t\t\t\t`letras`.`letra`,\n\t\t\t\t`letras`.`fecha_de_pago`\n\t\t\tFROM\n\t\t\t\t`letras` `letras` \n\t\t\t\t\tINNER JOIN `creditos_solicitud` `creditos_solicitud` \n\t\t\t\t\tON `letras`.`docto_afectado` = `creditos_solicitud`.`numero_solicitud` \n\t\t\t\t\t\tINNER JOIN `socios` `socios` \n\t\t\t\t\t\tON `creditos_solicitud`.`numero_socio` = `socios`.`codigo`\n\t\t\tWHERE \n\t\t\t`letras`.`fecha_de_pago` = '{$dia}'\n\t\t\tAND letra > 0\n\t\t\tAND ( `creditos_solicitud`.`tipo_convenio` = " . CREDITO_PRODUCTO_INDIVIDUAL . "\n\t\t\t\tOR\n\t\t\t`creditos_solicitud`.`tipo_convenio` = " . CREDITO_PRODUCTO_REVOLVENTES . " ) "; /* $mql = new MQL(); $select = $mql->select(); $select->set($sqLetras); $datos = $select->exec(); foreach($datos as $datos){ $socio = $datos["numero_socio"]; $nombre = $datos["nombre"]; $credito = ""; $parcialidad = $datos["periodo_socio"]; $letra = getFMoney( $datos["letra"]); $compro .= "\n <tr> <td class=\"strech\" id=\"c@$id\" title='$nombre' onclick=''><img src=\"../images/bancos.png\" class=\"x16\" /> $socio $parcialidad - $letra </td> </tr>"; }*/ if ($cls == "day_1") { $cls = "day_2"; } else { $cls = "day_1"; } $td = $td . "\n <td class='{$cls}'>\n\t\t\t\t\t<table width='100%' aling=\"center\">\n\t\t\t\t\t\t<tbody>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td class=\"strech\" title='Compromisos del dia {$ncdia}'><center>\n\t\t\t\t\t\t\t<img src=\"../images/common/icon-new.png\" onclick='addCompromisos(\"0|0|{$dia}\");' alt='Agregar un Compromiso' />\n\t\t\t\t\t\t\t<img src=\"../images/common/stock_navigator-all-or-sel-toggle.png\" onclick='mostrar_un_dia(\"{$dia}\");' alt='Mostrar Compromisos' />\n\t\t\t\t\t\t\t{$ndia}\n\t\t\t\t\t\t\t</center></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t{$compro}\n\t\t\t\t\t\t</tbody>\n\t\t\t\t\t</table>\n\t\t\t\t\t</td>"; //$th = $th . "<th class='compact'>$ncdia</th>"; } return "<table class='calendar_day'\n\tcellpadding='2' cellspacing='2' border='2'>\n\t\t<tr>\n\t\t\t{$td}\n\t\t<tr>\n\t</table>"; }
$FVenc = sumardias($FMora, DIAS_PAGO_VARIOS); if (!isset($FMora)) { $FMora = sumardias($fecha_ultimo_mvto, $periocidad + $periodo_en_desfase); $FVenc = sumardias($FMora, DIAS_PAGO_VARIOS); $en_mora = false; } else { $en_mora = true; } $letras_pagadas = ($saldo_historico - $saldo_actual) / ($saldo_historico / $pagos); $letras_pagadas = round($letras_pagadas, 0); $letras_pendientes = $saldo_actual / ($saldo_historico / $pagos); $letras_pendientes = round($letras_pendientes, 0); $letras_que_debio = round($dias_transcurridos / ($dias_autorizados / $pagos), 0); } else { $FMora = $rw["fecha_vencimiento"]; $FVenc = sumardias($rw["fecha_vencimiento"], DIAS_PAGO_UNICOS); $en_mora = true; } //if ($en_mora == true){ $dias_vencidos = restarfechas($fecha_de_reporte, $FMora); $trs .= "<tr>\r\n\t\t\t\t\t<td>{$socio}</td>\r\n\t\t\t\t\t<td>{$nombre}</td>\r\n\t\t\t\t\t<td>{$credito}</td>\r\n\t\t\t\t\t<td >{$periocidad}</td>\r\n\t\t\t\t\t<td class='mny'>{$pagos}</td>\r\n\t\t\t\t\t<td class='{$nombre_estatus}'>{$nombre_estatus}</td>\r\n\t\t\t\t\t<td>{$fecha_ministracion}</td>\r\n\t\t\t\t\t<td>{$fecha_ultimo_mvto}</td>\r\n\t\t\t\t\t<td>{$FMora}</td>\r\n\t\t\t\t\t<td>{$FVenc}</td>\r\n\r\n\t\t\t\t\t<td class='mny'>{$saldo_historico}</td>\r\n\t\t\t\t\t<td class='mny'>{$saldo_actual}</td>\r\n\t\t\t\t\t<td class='mny'>{$letras_pagadas}</td>\r\n\t\t\t\t\t<td class='mny'>{$letras_pendientes}</td>\r\n\t\t\t\t\t<td class='mny'>{$letras_que_debio}</td>\r\n\t\t\t\t\t<td>{$dias_vencidos}</td>\r\n\t\t\t\t</tr>"; //} } echo "<table width='100%' border='0'>\r\n\t<tbody>\r\n\t\t<tr>\r\n\t\t\t<th>Codigo</th>\r\n\t\t\t<th>Nombre</th>\r\n\t\t\t<th>#Credito</th>\r\n\t\t\t<th>Periocidad</th>\r\n\t\t\t<th>Num. Pagos</th>\r\n\t\t\t<th>Estatus</th>\r\n\t\t\t<th>Fecha de Ministracion</th>\r\n\t\t\t<th>Fecha de Ultima Op.</th>\r\n\t\t\t<th>Fecha de Mora</th>\r\n\t\t\t<th>Fecha de Vencimiento</th>\r\n\t\t\t<th>Monto Ministrado</th>\r\n\t\t\t<th>Saldo Insoluto</th>\r\n\t\t\t<th>Letras Pagadas</th>\r\n\t\t\t<th>Letras Pendientes</th>\r\n\t\t\t<th>Letras que debio pagar</th>\r\n\t\t\t<th>Dias Vencidos</th>\r\n\t\t</tr>\r\n\r\n\t\t{$trs}\r\n\t</tbody>\r\n</table>"; echo getRawFooter(); ?> </body> <script > <?php ?> function initComponents(){
$fecha_u_mvto = $fecha_solicitud; $dias_solicitados = 0; $monto_parcialidad = 0; $tipo_de_calculo_interes = 2; if (PERMITIR_EXTEMPORANEO == true) { $fecha_solicitud = $_POST["elanno98"] . "-" . $_POST["elmes98"] . "-" . $_POST["eldia98"]; } //Si es a Final de Plazo if ($periocidad == CREDITO_TIPO_PERIOCIDAD_FINAL_DE_PLAZO) { $dias_solicitados = restarfechas($fecha_vencimiento, $fecha_ministracion); } elseif ($periocidad == CREDITO_TIPO_PERIOCIDAD_DIARIO) { $dias_solicitados = restarfechas($fecha_vencimiento, $fecha_ministracion); $numeropagos = $dias_solicitados - $xFecha->getDiasHabilesEnRango($fecha_vencimiento, $fecha_ministracion); } else { $dias_solicitados = $numeropagos * $periocidad; $fecha_vencimiento = sumardias($fecha_ministracion, $dias_solicitados); } $dias_autorizados = 0; $monto_autorizado = 0; $pagos_autorizados = 0; $saldo_actual = 0; $xConv = new cProductoDeCredito($tipoconvenio); $dconv = $xConv->getDatosInArray(); //Datos de los Creditos segun Productos $producto_monto_maximo = $dconv["maximo_otorgable"]; $tipo_autorizacion = $dconv["tipo_autorizacion"]; $docto_autorizacion = $dconv["leyenda_docto_autorizacion"]; $interes_normal = $xConv->getTasaDeInteres(); $interes_moratorio = $dconv["interes_moratorio"]; $tipo_credito = $dconv["tipo_de_credito"]; $estatus_pred = $dconv["estatus_predeterminado"];
function setLlamadasDiariasPorMora($fecha_operacion, $recibo = 0) { $sucursal = getSucursal(); $fecha = sumardias($fecha_operacion, DIAS_DE_ANTICIPACION_PARA_LLAMADAS); $msg = "====================== GENERAR_LLAMADAS_POR_CREDITOS_NO_360 \r\n"; $msg .= "====================== GENERAR LLAMADAS POR CREDITOS MOROSOS_Y_VENCIDOS \r\n"; $msg .= "====================== GENERAR LLAMADAS PARA EL " . getFechaLarga($fecha) . "\r\n"; $msg .= "\tSocio\tCredito\tObservaciones\r\n"; $sql = "SELECT\n\t`creditos_solicitud`.*\nFROM\n\t`creditos_solicitud` `creditos_solicitud`\nWHERE\n\t(\n\t\t(`creditos_solicitud`.`estatus_actual` =30)\n\t\tOR\n\t\t(`creditos_solicitud`.`estatus_actual` =20)\n\t)\n\tAND\n\t(`creditos_solicitud`.`sucursal` ='{$sucursal}')\n\tAND\n\t(`creditos_solicitud`.`saldo_actual` > " . TOLERANCIA_SALDOS . ")\n\tAND\n\t(`creditos_solicitud`.`periocidad_de_pago` != 360)\n\t"; $fecha_operacion = sumardias($fecha_operacion, 1); //ma�ana $rs = mysql_query($sql, cnnGeneral()); while ($rw = mysql_fetch_array($rs)) { $socio = $rw["numero_socio"]; $credito = $rw["numero_solicitud"]; $oficial = $rw["oficial_seguimiento"]; $hora = "8:00"; $txt = setNewLlamadaBySocio($socio, $credito, $fecha, $hora, "LLAMADAS DIARIAS AUTOMATICAS : {$recibo}"); $msg .= date("H:i:s") . "\t" . $txt . "\r\n"; } return $msg; }