package com.tourguide.modules.user.dto; import javax.validation.constraints.FutureOrPresent; import javax.validation.constraints.Max; import javax.validation.constraints.Min; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import javax.validation.constraints.Pattern; import javax.validation.constraints.Size; import java.time.LocalDate; public class GuideRegistrationSubmitRequest { @NotBlank(message = "姓名不能为空") @Size(max = 64, message = "姓名不能超过64个字符") private String realName; @NotNull(message = "请选择性别") @Min(value = 1, message = "性别参数不正确") @Max(value = 2, message = "性别参数不正确") private Integer gender; @Pattern(regexp = "^(18-25岁|26-35岁|36-45岁|46岁以上)?$", message = "年龄选项不正确") private String ageRange; @Pattern(regexp = "^(1年以内|1-3年|3-5年|5年以上)?$", message = "工作年限选项不正确") private String workYearRange; @NotBlank(message = "请选择讲解队或个人") @Pattern(regexp = "^(personal|team)$", message = "导游类型不正确") private String guideType; @NotBlank(message = "身份证号不能为空") private String idCardNo; @NotBlank(message = "请上传身份证正面") @Size(max = 500, message = "身份证正面地址过长") private String idCardFrontUrl; @NotBlank(message = "请上传身份证反面") @Size(max = 500, message = "身份证反面地址过长") private String idCardBackUrl; @NotBlank(message = "请上传导游证") @Size(max = 500, message = "导游证地址过长") private String guideCertificateUrl; @Size(max = 500, message = "导游资格证地址过长") private String qualificationCertificateUrl; @NotNull(message = "请选择证件有效期") @FutureOrPresent(message = "证件有效期不能早于今天") private LocalDate certificateValidUntil; @NotBlank(message = "收款银行卡号不能为空") @Pattern(regexp = "^\\d{12,30}$", message = "银行卡号格式不正确") private String bankCardNo; @NotNull(message = "请选择开户城市") private Long bankCityId; public String getRealName() { return realName; } public void setRealName(String realName) { this.realName = realName; } public Integer getGender() { return gender; } public void setGender(Integer gender) { this.gender = gender; } public String getAgeRange() { return ageRange; } public void setAgeRange(String ageRange) { this.ageRange = ageRange; } public String getWorkYearRange() { return workYearRange; } public void setWorkYearRange(String workYearRange) { this.workYearRange = workYearRange; } public String getGuideType() { return guideType; } public void setGuideType(String guideType) { this.guideType = guideType; } public String getIdCardNo() { return idCardNo; } public void setIdCardNo(String idCardNo) { this.idCardNo = idCardNo; } public String getIdCardFrontUrl() { return idCardFrontUrl; } public void setIdCardFrontUrl(String idCardFrontUrl) { this.idCardFrontUrl = idCardFrontUrl; } public String getIdCardBackUrl() { return idCardBackUrl; } public void setIdCardBackUrl(String idCardBackUrl) { this.idCardBackUrl = idCardBackUrl; } public String getGuideCertificateUrl() { return guideCertificateUrl; } public void setGuideCertificateUrl(String guideCertificateUrl) { this.guideCertificateUrl = guideCertificateUrl; } public String getQualificationCertificateUrl() { return qualificationCertificateUrl; } public void setQualificationCertificateUrl(String qualificationCertificateUrl) { this.qualificationCertificateUrl = qualificationCertificateUrl; } public LocalDate getCertificateValidUntil() { return certificateValidUntil; } public void setCertificateValidUntil(LocalDate certificateValidUntil) { this.certificateValidUntil = certificateValidUntil; } public String getBankCardNo() { return bankCardNo; } public void setBankCardNo(String bankCardNo) { this.bankCardNo = bankCardNo; } public Long getBankCityId() { return bankCityId; } public void setBankCityId(Long bankCityId) { this.bankCityId = bankCityId; } }