AnalysisPanelWidget.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #ifndef ANALYSISPANELWIDGET_H
  2. #define ANALYSISPANELWIDGET_H
  3. #include "MatrixPanelWidget.h"
  4. #include <QWidget>
  5. namespace Ui {
  6. class AnalysisPanelWidget;
  7. }
  8. class AnalysisPanelWidget : public QWidget
  9. {
  10. Q_OBJECT
  11. public:
  12. explicit AnalysisPanelWidget(QWidget *parent = nullptr);
  13. ~AnalysisPanelWidget();
  14. /**
  15. * @brief 绘制脑图
  16. * @param 横坐标参考脑图节点
  17. * @param 纵坐标参考脑图节点
  18. */
  19. void init(const QStringList indexsRef, const QStringList indexs, int engineerId, int expertId);
  20. //综合专家页面初始化
  21. void initComposite(const QStringList indexsRef, const QStringList indexs, int engineerId, QList<int> expertIds);
  22. void setViewTypeAndTableMsg(int type, QString tableMsg);
  23. void setArithmeticMethod(QString resultMethod, QString matricesMethod);
  24. signals:
  25. void dataReady(bool status);
  26. void returnModel(QStandardItemModel *model);
  27. private slots:
  28. void on_prePageBtn_clicked();
  29. void on_nextPageBtn_clicked();
  30. void oneTableDataReady(bool status);
  31. void getTableModel(QStandardItemModel *item);
  32. private:
  33. Ui::AnalysisPanelWidget *ui;
  34. QGridLayout *firstLayout = nullptr;
  35. QWidget *firstPlainWidget = nullptr;
  36. QGridLayout *secondLayout = nullptr;
  37. QWidget *secondPlainWidget = nullptr;
  38. MindNodeManager *currentMindNodes = nullptr;
  39. QList<QList<MindNodeManager::NodeMessage>> *classifiedNodes = nullptr;
  40. QList<QList<MindNodeManager::NodeMessage>> *indexsRefClassifiedNodes = nullptr; //是否参考指标体系
  41. int currentPage = 0;
  42. int analysisViewType = 1;
  43. QString m_table_msg;
  44. QList<QTabWidget *> tabWidgets;
  45. QString m_resultMethod;
  46. QString m_matricesMethod;
  47. void sortMindNodes(const MindNodeManager &manager, QList<QList<MindNodeManager::NodeMessage>> *classify);
  48. void getMindNodes(MindNodeManager *manager, QStringList listNodes);
  49. QStringList getFirstIndexNodes(const MindNodeManager &manager);
  50. QStringList getLastIndexNodes(const MindNodeManager &manager);
  51. int getPages();
  52. void setPage(int page);
  53. void initPlainWidget(int engineerId, int expertId, QString tableMsg);
  54. void initCompositePlainWidget(int engineerId, QList<int> expertIds, QString tableMsg);
  55. void paintPlainWidget();
  56. void computerCompositeValue(QList<NodeMatrixInfo *> &compositeNodeValueInfoList, QList<int> expertIds,
  57. int engineerId, QString tabMsg);
  58. void yuefen(long int &numerator, long int &denominator);
  59. };
  60. #endif // ANALYSISPANELWIDGET_H