fix: datatable count including entries from other guilds
This commit is contained in:
parent
7ef8b88aab
commit
6b6af17731
@ -25,7 +25,7 @@ export const datatableRequest = async <TOrderBy, TWhere>(
|
||||
model: ModelDelegate,
|
||||
defaultOrderBy: TOrderBy,
|
||||
include?: object,
|
||||
where?: object
|
||||
baseWhere?: object
|
||||
) => {
|
||||
const query = request.body as unknown as DatatableQuery;
|
||||
|
||||
@ -33,7 +33,7 @@ export const datatableRequest = async <TOrderBy, TWhere>(
|
||||
? { [query.columns[query.order[0].column].data]: query.order[0].dir } as unknown as TOrderBy
|
||||
: defaultOrderBy;
|
||||
|
||||
const searchWhere = query.search?.value
|
||||
let filterWhere = query.search?.value
|
||||
? {
|
||||
OR: Object.values(query.columns)
|
||||
.filter(col => col.searchable)
|
||||
@ -43,18 +43,18 @@ export const datatableRequest = async <TOrderBy, TWhere>(
|
||||
}
|
||||
: {};
|
||||
|
||||
where = { ...where, ...searchWhere };
|
||||
filterWhere = { ...filterWhere, ...baseWhere };
|
||||
|
||||
const data = await model.findMany({
|
||||
skip: query.start,
|
||||
take: query.length,
|
||||
orderBy,
|
||||
where,
|
||||
include,
|
||||
orderBy: orderBy,
|
||||
where: filterWhere,
|
||||
include: include,
|
||||
});
|
||||
|
||||
const recordsFiltered = await model.count({ where });
|
||||
const recordsTotal = await model.count();
|
||||
const recordsFiltered = await model.count({ where: filterWhere });
|
||||
const recordsTotal = await model.count({ where: baseWhere });
|
||||
|
||||
response.json({
|
||||
data,
|
||||
|
Loading…
x
Reference in New Issue
Block a user