/
lmaxyz
/
telegraf
Обзор
Документация
Войти
/
lmaxyz
/
telegraf
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/data/groupsmodel.cpp
74 строки
1 KB
mbarashkov
Упрощен код верификации групп после изменений с серверной стороны
26 июн 2025, 11:29
26 июн 2025, 11:29
c3e6f4c
Код
Авторство
О чём код?
#include "groupsmodel.h" #include "../debuglog.h" GroupsModel* GroupsModel::instance; GroupsModel::GroupsModel(QObject *parent) : QObject(parent) { GroupsModel::instance = this; } GroupsModel::~GroupsModel() { qDeleteAll(_basicGroups); qDeleteAll(_superGroups); } void GroupsModel::updateGroup(qlonglong groupId, const QVariantMap &groupInfo, const GroupType groupType) { auto &groups = (groupType == GroupType::Basic) ? _basicGroups : _superGroups; auto group = groups.value(groupId); if (!group) { group = new GroupModel(groupId, this); groups.insert(groupId, group); } group->groupInfo = groupInfo; if(groupType == GroupType::Basic) { emit basicGroupUpdated(groupId); } else { emit superGroupUpdated(groupId); } } const GroupModel *GroupsModel::getGroup(qlonglong groupId) const { if (groupId) { const auto group = _superGroups.value(groupId); return group ? group : _basicGroups.value(groupId); } return Q_NULLPTR; } QVariantMap GroupsModel::getBasicGroup(qlonglong groupId) const { const auto group = _basicGroups.value(groupId); if (group) { return group->groupInfo; } else { return QVariantMap(); } } QVariantMap GroupsModel::getSuperGroup(qlonglong groupId) const { const auto group = _superGroups.value(groupId); if (group) { return group->groupInfo; } else { return QVariantMap(); } }