summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author韩丁康 <[email protected]>2024-04-23 10:04:38 +0800
committer韩丁康 <[email protected]>2024-04-23 10:04:38 +0800
commit6208efa535f5ba7aba079cb50a8b9b871edacb48 (patch)
tree8829191e4f65dc97da1286fcc6b25da865f0fd23
parent8ebea312728ea2a9b6bcb41d56d15a66ee9e1750 (diff)
parent402c1bdfc2dca8c249898e98844b0ca95478f43f (diff)
Merge branch 'dev'
-rw-r--r--README.md6
-rw-r--r--YYDNS 库表关系设计.pdfbin0 -> 233503 bytes
-rw-r--r--server/README.md1
-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
-rw-r--r--server/server(已废弃).csv (renamed from server/server.csv)0
8 files changed, 62 insertions, 4 deletions
diff --git a/README.md b/README.md
index a18398a..6670464 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,9 @@
# yserver
## 简介
-yy服务端代码
+yy服务端代码,采用Flask+Mysql开发。
+
+server文件夹为主控端代码
+
+agent文件夹为代理端代码
diff --git a/YYDNS 库表关系设计.pdf b/YYDNS 库表关系设计.pdf
new file mode 100644
index 0000000..1681d68
--- /dev/null
+++ b/YYDNS 库表关系设计.pdf
Binary files differ
diff --git a/server/README.md b/server/README.md
index f81b547..e2260d4 100644
--- a/server/README.md
+++ b/server/README.md
@@ -19,6 +19,7 @@ fake分支,用于快速定义新的数据接口与前端对接
| sysmanage.py | 系统管理 |
| target.py | 目标感知 |
| task.py | 任务管理 |
+| login.py |用户登陆退出|
model.py文件包含了一些参数与数据库表字段名或类型之间的映射关系
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]
diff --git a/server/server.csv b/server/server(已废弃).csv
index 44d0c3b..44d0c3b 100644
--- a/server/server.csv
+++ b/server/server(已废弃).csv