package dao import ( "git.rosy.net.cn/jx-print/model" "github.com/jmoiron/sqlx" ) func GetUsers(db *sqlx.DB, userID, name, mobile string) (users []*model.User, err error) { var sqlParams []interface{} sql := ` SELECT * FROM user WHERE 1 = 1 ` if name != "" { sql += " AND name LIKE ?" sqlParams = append(sqlParams, "%"+name+"%") } if userID != "" { sql += " AND user_id = ?" sqlParams = append(sqlParams, userID) } if mobile != "" { sql += " AND mobile = ?" sqlParams = append(sqlParams, mobile) } if err = db.Select(&users, sql, sqlParams...); err == nil { return users, err } return users, err } func GetUser(db *sqlx.DB, userID string) (user *model.User, err error) { var users []*model.User sql := ` SELECT * FROM user WHERE 1 = 1 AND user_id = ? ` sqlParams := []interface{}{userID} if err = db.Select(&users, sql, sqlParams...); err == nil { return users[0], err } return users[0], err } func GetUserForLogin(db *sqlx.DB, name, password string) (user *model.User, err error) { var users []*model.User sql := ` SELECT * FROM user WHERE name = ? AND password = ? ` sqlParams := []interface{}{name, password} if err = db.Select(&users, sql, sqlParams...); err == nil { return users[0], err } return user, err }