feat/object-selection-panels #4

Merged
gaozheng merged 18 commits from feat/object-selection-panels into main 2026-06-10 21:33:30 +08:00
2 changed files with 5 additions and 5 deletions
Showing only changes of commit 6cf53ab199 - Show all commits

View File

@ -50,6 +50,7 @@ void WorkbenchNavController::loadProjectsAndStructure() {
return;
}
lastProjects_ = ps.value.rows;
tmExceptionCache_.clear();
QString curP;
if (!ps.value.rows.empty()) {
const auto& first = ps.value.rows.front();
@ -66,7 +67,6 @@ void WorkbenchNavController::loadProjectsAndStructure() {
if (curP.isEmpty()) {
lastStructNodes_.clear();
tmExceptionCache_.clear();
emit structureLoaded(QString(), {}); // 暂无项目 → 空树
return;
}
@ -186,12 +186,12 @@ void WorkbenchNavController::setCheckedTms(const QStringList& tmObjectIds) {
}
it = tmExceptionCache_.emplace(tm, ex.value).first;
}
const auto grouped = data::dto::groupExceptionsByConsortium(it->second);
auto grouped = data::dto::groupExceptionsByConsortium(it->second);
data::ObjectExceptionGroup g;
g.objectId = tm;
g.objectName = nameOf(tm);
g.consortia = grouped.consortia;
g.looseExceptions = grouped.loose;
g.consortia = std::move(grouped.consortia);
g.looseExceptions = std::move(grouped.loose);
total += static_cast<int>(it->second.size());
groups.push_back(std::move(g));
}

View File

@ -40,7 +40,7 @@ signals:
void filesLoaded(const QString& tmObjectId, const std::vector<geopro::data::DsRow>& rows,
int total, bool append);
void objectDetailLoaded(const QString& title, const geopro::data::DynamicForm& form);
void exceptionTreeLoaded(const std::vector<geopro::data::ObjectExceptionGroup>& groups, int tmCount);
void exceptionTreeLoaded(const std::vector<geopro::data::ObjectExceptionGroup>& groups, int exceptionCount);
void datasetDetailLoaded(const geopro::data::DynamicForm& form);
void loadFailed(const QString& stage, const QString& message);