- GetUsers支持分页

This commit is contained in:
gazebo
2019-08-14 11:32:20 +08:00
parent 4c484a6280
commit f788eec5c1
6 changed files with 29 additions and 11 deletions

View File

@@ -23,12 +23,15 @@ func GetUserByID(db *DaoDB, fieldName, fieldValue string) (user *model.User, err
return user, err
}
func GetUsers(db *DaoDB, userType int, keyword string, userIDs []string, userID2, mobile string) (userList []*model.User, err error) {
func GetUsers(db *DaoDB, userType int, keyword string, userIDs []string, userID2, mobile string, offset, pageSize int) (userList []*model.User, totalCount int, err error) {
offset = FormalizePageOffset(offset)
pageSize = FormalizePageSize(pageSize)
if userType == 0 {
userType = 255
}
sql := `
SELECT *
SELECT SQL_CALC_FOUND_ROWS
t1.*
FROM user t1
WHERE t1.status = 1 AND t1.deleted_at = ? AND t1.type & ? <> 0`
sqlParams := []interface{}{
@@ -52,6 +55,12 @@ func GetUsers(db *DaoDB, userType int, keyword string, userIDs []string, userID2
sql += " AND (t1.user_id2 LIKE ? OR t1.mobile LIKE ? OR t1.email LIKE ? OR t1.name LIKE ?)"
sqlParams = append(sqlParams, keywordLike, keywordLike, keywordLike, keywordLike)
}
err = GetRows(db, &userList, sql, sqlParams...)
return userList, err
sql += " LIMIT ? OFFSET ?"
sqlParams = append(sqlParams, pageSize, offset)
Begin(db)
defer Rollback(db)
if err = GetRows(db, &userList, sql, sqlParams...); err == nil {
totalCount = GetLastTotalRowCount(db)
}
return userList, totalCount, err
}