/** * Convert db structures to dds structures * $Id$ * $HeadURL$ * $Author$ * Created by Christian Ehrlicher, SLSE, 2017-07-20 */ #pragma once #include #include #include 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()) ddsData.exerciseId = dbData.exerciseId.toInt(); if (!dbData.phaseId.isNull() && dbData.phaseId.canConvert()) 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; } } }