diff --git a/src/modules/item-related/item-rate/domain/usecases/managers/index-item-rate.manager.ts b/src/modules/item-related/item-rate/domain/usecases/managers/index-item-rate.manager.ts index a2d85a5..ab9ef9d 100644 --- a/src/modules/item-related/item-rate/domain/usecases/managers/index-item-rate.manager.ts +++ b/src/modules/item-related/item-rate/domain/usecases/managers/index-item-rate.manager.ts @@ -90,12 +90,36 @@ export class IndexItemRateManager extends BaseIndexManager { } get specificFilter(): Param[] { - return []; + return [ + { + cols: `${ this.tableName }.name`, + data: this.filterParam.names, + }, + { + cols: `${ this.tableName }.item_type::text`, + data: this.filterParam.item_types, + }, + { + cols: `${ this.tableName }.limit_type::text`, + data: this.filterParam.limit_types, + }, + { + cols: `item_category.name`, + data: this.filterParam.item_categories, + }, + ]; } setQueryFilter( queryBuilder: SelectQueryBuilder, ): SelectQueryBuilder { + if (this.filterParam.tenant_ids?.length) { + queryBuilder.andWhere(`${ this.tableName }.tenant_id In (:...tenantIds)`, { + tenantIds: this.filterParam.tenant_ids, + }); + } else if (!this.filterParam.all_item) { + queryBuilder.andWhere(`${ this.tableName }.tenant_id Is Null`); + } return queryBuilder; }