Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Q
qk_backend
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
quanku
qk_backend
Commits
ea39d55e
Commit
ea39d55e
authored
Sep 06, 2023
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
es查询
parent
1d8b9822
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
10 deletions
+8
-10
ch-dao/src/main/java/com/wwdz/ch/db/es/ItemEsDao.java
ch-dao/src/main/java/com/wwdz/ch/db/es/ItemEsDao.java
+8
-10
No files found.
ch-dao/src/main/java/com/wwdz/ch/db/es/ItemEsDao.java
View file @
ea39d55e
...
...
@@ -92,38 +92,36 @@ public class ItemEsDao {
SOURCE_LIST
.
forEach
(
i
->
{
sourceQueryList
.
add
(
FieldValue
.
of
(
i
));
});
Query
terms
Query
=
QueryBuilders
.
terms
(
s
->
s
.
field
(
"source"
).
terms
(
t
->
t
.
value
(
sourceQueryList
)));
Query
source
Query
=
QueryBuilders
.
terms
(
s
->
s
.
field
(
"source"
).
terms
(
t
->
t
.
value
(
sourceQueryList
)));
//展示待处理和已发布状态的商品
List
<
FieldValue
>
stateQueryList
=
new
ArrayList
<>();
stateQueryList
.
add
(
FieldValue
.
of
(
1
));
stateQueryList
.
add
(
FieldValue
.
of
(
10
));
Query
stateQuery
=
QueryBuilders
.
terms
(
s
->
s
.
field
(
"state"
).
terms
(
t
->
t
.
value
(
stateQueryList
)));
Query
shouldQuery
=
QueryBuilders
.
bool
(
q
->
q
.
should
(
termsQuery
,
stateQuery
));
BoolQuery
.
Builder
build
=
QueryBuilders
.
bool
().
filter
(
shouldQuery
);
BoolQuery
.
Builder
build
=
QueryBuilders
.
bool
().
filter
(
stateQuery
).
filter
(
sourceQuery
);
Query
wildcardQuery
=
WildcardQuery
.
of
(
w
->
w
.
field
(
"images"
).
value
(
"*_*"
)).
_toQuery
();
build
.
filter
(
wildcardQuery
);
Query
isDeleteQuery
=
TermQuery
.
of
(
t
->
t
.
field
(
"isDeleted"
).
value
(
false
)).
_toQuery
();
build
.
filter
(
isDeleteQuery
);
if
(
StringUtils
.
hasLength
(
esSearchRequestDto
.
getContent
()))
{
Query
matchQuery
=
MatchQuery
.
of
(
m
->
m
.
field
(
"name"
)
.
query
(
esSearchRequestDto
.
getContent
())
).
_toQuery
();
build
.
must
(
matchQuery
);
builder
.
from
(
from
);
builder
.
query
(
build
.
build
().
_toQuery
());
builder
.
from
(
from
);
}
else
{
Random
random
=
new
Random
();
FunctionScoreQuery
functionScoreQuery
=
FunctionScoreQuery
.
of
(
a
->
a
.
query
(
build
.
build
().
_toQuery
()).
boostMode
(
FunctionBoostMode
.
Replace
)
.
functions
(
b
->
b
.
randomScore
(
s
->
s
.
field
(
"id"
).
seed
(
String
.
valueOf
(
random
.
nextDouble
())))));
builder
.
query
(
functionScoreQuery
.
_toQuery
());
}
Query
wildcardQuery
=
WildcardQuery
.
of
(
w
->
w
.
field
(
"images"
).
value
(
"*_*"
)).
_toQuery
();
build
.
filter
(
wildcardQuery
);
Query
isDeleteQuery
=
TermQuery
.
of
(
t
->
t
.
field
(
"isDeleted"
).
value
(
false
)).
_toQuery
();
build
.
filter
(
isDeleteQuery
);
builder
.
size
(
size
);
SearchRequest
searchRequest
=
builder
.
build
();
logger
.
info
(
"查询语句 : {}"
,
searchRequest
.
toString
());
logger
.
info
(
"
es
查询语句 : {}"
,
searchRequest
.
toString
());
SearchResponse
<
ItemOfEs
>
searchResponse
=
elasticsearchClient
.
search
(
searchRequest
,
ItemOfEs
.
class
);
long
total
=
searchResponse
.
hits
().
total
().
value
();
logger
.
info
(
"总数据量 : {}, 耗时 : {}"
,
total
,
searchResponse
.
took
());
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment