浏览代码

测试分页查询

chengxr 1 年之前
父节点
当前提交
5c129cbbe6
共有 4 个文件被更改,包括 39 次插入4 次删除
  1. 6 0
      QFD/common/ProjectManager.cpp
  2. 1 0
      QFD/common/ProjectManager.h
  3. 25 1
      QFD/view/HomeView.cpp
  4. 7 3
      QFD/view/HomeView.h

+ 6 - 0
QFD/common/ProjectManager.cpp

@@ -93,6 +93,12 @@ int ProjectManager::queryProjects(QList<ProjectInfo *> *projList)
     return ret ? QF_CODE_SUCCEEDED : QF_CODE_DATA_ERROR;
     return ret ? QF_CODE_SUCCEEDED : QF_CODE_DATA_ERROR;
 }
 }
 
 
+int ProjectManager::queryProjects(QList<ProjectInfo *> *list, int &total, int page, int pageSize, QString name)
+{
+    bool ret = ProjectService().SelectAllByPage(list, total, page, pageSize, name);
+    return ret ? QF_CODE_SUCCEEDED : QF_CODE_DATA_ERROR;
+}
+
 int ProjectManager::verifyProjectInfo(ProjectInfo proj)
 int ProjectManager::verifyProjectInfo(ProjectInfo proj)
 {
 {
     if (proj.taskName.isEmpty() || proj.estimateObjective.isEmpty() || proj.estimateDept.isEmpty()
     if (proj.taskName.isEmpty() || proj.estimateObjective.isEmpty() || proj.estimateDept.isEmpty()

+ 1 - 0
QFD/common/ProjectManager.h

@@ -50,6 +50,7 @@ public:
     /// \param projList 项目列表
     /// \param projList 项目列表
     /// \return 错误码
     /// \return 错误码
     static int queryProjects(QList<ProjectInfo *> *projList);
     static int queryProjects(QList<ProjectInfo *> *projList);
+    static int queryProjects(QList<ProjectInfo *> *list, int &total, int page, int pageSize, QString name);
 
 
     static int verifyProjectInfo(ProjectInfo proj);
     static int verifyProjectInfo(ProjectInfo proj);
 
 

+ 25 - 1
QFD/view/HomeView.cpp

@@ -111,13 +111,17 @@ void HomeView::connectSignalsAndSlots()
     connect(m_projListWidget, &ProjectListWidget::sigOpen, this, &HomeView::slotOpenProject);
     connect(m_projListWidget, &ProjectListWidget::sigOpen, this, &HomeView::slotOpenProject);
     connect(m_projListWidget, &ProjectListWidget::sigInfo, this, &HomeView::slotProjectInfo);
     connect(m_projListWidget, &ProjectListWidget::sigInfo, this, &HomeView::slotProjectInfo);
     connect(m_projListWidget, &ProjectListWidget::sigDelete, this, &HomeView::slotDeleteProject);
     connect(m_projListWidget, &ProjectListWidget::sigDelete, this, &HomeView::slotDeleteProject);
+    connect(m_previous, &PushButton::clicked, this, &HomeView::slotPreviousClicked);
+    connect(m_next, &PushButton::clicked, this, &HomeView::slotNextClicked);
+    connect(m_first, &PushButton::clicked, this, &HomeView::slotFirstClicked);
+    connect(m_final, &PushButton::clicked, this, &HomeView::slotFinalClicked);
 }
 }
 
 
 void HomeView::loadProjects()
 void HomeView::loadProjects()
 {
 {
     qDeleteAll(m_projList);
     qDeleteAll(m_projList);
     m_projList.clear();
     m_projList.clear();
-    int code = ProjectManager::queryProjects(&m_projList);
+    int code = ProjectManager::queryProjects(&m_projList, m_total, m_page, m_pageSize, m_search->text());
 
 
     if (code != QF_CODE_SUCCEEDED) {
     if (code != QF_CODE_SUCCEEDED) {
         QFDAlert::showAlertWithCode(code, this);
         QFDAlert::showAlertWithCode(code, this);
@@ -214,3 +218,23 @@ void HomeView::slotDeleteProject(ProjectInfo *proj)
         }
         }
     }
     }
 }
 }
+
+void HomeView::slotPreviousClicked()
+{
+    qDebug() << __FUNCTION__ << __LINE__ << endl;
+}
+
+void HomeView::slotNextClicked()
+{
+    qDebug() << __FUNCTION__ << __LINE__ << endl;
+}
+
+void HomeView::slotFirstClicked()
+{
+    qDebug() << __FUNCTION__ << __LINE__ << endl;
+}
+
+void HomeView::slotFinalClicked()
+{
+    qDebug() << __FUNCTION__ << __LINE__ << endl;
+}

+ 7 - 3
QFD/view/HomeView.h

@@ -47,6 +47,10 @@ private slots:
     void slotProjectInfo(ProjectInfo *proj);
     void slotProjectInfo(ProjectInfo *proj);
     void slotOpenProject(ProjectInfo *proj);
     void slotOpenProject(ProjectInfo *proj);
     void slotDeleteProject(ProjectInfo *proj);
     void slotDeleteProject(ProjectInfo *proj);
+    void slotPreviousClicked();
+    void slotNextClicked();
+    void slotFirstClicked();
+    void slotFinalClicked();
 
 
 private:
 private:
     bool m_initilized = false;
     bool m_initilized = false;
@@ -72,9 +76,9 @@ private:
     CreateProjWidget *m_createProjWidget = nullptr;
     CreateProjWidget *m_createProjWidget = nullptr;
 
 
     QList<ProjectInfo *> m_projList;
     QList<ProjectInfo *> m_projList;
-    int m_page  = 0;   // 页码
-    int m_step  = 20;  // 每页条数
-    int m_total = 0;   // 总数
+    int m_page     = 0;   // 页码
+    int m_pageSize = 20;  // 每页条数
+    int m_total    = 0;   // 总数
 };
 };
 
 
 #endif  // HOMEVIEW_H
 #endif  // HOMEVIEW_H