function jsaSetCreditosADespedidos($credito, $fecha, $observaciones) { $msg = ""; $xCred = new cCredito($credito); $xCred->init(); $xdat = new cFecha(0); $fecha = $xdat->getFechaISO($fecha); $xCred->init(); $socio = $xCred->getClaveDePersona(); $xSoc = new cSocio($socio); $xSoc->init(); $xCred->setCambioProducto(CREDITO_PRODUCTO_DESTINO_DESCARTADOS); $xCred->setResetPersonaAsociada($fecha, $observaciones); //Agregar operacion de desvinculacion $xRe = new cReciboDeOperacion(RECIBOS_TIPO_ESTADISTICO, false, DEFAULT_RECIBO); $xRe->init(); $xRe->setNuevoMvto($fecha, $xCred->getSaldoActual(), OPERACION_CLAVE_DESVINCULACION, $xCred->getPeriodoActual(), "", 1, false, $socio, $credito, $fecha); $xRe->setFinalizarRecibo(); $msg .= $xSoc->getMessages(OUT_TXT); $msg .= $xCred->getMessages(OUT_TXT); $msg .= $xRe->getMessages(OUT_TXT); $xRN = new cReglaDeNegocio(); $xEmp = new cEmpresas($xCred->getClaveDeEmpresa()); $xEmp->init(); $oP = $xCred->getOPersona(); $xRN->setVariables(array("nombre_de_persona" => $oP->getNombreCompleto(), "mensaje" => $observaciones, "saldo_del_credito" => $xCred->getSaldoActual(), "nombre_de_la_empresa" => $xEmp->getNombreCorto())); $xRN->setExecuteActions($xRN->reglas()->RN_NOMINA_AL_DESPEDIR); $xF = new cFileLog(); $xF->setWrite($msg); $xF->setClose(); return $xF->getLinkDownload("Descarga de Log"); }
function jsaGetReciboEnSesion($ctrl) { if (isset($_SESSION["recibo_en_proceso"])) { $recibo = $_SESSION["recibo_en_proceso"]; $xRec = new cReciboDeOperacion(200, false, $recibo); $xRec->setNumeroDeRecibo($recibo, true); $xRec->setGenerarPoliza(); $xRec->setForceUpdateSaldos(); $xRec->setFinalizarRecibo(true); } return "<input type=\"button\" value=\"Imprimir el Recibo # " . $_SESSION["recibo_en_proceso"] . "\" onclick=\"cImprimirRecibo(" . $_SESSION["recibo_en_proceso"] . ")\" id=\"idButtonGo\" />"; }
$idrecibo = $xRec->setNuevoRecibo(DEFAULT_SOCIO, DEFAULT_CREDITO, $fechaop, 1, 12, "CIERRE_DE_COLOCACION_{$fechaop}", DEFAULT_CHEQUE, DEFAULT_TIPO_PAGO, DEFAULT_RECIBO_FISCAL, DEFAULT_GRUPO); $xRec->setNumeroDeRecibo($idrecibo); $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 COLOCACION ====================\r\n"; $messages .= "=========================\t\tRECIBO: {$idrecibo}\t\t\t\t ====================\r\n"; //reconstruir db de pagos $ql->setRawQuery("CALL `proc_historial_de_pagos` "); $xCUtils = new cUtileriasParaCreditos(); $messages .= $xCUtils->setEstatusDeCreditos($idrecibo, $fechaop, false, true); if (date("Y-m-t", strtotime($fechaop)) == date("Y-m-d", strtotime($fechaop))) { $messages .= $xCUtils->setGenerarMvtoFinDeMes($xF->getDiaInicial(), $xF->getDiaFinal()); } if (CREDITO_CIERRE_FORZAR_DEVENGADOS == true) { $messages .= $xCUtils->setReestructurarSDPM_Planes(true, false, false, false, $xF->getDiaInicial(), false); $messages .= $xCUtils->setReestructurarSDPM(true, false, false, false, false, $xF->getDiaInicial(), false); $messages .= $xCUtils->setRegenerarInteresDevengado(false, $xF->get(), $xF->get()); } $messages .= $xCUtils->setAcumularIntereses(); $xRec->setFinalizarRecibo(true); $xLog->setWrite($messages); $xLog->setClose(); if (ENVIAR_MAIL_LOGS == true) { $xLog->setSendToMail("TR.Eventos del Cierre del colocacion"); } if ($parser != false) { header("Location: ./cierre_de_captacion.frm.php?s=true&k=" . $key . "&f={$fechaop}"); } //}
/** * Funcion que asiste en la Ministracion del Credito */ function setMinistrar($recibo_fiscal, $cheque, $monto_cheque = 0, $cuenta_cheques = false, $cheque2 = 0, $cuenta_cheques2 = 0, $observaciones = "", $fecha = false, $recibo = false, $tipo_de_pago = TESORERIA_PAGO_CHEQUE) { $sucess = true; $monto_cheque = $monto_cheque == 0 ? $this->getMontoAutorizado() : $monto_cheque; $cuenta_cheques = $cuenta_cheques == false ? DEFAULT_CUENTA_BANCARIA : $cuenta_cheques; $cheque = setNoMenorQueCero($cheque); $xSocio = new cSocio($this->mNumeroSocio); $xSocio->init(); //Corrige la Inicializacion del credito if (!isset($this->mNumeroSocio) or $this->mNumeroSocio == 1) { $this->init(); } $DIngreso = $xSocio->getDatosDeIngreso_InArray(); $msg = ""; //$tipo_de_pago = TESORERIA_PAGO_CHEQUE; $recibo = setNoMenorQueCero($recibo); $DConvenio = $this->getDatosDeProducto(); $idsolicitud = $this->mNumeroCredito; $solicitud = $this->mNumeroCredito; /* ------------------------------ obtiene el Monto Autorizado ---------------------------------- */ $dsol = $this->getDatosDeCredito(); $montoaut = $this->getMontoAutorizado(); // $dsol["monto_autorizado"]; // Monto Autorizado $fvcred = $dsol["fecha_vencimiento"]; $modpagos = $this->getPeriocidadDePago(); $tasacred = $this->getTasaDeInteres(); $totalop = $montoaut; $tipoaut = $dsol["tipo_autorizacion"]; $socio = $this->mNumeroSocio; $intdi = $dsol["interes_diario"]; $diasa = $dsol["dias_autorizados"]; $tipoconvenio = $dsol["tipo_convenio"]; $elgrupo = $dsol["grupo_asociado"]; $grupo = $elgrupo; $idsocio = $socio; $fecha_propuesta = $dsol["fecha_ministracion"]; $tasa_ordinaria_de_interes = $tasacred; $monto_autorizado_a_ministrar = $dsol["monto_autorizado"]; $grupo = $this->mGrupoAsociado; if ($fecha == false) { $fecha = $this->mFechaOperacion; } $socio = $this->mNumeroSocio; //Valores conservados $fechavcto = $fvcred; $diasaut = $diasa; $intdiario = $intdi; /** * Corrige la opcion de que el Cheque es Igual a Cero */ if ($monto_cheque == 0) { $monto_cheque = $montoaut; } //Corrige el dato de recibo no valido if ($recibo <= 0 and setNoMenorQueCero($this->mReciboDeOperacion) > 0) { $recibo = $this->mReciboDeOperacion; } /* --------------------------------------------------------------------------------------------------------- */ $OConv = $this->getOProductoDeCredito($tipoconvenio); if ($this->mForceMinistracion == false) { // Checa si el credito ya fue Ministrado //Modificar $montomin = $this->getSumMovimiento(OPERACION_CLAVE_MINISTRACION); if ($montomin > 1) { $msg .= "ERROR\tEl credito se ha ministrado de forma parcial / Total, o se ha forzado su edicion; el Monto Ministrado es {$montomin} \r\n"; $sucess = false; } } // verificar si tiene aportaciones sociales if ($this->mForceMinistracion == false) { $aportaciones = $xSocio->getAportacionesSociales(); $cuotas = $DIngreso["parte_social"] + $DIngreso["parte_permanente"]; if ($aportaciones < $cuotas) { $msg .= "ERROR\tNo ha Pagado sus Cuotas Sociales por {$cuotas}, ha pagado {$aportaciones} \r\n"; $sucess = false; } } // verificar si pago su fondo de defuncion. // SI ES DIFERENTE A AUTOMATIZADO if ($this->mForceMinistracion == false) { $fondo_def_ob = $DConvenio["monto_fondo_obligatorio"]; $fondo_def_pag = $xSocio->getFondoDeDefuncion(); if ($fondo_def_pag < $fondo_def_pag) { $msg .= "ERROR\tNo ha Pagado sus Fondo de Defuncion por {$fondo_def_pag}, ha pagado {$fondo_def_pag} \r\n"; $sucess = false; } } // condiciones del credito autorizado por sesion de credito. //si el convenio Aplica Gtos Notariales $aplica_gtos_not = $DConvenio["aplica_gastos_notariales"]; if ($aplica_gtos_not == 1 and $this->mForceMinistracion == false) { $gastos_not_pagados = $this->getPagoDeGastosNotariales(); if ($gastos_not_pagados < TOLERANCIA_SALDOS) { $msg .= "ERROR\tNo ha Pagado sus Gastos Notariales\r\n"; $sucess = false; } } // verificar si tiene garantia liquida $porc_garantia_liquida = $OConv->getTasaDeGarantiaLiquida(); if ($porc_garantia_liquida > 0 and $this->mForceMinistracion == false) { $msg .= "WARN\tLa Garantia Liquida es de {$porc_garantia_liquida} sobre el Monto Autorizado\r\n"; if ($OConv->getEsProductoDeGrupos() == true) { $condicionante_de_garantia_liquida = " (`socios_general`.`grupo_solidario` = {$elgrupo}) "; $msg .= "WARN\tLa Garantia Liquida es valuado por GRUPO \r\n"; } else { $condicionante_de_garantia_liquida = " (`socios_general`.`codigo` = {$idsocio})"; $msg .= "WARN\tLa Garantia Liquida es valuado por SOCIO \r\n"; } $tgtia = $montoaut * $porc_garantia_liquida; $subproducto_de_ahorro_inicial = CAPTACION_PRODUCTO_GARANTIALIQ; $sqlSUMDepInicial = "\n\t\t\t\t\t\t\t\t\t\t\t\tSELECT\n\t\t\t\t\t\t\t\t\t\t\t\t\t`socios_general`.`grupo_solidario`,\n\t\t\t\t\t\t\t\t\t\t\t\t\tSUM(`captacion_cuentas`.`saldo_cuenta`) AS 'sumas'\n\t\t\t\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t\t\t\t`socios_general` `socios_general`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `captacion_cuentas` `captacion_cuentas`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tON `socios_general`.`codigo` = `captacion_cuentas`.`numero_socio`\n\t\t\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`tipo_subproducto` ={$subproducto_de_ahorro_inicial})\n\t\t\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t\t\t{$condicionante_de_garantia_liquida}\n\t\t\t\t\t\t\t\t\t\t\t\tGROUP BY\n\t\t\t\t\t\t\t\t\t\t\t\t\t`socios_general`.`grupo_solidario`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`tipo_cuenta` "; $garliq = mifila($sqlSUMDepInicial, "sumas"); if ($garliq < $tgtia - TOLERANCIA_SALDOS) { $msg .= "ERROR\tNo ha depositado el su totalidad la Garantia Liquida, ha Depositado {$garliq} de un total de {$tgtia} \r\n"; $msg .= "WARN\tRecuerde que el DEPOSITO DE LA GARANTIA LIQUIDA se efectua en el Modulo de Captacion \r\n"; $sucess = false; } } //END: verificar Garantia // VERIFICA LA GARANTIA SEGUN TIPO CONVENIO.- La seleccion se hace segun el Numero de Socio y no debe estar entregada // NO APLICA EN GRUPOS SOLIDARIOS $razon_garantias = $DConvenio["razon_garantia"]; if ($razon_garantias > 0 and $this->mForceMinistracion == false) { $monto_garantizado = $xSocio->getGarantiasFisicasDepositadas(); $monto_a_garantizar = $montoaut * $razon_garantias; if ($monto_garantizado < $monto_a_garantizar) { $msg .= "ERROR\tNo ha garantizado el Total del Credito, se debe garantizar {$monto_a_garantizar} y solamente se tiene en resguardo {$monto_garantizado} \r\n"; $sucess = false; } } // SI EL CREDITO ES AUTOMATIZADO if ($modpagos == CREDITO_TIPO_PERIOCIDAD_FINAL_DE_PLAZO) { $diasaut = restarfechas($fechavcto, $fecha); //$dsol["dias_autorizados"]; // Dias Autorizados. $msg .= "WARN\tLos dias Autorizados se cambian a {$diasaut}\r\n"; //$fechavcto = sumardias($fecha, $diasaut); // Fecha del Sistema + Dias Autorizados $intdiario = $montoaut * $tasacred / EACP_DIAS_INTERES; } else { //Verifica si existe el Plan de Pagos: $sqlck = "SELECT COUNT(tipo_docto) AS 'planes' FROM operaciones_recibos WHERE docto_afectado={$idsolicitud} AND tipo_docto=11"; $plan = $this->getNumeroDePlanDePagos(); if (!isset($plan) or empty($plan)) { $msg .= "ERROR\tNo se ha Generado el PLAN DE PAGOS \r\n"; $sucess = false; } if (strtotime($fecha) != strtotime($fecha_propuesta)) { $msg .= "ERROR\tNo se puede ministrar el Credito({$fecha}), ya que el PLAN DE PAGO de calcula desde la fecha " . getFechaLarga($fecha_propuesta) . ", vuelva a elaborar el PLAN DE PAGOS\r\n"; $sucess = false; } } //VERIFICA EL ICA A PAGAR $razon_interes_anticipado = $DConvenio["porcentaje_ica"]; $iva_incluido = $DConvenio["iva_incluido"]; $tasa_iva = $DConvenio["tasa_iva"]; //RULE: Modificar segun el Tipo de pago if ($razon_interes_anticipado > 0 and $this->mForceMinistracion == false) { // verifica si tiene el Pago de Int Anticipado $sumia = $dsol["sdo_int_ant"]; $mIntDiario = $monto_autorizado_a_ministrar * $tasa_ordinaria_de_interes / EACP_DIAS_INTERES; $mntia = $mIntDiario * $diasa * $razon_interes_anticipado - TOLERANCIA_SALDOS; $MontoICA = $mntia; if ($iva_incluido == '1') { $MontoICA = $MontoICA * (1 / (1 + $tasa_iva)); } if ($sumia < $MontoICA) { $msg .= "ERROR\tNo se ha cubierto el Interes Anticipado, se ha pagado {$sumia} de {$MontoICA} \r\n"; $sucess = false; } else { // } } if ($this->mForceMinistracion == true) { $sucess = true; $msg .= "WARN\tLa Ministracion es FORZADA \r\n"; } /*------------------------------- AFECTACIONES ------------------------------------------------- */ if ($sucess == true) { $monto = $montoaut; $parcialidad = 1; if ($monto != 0) { $CRecibo = new cReciboDeOperacion(RECIBOS_TIPO_MINISTRACION, true, $recibo); //Set a Mvto Contable //$CRecibo->setGenerarPoliza(); $CRecibo->setGenerarTesoreria(); $CRecibo->setGenerarBancos(true); //Agregar recibo si no hay if (setNoMenorQueCero($recibo) <= 0) { $recibo = $CRecibo->setNuevoRecibo($socio, $solicitud, $fecha, $parcialidad, RECIBOS_TIPO_MINISTRACION, $observaciones, $cheque, $tipo_de_pago, $recibo_fiscal, $grupo); //Checar si se agrego el recibo if (setNoMenorQueCero($recibo) > 0) { $this->mMessages .= "OK\tSe Agrego Exitosamente el Recibo {$recibo} de la Cuenta " . $this->mNumeroCredito . " \r\n"; $this->mReciboDeOperacion = $recibo; $this->mSucess = true; } else { $this->mMessages .= "ERROR\tSe Fallo al Agregar el Recibo {$recibo} de la Cuenta " . $this->mNumeroCredito . " \r\n"; $this->mSucess = false; } } $this->mReciboDeOperacion = $recibo; if (setNoMenorQueCero($recibo) > 0) { //Agregar el Movimiento $CRecibo->setNuevoMvto($fecha, $monto, OPERACION_CLAVE_MINISTRACION, $parcialidad, $observaciones, 1, TM_CARGO, $socio, $solicitud); /** @since 2010-11-21 */ $this->addSDPM(0, 0, $fecha, 0, CREDITO_ESTADO_VIGENTE, $fecha, OPERACION_CLAVE_MINISTRACION); //$this->mMessages .= $CRecibo->getMessages(); $this->mSucess = true; } else { $this->mMessages .= "ERROR\tNo Existe Recibo con el cual trabajar ({$recibo}) \r\n"; } $CRecibo->setFinalizarRecibo(true); $this->mMessages .= $CRecibo->getMessages(); } // Actualiza el estatus del credito a Vigente, la fecha de Operacion y la de vencimiento. $arrAct = array("fecha_ministracion" => $fecha, "fecha_ultimo_mvto" => $fecha, "estatus_actual" => CREDITO_ESTADO_VIGENTE, "fecha_vencimiento" => $fechavcto, "plazo_en_dias" => $diasaut, "dias_autorizados" => $diasaut, "interes_diario" => $intdiario, "saldo_actual" => $montoaut); $this->setUpdate($arrAct); // --------------------------------- ENVIA LAS SENTENCIAS SQL---------------------------------------- //verifica la dif entre cheque 1 y el monto a ministrar if ($monto_cheque <= 0) { $monto_cheque = $montoaut; } $difCheque = $montoaut - $monto_cheque; $beneficiario = $xSocio->getNombreCompleto(); $descuento = 0; //Separar la generación del cheque setNuevoCheque($cheque, $cuenta_cheques, $recibo, $beneficiario, $monto_cheque, $fecha, false, $descuento); setUltimoCheque($cuenta_cheques, $cheque); if ($difCheque > 0) { //setPolizaProforma($recibo, 9200, $difCheque, $socio, $idsolicitud, TM_ABONO); setNuevoCheque($cheque2, $cuenta_cheques2, $recibo, $beneficiario, $difCheque, $fecha, false, $descuento); setUltimoCheque($cuenta_cheques2, $cheque2); } //Agregar Avisos de Credito por renovacion if ($this->getTipoDeAutorizacion() == CREDITO_TIPO_AUTORIZACION_RENOVACION) { //$xSoc = $this->getOPersona(); $xSocio->initDatosDeCredito(); $DCreds = $xSocio->getDatosDeCreditos(); $xCred = new cCreditos_solicitud(); foreach ($DCreds as $clave => $valores) { $xCred->setData($valores); if ($xCred->saldo_actual()->v() >= TOLERANCIA_SALDOS) { if ($xCred->numero_solicitud()->v() != $this->getNumeroDeCredito()) { //agregar aviso $xSocio->addMemo(MEMOS_TIPO_NOTA_RENOVACION, "Credito Renovado en la solicitud #" . $this->getNumeroDeCredito(), $xCred->numero_solicitud()->v(), $fecha); $msg .= $xSocio->getMessages(); } } } } //ejecutar alertas por Ministracion de Reglas de Negocios //Ministracion de Credito de la persona {clave_de_persona} {nombre_de_persona} //credito numero {clave_de_credito} con monto {monto_de_credito} y tipo de autorizacion {tipo_de_autorizacion}. $OTipoAut = new cCreditos_tipo_de_autorizacion(); $OTipoAut->setData($OTipoAut->query()->initByID($this->getTipoDeAutorizacion())); $xRegla = new cReglaDeNegocio(); $xRegla->setVariables(array("clave_de_persona" => $xSocio->getCodigo(), "nombre_de_persona" => $xSocio->getNombreCompleto(), "clave_de_credito" => $this->getNumeroDeCredito(), "monto_de_credito" => $this->getMontoAutorizado(), "tipo_de_autorizacion" => $OTipoAut->descripcion_tipo_de_autorizacion()->v(OUT_TXT))); $xRegla->setExecuteActions($xRegla->reglas()->RN_MINISTRAR_CREDITO); } else { $msg .= "ERROR\tNo se efectua operacion alguna\r\n"; } $this->mMessages .= $msg; return $recibo; }
function getGenerarBaseGravadaMensualIDE($fecha = false) { if ($fecha == false) { $fecha = fechasys(); } $msg = ""; $msg .= "============== GENERANDO EL MOVIMIENTO DE BASE GRAVABLE DEL IDE\t==========\r\n"; $msg .= "============== FECHA: {$fecha} ==========\r\n"; $xF = new cFecha(0, $fecha); $dia_inicial = $xF->getDiaInicial(); $dia_final = $xF->getDiaFinal(); $sqlGravados = "SELECT\n\t\t\t\t\t\t\t\t`operaciones_mvtos`.`socio_afectado`,\n\t\t\t\t\t\t\t\tSUM(`operaciones_mvtos`.`afectacion_real`) AS 'monto'\n\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t`operaciones_mvtos` `operaciones_mvtos`\n\t\t\t\t\t\t\t\t\tINNER JOIN `operaciones_recibos` `operaciones_recibos`\n\t\t\t\t\t\t\t\t\tON `operaciones_mvtos`.`recibo_afectado` = `operaciones_recibos`.\n\t\t\t\t\t\t\t\t\t`idoperaciones_recibos`\n\t\t\t\t\t\t\t\t\t\tINNER JOIN `eacp_config_bases_de_integracion_miembros`\n\t\t\t\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`\n\t\t\t\t\t\t\t\t\t\tON `operaciones_mvtos`.`tipo_operacion` =\n\t\t\t\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`.`miembro`\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t(`operaciones_mvtos`.`fecha_afectacion` >='{$dia_inicial}')\n\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t(`operaciones_mvtos`.`fecha_afectacion` <='{$dia_final}')\n\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t(`eacp_config_bases_de_integracion_miembros`.`codigo_de_base` = 2600)\n\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t(`operaciones_recibos`.`tipo_pago` = 'efectivo' )\n\t\t\t\t\t\tGROUP BY\n\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`.`codigo_de_base`,\n\t\t\t\t\t\t\t`operaciones_mvtos`.`socio_afectado`,\n\t\t\t\t\t\t\t`operaciones_recibos`.`tipo_pago` "; //$msg .= "$sqlGravados\r\n"; //Agregar Recibo $xRec = new cReciboDeOperacion(10); //$xRec->setGenerarPoliza(); $xRec->setForceUpdateSaldos(); $idrecibo = $xRec->setNuevoRecibo(1, 1, $fecha, 1, 10, "BASE_REMANENTE_GRAVABLE_AL_IDE", "NA", "ninguno", "NA", DEFAULT_GRUPO); $xRec->setNumeroDeRecibo($idrecibo); $rs = getRecordset($sqlGravados); while ($rw = mysql_fetch_array($rs)) { $socio = $rw["socio_afectado"]; $excencion = EXCENCION_IDE; $base_gravada = setNoMenorQueCero($rw["monto"] - $excencion); if ($base_gravada > 0) { $xRec->setNuevoMvto($dia_final, $base_gravada, 9302, 1, "", 1, false, $socio, 1); } } $xRec->setFinalizarRecibo(); $msg .= $xRec->getMessages("txt"); return $msg; }
function jsaVincularEmpresa($credito, $observaciones, $empresa) { $msg = ""; $xCred = new cCredito($credito); $xCred->init(); $xdat = new cFecha(0); $fecha = $xdat->get(); // FechaISO($fecha); $xCred->init(); $socio = $xCred->getClaveDePersona(); $xSoc = new cSocio($socio); $xSoc->init(); $xCred->setCambioProducto(CREDITO_PRODUCTO_NOMINA); $xCred->setResetPersonaAsociada($fecha, $observaciones, $empresa); //Agregar operacion de desvinculacion $xRe = new cReciboDeOperacion(RECIBOS_TIPO_ESTADISTICO, false, DEFAULT_RECIBO); $xRe->init(); $xRe->setNuevoMvto($fecha, $xCred->getSaldoActual(), OPERACION_CLAVE_VINCULACION, $xCred->getPeriodoActual(), "", 1, false, $socio, $credito, $fecha); $xRe->setFinalizarRecibo(); $msg .= $xSoc->getMessages(OUT_TXT); $msg .= $xCred->getMessages(OUT_TXT); $msg .= $xRe->getMessages(OUT_TXT); $xF = new cFileLog(); $xF->setWrite($msg); $xF->setClose(); return $xF->getLinkDownload("Descarga de Log"); }
function setTraspaso($CuentaDestino, $TipoDestino, $observaciones = "", $monto = false) { if ($this->mCuentaIniciada == false) { $this->init(); } $cuentaOrigen = $this->mNumeroCuenta; $socio = $this->mSocioTitular; $saldoOrigen = $this->mSaldoActual; $fechaOperacion = fechasys(); $tipoPago = TESORERIA_COBRO_NINGUNO; $cheque = "NA"; $reciboFiscal = ""; $tipoDocumento = 9; $msg = ""; if ($TipoDestino == CAPTACION_TIPO_PLAZO) { $xCDestino = new cCuentaInversionPlazoFijo($CuentaDestino, $socio); } else { $xCDestino = new cCuentaALaVista($CuentaDestino, $socio); } $xCDestino->init(); if ($monto > $saldoOrigen) { $msg .= "ERROR\tEl Monto a Retirar {$monto} es mayor al saldo de Origen {$saldoOrigen} \r\n"; } else { //Crear el Recibo $xRec = new cReciboDeOperacion($tipoDocumento); $ReciboTrasp = $xRec->setNuevoRecibo($socio, $cuentaOrigen, $fechaOperacion, 1, $tipoDocumento, $observaciones, $cheque, $tipoPago); $xRec->setNumeroDeRecibo($ReciboTrasp); $xRec->setGenerarPoliza(); $xRec->setForceUpdateSaldos(); $xRec->initRecibo(); $this->setCuentaBancaria(DEFAULT_CUENTA_BANCARIA); $this->setReciboDeOperacion($ReciboTrasp); $this->setForceOperations(true); $xCDestino->setReciboDeOperacion($ReciboTrasp); $this->setRetiro($monto, $cheque, $tipoPago, $reciboFiscal, $observaciones, DEFAULT_GRUPO, $fechaOperacion, $ReciboTrasp); $xCDestino->setDeposito($monto, $cheque, $tipoPago, $reciboFiscal, $observaciones, DEFAULT_GRUPO, $fechaOperacion, $ReciboTrasp); $xRec->setFinalizarRecibo(true); $msg .= $xRec->getMessages("txt"); } return $msg; }
//finalizar tesoreria $xRecCapt->setFinalizarTesoreria(array("cuenta" => $cuenta_cheques, "cheque" => $cheque)); } $msg .= MODO_DEBUG == true ? $xRecCapt->getMessages() : ""; } } if ($montocomision > 0) { $xRec = new cReciboDeOperacion(); $idrecibo = $xRec->setNuevoRecibo($idsocio, $idsolicitud, $fecha, 1, RECIBOS_TIPO_OINGRESOS, $observaciones, $cheque, TESORERIA_COBRO_DESCTO, $recibo_fiscal); if (setNoMenorQueCero($idrecibo) > 0) { $montocomision = round($montocomision * (1 / (1 + TASA_IVA)), 2); $montoivacomi = round($montocomision * TASA_IVA, 2); $xRec->setNuevoMvto($fecha, $montocomision, OPERACION_CLAVE_COMISION_APERTURA, 1, $observaciones, 1, TM_CARGO, $idsocio); $xRec->setNuevoMvto($fecha, $montoivacomi, OPERACION_CLAVE_PAGO_IVA_OTROS, 1, $observaciones, 1, TM_CARGO, $idsocio); //$xRec->addMvtoContableByTipoDePago($montocomision, TM_CARGO); if ($xRec->setFinalizarRecibo(true) == true) { $xFRM->OButton("TR.Recibo de Comisiones", "jsImprimirRecibo()", "imprimir"); $xFRM->addHTML($xRec->getJsPrint(true)); $xRec->setFinalizarTesoreria(array("cuenta" => $cuenta_cheques, "cheque" => $cheque)); } $msg .= MODO_DEBUG == true ? $xRec->getMessages() : ""; } } //Buttons $xFRM->OButton("TR.VER/IMPRIMIR PAGARE DE CREDITO", "printpagare();", "imprimir", 'id1'); $xFRM->OButton("TR.VER/IMPRIMIR CONTRATO DE CREDITO", "contratocredito();", "imprimir", 'id2'); $xFRM->OButton("TR.IMPRIMIR MANDATO", "printmandato()", "imprimir", "id3"); } else { $xFRM->addAvisoRegistroError(); } if (MODO_DEBUG == true) {
function Common_c5fe0408555dbf392918c6f77a4d01b2($params) { $stdDiv = STD_LITERAL_DIVISOR; $DPar = explode($stdDiv, $params, 10); //mensajes //grupo $xTip = new cTipos(); // $socio = $xTip->cInt($DPar[0]); $credito = $xTip->cInt($DPar[1]); $letra = $xTip->cInt($DPar[2]); $capital = $xTip->cFloat($DPar[3]); $interes = $xTip->cFloat($DPar[4]); $iva = $xTip->cFloat($DPar[5]); $ahorro = $xTip->cFloat($DPar[6]); $nota = $xTip->cChar($DPar[7]); $numero = $xTip->cInt($DPar[8]); $limit = $xTip->cInt($DPar[9]); $msg = "====================== MOVIMIENTO {$numero} DE {$limit} ====================\r\n"; //Datos del Credito $Cred = new cCredito($credito, $socio); $Cred->initCredito(); $DCred = $Cred->getDatosDeCredito(); $saldo = $DCred["saldo_actual"] - $capital; $contrato_captacion = $DCred["contrato_corriente_relacionado"]; $grupo = $DCred["grupo_asociado"]; $msg .= $Cred->getMessages(); if (isset($_SESSION["recibo_en_proceso"])) { $recibo = $_SESSION["recibo_en_proceso"]; $fecha = fechasys(); $_SESSION["total_recibo_en_proceso"] += $capital + $interes + $ahorro; $xRec = new cReciboDeOperacion(200, false, $recibo); $xRec->setNumeroDeRecibo($recibo, true); $xRec->setNumeroDeRecibo($recibo, true); $DRec = $xRec->getDatosInArray(); $cheque = $DRec["cheque_afectador"]; $tipopago = $DRec["tipo_pago"]; $recibofiscal = $DRec["recibo_fiscal"]; $xRec->setGenerarPoliza(); $msg .= "{$socio}\t{$credito}\tCREDITO\tMovimiento {$i} del Credito {$credito} del Socio {$socio} con Saldo {$saldo}\r\n "; $msg .= "{$socio}\t{$credito}\tMONTOS\tCapital: {$capital} || Interes: {$interes} || Ahorro: {$ahorro} \r\n"; //Agregando Capital if ($capital > 0) { $xRec->setNuevoMvto($fecha, $capital, 120, $letra, $nota . ";SDO:" . $saldo, 1, TM_ABONO, $socio, $credito); $arrCred = array("saldo_actual" => $saldo); $Cred->setUpdate($arrCred); } //Agregando Interes if ($interes > 0) { $xRec->setNuevoMvto($fecha, $interes, 140, $letra, $nota, 1, TM_ABONO, $socio, $credito); } //agregando el IVA if ($interes > 0) { $xRec->setNuevoMvto($fecha, $iva, 151, $letra, $nota, 1, TM_ABONO, $socio, $credito); } //Agregando Ahorro if ($ahorro > 0) { $xC = new cCuentaALaVista($contrato_captacion); if (!isset($contrato_captacion) or $contrato_captacion == CTA_GLOBAL_CORRIENTE or $contrato_captacion == 0) { $contrato_captacion = $xC->setNuevaCuenta(2, 1, $socio, "CUENTA_AUTOMATICA", $credito); $msg .= "{$socio}\t{$credito}\tNuevaCta\tse dio de alta a la cuenta {$contrato_captacion}\r\n"; //2011-nov-30 se agrego la actualizacion del contrato relacionado $arrCred = array("contrato_corriente_relacionado" => $contrato_captacion); $Cred->setUpdate($arrCred); } $xC = new cCuentaALaVista($contrato_captacion); $xC->setSocioTitular($socio); $xC->setReciboDeOperacion($recibo); $xC->setDeposito($ahorro, $cheque, $tipopago, $recibofiscal, $nota, $grupo, $fecha, $recibo); $msg .= $xC->getMessages("txt"); $msg .= "{$socio}\t{$credito}\tAhorro\t El Saldo Quedo en " . $xC->getNuevoSaldo() . "\r\n"; } $msg .= "{$socio}\t{$credito}\tObservacion\t {$nota}\r\n"; $msg .= $xRec->getMessages("txt"); } else { $msg .= "NO_SE_HA_DEFINIDO_UN_RECIBO"; } $xLog = new cFileLog("log_de_recibo_" . $recibo); $xLog->setWrite($msg); $xLog->setClose(); $MsgEnd = ""; if ($numero == $limit) { $xRec->setForceUpdateSaldos(); $xRec->setFinalizarRecibo(true); //$MsgEnd .= "**** proceso terminado ****"; } //retorna el id del control de origen para neutralizar return "-{$numero}"; }
function Common_c8581154ac4e27cb0e122d71341dd7d8($strCmd) { $DPar = explode(STD_LITERAL_DIVISOR, $strCmd); $xTip = new cTipos(); // $socio = $xTip->cInt($DPar[0]); $cuenta = $xTip->cInt($DPar[1]); $deposito = $xTip->cFloat($DPar[2]); $retiro = $xTip->cFloat($DPar[3]); $nota = $xTip->cChar($DPar[4]); $numero = $xTip->cInt($DPar[5]); $limit = $xTip->cInt($DPar[6]); if (isset($_SESSION["recibo_en_proceso"])) { $recibo = $_SESSION["recibo_en_proceso"]; $fecha = fechasys(); $_SESSION["total_recibo_en_proceso"] += $deposito - $retiro; $xRec = new cReciboDeOperacion(200, false, $recibo); $xRec->setNumeroDeRecibo($recibo, true); $DRec = $xRec->getDatosInArray(); $cheque = $DRec["cheque_afectador"]; $tipopago = $DRec["tipo_pago"]; $recibofiscal = $DRec["recibo_fiscal"]; if ($deposito > 0 or $retiro > 0) { $xC = new cCuentaALaVista($cuenta); $grupo = DEFAULT_GRUPO; $xC->setSocioTitular($socio); $xC->setReciboDeOperacion($recibo); if ($deposito > 0) { $xC->setDeposito($deposito, $cheque, $tipopago, $recibofiscal, $nota, $grupo, $fecha, $recibo); } if ($retiro > 0) { $xC->setRetiro($retiro, $cheque, $tipopago, $recibofiscal, $nota, $grupo, $fecha, $recibo); } } if ($numero == $limit) { $xRec->setForceUpdateSaldos(); $xRec->setFinalizarRecibo(true); //$MsgEnd .= "**** proceso terminado ****"; } } //retorna el id del control de origen para neutralizar return "-{$numero}"; }
function setConciliarCreditos() { $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\n\t\t\t\t\t\t\t\t`migracion_creditos_por_socio`.`numero_socio`,\n\t\t\t\t\t\t\t\t`migracion_creditos_por_socio`.`creditos`,\n\t\t\t\t\t\t\t\t`migracion_creditos_por_socio`.`saldo`,\n\t\t\t\t\t\t\t\tgetCreditosCompac(numero_socio) AS `saldo_compac`,\n\t\t\t\t\t\t\t\t( `migracion_creditos_por_socio`.`saldo` - getCreditosCompac(numero_socio)) AS 'diferencia'\n\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t`migracion_creditos_por_socio` `migracion_creditos_por_socio`\n\n\t\t\t\t\t\t\tHAVING\n\t\t\t\t\t\t\t\t(diferencia >0.99\n\t\t\t\t\t\t\t\tOR\n\t\t\t\t\t\t\t\tdiferencia < -0.99)"; $rs = getRecordset($sql); while ($rw = mysql_fetch_array($rs)) { $socio = $rw["numero_socio"]; $sqlCred = "SELECT\n\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_solicitud`.*,\n\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_tipoconvenio`.*,\n\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_periocidadpagos`.*,\n\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_estatus`.*,\n\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_solicitud`.`tasa_interes` AS `tasa_ordinaria_anual`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_solicitud`.`tipo_autorizacion` AS `tipo_de_autorizacion`,\n\t\t\t\t\t\t\t\t `creditos_solicitud`.`tasa_ahorro` AS `tasa_de_ahorro`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_tipoconvenio` `creditos_tipoconvenio`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `creditos_solicitud` `creditos_solicitud`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tON `creditos_tipoconvenio`.`idcreditos_tipoconvenio`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t= `creditos_solicitud`.`tipo_convenio`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `creditos_periocidadpagos`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_periocidadpagos`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tON `creditos_periocidadpagos`.\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`idcreditos_periocidadpagos` =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_solicitud`.`periocidad_de_pago`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `creditos_estatus`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_estatus`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tON `creditos_estatus`.`idcreditos_estatus` =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`creditos_solicitud`.`estatus_actual`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(`creditos_solicitud`.`numero_socio` = {$socio} )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY fecha_vencimiento ASC, saldo_actual DESC,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfecha_solicitud DESC\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t"; $ajuste = $rw["diferencia"]; $SdoCW = $rw["saldo_compac"]; $SdoSAFE = $rw["saldo"]; $rsC = getRecordset($sqlCred); while ($rwC = mysql_fetch_array($rsC)) { $credito = $rwC["numero_solicitud"]; $saldo = $rwC["saldo_actual"]; $cCredito = new cCredito($credito, $socio); $cCredito->init($rwC); $DCred = $cCredito->getDatosDeCredito(); $TAjustar = 0; //Generar un abono a Capital //si el ajuste es mayo a 0.09 o menor que -0.99 proseguir:: if ($ajuste > 0.09 or $ajuste < -0.09) { //Si 100 > 0.09 Y 0 < 0.09 if ($ajuste > 0.09 and $saldo <= 0.09) { $msg .= "{$socio}\t{$credito}\tSe ignora el Credito por no tener Saldo (COMPACW {$SdoCW} / Credito {$saldo})\r\n"; } else { // 50 > 30 //500 > -140 if ($ajuste > $saldo) { //saldo <= 0 if ($saldo <= 0) { //justar = 500 $TAjustar = $ajuste; //xajustar = 0 $ajuste = 0; } else { //ajuste = 30; $TAjustar = $saldo; //xajustar = 50 - 30 = 20; $ajuste = $ajuste - $saldo; } //80 < 100 } elseif ($ajuste < $saldo) { //ajuste = 80; $TAjustar = $ajuste; //xajustar = 0; $ajuste = 0; } elseif ($ajuste == $saldo) { //80 == 80 //ajustar = 80 $TAjustar = $ajuste; //xajustar = 0; $ajuste = 0; } $cCredito->setReciboDeOperacion($xRec); $cCredito->setAbonoCapital($TAjustar); $msg .= "{$socio}\t{$credito}\tRealizando un Ajuste de {$TAjustar} (COMPACW {$SdoCW} / Credito {$saldo})\r\n"; $msg .= $cCredito->getMessages("txt"); } } else { $msg .= "{$socio}\t{$credito}\tNo se Realizan NINGUN ajuste (SAFE {$SdoSAFE} / COMPACW {$SdoCW} / Ajuste {$ajuste})\r\n"; } } $msg .= "=============================\t{$socio}\t===========================\r\n"; //$msg .= $cCredito->getMessages("txt"); } $cRec->setFinalizarRecibo(true); $msg .= $cRec->getMessages("txt"); return $msg; }
</form> </fieldset> <?php $socio = $_POST["idsocio"]; $documento = $_POST["idsolicitud"]; $tipo = $_POST["tipodescuento"]; $monto = $_POST["monto"]; $parcialidad = $_POST["idparcialidad"]; $observaciones = $_POST["observaciones"]; $fecha_operacion = fechasys(); if (isset($socio) and $monto > 0) { $xBtn = new cHButton("id-cmdImprimir"); $xRec = new cReciboDeOperacion(96, false); $recibo = $xRec->setNuevoRecibo($socio, $documento, $fecha_operacion, $parcialidad, 96, $observaciones); $xRec->setNuevoMvto($fecha_operacion, $monto, $tipo, $parcialidad, $observaciones, -1, TM_ABONO); $xRec->setFinalizarRecibo(); echo $xRec->getFichaSocio(); echo $xRec->getFicha(true, "<tr><th colspan='4'>" . $xBtn->getImprimirRecibo() . "</th></tr>"); } // end if ?> </body> <script > <?php if (isset($socio) and $monto > 0) { echo $xRec->getJsPrint(); } ?> </script> </html>
function setEliminarCreditosNegativos() { //Crear un nuevo Recibo de Ajuste $cRec = new cReciboDeOperacion(10); $xRec = $cRec->setNuevoRecibo(DEFAULT_SOCIO, DEFAULT_CREDITO, fechasys(), 1, 10, "RECIBO_DE_AJUSTES_DE_CREDITOS"); $msg = "============\tRECIBO\tEl Recibo de Operacion es {$xRec}\r\n"; $cRec->setNumeroDeRecibo($xRec, true); /*Esta funcion servira para eliminar saldos negativos de Créditos */ $sql = "SELECT\n\t\t\t\t\t`creditos_solicitud`.*,\n\t\t\t\t\t`creditos_tipoconvenio`.*,\n\t\t\t\t\t`creditos_periocidadpagos`.*,\n\t\t\t\t\t`creditos_estatus`.*,\n\t\t\t\t\t`creditos_solicitud`.`tasa_interes` AS `tasa_ordinaria_anual`,\n\t\t\t\t\t`creditos_solicitud`.`tipo_autorizacion` AS `tipo_de_autorizacion`,\n `creditos_solicitud`.`tasa_ahorro` AS `tasa_de_ahorro`\n\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t`creditos_tipoconvenio` `creditos_tipoconvenio`\n\t\t\t\t\t\tINNER JOIN `creditos_solicitud` `creditos_solicitud`\n\t\t\t\t\t\tON `creditos_tipoconvenio`.`idcreditos_tipoconvenio`\n\t\t\t\t\t\t= `creditos_solicitud`.`tipo_convenio`\n\t\t\t\t\t\t\tINNER JOIN `creditos_periocidadpagos`\n\t\t\t\t\t\t\t`creditos_periocidadpagos`\n\t\t\t\t\t\t\tON `creditos_periocidadpagos`.\n\t\t\t\t\t\t\t`idcreditos_periocidadpagos` =\n\t\t\t\t\t\t\t`creditos_solicitud`.`periocidad_de_pago`\n\t\t\t\t\t\t\t\tINNER JOIN `creditos_estatus`\n\t\t\t\t\t\t\t\t`creditos_estatus`\n\t\t\t\t\t\t\t\tON `creditos_estatus`.`idcreditos_estatus` =\n\t\t\t\t\t\t\t\t`creditos_solicitud`.`estatus_actual`\n\t\t\t\t\t\t\t\tWHERE saldo_actual < " . TOLERANCIA_SALDOS . " ORDER BY saldo_actual "; $rs = getRecordset($sql); while ($rw = mysql_fetch_array($rs)) { $socio = $rw["numero_socio"]; $credito = $rw["numero_solicitud"]; $saldo_actual = $rw["saldo_actual"]; //Se inicializa una nueva instancia de crédito $cCredito = new cCredito($credito, $socio); //y se neutralizara con su valor absoluto. $cCredito->init($rw); $cCredito->setReciboDeOperacion($xRec); //Generar un abono a Capital $cCredito->setAbonoCapital($saldo_actual); $msg .= "{$socio}\t{$credito}\tEliminando el saldo de {$saldo_actual}\r\n"; $msg .= $cCredito->getMessages("txt"); } $cRec->setFinalizarRecibo(true); return $msg; }
function setPurgueDB() { $sqlT = array(); $msg = ""; $xF = new cFecha(); $sqlT[] = "DELETE FROM bancos_cuentas WHERE idbancos_cuentas != " . FALLBACK_CUENTA_BANCARIA; $sqlT[] = "DELETE FROM bancos_operaciones "; $sqlT[] = "DELETE FROM captacion_cuentas WHERE numero_cuenta!=" . CTA_GLOBAL_CORRIENTE; $sqlT[] = "DELETE FROM captacion_sdpm_historico "; $sqlT[] = "DELETE FROM captacion_firmas"; $sqlT[] = "DELETE FROM captacion_sdpm_historico"; $sqlT[] = "DELETE FROM contable_catalogo "; $sqlT[] = "DELETE FROM contable_catalogorelacion "; $sqlT[] = "DELETE FROM contable_movimientos "; $sqlT[] = "DELETE FROM contable_polizas "; $sqlT[] = "DELETE FROM contable_saldos"; $sqlT[] = "DELETE FROM contable_polizas_proforma "; $sqlT[] = "DELETE FROM creditos_reconvenio"; $sqlT[] = "DELETE FROM creditos_solicitud WHERE numero_solicitud !=" . DEFAULT_CREDITO; $sqlT[] = "DELETE FROM creditos_garantias"; $sqlT[] = "DELETE FROM creditos_flujoefvo"; $sqlT[] = "DELETE FROM creditos_lineas"; $sqlT[] = "DELETE FROM creditos_productos_otros_parametros "; $sqlT[] = "DELETE FROM creditos_sdpm_historico"; $sqlT[] = "DELETE FROM creditos_periodos "; //WHERE idcreditos_periodos != $sqlT[] = "DELETE FROM creditos_rechazados "; $sqlT[] = "DELETE FROM general_sucursales WHERE codigo_sucursal != \"matriz\" AND codigo_sucursal !='" . getSucursal() . "' "; $sqlT[] = "DELETE FROM general_log "; $sqlT[] = "DELETE FROM general_tmp "; $sqlT[] = "DELETE FROM general_import "; $sqlT[] = "DELETE FROM operaciones_recibos"; $sqlT[] = "DELETE FROM operaciones_mvtos"; $sqlT[] = "DELETE FROM seguimiento_compromisos"; $sqlT[] = "DELETE FROM seguimiento_llamadas "; $sqlT[] = "DELETE FROM seguimiento_notificaciones"; $sqlT[] = "DELETE FROM socios_aeconomica"; $sqlT[] = "DELETE FROM socios_aportaciones"; $sqlT[] = "DELETE FROM socios_baja"; $sqlT[] = "DELETE FROM socios_cajalocal WHERE idsocios_cajalocal != " . getCajaLocal() . " AND sucursal != '" . getSucursal() . "' "; $sqlT[] = "DELETE FROM `socios_aeconomica_dependencias`\n\t\t\tWHERE `idsocios_aeconomica_dependencias` !=" . DEFAULT_EMPRESA . "\n\t\t\tAND `idsocios_aeconomica_dependencias` !=" . FALLBACK_CLAVE_EMPRESA; $sqlT[] = "DELETE FROM socios_general WHERE codigo!=" . DEFAULT_SOCIO . " AND codigo !=" . EACP_ID_DE_PERSONA; $sqlT[] = "DELETE FROM socios_memo"; $sqlT[] = "DELETE FROM socios_patrimonio"; $sqlT[] = "DELETE FROM socios_relaciones"; $sqlT[] = "DELETE FROM socios_vivienda"; $sqlT[] = "DELETE FROM socios_grupossolidarios WHERE idsocios_grupossolidarios!=" . DEFAULT_GRUPO; $sqlT[] = "DELETE FROM `personas_documentacion` "; $sqlT[] = "DELETE FROM `socios_otros_parametros` "; $sqlT[] = "DELETE FROM t_03f996214fba4a1d05a68b18fece8e71 WHERE idusuarios !=99"; $sqlT[] = "DELETE FROM tesoreria_cajas"; $sqlT[] = "DELETE FROM `tesoreria_cajas_movimientos` "; $sqlT[] = "DELETE FROM usuarios_web "; $sqlT[] = "DELETE FROM usuarios_web_connected"; $sqlT[] = "DELETE FROM `usuarios_web_notas` "; $sqlT[] = "DELETE FROM general_tmp"; $sqlT[] = "DELETE FROM general_folios "; $sqlT[] = "DELETE FROM contable_polizas_proforma "; $sqlT[] = "DELETE FROM contable_centrodecostos WHERE idcontable_centrodecostos !=0 "; $sqlT[] = "DELETE FROM general_log "; $sqlT[] = "UPDATE t_03f996214fba4a1d05a68b18fece8e71 SET f_34023acbff254d34664f94c3e08d836e = md5('root') WHERE f_28fb96d57b21090705cfdf8bc3445d2a = 'root'"; //*/ //TODO: Actualizar nombre de la tabla $sqlT[] = "DELETE FROM `empresas_operaciones` "; $sqlT[] = "DELETE FROM `empresas_cobranza`"; $sqlT[] = "DELETE FROM `sistema_programacion_de_avisos` "; $sqlT[] = "DELETE FROM `personas_perfil_transaccional` "; $sqlT[] = "DELETE FROM `creditos_rechazados` "; //AML $sqlT[] = "DELETE FROM `aml_risk_register`"; $sqlT[] = "DELETE FROM `aml_alerts`"; $sqlT[] = "DELETE FROM `personas_documentacion` "; $sqlT[] = "DELETE FROM `socios_otros_parametros` "; $sqlT[] = "UPDATE `general_contratos` SET `texto_del_contrato` = '' WHERE `idgeneral_contratos` = '5' "; $sqlT[] = "UPDATE `general_contratos` SET `texto_del_contrato` = '' WHERE `idgeneral_contratos` = '9' "; $sqlT[] = "UPDATE `general_contratos` SET `texto_del_contrato` = '' WHERE `idgeneral_contratos` = '8' "; //$sqlT[] = "DELETE FROM "; $sqlT[] = "DELETE FROM creditos_otros_datos "; $sqlT[] = "DELETE FROM `aml_perfil_egresos_por_persona` "; $sqlT[] = "DELETE FROM `historial_de_pagos` "; $sqlT[] = "DELETE FROM `operaciones_archivo_de_facturas` "; $sqlT[] = "DELETE FROM `personas_operaciones_recursivas` "; $sqlT[] = "DELETE FROM `personas_relaciones_recursivas` "; $sqlT[] = "DELETE FROM `tesoreria_caja_arqueos` "; //$sqlT[] = "DELETE FROM "; //$sqlT[] = "DELETE FROM "; //$sqlT[] = "DELETE FROM "; $sqlT[] = "UPDATE `socios_general` SET `nombrecompleto` = 'REGISTRO_INICIAL_FINANCIERA' WHERE `codigo` = '10000'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'curp_del_representante_legal'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'nombre_del_presidente_del_consejo_de_vigilancia'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'nombre_del_representante_legal'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'rfc_del_representante_legal'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'domicilio.domicilio_integrado'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'email_de_la_entidad'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'nombre_de_la_entidad'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'registro_ante_la_cnbv'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'registro_casfin'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'registro_patronal_imss'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'rfc_de_la_entidad'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'email_de_nominas'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'entidad_corto_en_el_sic'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'contrasenna_de_sms_automaticos'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'usuario_de_sms_automaticos'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'email_del_administrador'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'password_de_usuario_ftp' "; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'nombre_de_usuario_ftp' "; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'system_pay_email_register'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'password_del_email_del_administrador'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'contrasenna_de_trabajos_automaticos'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '' WHERE `nombre_del_parametro` = 'usuario_de_sms_automaticos'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '00000000' WHERE `nombre_del_parametro` = 'entidad_clave_en_el_sic'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '00000000' WHERE `nombre_del_parametro` = 'domicilio.telefono_principal'"; $sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = 'https://demo.sipakal.com/' WHERE `nombre_del_parametro` = 'url_de_entidad_transmisora'"; //$sqlT[] = " UPDATE `entidad_configuracion` SET `valor_del_parametro` = '00000000' WHERE `nombre_del_parametro` = 'entidad_clave_en_el_sic'"; $sqlT[] = "INSERT INTO `bancos_entidades` (`idbancos_entidades`, `nombre_de_la_entidad`, `rfc_de_la_entidad`) VALUES ('999', 'BANCO_POR_DEFECTO', 'BAN999999') "; $sqlT[] = "INSERT INTO `bancos_cuentas` (`idbancos_cuentas`, `descripcion_cuenta`, `fecha_de_apertura`, `estatus_actual`, `consecutivo_actual`, `saldo_actual`, `sucursal`, `entidad_bancaria`) VALUES ('99', 'FALLBACK_CUENTA', '2014-01-01', 'activo', '1', '100000000', 'matriz', '1') "; $sqlT[] = "INSERT INTO `t_03f996214fba4a1d05a68b18fece8e71` (`idusuarios`, `f_28fb96d57b21090705cfdf8bc3445d2a`, `apellidopaterno`, `apellidomaterno`, `puesto`, `periodo_responsable`, `codigo_de_persona`) VALUES ('1', 'USUARIO POR DEFECTO', '', '', 'Usuario por Defecto', '1', '99999')"; $sqlT[] = "UPDATE `general_contratos` SET `texto_del_contrato` = '' WHERE `idgeneral_contratos` = '801'"; $sqlT[] = "UPDATE `general_contratos` SET `texto_del_contrato` = '' WHERE `idgeneral_contratos` = '4'"; $sqlT[] = "INSERT INTO `contable_centrodecostos` (`idcontable_centrodecostos`, `nombre_centrodecostos`) VALUES ('1', 'POR DEFECTO')"; foreach ($sqlT as $id => $sql) { $x = my_query($sql); if ($x[SYS_ESTADO] != false) { if (isset($x[SYS_INFO])) { $msg .= "OK\t" . $xF->getMarca() . "\t" . $x[SYS_INFO] . " SQL : {$sql}\r\n"; } else { $msg .= "OK\t" . $xF->getMarca() . "\tSQL : {$sql} \r\n"; } } else { if (isset($x[SYS_ERROR])) { $msg .= "ERROR\t" . $xF->getMarca() . "\t" . $x[SYS_ERROR] . " SQL : {$sql} \r\n"; } else { $msg .= "ERROR\t" . $xF->getMarca() . "- \tSQL : {$sql} \r\n"; } } } //llevar los folios al maximo $msg .= setFoliosAlMaximo(); // $xRec = new cReciboDeOperacion(12); $idrecibo = $xRec->setNuevoRecibo(1, 1, fechasys(), 1, 12, "CIERRE_ESTABLECIDO_POR_DEFECTO", "NA", "ninguno", "NA", DEFAULT_GRUPO); $xRec->setFinalizarRecibo(false); //Crear periodo de credito //TODO: Agregar informacion de valores por DEFAULT $xP = new cPeriodoDeCredito(); $xP->add(); $msg .= $xP->setCambiar(EACP_PER_SOLICITUDES); $xConf = new cConfiguration(); $xConf->set("fecha_de_inicio_de_operaciones_en_el_sistema", fechasys()); $msg .= "OK\tCONFIGURATION\tSe cambio la fecha de Inicio de Operaciones en el sistema\r\n"; $xSoc = new cSocio(10000); //); $xSoc->setOmitirAML(); $xSoc->add(EACP_NAME, "", "", EACP_RFC, "", getCajaLocal(), EACP_FECHA_DE_CONSTITUCION, EACP_LOCALIDAD); $xSoc->addVivienda(EACP_DOMICILIO_CORTO, "", EACP_CODIGO_POSTAL, "", "", EACP_TELEFONO_PRINCIPAL, "", true, 1, 1, 99, EACP_COLONIA, "calle", "", EACP_CLAVE_DE_LOCALIDAD, EACP_CLAVE_DE_PAIS); my_query("INSERT INTO `socios_general` (`codigo`, `nombrecompleto`, `estatusactual`, `cajalocal`, `sucursal`) VALUES ('10000', 'MICROFINANCIERA', '10', '1', 'matriz')"); return $msg; }
} else { //retirar de la cuenta 50 //obtener recibo de la garantia if ($solo_simular == 0) { $messages .= "Efectuar Retiro de la Socia {$codigo_rep} <br /> "; $sqlSumGtiaLiquida = "SELECT\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`.`codigo_de_base`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`.`miembro`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`operaciones_mvtos`.`docto_afectado`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tSUM( (`eacp_config_bases_de_integracion_miembros`.`afectacion` *\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`operaciones_mvtos`.`afectacion_real`) ) AS 'monto'\n\t\t\t\t\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`operaciones_mvtos` `operaciones_mvtos`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `eacp_config_bases_de_integracion_miembros`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tON `operaciones_mvtos`.`tipo_operacion` =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`.`miembro`\n\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(`eacp_config_bases_de_integracion_miembros`.`codigo_de_base` =2500)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(`operaciones_mvtos`.`docto_afectado` = {$credito})\n\t\t\t\t\t\t\t\t\t\t\t\t\tGROUP BY\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`eacp_config_bases_de_integracion_miembros`.`codigo_de_base`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`operaciones_mvtos`.`docto_afectado` "; $DG = obten_filas($sqlSumGtiaLiquida); $GDocto = $DG["docto_afectado"]; $monto = $DG["monto"]; $GDate = date("Y-m-d"); //=============================retirar de garantia Liquida if ($monto > 0) { $xr = new cReciboDeOperacion(17); $xr->setNuevorecibo($codigo_rep, $GDocto, $GDate, 1, 17, "GENERADO_AUTOMATICAMENTE_POR_{$iduser}", "NA", "ninguno", "NA", $grupo); $xr->setNuevoMvto($GDate, $monto, 353, 1, "GENERADO_AUTOMATICAMENTE_POR_{$iduser}", 1, TM_CARGO); $xr->setFinalizarRecibo(); //Mensages $messages .= $xr->getMessages() . "<br />"; } //===============================Retirar el Ahorro //Buscar Ahorro $xCR = new cCuentaALaVista("50" . $codigo_rep . "01"); $exist = $xCR->setContarCuentaBySocio($codigo_rep, 50); //Si el Ahorro exisre proseguir en el retiro if ($exist >= 1) { $messages .= "Efectuar Retiro de Ahorro de la Socia {$codigo_rep} <br /> "; $sqlSCta = "SELECT\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.*\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas` `captacion_cuentas`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`numero_socio` = {$codigo_rep})\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`tipo_subproducto` = 50)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 0,1"; $RDG = obten_filas($sqlSCta); $RCta = $RDG["numero_cuenta"]; $RMonto = $RDG["saldo_cuenta"]; $xNC = new cCuentaALaVista($RCta);
function jsaAjustarTotal($recibo, $nuevoTotal, $nuevaletra) { $xRec = new cReciboDeOperacion(false, true, $recibo); $xRec->init(); $xRec->setGenerarBancos(false); $xRec->setGenerarPoliza(false); $xRec->setGenerarTesoreria(false); $xRec->setForceUpdateSaldos(true); $total = $xRec->getTotal(); $QL = new MQL(); $DMov = new cOperaciones_mvtos(); $msg = ""; if ($nuevoTotal < $total) { $NRec = new cReciboDeOperacion($xRec->getTipoDeRecibo(), false, $recibo); $idNRec = $NRec->setNuevoRecibo($xRec->getCodigoDeSocio(), $xRec->getCodigoDeDocumento(), $xRec->getFechaDeRecibo(), 0, $xRec->getTipoDeRecibo(), "AJUSTE DEL RECIBO {$recibo}"); $NRec->setForceUpdateSaldos(true); $NRec->setGenerarBancos(false); $NRec->setGenerarPoliza(false); $NRec->setGenerarTesoreria(false); /*`idoperaciones_mvtos`, `operaciones_mvtos`.`fecha_operacion`, `operaciones_mvtos`.`fecha_afectacion`, `operaciones_mvtos`.`recibo_afectado`, `operaciones_mvtos`.`socio_afectado`, `operaciones_mvtos`.`docto_afectado`, `operaciones_mvtos`.`tipo_operacion`, `operaciones_mvtos`.`afectacion_real` */ $sql = "SELECT\n\t\t\t`operaciones_mvtos`.*\n\n\t\tFROM\n\t\t\t`operaciones_mvtos` `operaciones_mvtos` \n\t\t\t\tINNER JOIN `operaciones_tipos` `operaciones_tipos` \n\t\t\t\tON `operaciones_mvtos`.`tipo_operacion` = `operaciones_tipos`.\n\t\t\t\t`idoperaciones_tipos` \n\t\tWHERE\n\t\t\t(`operaciones_mvtos`.`recibo_afectado` ={$recibo}) \n\t\tORDER BY\n\t\t\t`operaciones_mvtos`.`tipo_operacion` DESC "; $rs = $QL->getDataRecord($sql); $arrops = array(); foreach ($rs as $rw) { $DMov->setData($rw); $NMonto = $DMov->afectacion_real()->v(); $IDOpe = $DMov->idoperaciones_mvtos()->v(); if ($nuevoTotal > 0) { $nuevoTotal -= $NMonto; $msg .= $IDOpe . " \t {$nuevoTotal} DE {$NMonto}\r\n"; if ($nuevoTotal < 0) { $msg .= "CUADRAR {$NMonto} DE {$nuevoTotal} \r\n"; $nuevoTotal = $nuevoTotal * -1; $dif = $NMonto - $nuevoTotal; $sql = "UPDATE operaciones_mvtos \n\t\t\t\t\t\t\tSET afectacion_real={$dif}, afectacion_cobranza={$dif}, afectacion_contable={$dif},\n\t\t\t\t\t\t\tafectacion_estadistica={$dif} WHERE idoperaciones_mvtos={$IDOpe} "; $x = my_query($sql); $msg .= $x[SYS_INFO]; //agregar el movimiento al nuevo recibo con cargos $NRec->setNuevoMvto($DMov->fecha_operacion()->v(), $nuevoTotal, $DMov->tipo_operacion()->v(), $DMov->periodo_socio()->v(), "SEPARACION DEL MVTO {$IDOpe} {$nuevoTotal}", $DMov->valor_afectacion()->v(), false, $DMov->socio_afectado()->v(), $DMov->docto_afectado()->v(), $DMov->fecha_afectacion()->v(), $DMov->fecha_vcto()->v(), $DMov->saldo_anterior()->v(), $DMov->saldo_actual()->v()); //listo $nuevoTotal = 0; } } else { $arrops[$DMov->idoperaciones_mvtos()->v()] = $DMov->afectacion_real()->v(); } } //$total = $total * -1; foreach ($arrops as $operacion => $monto) { $x = my_query("UPDATE operaciones_mvtos SET recibo_afectado={$idNRec} WHERE idoperaciones_mvtos={$operacion}"); //100 - 50 //$dif = $monto - $total; $msg .= $x[SYS_INFO]; } $NRec->setFinalizarRecibo(true); $msg .= $NRec->getMessages(OUT_TXT); $xRec->setFinalizarRecibo(true); } else { $msg .= "WARN\tNO SE MODIFICA NADA({$nuevoTotal}|{$total})\r\n"; } $msg .= $xRec->getMessages(OUT_TXT); return $msg; }