feat: unify drainage targets and carrier status UI

This commit is contained in:
hectorzhao
2026-08-28 17:24:01 +08:00
parent 9ac41e9308
commit c68ac7a3db
25 changed files with 265 additions and 65 deletions
+8 -2
View File
@@ -101,8 +101,14 @@ export class ClientSmsSignatureUpdateDto extends PartialType(ClientSmsSignatureD
}
export class ClientDrainageInfoDto {
@IsString() @MinLength(1) @MaxLength(200) siteName!: string;
@IsUrl({ require_tld: false }) @MaxLength(2048) url!: string;
@IsOptional() @IsString() @MaxLength(200) siteName?: string;
@IsString()
@MinLength(1)
@MaxLength(2048)
@Matches(/^(?:https?:\/\/\S+|(?:\+?86[\s-]?)?1(?:[\s-]?\d){10}|(?:\+?86[\s-]?)?(?:\(?0\d{2,3}\)?[\s-]?)?\d{7,8}(?:[\s-]?(?:转|ext\.?)?[\s-]?\d{1,6})?)$/i, {
message: '引流信息必须是 http/https URL、手机号码或固定电话号码',
})
url!: string;
@IsOptional() @IsString() @MaxLength(1000) remark?: string;
@IsOptional() @IsObject() @IsBoundedJsonObject({ maxKeys: 200, maxDepth: 4 }) reportValues?: Record<string, unknown>;
}