33 lines
1.1 KiB
TypeScript
33 lines
1.1 KiB
TypeScript
import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
|
||
import { IsOptional, IsString } from 'class-validator';
|
||
|
||
export class CreateSystemAdminDto {
|
||
@ApiProperty({ description: '姓名', example: '系统管理员' })
|
||
@IsString({ message: 'name 必须是字符串' })
|
||
name!: string;
|
||
|
||
@ApiProperty({ description: '手机号', example: '13800000000' })
|
||
@IsString({ message: 'phone 必须是字符串' })
|
||
phone!: string;
|
||
|
||
@ApiProperty({ description: '密码(至少 8 位)', example: 'Admin@12345' })
|
||
@IsString({ message: 'password 必须是字符串' })
|
||
password!: string;
|
||
|
||
@ApiPropertyOptional({
|
||
description: '可选微信 openId(院内账号间可复用)',
|
||
example: 'o123abcxyz',
|
||
})
|
||
@IsOptional()
|
||
@IsString({ message: 'openId 必须是字符串' })
|
||
openId?: string;
|
||
|
||
@ApiProperty({
|
||
description:
|
||
'系统管理员创建引导密钥(来自环境变量 SYSTEM_ADMIN_BOOTSTRAP_KEY)',
|
||
example: 'init-admin-secret',
|
||
})
|
||
@IsString({ message: 'systemAdminBootstrapKey 必须是字符串' })
|
||
systemAdminBootstrapKey!: string;
|
||
}
|