From 7093bbad9379116c432e4da278a40cc86303c76f Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 02 十一月 2023 11:30:24 +0800
Subject: [PATCH] bug修复

---
 middle_server.py |   27 ++++++++++++++++++++++++++-
 1 files changed, 26 insertions(+), 1 deletions(-)

diff --git a/middle_server.py b/middle_server.py
index 29da3b0..d6e8b14 100644
--- a/middle_server.py
+++ b/middle_server.py
@@ -142,12 +142,13 @@
                         try:
                             data = data_json["data"]
                             ctype = data["ctype"]
-                            data = data["data"]
+
                             result_str = ''
                             if ctype == "queue_size":
                                 # TODO 璁剧疆闃熷垪澶у皬
                                 result_str = json.dumps({"code": 0})
                             elif ctype == "cmd":
+                                data = data["data"]
                                 db = data["db"]
                                 cmd = data["cmd"]
                                 key = data["key"]
@@ -167,6 +168,30 @@
                                 if type(result) == set:
                                     result = list(result)
                                 result_str = json.dumps({"code": 0, "data": result})
+                            elif ctype == "cmds":
+                                datas = data["data"]
+                                result_list=[]
+                                for d in datas:
+                                    db = d["db"]
+                                    cmd = d["cmd"]
+                                    key = d["key"]
+                                    args = d.get("args")
+                                    redis = RedisManager(db).getRedis()
+                                    method = getattr(RedisUtils, cmd)
+                                    args_ = [redis, key]
+                                    if args is not None:
+                                        if type(args) == tuple or type(args) == list:
+                                            args = list(args)
+                                            for a in args:
+                                                args_.append(a)
+                                        else:
+                                            args_.append(args)
+                                    args_ = tuple(args_)
+                                    result = method(*args_)
+                                    if type(result) == set:
+                                        result = list(result)
+                                    result_list.append(result)
+                                result_str = json.dumps({"code": 0, "data": result_list})
                             sk.sendall(socket_util.load_header(result_str.encode(encoding='utf-8')))
                         except Exception as e:
                             logger_debug.exception(e)

--
Gitblit v1.8.0