ClassSet.h 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. #ifndef CLASSSET_H
  2. #define CLASSSET_H
  3. #include <QObject>
  4. #include <QDate>
  5. const int QF_CODE_SUCCEEDED = 1000;
  6. const int QF_CODE_ALREADY_LOGIN = 1001;
  7. const int QF_CODE_ADD_USER_SUCCEEDED = 1002;
  8. const int QF_CODE_DELETE_USER_SUCCEEDED = 1003;
  9. const int QF_CODE_FAILED = 2000;
  10. const int QF_CODE_EMPTY_ACCOUNT = 2001;
  11. const int QF_CODE_EMPTY_PASSWORD = 2002;
  12. const int QF_CODE_USER_NOT_EXISTS = 2003;
  13. const int QF_CODE_WRONG_PASSWORD = 2004;
  14. const int QF_CODE_NOT_LOGIN = 2005;
  15. const int QF_CODE_PASSWORD_NOT_SAME = 2006;
  16. const int QF_CODE_PASSWORD_UNCHANGED = 2007;
  17. const int QF_CODE_DATA_ERROR = 2008;
  18. const int QF_CODE_EMPTY_USERNAME = 2009;
  19. const int QF_CODE_ACCOUNT_OCCUPIED = 2010;
  20. const int QF_CODE_DELETE_USER_FAILED = 2011;
  21. /**
  22. * @projectName QFD
  23. * @author cyh
  24. * @date 2021-05-12
  25. * @desc 节点矩阵信息
  26. */
  27. class NodeMatrixInfo
  28. {
  29. public:
  30. int id = -1;
  31. QString expertName; //专家名称
  32. QString expertId; //专家id
  33. int engineerId; //工程id
  34. int mindId; //脑图名称
  35. QString node; //节点
  36. QString abscissa; //横坐标
  37. QString ordinate; //纵坐标
  38. QString nodeValue; //节点值
  39. QDateTime writeDate; //填写时间
  40. QString mark; //页码
  41. QString tableMsg;
  42. int tabIndex; // tab索引
  43. };
  44. class ClassSet
  45. {
  46. public:
  47. explicit ClassSet();
  48. static QList<NodeMatrixInfo *> datas;
  49. };
  50. class UserConfig;
  51. /**
  52. * @projectName QFD
  53. * @author cyh
  54. * @date 2021-05-12
  55. * @desc 工程信息
  56. */
  57. class EngineerInfo
  58. {
  59. public:
  60. /// 评估方案类型
  61. enum EvalType
  62. {
  63. Importance = 0x001 | 0x010, // 能力与技术重要度评估
  64. TechSchema = 0x100, // 技术方案评估
  65. };
  66. Q_DECLARE_FLAGS(EvalFlags, EvalType)
  67. static QString nameOFEvalType(EvalType t);
  68. /// 指标体系类型
  69. enum IndexType
  70. {
  71. Capability = 0x001, // 能力重要度评估指标体系
  72. TechMessaures = 0x010, // 技术措施重要度评估对象
  73. SchemaEval = 0x100, // 方案评估指标体系
  74. };
  75. static QString nameOFIndexType(IndexType t);
  76. static QList<IndexType> indexListOfEvalFlags(EvalFlags flags);
  77. int engineerId = -1; //工程id
  78. QString engineerName; //工程名称
  79. int indexSetId = -1; //指标体系id
  80. int measureFunctionId = -1; //测量方法id
  81. int schemaEvalId = -1; //方案评估id
  82. QString remark; //备注
  83. QString effectNameStr; //生效列(逗号分割)
  84. EvalFlags evalFlags() const;
  85. QList<IndexType> indexList() const;
  86. QList<UserConfig *> configs;
  87. };
  88. /**
  89. * @projectName QFD
  90. * @author cyh
  91. * @date 2021-05-12
  92. * @desc 用户信息
  93. */
  94. class QFUser
  95. {
  96. public:
  97. enum Role
  98. {
  99. SuperAdmin,
  100. GerneralAdmin,
  101. Expert
  102. };
  103. static QString nameOfRole(Role role);
  104. int id = -1; // id
  105. QString userName; //用户名称
  106. QString userNo; //用户账号
  107. QString password; //用户密码
  108. Role role; //角色 0-超级管理员,1-普通管理员,2-专家
  109. QString post; //职务
  110. QString major; //专业
  111. QString workPosition; //工作单位
  112. QString educationDegree; //文化程度
  113. QString phone; //联系方式
  114. QString remark; //注释信息
  115. QString projectId; //工程编号
  116. QString writeTime; //填写时间
  117. QFUser();
  118. QFUser(const QString userId, const QString password);
  119. const QString rawPassword() const;
  120. static QFUser *currentUser();
  121. QString roleName() const;
  122. int login(); // 登录
  123. static int logout(); // 退出
  124. int resetAdmin(QString account, QString password, QString repeatPassword); // 修改管理员账号
  125. private:
  126. QString m_rawPassword;
  127. };
  128. /**
  129. * @projectName QFD
  130. * @author cyh
  131. * @date 2021-05-12
  132. * @desc 评估方案信息类
  133. */
  134. class PlanInfo
  135. {
  136. public:
  137. int id = -1; // id
  138. QString planName; //方案名称
  139. int engineerId; //关联工程id
  140. QString desc; //方案描述
  141. };
  142. /**
  143. * @projectName QFD
  144. * @author cyh
  145. * @date 2021-05-12
  146. * @desc 评估方案信息与指标体系关系表
  147. */
  148. class IndexSetPlanInfo
  149. {
  150. public:
  151. int id = -1; // id
  152. int indexSetId; //指标体系id
  153. int planId; //方案id
  154. double weight; //权重值
  155. };
  156. /**
  157. * @projectName QFD
  158. * @author mimang
  159. * @date 2022-01-10
  160. * @desc 能力重要度评估指标体系 需求权重重要度
  161. */
  162. class DemandWeight
  163. {
  164. public:
  165. int id = -1; // id
  166. int engineerId; // 工程id
  167. QString expertId; // 专家id
  168. QString nodeName; //节点名称
  169. double nodeValue; //需求重要度
  170. double nodeWeight; //权重值
  171. int tableIndex; //表格索引
  172. int isValid; //是否有效
  173. int pageIndex; //页码
  174. QString tableMsg;
  175. };
  176. /**
  177. * @projectName QFD
  178. * @author mimang
  179. * @date 2022-01-10
  180. * @desc 能力重要度评估指标体系 需求权重重要度
  181. */
  182. class SchemaEval
  183. {
  184. public:
  185. int id = -1; // id
  186. int engineerId; // 工程id
  187. QString name; // 专家id
  188. QString remark; //节点名称
  189. QString valueStr; //指标得分
  190. double score; //得分
  191. };
  192. /**
  193. * @projectName QFD
  194. * @author mimang
  195. * @date 2022-01-11
  196. * @desc 技术措施重要度评估对象 技术重要度
  197. */
  198. class TechnicalImport
  199. {
  200. public:
  201. int id = -1; // id
  202. int engineerId; // 工程id
  203. int expertId; // 专家id
  204. QString nodeName; //节点名称
  205. double nodeValue; //技术重要度
  206. };
  207. /**
  208. * @brief 用户配置信息
  209. */
  210. class UserConfig
  211. {
  212. public:
  213. int id = -1;
  214. int userId; //用户id
  215. QString userName; //用户名称
  216. int engineerId; //工程id
  217. double weight; //工程权重
  218. QString createTime; //创建时间
  219. QString updateTime; //更新时间
  220. };
  221. #endif // CLASSSET_H