shinnosuke
2026-08-13 6d4ac9680c02148ee9e438e0ba44e370f67fd063
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package com.talentcard.server.request;
 
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
 
@Schema(name = "家属附属卡申请提交参数", description = "家属附属卡申请提交参数")
public record DependentCardApplyRequest(
        @Schema(description = "主卡ID", example = "1", requiredMode = Schema.RequiredMode.REQUIRED)
        @NotNull(message = "主卡ID不能为空")
        Long talentCardId,
 
        @Schema(description = "家属姓名", example = "张三", maxLength = 64, requiredMode = Schema.RequiredMode.REQUIRED)
        @NotBlank(message = "家属姓名不能为空")
        @Size(max = 64, message = "家属姓名不能超过64个字符")
        String dependentName,
 
        @Schema(description = "家属身份证号", example = "510105199001011234", maxLength = 32, requiredMode = Schema.RequiredMode.REQUIRED)
        @NotBlank(message = "家属证件号不能为空")
        @Size(max = 32, message = "家属证件号不能超过32个字符")
        @Pattern(regexp = "^[0-9]{17}[0-9X]$", message = "家属证件号格式不正确")
        String dependentIdCardNo,
 
        @Schema(description = "家属手机号", example = "13800138000", pattern = "^1[3-9][0-9]{9}$", requiredMode = Schema.RequiredMode.REQUIRED)
        @NotBlank(message = "家属手机号不能为空")
        @Pattern(regexp = "^1[3-9][0-9]{9}$", message = "家属手机号格式不正确")
        String dependentMobile,
 
        @Schema(description = "与主卡持有人的关系", example = "配偶", maxLength = 32, requiredMode = Schema.RequiredMode.REQUIRED)
        @NotBlank(message = "家属关系不能为空")
        @Size(max = 32, message = "家属关系不能超过32个字符")
        String relation
) {
}