DPS/DataPlatform/ProjectData.h

91 lines
2.1 KiB
C
Raw Normal View History

2025-06-23 10:41:33 +08:00
#ifndef PROJECTDATA_H
#define PROJECTDATA_H
#include "DPData.h"
class DataManager;
class ProjectData : public DPData
{
Q_OBJECT
Q_PROPERTY(int type READ getType WRITE setType)
Q_PROPERTY(QString author READ getAuthor WRITE setAuthor)
Q_PROPERTY(QString createTime READ getCreateTime WRITE setCreateTime)
Q_PROPERTY(QString updateTime READ getUpdateTime WRITE setUpdateTime)
Q_PROPERTY(bool focus READ getFocus WRITE setFocus)
public:
ProjectData();
virtual ~ProjectData();
int getType() { return _type; }
void setType(int type) { _type = type; }
QString getAuthor() const;
void setAuthor(QString author);
QString getCreateTime() const;
void setCreateTime(QString createTime);
QString getUpdateTime() const;
void setUpdateTime(QString updateTime);
bool getFocus() const;
void setFocus(bool focus);
public:
// bool saveToDao(DPData* newData);
/*<2A><><EFBFBD>浱ǰ<E6B5B1><C7B0>Ŀ*/
bool saveSelf();
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
bool addChild(DPData* newData);
/*ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
bool deleteChild(unsigned int id);
void removeChildinDPMap();
/*ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ*/
bool deleteSelf();
/*<2A><><EFBFBD>±<EFBFBD><C2B1><EFBFBD>Ŀ*/
// bool updateSelf(DPData& newData);
/*<2A><><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>*/
void loadData(DBPlatformSpace::DAO* pDao);
/*<2A><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>*/
void getAllChildren( DPData* pManager = nullptr);
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void getNewProperty(json& parameter, QVariantMap& valueMap);
void setNewData(json& parameter);
void setEditData(json& parameter);
void toJson(json& jsonObj, bool recursive = false);
//<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD>ʶģ<CAB6><C4A3>
void findDatamodelByName(QString name, QList<DPData*>& modellist);
static bool getImportProjectList(QList<ProjectData*>& proList, QString path);
static bool importData(json& parameter, QList<int>& projectIdlist);
static bool exportData(json& parameter, QString exportPath);
void setCurrentProject();
//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
static bool hasRepetitiveName(QString name, DataManager* pMgr);
bool _initChildren = false;
public:
/*<2A><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>*/
int _type = 0;
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
QString _author;
/*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
QString _createTime;
/*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
QString _updateTime;
/*<2A>Ƿ<EFBFBD><C7B7><EFBFBD>ע, true = <20><>ע*/
bool _focus = false;
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
// QString _lastOpenTime;
};
#endif