#include "dataSyncManager.h" #include "sqlQueryExecutor.h" DataSyncManager& DataSyncManager::instance() { //采用静态局部变量的方式,静态局部变量的初始化是在第一次访问时,以后的调用不会多次初始化,并且生命周期和程序一致 static DataSyncManager instance; return instance; } DataSyncManager::DataSyncManager() { } DataSyncManager::~DataSyncManager() {} void DataSyncManager::registerPublicGroup(const QString& connection) { m_publicGroups.clear(); const QVector groups = SqlQueryExecutor::instance().getAttributeGroup(connection); for(const AttributeGroup& group : groups) { if(group.isPublic) m_publicGroups.insert(group.id, group); } } AttributeGroup DataSyncManager::getGroup(int groupID) { AttributeGroup group ; if(m_publicGroups.contains(groupID)) group = m_publicGroups.value(groupID); return group; } void DataSyncManager::syncGroupVersion(int groupID, int version) { if(m_publicGroups.contains(groupID)) m_publicGroups[groupID].version = version; } int DataSyncManager::getGropuVersion(int groupID) { int version = 0; if(m_publicGroups.contains(groupID)) version = m_publicGroups.value(groupID).version; return version; }