From 8121b27248003e024956c001a3328c92f3b2db18 Mon Sep 17 00:00:00 2001 From: morteza-mortezai Date: Wed, 28 Jan 2026 14:59:25 +0330 Subject: [PATCH] form builder module --- src/app.module.ts | 2 + .../controller/form-builder.controller.ts | 93 +++++++++++++++++++ .../dto/create-field-option.dto.ts | 0 .../dto/create-field.dto.ts | 0 .../dto/update-field-option.dto.ts | 0 .../dto/update-field.dto.ts | 0 .../entities/field-option.entity.ts | 0 .../entities/field.entity.ts | 10 +- .../form-builder/form-builder.module.ts | 16 ++++ src/modules/form-builder/interface/print.ts | 9 ++ .../provider/field-option.service.ts | 0 .../provider/field.service.ts | 6 +- .../repository/field-option.repository.ts | 0 .../repository/field.repository.ts | 0 .../order/controllers/order.controller.ts | 2 +- src/modules/order/entities/order.entity.ts | 6 +- .../order/interface/order.interface.ts | 3 - src/modules/order/providers/order.service.ts | 3 - .../print/controller/print.controller.ts | 82 +--------------- src/modules/print/entities/section.entity.ts | 2 +- src/modules/print/interface/print.ts | 9 -- src/modules/print/print.module.ts | 20 ++-- src/modules/print/provider/section.service.ts | 2 - .../product/dto/create-attribute.dto.ts | 2 +- .../product/entities/attribute.entity.ts | 8 +- src/seeders/data/attribute-value.data.ts | 3 +- src/seeders/data/attribute.data.ts | 2 +- 27 files changed, 151 insertions(+), 129 deletions(-) create mode 100644 src/modules/form-builder/controller/form-builder.controller.ts rename src/modules/{print => form-builder}/dto/create-field-option.dto.ts (100%) rename src/modules/{print => form-builder}/dto/create-field.dto.ts (100%) rename src/modules/{print => form-builder}/dto/update-field-option.dto.ts (100%) rename src/modules/{print => form-builder}/dto/update-field.dto.ts (100%) rename src/modules/{print => form-builder}/entities/field-option.entity.ts (100%) rename src/modules/{print => form-builder}/entities/field.entity.ts (74%) create mode 100644 src/modules/form-builder/form-builder.module.ts create mode 100644 src/modules/form-builder/interface/print.ts rename src/modules/{print => form-builder}/provider/field-option.service.ts (100%) rename src/modules/{print => form-builder}/provider/field.service.ts (90%) rename src/modules/{print => form-builder}/repository/field-option.repository.ts (100%) rename src/modules/{print => form-builder}/repository/field.repository.ts (100%) diff --git a/src/app.module.ts b/src/app.module.ts index 68ea853..8d50be8 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -17,6 +17,7 @@ import { NotificationsModule } from './modules/notification/notifications.module import { EventEmitterModule } from '@nestjs/event-emitter'; import { CacheModule } from '@nestjs/cache-manager'; import { PrintModule } from './modules/print/print.module'; +import { FormBuilderModule } from './modules/form-builder/form-builder.module'; @Module({ imports: [ @@ -41,6 +42,7 @@ import { PrintModule } from './modules/print/print.module'; NotificationsModule, EventEmitterModule.forRoot(), PrintModule, + FormBuilderModule, ], controllers: [], providers: [], diff --git a/src/modules/form-builder/controller/form-builder.controller.ts b/src/modules/form-builder/controller/form-builder.controller.ts new file mode 100644 index 0000000..5d75963 --- /dev/null +++ b/src/modules/form-builder/controller/form-builder.controller.ts @@ -0,0 +1,93 @@ +import { Controller, Get, Post, Body, Patch, Param, Delete, UseGuards } from '@nestjs/common'; +import { ApiBearerAuth, ApiOperation } from '@nestjs/swagger'; +import { AdminAuthGuard } from '../../auth/guards/adminAuth.guard'; +import { FieldService } from '../provider/field.service'; +import { CreateFieldDto } from '../dto/create-field.dto'; +import { CreateFieldOptionDto } from '../dto/create-field-option.dto'; +import { FieldOptionService } from '../provider/field-option.service'; +import { UpdateFieldDto } from '../dto/update-field.dto'; +import { UpdateFieldOptionDto } from '../dto/update-field-option.dto'; + +@Controller('admin') +@ApiBearerAuth() + export class FormBuilderController { + constructor( + private readonly fieldService: FieldService, + private readonly fieldOptionService: FieldOptionService, + ) { } + + + /*================================ Field ========================== */ + + @Post('section/:id/field') + @ApiOperation({ summary: 'Create field for section' }) + @UseGuards(AdminAuthGuard) + createField(@Body() dto: CreateFieldDto, @Param('id') sectionId: string) { + return this.fieldService.create(sectionId,dto); + } + + @Get('section/:id/field') + @ApiOperation({ summary: 'find all secion fields' }) + @UseGuards(AdminAuthGuard) + findAllSectionFields(@Param('id') sectionId: string) { + return this.fieldService.findAll(+sectionId); + } + + @Get('section/field/:id') + @ApiOperation({ summary: 'Find one field' }) + @UseGuards(AdminAuthGuard) + findOneFiled(@Param('id') id: string) { + return this.fieldService.findById(+id); + } + + @Patch('section/field/:id') + @ApiOperation({ summary: 'Update field' }) + @UseGuards(AdminAuthGuard) + updateField(@Param('id') id: string, @Body() dto: UpdateFieldDto) { + return this.fieldService.update(+id, dto); + } + + @Delete('section/field/:id') + @ApiOperation({ summary: 'Renopve field' }) + @UseGuards(AdminAuthGuard) + removeField(@Param('id') id: string) { + return this.fieldService.remove(+id); + } + + /*================================ Field Option ========================== */ + + @Post('field/:id/option') + @ApiOperation({ summary: 'Create field Options ' }) + @UseGuards(AdminAuthGuard) + createFieldOption(@Body() dto: CreateFieldOptionDto, @Param('id') id: string) { + return this.fieldOptionService.create(+id, dto); + } + + @Get('field/:id/option') + @ApiOperation({ summary: 'find all field Option' }) + @UseGuards(AdminAuthGuard) + findAllFiledOptions(@Param('id') fieldId: string) { + return this.fieldOptionService.findAll(+fieldId); + } + + @Get('field/option/:id') + @ApiOperation({ summary: 'Find one field Option' }) + @UseGuards(AdminAuthGuard) + findOneFiledOption(@Param('id') id: string) { + return this.fieldOptionService.findById(+id); + } + + @Patch('field/option/:id') + @ApiOperation({ summary: 'Update field Option' }) + @UseGuards(AdminAuthGuard) + updateFieldOption(@Param('id') id: string, @Body() dto: UpdateFieldOptionDto) { + return this.fieldOptionService.update(+id, dto); + } + + @Delete('field/option/:id') + @ApiOperation({ summary: 'Renopve field Option' }) + @UseGuards(AdminAuthGuard) + removeFieldOption(@Param('id') id: string) { + return this.fieldOptionService.remove(+id); + } +} diff --git a/src/modules/print/dto/create-field-option.dto.ts b/src/modules/form-builder/dto/create-field-option.dto.ts similarity index 100% rename from src/modules/print/dto/create-field-option.dto.ts rename to src/modules/form-builder/dto/create-field-option.dto.ts diff --git a/src/modules/print/dto/create-field.dto.ts b/src/modules/form-builder/dto/create-field.dto.ts similarity index 100% rename from src/modules/print/dto/create-field.dto.ts rename to src/modules/form-builder/dto/create-field.dto.ts diff --git a/src/modules/print/dto/update-field-option.dto.ts b/src/modules/form-builder/dto/update-field-option.dto.ts similarity index 100% rename from src/modules/print/dto/update-field-option.dto.ts rename to src/modules/form-builder/dto/update-field-option.dto.ts diff --git a/src/modules/print/dto/update-field.dto.ts b/src/modules/form-builder/dto/update-field.dto.ts similarity index 100% rename from src/modules/print/dto/update-field.dto.ts rename to src/modules/form-builder/dto/update-field.dto.ts diff --git a/src/modules/print/entities/field-option.entity.ts b/src/modules/form-builder/entities/field-option.entity.ts similarity index 100% rename from src/modules/print/entities/field-option.entity.ts rename to src/modules/form-builder/entities/field-option.entity.ts diff --git a/src/modules/print/entities/field.entity.ts b/src/modules/form-builder/entities/field.entity.ts similarity index 74% rename from src/modules/print/entities/field.entity.ts rename to src/modules/form-builder/entities/field.entity.ts index 1902ae3..3665f64 100644 --- a/src/modules/print/entities/field.entity.ts +++ b/src/modules/form-builder/entities/field.entity.ts @@ -1,8 +1,9 @@ import { Collection, Entity, Enum, ManyToOne, OneToMany, PrimaryKey, Property } from '@mikro-orm/core'; import { FieldOption } from './field-option.entity'; import { FieldType } from '../interface/print'; -import { Section } from './section.entity'; +import { Section } from 'src/modules/print/entities/section.entity'; import { BaseEntity } from 'src/common/entities/base.entity'; +import { Product } from 'src/modules/product/entities/product.entity'; @Entity({ tableName: 'field' }) @@ -13,8 +14,11 @@ export class Field extends BaseEntity { @OneToMany(() => FieldOption, (attrValue) => attrValue.field) options = new Collection(this) - @ManyToOne(() => Section) - section!: Section + @ManyToOne(() => Section, { nullable: true }) + section?: Section + + @ManyToOne(() => Product, { nullable: true }) + product?: Product @Property() name: string; diff --git a/src/modules/form-builder/form-builder.module.ts b/src/modules/form-builder/form-builder.module.ts new file mode 100644 index 0000000..70682ab --- /dev/null +++ b/src/modules/form-builder/form-builder.module.ts @@ -0,0 +1,16 @@ +import { Module } from '@nestjs/common'; +import { FormBuilderController } from './controller/form-builder.controller'; +import { FieldService } from './provider/field.service'; +import { FieldOptionService } from './provider/field-option.service'; +import { PrintModule } from '../print/print.module'; +import { FieldRepository } from './repository/field.repository'; +import { FieldOptionRepository } from './repository/field-option.repository'; +import { JwtModule } from '@nestjs/jwt'; + +@Module({ + imports: [PrintModule, JwtModule.register({})], + controllers: [FormBuilderController], + providers: [FieldService, FieldOptionService, FieldRepository, FieldOptionRepository], + exports: [FieldService, FieldOptionService, FieldRepository, FieldOptionRepository], +}) +export class FormBuilderModule { } diff --git a/src/modules/form-builder/interface/print.ts b/src/modules/form-builder/interface/print.ts new file mode 100644 index 0000000..5a34c25 --- /dev/null +++ b/src/modules/form-builder/interface/print.ts @@ -0,0 +1,9 @@ +export enum FieldType { + text = 'text', + textarea = 'textarea', + number = 'number', + select = 'select', + radio = 'radio', + checkbox = 'checkbox', + date = 'date', +} \ No newline at end of file diff --git a/src/modules/print/provider/field-option.service.ts b/src/modules/form-builder/provider/field-option.service.ts similarity index 100% rename from src/modules/print/provider/field-option.service.ts rename to src/modules/form-builder/provider/field-option.service.ts diff --git a/src/modules/print/provider/field.service.ts b/src/modules/form-builder/provider/field.service.ts similarity index 90% rename from src/modules/print/provider/field.service.ts rename to src/modules/form-builder/provider/field.service.ts index 2656664..5927717 100644 --- a/src/modules/print/provider/field.service.ts +++ b/src/modules/form-builder/provider/field.service.ts @@ -2,10 +2,10 @@ import { BadRequestException, Injectable, NotFoundException } from '@nestjs/comm import { EntityManager } from '@mikro-orm/postgresql'; import { RequiredEntityData } from '@mikro-orm/core'; import { FieldRepository } from '../repository/field.repository'; -import { SectionRepository } from '../repository/section.repository'; -import { UpdateSectionDto } from '../dto/update-section.dto'; +import { SectionRepository } from 'src/modules/print/repository/section.repository'; import { Field } from '../entities/field.entity'; import { CreateFieldDto } from '../dto/create-field.dto'; +import { UpdateFieldDto } from '../dto/update-field.dto'; @Injectable() @@ -41,7 +41,7 @@ export class FieldService { } - async update(fieldId: number, dto: UpdateSectionDto) { + async update(fieldId: number, dto: UpdateFieldDto) { const field = await this.fieldRepository.findOne({ id: fieldId }) diff --git a/src/modules/print/repository/field-option.repository.ts b/src/modules/form-builder/repository/field-option.repository.ts similarity index 100% rename from src/modules/print/repository/field-option.repository.ts rename to src/modules/form-builder/repository/field-option.repository.ts diff --git a/src/modules/print/repository/field.repository.ts b/src/modules/form-builder/repository/field.repository.ts similarity index 100% rename from src/modules/print/repository/field.repository.ts rename to src/modules/form-builder/repository/field.repository.ts diff --git a/src/modules/order/controllers/order.controller.ts b/src/modules/order/controllers/order.controller.ts index e7e9dcc..ae2e463 100644 --- a/src/modules/order/controllers/order.controller.ts +++ b/src/modules/order/controllers/order.controller.ts @@ -129,7 +129,7 @@ export class OrderController { @Post('admin/orders/:orderId/invoice') @UseGuards(AdminAuthGuard) @ApiOperation({ summary: 'Create Order invoice ' }) - createInvoice(@Param('orderId') orderId: string) { + createInvoice(@Param('orderId') orderId: string, @Body() dto: UpdateOrderDtoAsAdmin) { return this.orderService.createInvoice(orderId); } diff --git a/src/modules/order/entities/order.entity.ts b/src/modules/order/entities/order.entity.ts index 4d58559..e0eb160 100644 --- a/src/modules/order/entities/order.entity.ts +++ b/src/modules/order/entities/order.entity.ts @@ -74,14 +74,14 @@ export class Order { // @Property({ type: 'decimal', precision: 10, scale: 0, default: null, nullable: true }) // subTotal?: number; -@Formula(alias => ` + @Formula(alias => ` ( SELECT COALESCE(SUM(COALESCE(oi.unit_price, 0) * oi.quantity), 0) FROM order_items oi WHERE oi.order_id = ${alias}.id ) `) -subTotal!: number; + subTotal!: number; // @Property({ type: 'decimal', precision: 10, scale: 0, default: null, nullable: true }) @@ -202,7 +202,7 @@ subTotal!: number; attachments?: string[] @Property({ type: 'json', nullable: true }) - printIds?: string[] // id of field options + print?: { fieldId: string, value: string }[] // id of field options @Property({ type: 'string', nullable: true }) paymentMethod?: string; diff --git a/src/modules/order/interface/order.interface.ts b/src/modules/order/interface/order.interface.ts index 5afe004..9f581b3 100644 --- a/src/modules/order/interface/order.interface.ts +++ b/src/modules/order/interface/order.interface.ts @@ -1,6 +1,3 @@ -import { Product } from "src/modules/product/entities/product.entity" -import { Order } from "../entities/order.entity" - export enum OrderStatusEnum { CREATED = 'created', diff --git a/src/modules/order/providers/order.service.ts b/src/modules/order/providers/order.service.ts index 83537ea..3b8ee6e 100644 --- a/src/modules/order/providers/order.service.ts +++ b/src/modules/order/providers/order.service.ts @@ -285,10 +285,7 @@ export class OrderService { } async createInvoice(orderId: string) { - const order = await this.findOrderOrFail(orderId) await this.updateStatus(orderId, OrderStatusEnum.INVOICED) - // await this.calculateOrder(order) - await this.em.flush() } async getOrderAsUser(userId: string, orderId: string) { diff --git a/src/modules/print/controller/print.controller.ts b/src/modules/print/controller/print.controller.ts index a1cd104..0d132f3 100644 --- a/src/modules/print/controller/print.controller.ts +++ b/src/modules/print/controller/print.controller.ts @@ -3,20 +3,13 @@ import { SectionService } from '../provider/section.service'; import { CreateSectionDto } from '../dto/create-section.dto'; import { ApiBearerAuth, ApiOperation } from '@nestjs/swagger'; import { AdminAuthGuard } from '../../auth/guards/adminAuth.guard'; -import { FieldService } from '../provider/field.service'; -import { CreateFieldDto } from '../dto/create-field.dto'; -import { CreateFieldOptionDto } from '../dto/create-field-option.dto'; -import { FieldOptionService } from '../provider/field-option.service'; -import { UpdateFieldDto } from '../dto/update-field.dto'; import { UpdateSectionDto } from '../dto/update-section.dto'; @Controller('admin') @ApiBearerAuth() - export class PrintController { +export class PrintController { constructor( private readonly sectionService: SectionService, - private readonly fieldService: FieldService, - private readonly fieldOptionService: FieldOptionService, ) { } /*================================ Section ========================== */ @@ -56,77 +49,4 @@ import { UpdateSectionDto } from '../dto/update-section.dto'; return this.sectionService.remove(+id); } - /*================================ Field ========================== */ - - @Post('section/:id/field') - @ApiOperation({ summary: 'Create field for section' }) - @UseGuards(AdminAuthGuard) - createField(@Body() dto: CreateFieldDto, @Param('id') sectionId: string) { - return this.fieldService.create(sectionId,dto); - } - - @Get('section/:id/field') - @ApiOperation({ summary: 'find all secion fields' }) - @UseGuards(AdminAuthGuard) - findAllSectionFields(@Param('id') sectionId: string) { - return this.fieldService.findAll(+sectionId); - } - - @Get('section/field/:id') - @ApiOperation({ summary: 'Find one field' }) - @UseGuards(AdminAuthGuard) - findOneFiled(@Param('id') id: string) { - return this.fieldService.findById(+id); - } - - @Patch('section/field/:id') - @ApiOperation({ summary: 'Update field' }) - @UseGuards(AdminAuthGuard) - updateField(@Param('id') id: string, @Body() dto: UpdateFieldDto) { - return this.fieldService.update(+id, dto); - } - - @Delete('section/field/:id') - @ApiOperation({ summary: 'Renopve field' }) - @UseGuards(AdminAuthGuard) - removeField(@Param('id') id: string) { - return this.fieldService.remove(+id); - } - - /*================================ Field Option ========================== */ - - @Post('field/:id/option') - @ApiOperation({ summary: 'Create field Options ' }) - @UseGuards(AdminAuthGuard) - createFieldOption(@Body() dto: CreateFieldOptionDto, @Param('id') id: string) { - return this.fieldOptionService.create(+id, dto); - } - - @Get('field/:id/option') - @ApiOperation({ summary: 'find all field Option' }) - @UseGuards(AdminAuthGuard) - findAllFiledOptions(@Param('id') fieldId: string) { - return this.fieldOptionService.findAll(+fieldId); - } - - @Get('field/option/:id') - @ApiOperation({ summary: 'Find one field Option' }) - @UseGuards(AdminAuthGuard) - findOneFiledOption(@Param('id') id: string) { - return this.fieldOptionService.findById(+id); - } - - @Patch('field/option/:id') - @ApiOperation({ summary: 'Update field Option' }) - @UseGuards(AdminAuthGuard) - updateFieldOption(@Param('id') id: string, @Body() dto: UpdateSectionDto) { - return this.fieldOptionService.update(+id, dto); - } - - @Delete('field/option/:id') - @ApiOperation({ summary: 'Renopve field Option' }) - @UseGuards(AdminAuthGuard) - removeFieldOption(@Param('id') id: string) { - return this.fieldOptionService.remove(+id); - } } diff --git a/src/modules/print/entities/section.entity.ts b/src/modules/print/entities/section.entity.ts index 5784866..70a2184 100644 --- a/src/modules/print/entities/section.entity.ts +++ b/src/modules/print/entities/section.entity.ts @@ -1,5 +1,5 @@ import { Cascade, Collection, Entity, OneToMany, PrimaryKey, Property } from '@mikro-orm/core'; -import { Field } from './field.entity'; +import { Field } from 'src/modules/form-builder/entities/field.entity'; import { BaseEntity } from 'src/common/entities/base.entity'; diff --git a/src/modules/print/interface/print.ts b/src/modules/print/interface/print.ts index 5a34c25..e69de29 100644 --- a/src/modules/print/interface/print.ts +++ b/src/modules/print/interface/print.ts @@ -1,9 +0,0 @@ -export enum FieldType { - text = 'text', - textarea = 'textarea', - number = 'number', - select = 'select', - radio = 'radio', - checkbox = 'checkbox', - date = 'date', -} \ No newline at end of file diff --git a/src/modules/print/print.module.ts b/src/modules/print/print.module.ts index c61f65a..543061f 100644 --- a/src/modules/print/print.module.ts +++ b/src/modules/print/print.module.ts @@ -2,24 +2,20 @@ import { Module } from '@nestjs/common'; import { SectionService } from './provider/section.service'; import { PrintController } from './controller/print.controller'; import { MikroOrmModule } from '@mikro-orm/nestjs'; -import { Field } from './entities/field.entity'; import { Section } from './entities/section.entity'; -import { FieldOption } from './entities/field-option.entity'; -import { FieldRepository } from './repository/field.repository'; -import { FieldOptionRepository } from './repository/field-option.repository'; + import { SectionRepository } from './repository/section.repository'; import { JwtModule } from '@nestjs/jwt'; import { RolesModule } from '../roles/roles.module'; -import { FieldService } from './provider/field.service'; -import { FieldOptionService } from './provider/field-option.service'; + @Module({ controllers: [PrintController], - providers: [SectionService, FieldRepository, FieldOptionRepository, - SectionRepository, FieldService, FieldOptionService], - exports: [SectionService, FieldRepository, FieldOptionRepository, - SectionRepository, FieldOptionService], - imports: [MikroOrmModule.forFeature([Field, Section, FieldOption]), - RolesModule, JwtModule.register({})] + providers: [SectionService, + SectionRepository], + exports: [SectionService, + SectionRepository], + imports: [MikroOrmModule.forFeature([Section]), + RolesModule, JwtModule.register({})] }) export class PrintModule { } diff --git a/src/modules/print/provider/section.service.ts b/src/modules/print/provider/section.service.ts index 9bd2db9..448847f 100644 --- a/src/modules/print/provider/section.service.ts +++ b/src/modules/print/provider/section.service.ts @@ -1,7 +1,6 @@ import { Injectable, NotFoundException } from '@nestjs/common'; import { EntityManager } from '@mikro-orm/postgresql'; import { RequiredEntityData } from '@mikro-orm/core'; -import { FieldRepository } from '../repository/field.repository'; import { SectionRepository } from '../repository/section.repository'; import { CreateSectionDto } from '../dto/create-section.dto'; import { Section } from '../entities/section.entity'; @@ -13,7 +12,6 @@ export class SectionService { constructor( private readonly sectionRepository: SectionRepository, - private readonly fieldRepository: FieldRepository, private readonly em: EntityManager, ) { } diff --git a/src/modules/product/dto/create-attribute.dto.ts b/src/modules/product/dto/create-attribute.dto.ts index 002fddf..655ede3 100644 --- a/src/modules/product/dto/create-attribute.dto.ts +++ b/src/modules/product/dto/create-attribute.dto.ts @@ -1,7 +1,7 @@ import { IsString, IsOptional, IsBoolean, IsInt, Min, IsEnum, IsNotEmpty } from 'class-validator'; import { ApiPropertyOptional, ApiProperty } from '@nestjs/swagger'; import { Type } from 'class-transformer'; -import { FieldType } from 'src/modules/print/interface/print'; +import { FieldType } from 'src/modules/form-builder/interface/print'; export class CreateAttributeDto { @IsString() diff --git a/src/modules/product/entities/attribute.entity.ts b/src/modules/product/entities/attribute.entity.ts index b5dc149..91c2b61 100644 --- a/src/modules/product/entities/attribute.entity.ts +++ b/src/modules/product/entities/attribute.entity.ts @@ -1,8 +1,8 @@ import { Collection, Entity, Enum, ManyToOne, OneToMany, PrimaryKey, Property } from '@mikro-orm/core'; import { BaseEntity } from '../../../common/entities/base.entity'; - import { Product } from './product.entity'; +import { Product } from './product.entity'; import { AttributeValue } from './attribute-value.entity'; -import { FieldType } from 'src/modules/print/interface/print'; +import { FieldType } from 'src/modules/form-builder/interface/print'; @Entity({ tableName: 'attributes' }) export class Attribute extends BaseEntity { @@ -13,10 +13,10 @@ export class Attribute extends BaseEntity { parent?: Attribute | null @OneToMany(() => Attribute, (c) => c.parent) - children=new Collection(this) + children = new Collection(this) @OneToMany(() => AttributeValue, (attrValue) => attrValue.attribute) - values= new Collection(this) + values = new Collection(this) @PrimaryKey({ type: 'bigint', autoincrement: true }) id: bigint; diff --git a/src/seeders/data/attribute-value.data.ts b/src/seeders/data/attribute-value.data.ts index eb27b0f..a4544d7 100644 --- a/src/seeders/data/attribute-value.data.ts +++ b/src/seeders/data/attribute-value.data.ts @@ -1,5 +1,4 @@ -import { FieldType } from "src/modules/print/interface/print"; - + export interface AttributeValueData { value: string; attributeName: string diff --git a/src/seeders/data/attribute.data.ts b/src/seeders/data/attribute.data.ts index 85f1d48..ff0cd29 100644 --- a/src/seeders/data/attribute.data.ts +++ b/src/seeders/data/attribute.data.ts @@ -1,4 +1,4 @@ -import { FieldType } from "src/modules/print/interface/print"; +import { FieldType } from "src/modules/form-builder/interface/print"; export interface AttributeData {