function setRetiro($monto, $cheque = DEFAULT_CHEQUE, $tipo_de_pago = "cheque", $recibo_fiscal = DEFAULT_RECIBO_FISCAL, $observaciones = "", $grupo = DEFAULT_GRUPO, $fecha = false, $recibo = false) { $iduser = getUsuarioActual(); /** * verifica el maximo Retirable * Si forzar es VERDADERO, el Maximo retirable es igual al SALDO */ if ($this->mForceOperations == true) { $maximo_ret = $this->mSaldoActual; $this->mMessages .= "WARN\tLa Operacion sera FORZADA \r\n"; } else { $maximo_ret = $this->getMaximoRetirable($fecha); } if ($monto > $maximo_ret) { $this->mMessages .= "ERROR\tEl Monto a Retirar({$monto}) es Mayor al Retirable({$maximo_ret}) \r\n"; $monto = 0; $recibo = false; } if ($monto > 0) { if (in_array($this->mEstatusActual, $this->mEstatusNoOperativos) == true or $monto > $this->mSaldoActual) { $this->mMessages .= "ERROR\tLa Cuenta no esta permitida para recibir Operacion, tiene estatus " . $this->mEstatusActual . " "; $this->mMessages .= "o su saldo(" . $this->mSaldoActual . ") es Mayor al Monto a retirar({$monto}) \r\n"; $this->mSucess = false; } else { if (setNoMenorQueCero($this->mPeriodoCuenta) == 0) { $this->mPeriodoCuenta = 1; } if (setNoMenorQueCero($this->mSocioTitular) <= DEFAULT_SOCIO) { $this->init(); } if ($fecha == false) { if (isset($this->mFechaOperacion) and $this->mFechaOperacion != false) { $fecha = $this->mFechaOperacion; } else { $fecha = fechasys(); } } $fecha = setFechaValida($fecha); $this->mFechaOperacion = $fecha; $socio = $this->mSocioTitular; $CRecibo = new cReciboDeOperacion(8, true); //Set a Mvto Contable //Agregar recibo si no hay if (setNoMenorQueCero($recibo) == 0) { $recibo = $CRecibo->setNuevoRecibo($socio, $this->mNumeroCuenta, $this->mFechaOperacion, $this->mPeriodoCuenta, 8, $observaciones, $cheque, $tipo_de_pago, $recibo_fiscal, $grupo); if (setNoMenorQueCero($recibo) == 0) { $this->mMessages .= "OK\tSe Agrego Exitosamente el Recibo [{$recibo}] de la Cuenta " . $this->mNumeroCuenta . " \r\n"; $this->mReciboDeOperacion = $recibo; $this->mSucess = true; } else { $this->mMessages .= "ERROR\tSe Fallo al Agregar el Recibo [{$recibo}] de la Cuenta " . $this->mNumeroCuenta . " \r\n"; $this->mSucess = false; } } $this->mReciboDeOperacion = $recibo; if (setNoMenorQueCero($recibo) > 0) { //Agregar el Movimiento $CRecibo->setNumeroDeRecibo($recibo); $CRecibo->setNuevoMvto($fecha, $monto, $this->mOperacionRetiro, $this->mPeriodoCuenta, $observaciones, -1, TM_CARGO, $socio, $this->mNumeroCuenta); $CRecibo->setFinalizarRecibo(true); $CRecibo->setFinalizarTesoreria(); $this->mNuevoSaldo = $this->mSaldoAnterior - $monto; $this->mSucess = true; ///Actualizar el recibo $this->mReciboDeOperacion = $recibo; //Actualizar la Cuenta $this->setUpdateSaldo(); } else { $this->mMessages .= "ERROR\tNo Existe Recibo con el cual trabajar({$recibo}) \r\n"; } $this->mMessages .= $CRecibo->getMessages(); $this->mORec = $CRecibo; } } return $recibo; }
function getOPeriodo($periocidad = false, $periodo = false, $clave = false) { $periocidad = $periocidad == false ? $this->getPeriocidadPref() : $periocidad; $periodo = $periodo == false ? $this->getPeriodo() : $periodo; $xPer = new cPeriodoDeEmpresa(); $empresa = $this->getClaveDeEmpresa(); if ($clave == false) { $sql = "SELECT\t* FROM `empresas_operaciones` WHERE\n\t\t\t(`empresas_operaciones`.`clave_de_empresa` ={$empresa}) AND\n\t\t\t(`empresas_operaciones`.`periodo_marcado` ={$periodo}) AND\n\t\t\t(`empresas_operaciones`.`tipo_de_operacion` =1) AND\n\t\t\t(`empresas_operaciones`.`periocidad` = {$periocidad}) LIMIT 0,1 "; $dat = obten_filas($sql); } else { $dat = $xPer->query()->initByID($clave); } $xPer->setData($dat); $xPer->fecha_de_cobro(setFechaValida($xPer->fecha_de_cobro()->v())); $xPer->fecha_inicial(setFechaValida($xPer->fecha_inicial()->v())); $xPer->fecha_final(setFechaValida($xPer->fecha_final()->v())); return $xPer; }
/** * Purga Recibos Duplicados */ case 852: $msg .= date("H:i:s") . "\tEliminando Recibos Duplicados\r\n"; $msg .= setPurgeFromDuplicatedRecibos(); setFoliosAlMaximo(); break; /** * Actualiza el Estatus de los Creditos sin distinguir sucursal */ /** * Actualiza el Estatus de los Creditos sin distinguir sucursal */ case 853: $fecha_inicial = setFechaValida($id); $xRec = new cReciboDeOperacion(); $recibo = $xRec->setNuevoRecibo(DEFAULT_SOCIO, DEFAULT_CREDITO, $fecha_inicial, 1, RECIBOS_TIPO_ESTADISTICO, "AJUSTE_DE_ESTATUS_DE_CREDITOS"); //$recibo = setNuevoRecibo(1, 1, fechasys(), 0, 10, "AJUSTE_DE_ESTATUS_DE_CREDITOS", "NA", "ninguno", "NA", 99, 0); $cUtils = new cUtileriasParaCreditos(); $msg .= $cUtils->setEstatusDeCreditos($recibo, $fecha_inicial, false, true); break; //Valida Recibos //Valida Recibos case 856: $afectar = strtolower($id); $sqlMvtos = " SELECT\n\t\t\t\t\t\t\t`operaciones_mvtos`.`recibo_afectado` AS `recibo`,\n\t\t\t\t\t\t\tCOUNT(`operaciones_mvtos`.`idoperaciones_mvtos`) AS `operaciones`\n\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t`operaciones_mvtos` `operaciones_mvtos`\n\t\t\t\t\t\tGROUP BY\n\t\t\t\t\t\t\t`operaciones_mvtos`.`recibo_afectado`"; $arrCM = array(); $arrO = array(); $rsM = mysql_query($sqlMvtos, cnnGeneral()); while ($rw = mysql_fetch_array($rsM)) {
function __construct($parametros, $valor = "", $delimiter = "") { $this->mValor = $valor; $this->mDelimit = $delimiter; $xT = new cTipos(); //$this->mMessages .= "OK\tValor a $valor\r\n"; $this->mNombre = isset($parametros[$this->NOMBRE]) ? $parametros[$this->NOMBRE] : "?"; if (isset($parametros[$this->TIPO])) { $this->mTipo = strtolower($parametros[$this->TIPO]); //setLog($this->mTipo . " --- $valor"); switch ($this->mTipo) { case MQL_DATE: $this->mValor = setFechaValida($this->mValor); break; case MQL_BOOL: $this->mValor = $xT->cBool($this->mValor); break; case MQL_STRING: $this->mValor = $this->cleanText($this->mValor); $this->mValor = setCadenaVal($this->mValor); break; case MQL_FLOAT: $this->mValor = setNoMenorQueCero($this->mValor); break; case MQL_INT: $this->mValor = setNoMenorQueCero($this->mValor); $this->mValor = (int) $this->mValor; break; } } //$this->mMessages .= "OK\tValor queda en (" . $this->mValor . ") de ($valor)\r\n"; $this->mObligatorio = isset($parametros[$this->OBLIGATORIO]) ? $xT->cBool($parametros[$this->OBLIGATORIO]) : false; $this->mFormato = isset($parametros[$this->FORMATO]) ? $parametros[$this->FORMATO] : ""; $this->mLargo = isset($parametros[$this->LONGITUD]) ? setNoMenorQueCero($parametros[$this->LONGITUD]) : 0; //if($this->mObligatorio == true){ if (isset($parametros[$this->ACEPTADOS])) { if ($this->aceptado($this->mValor, $parametros[$this->ACEPTADOS]) === false) { $this->mValor = null; $this->mMessages .= "ERROR\tError en la columna " . $this->mNombre . " : Valor no aceptado " . $this->mValor . ", los valores deben ser (" . $parametros[$this->ACEPTADOS] . ")\r\n"; $this->ERRORES++; } } //} if (is_array($parametros)) { $this->mDatos = $parametros; } }
function jsaSetNominaCerrada($empresa, $periocidad, $variacion, $periodo, $monto, $observaciones, $fechaInicial, $fechaFinal, $fechaCobro) { $xF = new cFecha(); $xEmp = new cEmpresas($empresa); $xEmp->init(); //$periodo = $periodo + $variacion; $xEmp->setPeriodo($periodo); $xEmp->setClearPeriodo(true); $fechaInicial = setFechaValida($fechaInicial); $fechaFinal = setFechaValida($fechaFinal); $fechaCobro = setFechaValida($fechaCobro); $idx = $xEmp->addOperacion($monto, $periodo, $periocidad, fechasys(), SYS_UNO, false, $observaciones, $fechaInicial, $fechaFinal, $fechaCobro); return $idx; }
function parametro($nombre, $fallback = null, $tipo = MQL_STRING, $fuente = false) { $valor = null; $xT = new cTipos(); $fuente = $fuente == false ? $_REQUEST : $fuente; //if($fuente == false){ //if(isset($_REQUEST)){ $fuente = $_REQUEST; } switch ($tipo) { case MQL_INT: $fallback = $fallback == null ? 0 : $fallback; $valor = isset($fuente[$nombre]) ? $xT->cInt($fuente[$nombre]) : $fallback; break; case MQL_FLOAT: $fallback = $fallback == null ? 0 : $fallback; $valor = isset($fuente[$nombre]) ? $xT->cFloat($fuente[$nombre]) : $fallback; break; case MQL_BOOL: $fallback = $fallback == null ? false : $fallback; $valor = isset($fuente[$nombre]) ? $xT->cBool($fuente[$nombre]) : $fallback; //setLog(" $tipo, $fallback $nombre ... " . $fuente[$nombre] . " ---- ") . $xT->cBool( $fuente[$nombre] ); break; case MQL_RAW: //$fallback = ($fallback == null) ? "" : $fallback; $valor = isset($fuente[$nombre]) ? $fuente[$nombre] : $fallback; break; case MQL_DATE: $valor = isset($fuente[$nombre]) ? setFechaValida($fuente[$nombre]) : fechasys(); //setLog(setFechaValida($fuente[$nombre])); break; default: $fallback = $fallback == null ? "" : $fallback; $valor = isset($fuente[$nombre]) ? $fuente[$nombre] : $fallback; if ($valor == SYS_TODAS) { } else { $xT = new cTipos(); $arrRAW = array("action" => true, "out" => true, "c" => true, "s" => "true", "ctipo_pago" => true, "i" => true, "callback" => true); $valor = isset($arrRAW[$nombre]) ? $valor : strtoupper($xT->cChar($valor)); } break; } //} return $valor; }