From da9df9d46ed3fc50e0c03497bd9f76b8aa1a4595 Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期三, 14 一月 2026 15:37:48 +0800
Subject: [PATCH] 1.修复以下问题: 作业前置条件不足导致 PJ 验证失败:onPRJobMultiCreate 调 CMaster::setProcessJobs,CProcessJob::validate 要求“当前没有其它 PJ”(issue 1000),且 carrierPresent/slotUsable 必须为真。只要本地还有未结批的 PJ/CJ 或载具/槽位状态未就绪(ID 未绑、Slot 未使能),Host 发送的 CreateMultiPJ 会直接被丢弃(返回 size=0),但当前代码没有向 Host 回 ACK/NAK,Host 会误以为创建成功。
---
SourceCode/Bond/BondEq/DBManager/UserManager.h | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/BondEq/DBManager/UserManager.h b/SourceCode/Bond/BondEq/DBManager/UserManager.h
index 37fd44b..590b2e1 100644
--- a/SourceCode/Bond/BondEq/DBManager/UserManager.h
+++ b/SourceCode/Bond/BondEq/DBManager/UserManager.h
@@ -22,6 +22,9 @@
UserManager(const UserManager&) = delete;
UserManager& operator=(const UserManager&) = delete;
+ // 提供数据库连接
+ std::unique_ptr<BL::Database>& getDatabaseInstance();
+
// 用户操作
bool login(const std::string& username, const std::string& password, bool rememberMe = false);
void logout();
@@ -38,6 +41,8 @@
bool changeUserRole(const std::string& username, UserRole newRole);
bool changeUserSessionTimeout(const std::string& username, int newTimeoutMinutes);
bool changeUserSessionExpiration(const std::string& username, int newExpirationHours);
+ std::vector<std::string> getUsernames();
+ std::vector<std::string> getUserInfo(const std::string& username);
// 会话文件操作
bool loadSession(); // 从会话文件加载会话信息
@@ -67,12 +72,21 @@
// 获取当前登录用户名
std::string getCurrentUser() const;
+ // 修改当前登录用户名
+ void setCurrentUser(const std::string& strName);
+
// 获取当前登录用户密码
std::string getCurrentPass() const;
+ // 修改当前登录用户密码
+ void setCurrentPass(const std::string& strPass);
+
// 获取当前登录用户角色
UserRole getCurrentUserRole() const;
+ // 修改当前登录用户角色
+ void setCurrentUserRole(UserRole emRole);
+
// 获取当前登录用户的无操作超时时间
std::chrono::minutes getSessionTimeout() const;
--
Gitblit v1.9.3