2021-01-25 16:40:03 +08:00
|
|
|
package dbutils
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"github.com/iwind/TeaGo/dbs"
|
2022-03-27 12:22:47 +08:00
|
|
|
"strings"
|
2021-01-25 16:40:03 +08:00
|
|
|
)
|
|
|
|
|
|
2022-03-22 19:30:30 +08:00
|
|
|
// NewQuery 构造Query
|
2021-01-25 16:40:03 +08:00
|
|
|
func NewQuery(tx *dbs.Tx, dao dbs.DAOWrapper, adminId int64, userId int64) *dbs.Query {
|
|
|
|
|
query := dao.Object().Query(tx)
|
|
|
|
|
if adminId > 0 {
|
|
|
|
|
//query.Attr("adminId", adminId)
|
|
|
|
|
}
|
|
|
|
|
if userId > 0 {
|
|
|
|
|
query.Attr("userId", userId)
|
|
|
|
|
}
|
|
|
|
|
return query
|
|
|
|
|
}
|
2022-03-27 12:22:47 +08:00
|
|
|
|
|
|
|
|
// QuoteLikeKeyword 处理关键词中的特殊字符
|
|
|
|
|
func QuoteLikeKeyword(keyword string) string {
|
|
|
|
|
keyword = strings.ReplaceAll(keyword, "%", "\\%")
|
|
|
|
|
keyword = strings.ReplaceAll(keyword, "_", "\\_")
|
|
|
|
|
return keyword
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func QuoteLike(keyword string) string {
|
|
|
|
|
return "%" + QuoteLikeKeyword(keyword) + "%"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func QuoteLikePrefix(keyword string) string {
|
|
|
|
|
return QuoteLikeKeyword(keyword) + "%"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func QuoteLikeSuffix(keyword string) string {
|
|
|
|
|
return "%" + QuoteLikeKeyword(keyword)
|
|
|
|
|
}
|