summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhandingkang <[email protected]>2024-04-23 09:53:51 +0800
committerhandingkang <[email protected]>2024-04-23 09:53:51 +0800
commita9c95bc68fd68adda082e428d2c717f0d2af4ec0 (patch)
tree7bcdd9192d0c9e5505933f8a4f238b7138bfa35e
parentdf5dfafc12281720faa68c57bcd4b966f559967c (diff)
分工信息规划
-rw-r--r--server/apps/login.py46
-rw-r--r--server/apps/sysinfo.py8
-rw-r--r--server/apps/task.py4
-rw-r--r--server/apps/util.py1
4 files changed, 56 insertions, 3 deletions
diff --git a/server/apps/login.py b/server/apps/login.py
new file mode 100644
index 0000000..c98f787
--- /dev/null
+++ b/server/apps/login.py
@@ -0,0 +1,46 @@
+# 登录
+from apiflask import APIBlueprint
+from apiflask.fields import String, Integer
+
+bp = APIBlueprint("登录退出接口集合", __name__, url_prefix="/login")
+
+
+# 用户登录处理函数
[email protected]("登录接口",
+ description="输入用户名和密码,返回响应码code,消息msg以及是否成功登陆标识status</br>若成功登录则msg返回用户编号")
+ "username": String(),
+ "pwd": String()
+})
+ # 响应码
+ "code": Integer,
+ # 返回消息
+ "msg": String,
+ # 是否成功登录
+ "status": String,
+})
+# TODO:登录处理(For 石昊月师弟)
+def login(json_data):
+ pass
+
+
+# 用户退出处理函数
[email protected]("退出登录接口", description="输入用户名和用户编号,返回响应码code,消息msg以及是否成功退出标识status")
+ "id": String(),
+ "username": String()
+})
+ # 响应码
+ "code": Integer,
+ # 返回消息
+ "msg": String,
+ # 是否成功退出
+ "status": String,
+})
+# TODO:退出处理(For 石昊月师弟)
+def logout(json_data):
+ pass
diff --git a/server/apps/sysinfo.py b/server/apps/sysinfo.py
index 04e5cbf..a59d7b5 100644
--- a/server/apps/sysinfo.py
+++ b/server/apps/sysinfo.py
@@ -95,9 +95,13 @@ def target_date():
# 系统操作日志获取接口
@bp.get("/log")
@bp.input({
+ # 开始时间
"begin": Date(),
+ # 结束时间
"end": Date(),
+ # 日志等级
"level": String(validate=OneOf(["INFO", "WARNING", "ERROR"])),
+ # 用户名
"user": String(),
"per_page": Integer(load_default=10),
"page": Integer(load_default=1)
@@ -108,7 +112,7 @@ def target_date():
"log_data": List(Nested(LogOut())),
"total": Integer()
})
-# TODO:完善
+# TODO:完善功能,根据时间或日志等级或用户名筛选获取日志数据(For 石昊月师弟)
def sys_log(query_data):
# 每页显示多少项
per_page = query_data["per_page"]
@@ -118,7 +122,7 @@ def sys_log(query_data):
"syslog": MYSQL_TAB_SYSLOG,
"user": MYSQL_TAB_USER,
"start": (page - 1) * per_page,
- "stop": per_page
+ "stop": (page - 1) * per_page + per_page
}
sql = """SELECT
s.LOG_LEVEL as level,
diff --git a/server/apps/task.py b/server/apps/task.py
index 751a4a1..5993ee5 100644
--- a/server/apps/task.py
+++ b/server/apps/task.py
@@ -161,7 +161,7 @@ def tasks_state(query_data):
"code": Integer(),
"data": List(Nested(TaskState()))
})
-# TODO:任务详情接口具体实现
+# TODO:任务详情信息获取接口具体实现
def task_info(query_data):
print(query_data)
round = random.randint(1, 10)
@@ -189,6 +189,7 @@ def task_info(query_data):
@bp.get("/tp")
@bp.doc("任务策略执行日志获取接口")
@bp.input({
+ # 任务策略id (taskpolicy)
"id": String(required=True),
"per_page": Integer(load_default=10),
"page": Integer(load_default=1)
@@ -198,6 +199,7 @@ def task_info(query_data):
"data": List(Nested(TaskLog())),
"total": Integer()
})
+# TODO:功能实现(For 石昊月师弟)
def taskpolicy_log(query_data):
per_page = query_data["per_page"]
page = query_data["page"]
diff --git a/server/apps/util.py b/server/apps/util.py
index 7a7932f..337c946 100644
--- a/server/apps/util.py
+++ b/server/apps/util.py
@@ -214,6 +214,7 @@ class DataHandler:
def count_data(self, search: dict = None, data_type="agent"):
return self.get_data(search=search, data_type=data_type, count=True)
+ # 统计一段时间内的信息数量
def count_data_by_time(self, data_type="agent", time=None, search=None):
tabname = model.tabmapping[data_type]
timename = model.timemapping[data_type]