From f56f083a7e59e58dd44913b11ce4e959fb0475cc Mon Sep 17 00:00:00 2001
From: LAPTOP-T815PCOQ\25526 <mr.liuyang@126.com>
Date: 星期三, 20 十一月 2024 19:16:44 +0800
Subject: [PATCH] 1. 添加运行日志界面2.运行日志基本功能已经完成

---
 SourceCode/Bond/BondEq/DBManager/SystemLogManager.h |   35 +++++++++++++++++++++++++++++------
 1 files changed, 29 insertions(+), 6 deletions(-)

diff --git a/SourceCode/Bond/BondEq/DBManager/SystemLogManager.h b/SourceCode/Bond/BondEq/DBManager/SystemLogManager.h
index 290e046..075fdec 100644
--- a/SourceCode/Bond/BondEq/DBManager/SystemLogManager.h
+++ b/SourceCode/Bond/BondEq/DBManager/SystemLogManager.h
@@ -10,9 +10,10 @@
 class SystemLogManager {
 public:
     enum class LogType {
-        Info,     // 信息日志
-        Error,    // 错误日志
-        Operation // 操作日志
+        Info,
+        Error,
+        Operation,
+        Unknown
     };
 
     // 获取单例实例
@@ -21,14 +22,36 @@
     // 设置数据库连接
     void setDatabase(std::unique_ptr<BL::Database>& db);
 
+    // 初始化日志表
+    bool initializeLogTable();
+
     // 添加日志
-    bool log(LogType logType, const std::string& event, const std::string& username = "SYSTEM");
+    bool log(LogType logType, const std::string& event);
+    bool log(LogType logType, const std::string& event, const std::string& username);
 
 	// 获取日志
     std::vector<std::vector<std::string>> SystemLogManager::getLogs(int startPosition = -1, int count = -1);
 
-    // 初始化日志表
-    bool initializeLogTable();
+    // 获取筛选后的日志数据
+    std::vector<std::vector<std::string>> getFilteredLogs(
+        const std::string& logType,
+        const std::string& username,
+        const std::string& description,
+        const std::string& startTime,
+        const std::string& endTime,
+        int pageNumber,
+        int pageSize);
+
+    // 获取符合条件的日志总数
+    int getTotalLogCount(
+        const std::string& logType,
+        const std::string& username,
+        const std::string& description,
+        const std::string& startTime,
+        const std::string& endTime);
+
+    // 清理超过指定天数的旧日志
+    void cleanOldLogs(int daysToKeep = 30);
 
 private:
     // 构造函数(私有化)

--
Gitblit v1.9.3