#ifndef CLASSSET_H #define CLASSSET_H #include #include const int QF_CODE_SUCCEEDED = 1000; const int QF_CODE_ALREADY_LOGIN = 1001; const int QF_CODE_ADD_USER_SUCCEEDED = 1002; const int QF_CODE_DELETE_USER_SUCCEEDED = 1003; const int QF_CODE_FAILED = 2000; const int QF_CODE_EMPTY_ACCOUNT = 2001; const int QF_CODE_EMPTY_PASSWORD = 2002; const int QF_CODE_USER_NOT_EXISTS = 2003; const int QF_CODE_WRONG_PASSWORD = 2004; const int QF_CODE_NOT_LOGIN = 2005; const int QF_CODE_PASSWORD_NOT_SAME = 2006; const int QF_CODE_PASSWORD_UNCHANGED = 2007; const int QF_CODE_DATA_ERROR = 2008; const int QF_CODE_EMPTY_USERNAME = 2009; const int QF_CODE_ACCOUNT_OCCUPIED = 2010; const int QF_CODE_DELETE_USER_FAILED = 2011; const int QF_CODE_NEED_PROJ_SUMMARY = 2020; const int QF_CODE_NEED_PROJ_NAME = 2021; const int QF_CODE_NEED_PROJ_TYPE = 2022; const int QF_CODE_PROJ_CREATE_FALIED = 2023; const int QF_CODE_PROJ_NOT_EDITABLE = 2024; const int QF_CODE_PROJ_UPDATE_FALIED = 2025; const int QF_CODE_PROJ_DELETE_FALIED = 2026; const int QF_CODE_EVAL_NOT_SUPPORTED = 2030; const int QF_CODE_WEIGHTSUM_ERROR = 2040; /** * @projectName QFD * @author cyh * @date 2021-05-12 * @desc 节点矩阵信息 */ class NodeMatrixInfo { public: int id = -1; QString expertName; // 专家名称 QString expertId; // 专家id int engineerId; // 工程id int mindId; // 脑图名称, 区分数据来源, 0:专家数据, 1:实测数据 QString node; // 节点 QString abscissa = ""; // 横坐标 QString ordinate = ""; // 纵坐标 QString nodeValue; // 节点值 QDateTime writeDate; // 填写时间 QString mark; // 页码 QString tableMsg; int tabIndex; // tab索引 QString strUuid; // 区分组 }; class ClassSet { public: explicit ClassSet(); static QList datas; }; class UserConfig; /** * @projectName QFD * @author cyh * @date 2021-05-12 * @desc 工程信息 */ class EngineerInfo { public: /// 指标体系类型 enum IndexType { Capability = 0b1, // 能力重要度评估指标体系 TechMessaures = 0b1 << 1, // 技术措施重要度评估对象 SchemaEval = 0b1 << 2, // 方案评估指标体系 }; static QString nameOFIndexType(IndexType t); /// 评估方案类型 enum EvalType { Importance = Capability | TechMessaures, // 能力与技术重要度评估 TechSchema = SchemaEval, // 技术方案评估 // QFD2 新增 Requirements = 0b1 << 5, // 需求分析评估 SchemeOptimization = 0b1 << 6, // 方案优选评估 OverallEfficiency = 0b1 << 7, // 综合效能评估 }; Q_DECLARE_FLAGS(EvalTypes, EvalType) static QString nameOfEvalType(EvalType t); static QList indexListOfEvalFlags(EvalTypes flags); int engineerId = -1; // 工程id QString engineerName; // 工程名称 int indexSetId = -1; // 指标体系id int measureFunctionId = -1; // 测量方法id int schemaEvalId = -1; // 方案评估id QString remark; // 备注 QString effectNameStr; // 生效列(逗号分割) EvalTypes evalFlags() const; QList indexList() const; QList configs; }; /** * @projectName QFD * @author cyh * @date 2021-05-12 * @desc 用户信息 */ class QFUser { public: enum Role { SuperAdmin, GerneralAdmin, Expert }; static QString nameOfRole(Role role); int id = -1; // id QString userName; // 用户名称 QString userNo; // 用户账号 QString password; // 用户密码 Role role; // 角色 0-超级管理员,1-普通管理员,2-专家 QString post; // 职务 QString major; // 专业 QString workPosition; // 工作单位 QString educationDegree; // 文化程度 QString phone; // 联系方式 QString remark; // 注释信息 QString projectId; // 工程编号 QString writeTime; // 填写时间 QFUser(); QFUser(const QString userId, const QString password); const QString rawPassword() const; static QFUser *currentUser(); QString roleName() const; int login(); // 登录 static int logout(); // 退出 int resetAdmin(QString account, QString password, QString repeatPassword); // 修改管理员账号 private: QString m_rawPassword; }; /** * @projectName QFD * @author cyh * @date 2021-05-12 * @desc 评估方案信息类 */ class PlanInfo { public: int id = -1; // id QString planName; // 方案名称 int engineerId; // 关联工程id QString desc; // 方案描述 }; /** * @projectName QFD * @author cyh * @date 2021-05-12 * @desc 评估方案信息与指标体系关系表 */ class IndexSetPlanInfo { public: int id = -1; // id int indexSetId; // 指标体系id int planId; // 方案id double weight; // 权重值 }; /** * @projectName QFD * @author mimang * @date 2022-01-10 * @desc 能力重要度评估指标体系 需求权重重要度 */ class DemandWeight { public: int id = -1; // id int engineerId; // 工程id QString expertId; // 专家id QString nodeName; // 节点名称 double nodeValue; // 需求重要度 double nodeWeight; // 权重值 int tableIndex; // 表格索引 int isValid; // 是否有效 int pageIndex; // 页码 QString tableMsg; }; /** * @projectName QFD * @author mimang * @date 2022-01-10 * @desc 能力重要度评估指标体系 需求权重重要度 */ class SchemaEval { public: int id = -1; // id int engineerId; // 工程id QString name; // 专家id QString remark; // 节点名称 QString valueStr; // 指标得分 double score; // 得分 QString filePath; // 图片地址 int type; // 类型, 0:方案优选 1:综合效能物元分析 2:综合效能灰色聚类 }; /** * @projectName QFD * @author mimang * @date 2022-01-11 * @desc 技术措施重要度评估对象 技术重要度 */ class TechnicalImport { public: int id = -1; // id int engineerId; // 工程id int expertId; // 专家id QString nodeName; // 节点名称 double nodeValue; // 技术重要度 }; /** * @brief 用户配置信息 */ class UserConfig { public: int id = -1; int userId; // 用户id QString userName; // 用户名称 int engineerId; // 工程id double weight; // 工程权重 int isValid = 1; QString createTime; // 创建时间 QString updateTime; // 更新时间 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-12 * @desc 项目信息 */ class ProjectInfo { public: int id = -1; // 项目id QString projectName; // 项目名称 // int demandMindId = -1; //需求分享评估脑图ID // int programmeMindId = -1; //方案优选评估脑图ID // int generalMindId = -1; //综合效能评估脑图ID QString remark; // 备注 QString taskName; // 任务名称 QString estimateTime; // 评估时间 QString estimateObjective; // 评估目的 QString estimateDept; // 评估单位 QString estimatePerson; // 评估人员 QString estimateType; // 评估类型 QString positionalTitles; // 职务 QString createTime; // 创建时间 QString updateTime; // 更新时间 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-14 * @desc 算法信息 */ class AlgorithmInfo { public: int id = -1; // 主键id QString code; // 算法编码 QString name; // 算法名称 QString desc; // 算法描述 int type; // 算法类型 int status = 1; // 状态0不可用1可用 QString createTime; // 创建时间 QString updateTime; // 更新时间 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-15 * @desc 工程算法关联信息 */ class ProjectAlgorithmRelation { public: int id = -1; // 主键id QString code; // 算法编码 int projectId; // 工程id int type; // 评估类型 int status = 1; // 状态0不可用1可用 QString createTime; // 创建时间 QString updateTime; // 更新时间 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-15 * @desc 工程脑图关联信息 */ class ProjectMindRelation { public: int id = -1; // 主键id int mindId; // 脑图ID int projectId; // 工程id int type; // 评估类型 QString createTime; // 创建时间 QString updateTime; // 更新时间 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-15 * @desc 标度信息 */ class ScaleInfo { public: int id = -1; // 主键id int projectId; // 工程id QString scaleName; // 标度名称 QString scaleValue; // 标度值 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-15 * @desc 等级信息 */ class GradeInfo { public: int id = -1; // 主键id int projectId; // 工程id int type; // 类型0物元分析法1灰色聚类法 QString gradeName; // 等级名称 QString gradeValue; // 等级值 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-15 * @desc 等级指标信息 */ class GradeIndexInfo { public: int id = -1; // 主键id int projectId; // 工程id int gradeLevel; // 指标层级 QString gradeParentName; // 等级指标父名称 QString gradeIndexName; // 等级指标名称 QString gradeIndexValue; // 等级指标值 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-15 * @desc 效能指标信息 */ class EffectIndexInfo { public: int id = -1; // 主键id int projectId; // 工程id QString effectIndexName; // 效能指标名称 QString effectIndexValue; // 效能指标值 QString effectIndexUnit; // 单位 QString extendLeft; // 延拓左 QString extendRight; // 延拓右 }; /** * @projectName QFD2 * @author mimang * @date 2023-09-15 * @desc 效能结果信息 */ class EffectResult { public: int id = -1; // 主键id int projectId; // 工程id int schemeId; // 方案 id, 对于灰色聚类法, 建设前为-2, 建设后为-1; QString schemeName; // 方案名称 int algType; // 算法类型, 0:物元分析法, 1:灰色聚类法 QString indexName; // 指标名称 QString value; // 结果 }; class MindWeightInfo { public: int id = -1; // 主键 id int projectId; // 项目 id int indexType; // 指标体系类型: 能力重要度评估/技术重要度评估/方案优选评估/效能评估 int dataSource; // 数据来源: 导入专家数据/录入实测数据 int algorithm; // 权重分析使用的算法 QString weight; // 指标权重值. 格式 指标名称1:权重;指标名称2:权重;指标名称3:权重 }; class MindScoreInfo { public: int id = -1; // 主键 id int projectId; // 项目 id QString score; // 指标得分. 格式 指标名称1:得分;指标名称2:得分;指标名称3:得分 }; #endif // CLASSSET_H