From 6747bc043d0af20d6fa02a6cf385d81eb44643d0 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期六, 28 六月 2025 11:29:42 +0800
Subject: [PATCH] 1.自绘按钮,修改为支持文字在按钮下,或在按钮右。 2.日志页,修改为“包含”和“排除”关键字,以及正则表达式的支持,便于在调试过程中快速观察日志
---
SourceCode/Bond/Servo/RecipeManager.cpp | 42 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 42 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/RecipeManager.cpp b/SourceCode/Bond/Servo/RecipeManager.cpp
index 6e58418..48cbb56 100644
--- a/SourceCode/Bond/Servo/RecipeManager.cpp
+++ b/SourceCode/Bond/Servo/RecipeManager.cpp
@@ -238,6 +238,48 @@
return recipes;
}
+std::vector<RecipeInfo> RecipeManager::getRecipesByKeyword(const std::string& keyword) {
+ std::vector<RecipeInfo> recipes;
+ if (!m_pDB || keyword.empty()) {
+ return recipes;
+ }
+
+ std::ostringstream query;
+ query << "SELECT ppid, description, create_time FROM recipes "
+ << "WHERE ppid LIKE '%" << keyword << "%' OR description LIKE '%" << keyword << "%';";
+
+ auto rows = m_pDB->fetchResults(query.str());
+ for (const auto& row : rows) {
+ if (row.size() >= 3) {
+ RecipeInfo info;
+ info.strPPID = row[0];
+ info.strDescription = row[1];
+ info.strCreateTime = row[2];
+ recipes.push_back(info);
+ }
+ }
+ return recipes;
+}
+
+std::vector<std::string> RecipeManager::getAllPPID() const {
+ std::vector<std::string> vecPPID;
+
+ if (!m_pDB) {
+ return vecPPID;
+ }
+
+ const std::string query = "SELECT ppid FROM recipes ORDER BY ppid;";
+ auto result = m_pDB->fetchResults(query);
+
+ for (const auto& row : result) {
+ if (!row.empty()) {
+ vecPPID.push_back(row[0]);
+ }
+ }
+
+ return vecPPID;
+}
+
RecipeInfo RecipeManager::getRecipeByPPID(const std::string& ppid) {
RecipeInfo info;
auto rows = m_pDB->fetchResults("SELECT ppid, description, create_time FROM recipes WHERE ppid = '" + ppid + "';");
--
Gitblit v1.9.3