chenluhua1980
2025-11-18 fcc340fc812ee692f72fa1774c114e6f4d788f5c
SourceCode/Bond/Servo/CUserManager2.h
@@ -1,4 +1,8 @@
#pragma once
#include <string>
#include <vector>
class CUserManager2
{
public:
@@ -6,12 +10,36 @@
   CUserManager2(const CUserManager2&) = delete;
   CUserManager2& operator=(const CUserManager2&) = delete;
   struct RoleInfo
   {
      std::wstring name;
      int level = 0;
   };
   struct UserInfo
   {
      std::wstring userName;
      std::wstring displayName;
      std::wstring roleName;
      int roleLevel = 0;
      bool enabled = false;
   };
public:
   void init(const char* pszDir);
   bool login(const char* pszAccount, const char* pszPwd);
   bool isLoggedIn();
   std::string getCurrentUserName();
   bool IsAdminCurrent();
   std::vector<RoleInfo> getRoles();
   std::vector<UserInfo> getUsers();
   int addUser(const std::wstring& userName, const std::wstring& displayName,
      const std::wstring& password, const std::wstring& roleName, bool enabled);
   int updateUser(const std::wstring& userName, const std::wstring& displayName,
      const std::wstring& password, const std::wstring& roleName, bool enabled);
   int deleteUser(const std::wstring& userName);
   int setUserEnabled(const std::wstring& userName, bool enabled);
   int resetPassword(const std::wstring& userName, const std::wstring& password);
private:
   CUserManager2();