package com.talentcard.server.business.talent;
|
|
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.Pattern;
|
import jakarta.validation.constraints.Size;
|
|
public record TalentCreateRequest(
|
String openid,
|
@NotBlank
|
@Size(max = 64)
|
String name,
|
@NotBlank(message = "请输入手机号码")
|
@Pattern(regexp = "^1\\d{10}$", message = "手机号须为11位数字")
|
String mobile,
|
@NotBlank(message = "请输入身份证号")
|
@Pattern(regexp = "^[0-9A-Z]{18}$", message = "身份证号须为18位数字或大写英文字母")
|
String idCardNo,
|
@NotNull(message = "请选择性别")
|
Byte gender,
|
@Size(max = 128)
|
String workUnit,
|
@NotBlank(message = "请选择人才等级")
|
@Pattern(regexp = "^(卓越人才卡|杰出人才卡|菁英人才卡|普通游客)$", message = "人才等级无效")
|
String talentLevel,
|
@NotBlank(message = "请输入人才卡号")
|
@Pattern(regexp = "^[0-9A-Z-]{1,64}$", message = "人才卡号只能包含大写字母、数字和短横线")
|
String talentCardNo,
|
@NotBlank(message = "请选择本地或外地")
|
@Pattern(regexp = "^(LOCAL|OUTSIDE)$", message = "来源地无效")
|
String sourceAreaType,
|
@NotBlank(message = "请输入工作地址")
|
@Size(max = 255)
|
String workAddress,
|
@NotBlank(message = "请输入联系地址")
|
@Size(max = 255)
|
String contactAddress
|
) {
|
}
|