最近系统有个需求,希望工作流的审批人被催办后就要置顶在最前面,
工作流列表我是用es的,一开始想用pinned实现,但用pinned的话,每页都会置顶在前面,我的需求只是想让他优先排在前面,翻页后正常显示
后面找到这个,通过把匹配到数据的分数提高,然后用sort进行排序,就能实现我的需求了 - GET wf_workflow-latest/_search
- {
-
- "query": {
- "bool": {
- "must": [
- {
- "boosting": {<br> //这是数据过滤条件,影响数据结果
- "positive": {
- "match_all": {}
- },<br> //这是相关性数据的过滤条件,不会影响数据结果,对得分有影响
- "negative": {
- "bool": {
- "must": [
- {
- "nested": {
- "path": "current_task.reminders",
- "query": {
- "term": {
- "current_task.reminders.reminder_user_id": {
- "value": 1
- }
- }
- }
- }
- }
- ]
- }
- },<br> //将匹配到的相关性数据的得分乘以这个系数
- "negative_boost": 10
- }
- }
- ]
- }
- },
- "sort": [
- "_score",
- {
- "last_modification_time": {
- "order": "asc"
- }
- }
- ],
- "from": 0,
- "size": 20
- }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |