import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; import { IsIn, IsInt, IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { CommonStatus } from '../common/enums.js'; export class CreateOrgDto { @ApiProperty({ description: '组织 code(租户内唯一)' }) @IsString() @IsNotEmpty() code!: string; @ApiProperty({ description: '组织名称' }) @IsString() @IsNotEmpty() name!: string; @ApiPropertyOptional({ description: '父组织 code' }) @IsOptional() @IsString() parentCode?: string; @ApiPropertyOptional({ description: '负责人' }) @IsOptional() @IsString() leader?: string; @ApiPropertyOptional({ description: '排序', default: 0 }) @IsOptional() @IsInt() sort?: number; } export class UpdateOrgDto { @ApiPropertyOptional({ description: '组织名称' }) @IsOptional() @IsString() name?: string; @ApiPropertyOptional({ description: '父组织 code' }) @IsOptional() @IsString() parentCode?: string; @ApiPropertyOptional({ description: '负责人' }) @IsOptional() @IsString() leader?: string; @ApiPropertyOptional({ description: '排序' }) @IsOptional() @IsInt() sort?: number; @ApiPropertyOptional({ description: '状态:enabled/disabled' }) @IsOptional() @IsIn(Object.values(CommonStatus)) status?: string; }