Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Z/src/WMS_Interface/wms_ecc_exercises.cpp
T
torstenandCopilot 7a6be7474e Qt6 migration: Fix BUILD_RTI=OFF build errors in TrainingAreaBase
- training_area_telegrams.cpp: Fixed QJsonObject initializer syntax (Qt6 requires {{}} not ({}))
- training_area_telegrams.cpp: Fixed fromJson() methods to access m_* members directly
- training_area_telegrams.cpp: Fixed brace mismatches in multiple toJson() methods
- training_area_telegrams.h: Changed Header struct to public members for consistency
- tx_mixin.cpp: Fixed getEquipmentNumber() template for direct member access
- lts_coordinate.cpp: Added missing #include <iomanip>
- MIGRATION_STATUS.md: Added migration progress tracking document

C++17 constraint enforced due to RTI Connext DDS 7.7.0 incompatibility with C++20+

Build status: BUILD_RTI=OFF successful (0 errors, warnings only)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-23 20:49:23 +02:00

136 lines
3.4 KiB
C++
Executable File

#include "wms_ecc_exercises.h"
#include <QtCore/QJsonArray>
#include <QtCore/QJsonObject>
namespace EXCON
{
QJsonObject Exercises::toJson(const IWMS2ECC::Exercise &ex) const
{
QJsonObject obj;
obj[QLatin1String("id")] = ex.id;
obj[QLatin1String("actExercise")] = ex.actExercise;
obj[QLatin1String("start")] = static_cast<qint64>(ex.start);
obj[QLatin1String("end")] = static_cast<qint64>(ex.end);
obj[QLatin1String("name")] = ex.name;
obj[QLatin1String("state")] = ex.stateAsString;
obj[QLatin1String("ok")] = m_ok;
return obj;
}
IWMS2ECC::Exercise Exercises::fromJson(const QJsonObject &obj)
{
IWMS2ECC::Exercise ex;
ex.id = obj[QLatin1String("id")].toInt();
ex.actExercise = obj[QLatin1String("actExercise")].toInt();
ex.start = static_cast<time_t>(obj[QLatin1String("start")].toInt());
ex.end = static_cast<time_t>(obj[QLatin1String("end")].toInt());
ex.name = obj[QLatin1String("name")].toString();
ex.stateAsString = obj[QLatin1String("state")].toString();
return ex;
}
QJsonObject Exercises::toJsonAll() const
{
QJsonArray arr;
for (const IWMS2ECC::Exercise &ex : m_exercises)
arr.append(toJson(ex));
QJsonObject obj;
obj[QLatin1String("exMap")] = arr;
obj[QLatin1String("ok")] = m_ok;
return obj;
}
Exercises Exercises::fromJsonAll(const QJsonObject &map)
{
Exercises ex;
const QJsonArray arr = map[QLatin1String("exMap")].toArray();
for (const QJsonValue &val : arr)
{
const IWMS2ECC::Exercise exinfo = fromJson(val.toObject());
ex.m_exercises.insert(exinfo.id, exinfo);
}
ex.m_ok = map[QLatin1String("ok")].toBool();
return ex;
}
QVariantMap Exercises::toVariantMap() const
{
QVariantMap vMap;
vMap[QLatin1String("id")] = QVariant(m_exercise.id);
vMap[QLatin1String("name")] = m_exercise.name;
vMap[QLatin1String("start")] = QVariant(static_cast<qint64>(m_exercise.start));
vMap[QLatin1String("end")] = QVariant(static_cast<qint64>(m_exercise.end));
vMap[QLatin1String("state")] = m_exercise.stateAsString;
vMap[QLatin1String("ok")] = QVariant(m_ok);
return vMap;
}
Exercises Exercises::fromVariantMap(const QVariantMap &map)
{
Exercises ex;
ex.m_exercise.id = map[QLatin1String("id")].toInt();
ex.m_exercise.name = map[QLatin1String("name")].toString();
ex.m_exercise.start = map[QLatin1String("start")].toLongLong();
ex.m_exercise.end = map[QLatin1String("end")].toLongLong();
ex.m_exercise.stateAsString = map[QLatin1String("state")].toString();
ex.m_ok = map[QLatin1String("ok")].toBool();
return ex;
}
QVariantMap Exercises::toVariantMapAll() const
{
QVariantMap vMap;
for (IWMS2ECC::exerciseMap::ConstIterator it = m_exercises.begin(); it != m_exercises.end(); ++it)
{
m_exercise = it.value();
vMap.insert(QString::number(it.key()), QVariant(toVariantMap()));
}
QVariantMap retMap;
retMap[QLatin1String("exeMap")] = QVariant(vMap);
retMap[QLatin1String("ok")] = QVariant(m_ok);
return retMap;
}
Exercises Exercises::fromVariantMapAll(const QVariantMap &map)
{
Exercises ex;
const QVariantMap vMap = map[QLatin1String("exeMap")].toMap();
for (QVariantMap::ConstIterator it = vMap.begin(); it != vMap.end(); ++it)
{
int key = it.key().toInt();
IWMS2ECC::Exercise e = Exercises::fromVariantMap(it.value().toMap()).m_exercise;
ex.m_exercises.insert(key, e);
}
ex.m_ok = map[QLatin1String("ok")].toBool();
return ex;
}
}