#pragma once #include "DPData.h" //#include "easylogging++.h" class SceneInfo; //数据类模块类 class DataPack :public DPData { Q_OBJECT Q_PROPERTY(QString description READ getDes WRITE setDes) //描述 Q_PROPERTY(bool generateTable READ getIsGenerateTable WRITE setIsGenerateTable)//是否生成表 // Q_PROPERTY(unsigned int createVersion READ getCreateVer WRITE setCreateVer) Q_PROPERTY(QString displayName READ getDisplayName WRITE setDisplayName)//显示名称 Q_PROPERTY(int folderType READ getType WRITE setType)//类型 public: DataPack(); ~DataPack(); void setType(int type) { _folderType = type; } int getType() const { return _folderType; } void setDes(QString des) { _strDescription = des; } QString getDes() const { return _strDescription; } void setDisplayName(QString displayName) { _strDisplayName = displayName; } QString getDisplayName() const { return _strDisplayName; } // void setCreateVer(unsigned int ver) { _wCreateVersion = ver; } // unsigned int getCreateVer() const { return _wCreateVersion; } void setIsGenerateTable(bool bGenerate) { _bIsGenerateTable = bGenerate; } bool getIsGenerateTable() const { return _wCreateVersion; } bool checkNameillegal( QString& errMsg); /*保存本身数据*/ bool saveSelf(); void saveToDao(); /*增加child数据*/ bool addChild(DPData* pNewData); // bool addChild(DataPack* pNewData); /*删除一条child数据*/ bool deleteChild(unsigned int id); // bool deleteAllChildren(); void removeChildinDPMap(); /*删除本对象*/ bool deleteSelf(); bool deleteSelf(QString& result); /*从数据库加载一条数据到当前对象*/ void loadData(DBPlatformSpace::DAO* pDao); /*获取所有下层数据*/ void getAllChildren( DPData* pManager = nullptr); void getSubPack( DPData* pManager = nullptr); void getDataClassAndAttribute( DPData* pManager = nullptr); /*获取新的属性*/ void getNewProperty(json& parameter, QVariantMap& valueMap); void setNewData(json& parameter); void toJson(json& jsonObj, bool recursive = false); /*移动数据模块*/ bool moveData(json& parameter,DPData* pManager); /*导出数据*/ // bool exportData(); //生成代码 bool generateCode(/*DPData* pManager,*/ QStringList& qfileList); void setFileData(FileGenerate* generator, QStringList flag); //场景相关 bool addScene(DPData* pNewScene); bool deleteScene(int id); // bool moveScene(json& parameter); bool getScene(DPData* pMg); bool _bIsChildPack = false; //是否为子模块 QString _strDescription; //描述 int _bIsGenerateTable = -1; //是否生成数据接口类 unsigned int _wCreateVersion = 0; //建立版本 QString _strDisplayName; //显示名称 int _folderType = 0; //数据模块类型 bool _initDataClass = false; bool _initSubPack = false; bool _initScene = false; QMap _sceneMap; //场景map };