function sendAlerts($PersonaDeOrigen, $PersonaDeDestino, $TipoDeAlerta, $mensaje = "", $documento = false, $fecha = false, $hora = false, $valorDeterminado = 0, $tipo_de_docto = false, $tercero_relacionado = DEFAULT_SOCIO) { $hora = setNoMenorQueCero($hora) <= 0 ? date("Hi") : $hora; $fecha = $fecha == false ? fechasys() : $fecha; $documento = $documento == false ? DEFAULT_RECIBO : $documento; $tipo_de_docto = $tipo_de_docto == false ? $this->mTipoDeDocto : $tipo_de_docto; $this->mTipoDeDocto = $tipo_de_docto; $resultado = true; $xRsk = new cAml_risk_catalog(); $xSuc = new cSucursal(); $xSuc->init(); $idnumerico = $xSuc->getClaveNumerica(); $xRsk->setData($xRsk->query()->initByID($TipoDeAlerta)); $riesgo = $xRsk->valor_ponderado()->v(); $nombreRies = $xRsk->descripcion()->v(); $claseRies = $xRsk->tipo_de_riesgo()->v(); $valorDeterminado = $valorDeterminado == 0 ? $xRsk->valor_ponderado()->v() : $valorDeterminado; $xF = new cFecha(); $fecha = $xF->getInt($fecha); $xAl = new cAml_alerts(); $xAl->estado_en_sistema(SYS_UNO); $xAl->fecha_de_checking(SYS_CERO); $xAl->fecha_de_origen($fecha); $xAl->fecha_de_registro($xF->getInt(fechasys())); $xAl->hora_de_proceso($hora); $xAl->documento_relacionado($documento); $xAl->medio_de_envio(AML_ALERT_MAIL); $xAl->mensaje($mensaje); $xAl->riesgo_calificado($valorDeterminado); $xAl->tipo_de_aviso($TipoDeAlerta); $xAl->sucursal($idnumerico); //Verificar $xAl->entidad(EACP_CLAVE_CASFIN); //Actualizar $xAl->usuario(getUsuarioActual()); $xAl->persona_de_destino($PersonaDeDestino); $xAl->persona_de_origen($PersonaDeOrigen); $xAl->tipo_de_documento($tipo_de_docto); $xAl->tercero_relacionado($tercero_relacionado); $id_de_alerta = $xAl->query()->getLastID(); $xAl->clave_de_control($id_de_alerta); $ql = $xAl->query()->insert(); $res = $ql->save(); if (setNoMenorQueCero($res) <= 0) { $this->mMessages .= "ERROR\tAl guardar registro ({$idnumerico})\r\n"; if (MODO_DEBUG == true) { $this->mMessages .= $ql->getMessages(OUT_TXT); } $resultado = false; } //$xCatRiesgo = new cAml_risk_catalog(); //$xCatRiesgo->setData( $xCatRiesgo->query()->initByID($TipoDeAlerta) ); // $xCatRiesgos = new cAml_risk_catalog(); $xCatRiesgos->setData($xCatRiesgos->query()->initByID($TipoDeAlerta)); $nombre_riesgo = $xCatRiesgos->descripcion()->v(); //Enviar SMS $xMail = new cNotificaciones(); //obtener los datos del usuario $xVUser = new cVistaUsuarios(); $xD = $xVUser->query()->initByID($PersonaDeDestino); $xVUser->setData($xD); $userP = $xVUser->codigo_de_persona()->v(); $mailD = false; $telD = false; $xSoc = new cSocio($userP); if ($xSoc->existe($userP) == true) { $xSoc->init(); $mailD = $xSoc->getCorreoElectronico(); $telD = $xSoc->getTelefonoPrincipal(); } else { $this->mMessages .= "ERROR\tNo existe la persona de envio {$userP}\r\n"; } //Array de valores $arrV = array(); $fechacorta = $xF->getFechaCorta($xF->getFechaByInt($fecha)); $arrV["variable_documento_codigo"] = $documento; $arrV["variable_docto_fecha"] = $fechacorta; $arrV["variable_docto_hora"] = $hora; $arrV["variable_nivel_de_riesgo"] = $riesgo; $arrV["variable_tipo_de_riesgo"] = $nombreRies; $arrV["variable_clasificacion_de_riesgo"] = $claseRies; $arrV["variable_codigo_de_alerta"] = $id_de_alerta; $arrV["variable_mensaje_de_alerta"] = $mensaje; $arrV["variable_url_del_sistema"] = SAFE_HOST_URL; //Enviar Mail $xFmt = new cFormato(800); $xFmt->setUsuario($PersonaDeDestino); $xFmt->setPersona($PersonaDeOrigen); $xFmt->setProcesarVars($arrV); $txtMail = $xFmt->get(); if ($valorDeterminado > 51 or $this->mForceAvisos == true) { $xMail->setTitulo(AML_TITULO_DE_ALERTA); $this->mMessages .= $xMail->send($txtMail, $mailD, $telD, $PersonaDeDestino, "{$fechacorta}-{$claseRies}-{$mensaje}", "aml.{$mailD}"); if ($this->mForceRegRiesgo == true) { //Agregar el riesgo $xAlert = new cAMLAlertas($id_de_alerta); $regFecha = $xF->getFechaByInt($fecha); $xAlert->setConfirmaAlerta($mensaje, $regFecha); $this->mMessages .= $xAlert->getMessages(); //$xPAML = new cAMLPersonas($PersonaDeOrigen); //$xPAML->setAgregarPerfilDeRiesgo($TipoDeAlerta, $fecha, $valorDeterminado, $documento, $tipo_de_docto, $PersonaDeDestino, $hora, $tercero_relacionado, $mensaje ); //$this->mMessages .= $xPAML->getMessages(); } } return $resultado; }