File

packages/server/src/modules/template/template.interface.ts

Index

Properties

Properties

categories
Type : TemplateCategory[]
Decorators :
@ArrayMinSize(1)
@ArrayMaxSize(100)
desc
Type : string
Decorators :
@IsString()
Optional id
Type : number
name
Type : string
Decorators :
@IsString()
status
Type : number
Decorators :
@IsNumber()
import {
  ArrayMaxSize,
  ArrayMinSize,
  IsNumber,
  IsString,
} from "class-validator";

import { BaseQuery } from "@/common/interfaces/query";

export class TemplateCategoryProduct {
  @IsNumber()
  productId: number;
  @IsNumber()
  price: number;
  @IsNumber()
  count: number;
}

export class TemplateCategory {
  @IsString()
  name: string;

  @IsNumber()
  productCategoryId: number;

  @ArrayMinSize(1)
  @ArrayMaxSize(100)
  products: TemplateCategoryProduct[];
}

export class TemplateBodyRequest {
  id?: number;

  @IsString()
  name: string;

  @IsString()
  desc: string;

  @IsNumber()
  status: number;

  @ArrayMinSize(1)
  @ArrayMaxSize(100)
  categories: TemplateCategory[];
}

export class TemplateQuery extends BaseQuery {
  ids?: number[];
}

results matching ""

    No results matching ""