gofound/service/index-service.go

35 lines
808 B
Go

package service
import (
"myschools.me/suguo/gofound/searcher/model"
)
// 添加索引
func IndexAdd(dbName *string, req *model.IndexDoc) error {
return container.GetDataBase(*dbName).IndexDocument(req)
}
func IndexQuery(request *model.SearchRequest) (*model.SearchResult, error) {
return container.GetDataBase(request.Database).MultiSearch(request)
}
// 批次添加索引
func IndexBatchAdd(dbName string, documents []*model.IndexDoc) error {
db := container.GetDataBase(dbName)
for _, doc := range documents {
if err := db.IndexDocument(doc); err != nil {
return err
}
}
return nil
}
// 删除索引
func IndexRemove(dbName string, data *model.RemoveIndexModel) error {
db := container.GetDataBase(dbName)
if err := db.RemoveIndex(data.Id); err != nil {
return err
}
return nil
}