|
@@ -158,7 +158,7 @@ bool ProjectService::QueryAll(QList<ProjectInfo *> *projectInfoList)
|
|
|
QString selectSql =
|
|
|
QString("SELECT id, project_name, remark,task_name,estimate_time,estimate_objective,estimate_dept,"
|
|
|
"estimate_person,positional_titles,create_time,update_time,estimate_type FROM "
|
|
|
- "t_project_info");
|
|
|
+ "t_project_info order by create_time desc");
|
|
|
if (query.exec(selectSql)) {
|
|
|
while (query.next()) {
|
|
|
if (query.isNull(0) == false) {
|
|
@@ -201,3 +201,54 @@ bool ProjectService::DeleteById(int id)
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
|
+
|
|
|
+bool ProjectService::SelectAllByPage(QList<ProjectInfo *> *projectInfoList, int &totalPages, int page, int pageSize,
|
|
|
+ QString name)
|
|
|
+{
|
|
|
+
|
|
|
+ int offset = (page - 1) * pageSize;
|
|
|
+ name = "%" + name + "%";
|
|
|
+
|
|
|
+ QSqlDatabase db = SqlDBHelper::getDatabase();
|
|
|
+ QSqlQuery query(db);
|
|
|
+ bool ret = false;
|
|
|
+ QString selectSql =
|
|
|
+ QString("SELECT id, project_name, remark,task_name,estimate_time,estimate_objective,estimate_dept,"
|
|
|
+ "estimate_person,positional_titles,create_time,update_time,estimate_type FROM "
|
|
|
+ "t_project_info where name like %1 order by create_time desc LIMIT %2 OFFSET %3")
|
|
|
+ .arg(name)
|
|
|
+ .arg(pageSize)
|
|
|
+ .arg(offset);
|
|
|
+
|
|
|
+ if (query.exec(selectSql)) {
|
|
|
+ while (query.next()) {
|
|
|
+ if (query.isNull(0) == false) {
|
|
|
+ ProjectInfo *projectInfo = new ProjectInfo();
|
|
|
+ projectInfo->id = query.value(0).toInt();
|
|
|
+ projectInfo->projectName = query.value(1).toString();
|
|
|
+ projectInfo->remark = query.value(2).toString();
|
|
|
+ projectInfo->taskName = query.value(3).toString();
|
|
|
+ projectInfo->estimateTime = query.value(4).toString();
|
|
|
+ projectInfo->estimateObjective = query.value(5).toString();
|
|
|
+ projectInfo->estimateDept = query.value(6).toString();
|
|
|
+ projectInfo->estimatePerson = query.value(7).toString();
|
|
|
+ projectInfo->positionalTitles = query.value(8).toString();
|
|
|
+ projectInfo->createTime = query.value(9).toString();
|
|
|
+ projectInfo->updateTime = query.value(10).toString();
|
|
|
+ projectInfo->estimateType = query.value(11).toString();
|
|
|
+ projectInfoList->append(projectInfo);
|
|
|
+ }
|
|
|
+ ret = true;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ qDebug() << query.lastError();
|
|
|
+ }
|
|
|
+ QString selectSqlAll = QString("SELECT * FROM t_project_info where name like %1 ").arg(name);
|
|
|
+ if (query.exec(selectSqlAll)) {
|
|
|
+ query.next();
|
|
|
+ int totalCount = query.value(0).toInt();
|
|
|
+ totalPages = totalCount / pageSize + (totalCount % pageSize == 0 ? 0 : 1);
|
|
|
+ }
|
|
|
+
|
|
|
+ return ret;
|
|
|
+}
|