Fixes
This commit is contained in:
parent
7c06f1a407
commit
dc5a7dbc62
|
@ -337,7 +337,7 @@ class InternalBuilder {
|
||||||
if (!filters) {
|
if (!filters) {
|
||||||
return query
|
return query
|
||||||
}
|
}
|
||||||
filters = this.parseFilters(filters)
|
filters = this.parseFilters({ ...filters })
|
||||||
const aliases = this.query.tableAliases
|
const aliases = this.query.tableAliases
|
||||||
// if all or specified in filters, then everything is an or
|
// if all or specified in filters, then everything is an or
|
||||||
const allOr = filters.allOr
|
const allOr = filters.allOr
|
||||||
|
@ -466,15 +466,21 @@ class InternalBuilder {
|
||||||
if (filters.$and) {
|
if (filters.$and) {
|
||||||
const { $and } = filters
|
const { $and } = filters
|
||||||
for (const condition of $and.conditions) {
|
for (const condition of $and.conditions) {
|
||||||
query = query.andWhere(b => this.addFilters(b, condition, opts))
|
query = query.where(b => {
|
||||||
|
this.addFilters(b, condition, opts)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (filters.$or) {
|
if (filters.$or) {
|
||||||
const { $or } = filters
|
const { $or } = filters
|
||||||
|
query = query.where(b => {
|
||||||
for (const condition of $or.conditions) {
|
for (const condition of $or.conditions) {
|
||||||
query = query.orWhere(b => this.addFilters(b, condition, opts))
|
b.orWhere(c =>
|
||||||
|
this.addFilters(c, { ...condition, allOr: true }, opts)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
if (filters.oneOf) {
|
if (filters.oneOf) {
|
||||||
|
|
Loading…
Reference in New Issue