roles.h 526 B

123456789101112131415161718192021222324252627282930313233343536
  1. #ifndef ROLES_H
  2. #define ROLES_H
  3. #include <QObject>
  4. #include <QHash>
  5. #include <QJsonObject>
  6. #include <QJsonArray>
  7. class Roles
  8. {
  9. public:
  10. Roles();
  11. struct role {
  12. int id;
  13. QString name;
  14. bool assignable;
  15. QHash <QString, bool> permissions;
  16. };
  17. struct role get ( int role_id );
  18. void set ( QJsonArray json_array );
  19. private:
  20. QList <struct role> list;
  21. QHash <int, struct role> id2role;
  22. //QHash <QString, struct role> name2role;
  23. void add ( QJsonObject json_role );
  24. void clear();
  25. };
  26. #endif // ROLES_H