示例#1
0
 public function validatransaccion()
 {
     $hash = $_GET['id'];
     $decrypted = $this->decrypt($hash);
     $datos = explode('|', $decrypted);
     $token_usuario = $datos[0];
     $token_movil = $datos[1];
     $idDispositivo = $datos[2];
     $keyTransaccion = $datos[3];
     $user = Usuario::find_by_access_token_movil($token_usuario);
     if (empty($user)) {
         $this->logg->error("1030: Usuario no Autorizado en validatransaccion " . $token_usuario . "con dispositivo " . $idDispositivo);
         $result = array("estado" => "NOK", "codResp" => "1030", "mensaje" => "Usuario No Autorizado.");
         $this->response($this->json($result), 200);
     } else {
         $dispositivo = Dispositivo::find_by_id_dispositivo_and_usuario_id_and_token($idDispositivo, $user->id, $token_movil);
         if (empty($dispositivo)) {
             $this->logg->error("1031: Dispositivo No Autorizado al Usuario en validatransaccion " . $user->id . "con dispositivo " . $idDispositivo);
             $result = array("estado" => "NOK", "codResp" => "1031", "mensaje" => "Dispositivo No Autorizado.");
             $this->response($this->json($result), 200);
         } else {
             $this->transaccion = Transaccion::find_by_keyTransaccion_and_estado($keyTransaccion, "PENDIENTE");
             if (empty($this->transaccion)) {
                 $this->logg->error("1032: Transaccion No Encontrada en validatransaccion " . $user->id . "con dispositivo " . $idDispositivo);
                 $result = array("estado" => "NOK", "codResp" => "1032", "mensaje" => "Transaccion No Encontrada.");
                 $this->response($this->json($result), 200);
             } else {
                 $this->elementosUsuario = Elemento::find_all_by_usuario_id($user->id);
                 if (empty($this->elementosUsuario)) {
                     $this->logg->error("1033: No Se Encontraton Tarjetas en validatransaccion " . $user->id . "con dispositivo " . $idDispositivo);
                     $result = array("estado" => "NOK", "codResp" => "1033", "mensaje" => "No Se Encontraton Tarjetas.");
                     $this->response($this->json($result), 200);
                 } else {
                     //$result = array("monto" => $this->transaccion->monto, "numboleta" => $this->transaccion->numboleta);
                     $tarjetas = array();
                     //array_push($result, {"monto" => $this->transaccion->monto});
                     //array_push($result, {"numboleta" => $this->transaccion->numboleta});
                     foreach ($this->elementosUsuario as $elementosUsuario) {
                         array_push($tarjetas, $elementosUsuario->to_json());
                     }
                     $result = array("estado" => "OK", "codResp" => "1034", "monto" => $this->transaccion->monto, "numboleta" => $this->transaccion->numboleta, "tarjetas" => $tarjetas);
                     $this->response($this->json($result), 200);
                 }
             }
         }
     }
 }