feat: add product variant management functionality

- Implemented CreateProductVariantDto and UpdateProductVariantDto for product variant data transfer.
- Developed ProductVariantsController to handle CRUD operations for product variants.
- Created ProductVariantsService to interact with the database using Prisma.
- Added ProductVariantsModule to encapsulate the product variant feature.
- Included response mapping for consistent API responses.
This commit is contained in:
2025-12-06 17:48:10 +03:30
parent 7cb9d7d037
commit a782d61890
68 changed files with 4155 additions and 3334 deletions
@@ -0,0 +1,63 @@
import { Type } from 'class-transformer'
import { IsBoolean, IsInt, IsOptional, IsString } from 'class-validator'
export class UpdateProductVariantDto {
@IsOptional()
@IsString()
name?: string
@IsOptional()
@IsString()
description?: string
@IsOptional()
@IsString()
sku?: string
@IsOptional()
@IsString()
barcode?: string
@IsOptional()
@IsString()
imageUrl?: string
@IsOptional()
@Type(() => Number)
@IsInt()
attachmentId?: number
@IsOptional()
@IsString()
unit?: string
@IsOptional()
@Type(() => Number)
@IsInt()
discount?: number
@IsOptional()
@Type(() => Number)
@IsInt()
quantity?: number
@IsOptional()
@Type(() => Number)
@IsInt()
alertQuantity?: number
@IsOptional()
@Type(() => Boolean)
@IsBoolean()
isActive?: boolean
@IsOptional()
@Type(() => Boolean)
@IsBoolean()
isFeatured?: boolean
@IsOptional()
@Type(() => Number)
@IsInt()
productId?: number
}