Refactor product relations to use new category_product and channel_product tables

- Updated queries and relationships in various controllers and models to replace `product_has_relations` with `category_product` and `channel_product`.
- Adjusted methods in `ProductFilterer`, `FilterParamsController`, and `FilterController` to reflect the new database structure.
- Modified seeder to insert data into the new `channel_product` table.
- Updated tests to ensure compatibility with the new product relation structure.
This commit is contained in:
Mekan1206
2026-02-09 00:48:22 +05:00
parent 683fa5e0d9
commit 522ebdae34
15 changed files with 102 additions and 48 deletions

View File

@@ -81,11 +81,10 @@ class ProductFilterer
$this->queryBuilder->whereIn(
column: 'id',
values: (
fn ($query) => $query->from('product_has_relations')
fn ($query) => $query->from('category_product')
->select('product_id')
->distinct('product_id')
->where('productable_type', '=', 'category')
->whereIn('productable_id', explode(',', $this->request->categories))
->whereIn('category_id', explode(',', $this->request->categories))
)
);
}