// // Created by Thinkpad on 2025/3/12. // #include #include #include #include #include #include #include "json.hpp" #include "bizservice.h" #include "sqlite3.h" #include "ToolUtils.h" #include "F_SetSubscribe.h" using namespace std; using json = nlohmann::json ;// for convenience REGISTER_BIZSERVICE("F-SetSubscribe",SetSubscribe); SetSubscribe::SetSubscribe() { handpara = nullptr; initpara = nullptr; } SetSubscribe::~SetSubscribe() { } void SetSubscribe::Init(initparam_t *param) { initpara = param; } int SetSubscribe::SQLBatch_exc(std::vector &sql_list, std::vector &result) { sqlite3 *db = (sqlite3 *)handpara; char *errMsg = nullptr; const char *sql; int rc; int resp = 0; // 开启事务 if (sqlite3_exec(db, "BEGIN TRANSACTION;", nullptr, nullptr, &errMsg) != SQLITE_OK) { std::cerr << "事务开启失败: " << errMsg << std::endl; sqlite3_free(errMsg); return -1; } // 执行批量插入操作 sqlite3_stmt *stmt; int idx = 0; for(const auto &k:sql_list){ std::cout << "cmd:"< sql_list; std::vector result; sql_list.clear(); result.clear(); std::string table_name("xxxxxx"); try{ value = json::parse(msg.payload); } catch(const std::exception &e){ std::cout << "topic "<(); std::cout << "metid:"<idclassV = k["idclass"]; for(const auto &k1:idclassV){ std::cout << "idclass:"<