120 lines
5.2 KiB
C++
120 lines
5.2 KiB
C++
#pragma once
|
||
|
||
#include "DPData.h"
|
||
|
||
class DataAttribute:public DPData
|
||
{
|
||
Q_OBJECT
|
||
Q_PROPERTY(QString displayName READ getDisplayName WRITE setDisplayName)
|
||
Q_PROPERTY(QString InternalName READ getInternalName WRITE setInternalName)
|
||
Q_PROPERTY(QString description READ getDes WRITE setDes)
|
||
Q_PROPERTY(int createVerion READ getCreateVersion WRITE setCreateVersion)
|
||
Q_PROPERTY(int deleteVerion READ getDeleteVersion WRITE setDeleteVersion)
|
||
Q_PROPERTY(QString defaultValue READ getDefaultValue WRITE setDefaultValue)
|
||
Q_PROPERTY(int dataType READ getDataType WRITE setDataType)
|
||
Q_PROPERTY(int isIndex READ getIsIndex WRITE setIsIndex)
|
||
Q_PROPERTY(int isOnly READ getIsOnly WRITE setIsOnly)
|
||
Q_PROPERTY(int isAutoIncrement READ getIsAutoincrement WRITE setIsAutoincrement)
|
||
Q_PROPERTY(int maxLen READ getMaxLen WRITE setMaxLen)
|
||
Q_PROPERTY(int minLen READ getMinLen WRITE setMinLen)
|
||
Q_PROPERTY(int numLen READ getNumLen WRITE setNumLen)
|
||
Q_PROPERTY(int numPresision READ getNumPresision WRITE setNumPresision)
|
||
Q_PROPERTY(int isFindKey READ getIsFindkey WRITE setIsFindkey)
|
||
Q_PROPERTY(int fkTableId READ getFKTableId WRITE setFKTableId)
|
||
Q_PROPERTY(int fkType READ getFKType WRITE setFKType)
|
||
Q_PROPERTY(int isPK READ getIsPK WRITE setIsPK)
|
||
|
||
public:
|
||
DataAttribute();
|
||
~DataAttribute();
|
||
|
||
void setDisplayName(QString displayName) { _strDisplayName = displayName; }
|
||
QString getDisplayName() const { return _strDisplayName; }
|
||
void setInternalName(QString name) { _strInternalName = name; }
|
||
QString getInternalName() const { return _strInternalName; }
|
||
void setDes(QString des) { _strDescription = des; }
|
||
QString getDes() const { return _strDescription; }
|
||
void setCreateVersion(int cVersion) { _wCreateVersion = cVersion; }
|
||
int getCreateVersion() const { return _wCreateVersion; }
|
||
void setDeleteVersion(int dVersion) { _wDeleteVersion = dVersion; }
|
||
int getDeleteVersion() const { return _wDeleteVersion; }
|
||
void setDefaultValue(QString value) { _strDefaultValue = value; }
|
||
QString getDefaultValue() const { return _strDefaultValue; }
|
||
void setDataType(int type) { _wDataType = type; }
|
||
int getDataType() const { return _wDataType; }
|
||
void setIsIndex(int bIs) { _wIsIndex = bIs; }
|
||
int getIsIndex() const { return _wIsIndex; }
|
||
void setIsOnly(int bIs) { _wIsOnly = bIs; }
|
||
int getIsOnly() const { return _wIsOnly; }
|
||
void setIsAutoincrement(int bIs) { _wIsAutoincrement = bIs; }
|
||
int getIsAutoincrement() const { return _wIsAutoincrement; }
|
||
void setMaxLen(int len) { _wMaxLength = len; }
|
||
unsigned int getMaxLen() const { return _wMaxLength; }
|
||
void setMinLen(int len) { _wMinLength = len; }
|
||
int getMinLen() const { return _wMinLength; }
|
||
void setNumLen(int len) { _wNumLength = len; }
|
||
int getNumLen() const { return _wNumLength; }
|
||
void setNumPresision(int presision) { _wNumPresision = presision; }
|
||
int getNumPresision() const { return _wNumPresision; }
|
||
void setIsFindkey(int bIs) { _wIsFindKey = bIs; }
|
||
int getIsFindkey() const { return _wIsFindKey; }
|
||
void setFKTableId(int id) { _wFkTableID = id; }
|
||
int getFKTableId() const { return _wFkTableID; }
|
||
int getFKType() const { return _FKType; }
|
||
void setFKType(int fkType) { _FKType = fkType; }
|
||
int getIsPK() const { return _isPrimaryKey; }
|
||
void setIsPK(int bIs) { _isPrimaryKey = bIs; }
|
||
|
||
/*保存本身数据*/
|
||
bool saveSelf();
|
||
void saveToDao();
|
||
/*删除本对象*/
|
||
bool deleteSelf();
|
||
/*从数据库加载一条数据到当前对象*/
|
||
void loadData(DBPlatformSpace::DAO* pDao);
|
||
/*获取新的属性*/
|
||
void getNewProperty(json& parameter, QVariantMap& valueMap);
|
||
void setNewData(json& parameter);
|
||
|
||
void toJson(json& jsonObj, bool recursive = false);
|
||
//修改属性名字
|
||
void reName();
|
||
//判断名称标识合法性
|
||
bool checkNameillegal(QString& errMsg);
|
||
bool checkNameSize(int min, int max, QString& errMsg);
|
||
bool checkLetter(QString& errmsg, int index); //判断第几个字符
|
||
bool illegalName(QString& errMsg); //关系属性名是否相似
|
||
//处理属性显示名称,名称标识,若有同名,加序号
|
||
void checkImportAttributeName(DPData* pParent);
|
||
|
||
void setFileData(FileGenerate* generator, QStringList flag);
|
||
|
||
|
||
/*复制属性到指定数据类*/
|
||
// bool copyToDstDataClass(int dataClassID, DataAttribute*& newData);
|
||
|
||
QString _displayfield; //[2023014add]数据检索与编辑模块在前端显示的字段名
|
||
|
||
QString _strDisplayName; //显示名称
|
||
QString _strInternalName; //内部名称
|
||
QString _strDescription; //描述
|
||
int _wCreateVersion = 0; //创建版本
|
||
int _wDeleteVersion = 0; //删除版本
|
||
QString _strDefaultValue;
|
||
int _wDataType = 0; //数据类型(1整型 2字符串 3 实型)
|
||
int _wIsIndex = 0; //是否是索引
|
||
int _wIsOnly = 0; //是否唯一
|
||
int _wIsAutoincrement = 0 ; //是否自增
|
||
int _wMaxLength = 0; //最大长度
|
||
int _wMinLength = 0; //最小长度
|
||
int _wNumLength = 0; //数值位数
|
||
int _wNumPresision = 0; //数值精度
|
||
int _wIsFindKey = 0; //是否为查找序列
|
||
// unsigned int _type = 0; //属性类型:0 普通属性 1 外键关联属性
|
||
int _FKType = 0; //0: 普通属性 1: 1对1关系外键; 2 :1对n关系外键
|
||
int _wFkTableID = 0; //外界关联数据类id
|
||
QString _fkname; //关联数据类名称 (暂时为导入时使用)
|
||
int _isPrimaryKey = 0; //是否主键
|
||
protected:
|
||
private:
|
||
}; |