Files
2022-01-22 16:55:10 +08:00

35 lines
900 B
Go

package search
import (
"SciencesServer/app/basic/config"
"SciencesServer/app/basic/controller"
"errors"
)
type Instance struct{}
type InstanceHandle func() *Instance
var instanceHandle = map[int]func(int, int, string, string, map[string]interface{}) (*controller.ReturnPages, error){
1: searchCompany, 2: achievementSearch, 3: searchLaboratory,
4: searchPatent, 5: searchExpert, 6: searchDemand,
}
// Launch 发起搜索
func (c *Instance) Launch(mode int, keyword, industry string, params map[string]interface{}, page, pageSize int) (interface{}, error) {
_industry := config.GetIndustryInfo(industry, "-", "-").Value
handle, has := instanceHandle[mode]
if !has {
return nil, errors.New("操作错误,未知的搜索模式")
}
return handle(page, pageSize, keyword, _industry, params)
}
func NewInstance() InstanceHandle {
return func() *Instance {
return &Instance{}
}
}