Fix chunk enable/disable issue (#3579)

### What problem does this PR solve?

#3576

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
Kevin Hu
2024-11-22 12:25:42 +08:00
committed by GitHub
parent 60a3e1a8dc
commit 9f3141804f
4 changed files with 16 additions and 7 deletions

View File

@ -56,7 +56,7 @@ class Dealer:
if key in req and req[key] is not None:
condition[field] = req[key]
# TODO(yzc): `available_int` is nullable however infinity doesn't support nullable columns.
for key in ["knowledge_graph_kwd"]:
for key in ["knowledge_graph_kwd", "available_int"]:
if key in req and req[key] is not None:
condition[key] = req[key]
return condition

View File

@ -121,8 +121,14 @@ class ESConnection(DocStoreConnection):
bqry = Q("bool", must=[])
condition["kb_id"] = knowledgebaseIds
for k, v in condition.items():
if not isinstance(k, str) or not v:
if k == "available_int":
if v == 0:
bqry.filter.append(Q("range", available_int={"lt": 1}))
else:
bqry.filter.append(
Q("bool", must_not=Q("range", available_int={"lt": 1})))
continue
if not v: continue
if isinstance(v, list):
bqry.filter.append(Q("terms", **{k: v}))
elif isinstance(v, str) or isinstance(v, int):