Files
qt5-legatus-legacy/Lts/Services/FileManagement/convert_db_to_dds.h
T
2026-08-13 18:33:10 +02:00

87 lines
2.0 KiB
C++
Executable File

/**
* Convert db structures to dds structures
* $Id$
* $HeadURL$
* $Author$
* Created by Christian Ehrlicher, SLSE, 2017-07-20
*/
#pragma once
#include <FileManagement/flm_db.h>
#include <FileManagement/flm.hpp>
#include <LtsUtilsCore/dds_vector.h>
namespace FileManagement
{
namespace Database
{
inline FileContent convert(const FlmFileContent &dbData)
{
FileContent ddsData;
ddsData.id(dbData.id);
ddsData.name(dbData.name.toStdString());
ddsData.isTemplate(dbData.isTemplate);
ddsData.isHidden(dbData.isHidden);
ddsData.fileCategory(dbData.fileCategoryId);
ddsData.folderId(dbData.folderId);
ddsData.fileType(dbData.fileTypeId);
ddsData.operatorId(dbData.operatorId);
if (!dbData.exerciseId.isNull() && dbData.exerciseId.canConvert<int>())
ddsData.exerciseId(dbData.exerciseId.toInt());
if (!dbData.phaseId.isNull() && dbData.phaseId.canConvert<int>())
ddsData.phaseId(dbData.phaseId.toInt());
ddsData.fileStatus(dbData.fileStatusId);
ddsData.isUsedBy(dbData.isUsedBy);
ddsData.usedBy(dbData.usedBy);
if (!dbData.properties.isEmpty())
ddsData.properties(dbData.properties.toStdString());
ddsData.lastModified(dbData.lastModified);
// init data not in db
ddsData.isDeleted(false);
ddsData.isUsed(false);
return ddsData;
}
inline FileTypeInfo convert(const FlmFileTypeInfo &dbData)
{
FileTypeInfo ddsData;
ddsData.id(dbData.id);
ddsData.description(dbData.description.toStdString());
ddsData.extension(dbData.extension.toStdString());
// init data not in db
ddsData.isDeleted(false);
ddsData.isUsed(false);
return ddsData;
}
inline Folder convert(const FlmFolder &dbData)
{
Folder ddsData;
ddsData.id(dbData.id);
ddsData.name(dbData.name.toStdString());
ddsData.path(dbData.path());
ddsData.isEditable(dbData.isEditable);
ddsData.isHidden(dbData.isHidden);
ddsData.operatorId(dbData.operatorId);
ddsData.parentId(dbData.parentId);
ddsData.lastModified(dbData.lastModified);
// init data not in db
ddsData.isDeleted(false);
ddsData.isUsed(false);
return ddsData;
}
}
}