vali 6 年 前
コミット
9a83304e11
1 ファイル変更19 行追加5 行削除
  1. 19 5
      vendor/GatewayWorker_windows/Applications/whisper/Events.php

+ 19 - 5
vendor/GatewayWorker_windows/Applications/whisper/Events.php

@@ -1254,12 +1254,26 @@ class Events
 
 
     //找到用户是否有一条未关闭的会话
-    private static function UserHasOldTalk($uid)
+    private static function UserHasOldTalk($uid, $database = 0)
     {
-        $uid = intval($uid);
-        $start_time = time() - 86400;
-        $ret = self::$db->select('*')->from('ws_service_log')->where("start_time>=$start_time and user_id=$uid and  status!=2 ")->orderByDESC(['servicelog_id'])->row();
-        return $ret;
+        if ($database) {
+            $uid = intval($uid);
+            $start_time = time() - 86400;
+            $ret = self::$db->select('*')->from('ws_service_log')->where("start_time>=$start_time and user_id=$uid and  status!=2 ")->orderByDESC(['servicelog_id'])->row();
+            return $ret;
+        }
+
+        $all = self::$redis->hgetall(self::SERVICELOG);
+        if (empty($all)) {
+            return false;
+        }
+        foreach ($all as $val) {
+            $tmp = json_decode($val, true);
+            if ($tmp && $tmp['user_id'] == $uid) {
+                return $tmp;
+            }
+        }
+        return false;
     }