Files
jx-print/dao/user_dao.go
suyl c31499ddb7 aa
2021-07-15 18:48:28 +08:00

73 lines
1.7 KiB
Go

package dao
import (
"git.rosy.net.cn/baseapi/utils"
"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) {
sql := `
SELECT *
FROM user
WHERE 1 = 1 AND deleted_at = ?
`
sqlParams := []interface{}{utils.DefaultTimeValue}
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) (users []*model.User, err error) {
sql := `
SELECT *
FROM user
WHERE name = ? AND password = ? AND deleted_at = ?
`
sqlParams := []interface{}{name, password, utils.DefaultTimeValue}
if err = db.Select(&users, sql, sqlParams...); err == nil {
return users, err
}
return users, err
}
func GetMenus(db *sqlx.DB) (menus []*model.Menu, err error) {
sql := `
SELECT *
FROM menu
WHERE 1 = 1 AND deleted_at = ?
`
sqlParams := []interface{}{utils.DefaultTimeValue}
if err = db.Select(&menus, sql, sqlParams...); err == nil {
return menus, err
}
return menus, err
}