|
@@ -17,8 +17,7 @@ type SearchBuilder struct {
|
|
|
whereTitle string
|
|
whereTitle string
|
|
|
whereTypeFolder bool
|
|
whereTypeFolder bool
|
|
|
whereTypeDash bool
|
|
whereTypeDash bool
|
|
|
- whereFolderId int64
|
|
|
|
|
- expandedFolders []int64
|
|
|
|
|
|
|
+ whereFolderIds []int64
|
|
|
sql bytes.Buffer
|
|
sql bytes.Buffer
|
|
|
params []interface{}
|
|
params []interface{}
|
|
|
}
|
|
}
|
|
@@ -72,14 +71,8 @@ func (sb *SearchBuilder) WithType(queryType string) *SearchBuilder {
|
|
|
return sb
|
|
return sb
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func (sb *SearchBuilder) WithFolderId(folderId int64) *SearchBuilder {
|
|
|
|
|
- sb.whereFolderId = folderId
|
|
|
|
|
-
|
|
|
|
|
- return sb
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-func (sb *SearchBuilder) WithExpandedFolders(expandedFolders []int64) *SearchBuilder {
|
|
|
|
|
- sb.expandedFolders = expandedFolders
|
|
|
|
|
|
|
+func (sb *SearchBuilder) WithFolderIds(folderIds []int64) *SearchBuilder {
|
|
|
|
|
+ sb.whereFolderIds = folderIds
|
|
|
return sb
|
|
return sb
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -212,17 +205,10 @@ func (sb *SearchBuilder) buildSearchWhereClause() {
|
|
|
sb.sql.WriteString(" AND dashboard.is_folder = 0")
|
|
sb.sql.WriteString(" AND dashboard.is_folder = 0")
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if sb.whereFolderId > 0 {
|
|
|
|
|
- sb.sql.WriteString(" AND dashboard.folder_id = ?")
|
|
|
|
|
- sb.params = append(sb.params, sb.whereFolderId)
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- if len(sb.expandedFolders) > 0 {
|
|
|
|
|
- sb.sql.WriteString(` AND (dashboard.folder_id IN (?` + strings.Repeat(",?", len(sb.expandedFolders)-1) + `) `)
|
|
|
|
|
- sb.sql.WriteString(` OR dashboard.folder_id IS NULL OR dashboard.folder_id = 0)`)
|
|
|
|
|
-
|
|
|
|
|
- for _, ef := range sb.expandedFolders {
|
|
|
|
|
- sb.params = append(sb.params, ef)
|
|
|
|
|
|
|
+ if len(sb.whereFolderIds) > 0 {
|
|
|
|
|
+ sb.sql.WriteString(` AND dashboard.folder_id IN (?` + strings.Repeat(",?", len(sb.whereFolderIds)-1) + `) `)
|
|
|
|
|
+ for _, id := range sb.whereFolderIds {
|
|
|
|
|
+ sb.params = append(sb.params, id)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|