diff --git a/migration/1703804755642-addIsActiveToMainCategories.ts b/migration/1703804755642-addIsActiveToMainCategories.ts new file mode 100644 index 000000000..60aaba0b2 --- /dev/null +++ b/migration/1703804755642-addIsActiveToMainCategories.ts @@ -0,0 +1,23 @@ +import { MigrationInterface, QueryRunner } from 'typeorm'; + +export class addIsActiveToMainCategories1703804755642 + implements MigrationInterface +{ + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query( + ` + ALTER TABLE main_category + ADD COLUMN IF NOT EXISTS "isActive" boolean DEFAULT true + `, + ); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query( + ` + ALTER TABLE main_category + DROP "isActive" + `, + ); + } +} diff --git a/src/entities/mainCategory.ts b/src/entities/mainCategory.ts index c02c29f7d..bfb3dcbc5 100644 --- a/src/entities/mainCategory.ts +++ b/src/entities/mainCategory.ts @@ -32,6 +32,10 @@ export class MainCategory extends BaseEntity { // ipfs link banner: string; + @Field() + @Column({ default: true }) + isActive: boolean; + @Field(type => [Category], { nullable: true }) @OneToMany(type => Category, category => category.mainCategory) categories?: Category[]; diff --git a/src/resolvers/categoryResolver.ts b/src/resolvers/categoryResolver.ts index ad82882a1..13fe485a7 100644 --- a/src/resolvers/categoryResolver.ts +++ b/src/resolvers/categoryResolver.ts @@ -23,7 +23,7 @@ export class CategoryResolver { return this.categoryRepository .createQueryBuilder('category') .leftJoinAndSelect('category.mainCategory', 'mainCategory') - .where(`"isActive"=true`) + .where(`category."isActive"=true`) .orderBy({ 'category.name': 'ASC', }) @@ -35,8 +35,9 @@ export class CategoryResolver { .innerJoinAndSelect( 'mainCategory.categories', 'categories', - `"isActive"=true`, + `categories."isActive"=true`, ) + .where(`"mainCategory"."isActive"=true`) .orderBy({ 'mainCategory.title': 'ASC', 'categories.name': 'ASC', diff --git a/src/server/adminJs/tabs/categoryTab.ts b/src/server/adminJs/tabs/categoryTab.ts index 2658ec3e7..637882ee3 100644 --- a/src/server/adminJs/tabs/categoryTab.ts +++ b/src/server/adminJs/tabs/categoryTab.ts @@ -51,8 +51,14 @@ export const categoryTab = { value: { isVisible: true, }, - mainCategory: { - isVisible: true, + mainCategoryId: { + isVisible: { + list: true, + filter: true, + show: true, + edit: true, + new: true, + }, }, }, }, diff --git a/src/server/adminJs/tabs/mainCategoryTab.ts b/src/server/adminJs/tabs/mainCategoryTab.ts index dd0d2eca4..34e8df74d 100644 --- a/src/server/adminJs/tabs/mainCategoryTab.ts +++ b/src/server/adminJs/tabs/mainCategoryTab.ts @@ -45,6 +45,9 @@ export const mainCategoryTab = { banner: { isVisible: true, }, + isActive: { + isVisible: true, + }, slug: { isVisible: true, },