@groovy.util.logging.Slf4j @grails.gorm.transactions.Transactional @groovy.transform.CompileStatic class SearchController extends java.lang.Object
领域模型对象数据搜索的 Restful 接口,对于每个领域模型对象,具体可以通过哪些字段搜索, 是通过领域模型定义中的 inlineSearchColumns 静态属性来设定的 如果没有设定该值属性, 则表示不支持快捷搜索, 后台会范围空列表
Type | Name and description |
---|---|
CustomiseEngineService |
customiseEngineService |
DomainClassService |
domainClassService |
OrganizationService |
organizationService |
static java.lang.Object |
responseFormats |
SearchService |
searchService |
grails.plugin.springsecurity.SpringSecurityService |
springSecurityService |
UserService |
userService |
Constructor and description |
---|
SearchController
() |
Type Params | Return Type | Name and description |
---|---|---|
|
static java.util.List |
inlineSearchByKeyword(java.lang.Class<?> fieldClass, java.lang.String keyword) |
|
java.lang.Object |
search(java.lang.String domainName, java.lang.String fieldName, java.lang.String fieldType, java.lang.String q) Search for an object analyzer: _analyzer: : standard : ['lowercase'] 如果定义了该对象的该字段的自定义搜索的 Dynamic Logic, 则优先调用该搜索逻辑并返回其返回值 否则会调用 elastic search 插件给domain class注入的 search 方法, 通过 elastic search 进行搜索, 搜索返回后, 如果发现 ES 返回的结果在数据库中不存在, 会在返回结果的同时,启动一个新的线程, 在后台将该搜索 index 从 ES中移除 搜索的关键字通过 q 参数从界面传入 |
|
java.lang.Object |
searchObjectList(java.lang.String domainName, java.lang.String ownerClass, java.lang.String ownerId, java.lang.String ownerClassColumnName, java.lang.Integer max, java.lang.Integer offset, java.lang.String fetchType, java.lang.String sortField, java.lang.String sortDirection) 搜索对象列表,前台在 request body 中传递搜索参数, 搜索参数是一个数组,数组的每个元素遵循如下的结构 关联对象的列表页面也使用本接口进行数据返回 {* matchMode: 匹配规则, columnKey: 字段名称 value: 搜索的关键字或者关联对象id等 }* |
Methods inherited from class | Name |
---|---|
class java.lang.Object |
java.lang.Object#getClass(), java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#hashCode(), java.lang.Object#equals(java.lang.Object), java.lang.Object#notifyAll(), java.lang.Object#toString(), java.lang.Object#notify() |
Search for an object analyzer: _analyzer: : standard : ['lowercase'] 如果定义了该对象的该字段的自定义搜索的 Dynamic Logic, 则优先调用该搜索逻辑并返回其返回值 否则会调用 elastic search 插件给domain class注入的 search 方法, 通过 elastic search 进行搜索, 搜索返回后, 如果发现 ES 返回的结果在数据库中不存在, 会在返回结果的同时,启动一个新的线程, 在后台将该搜索 index 从 ES中移除 搜索的关键字通过 q 参数从界面传入
fieldType
- object type to search搜索对象列表,前台在 request body 中传递搜索参数, 搜索参数是一个数组,数组的每个元素遵循如下的结构 关联对象的列表页面也使用本接口进行数据返回
{* matchMode: 匹配规则, columnKey: 字段名称 value: 搜索的关键字或者关联对象id等 }*
domainName
- 对象类型名称Groovy Documentation