using NetAdmin.Domain.Dto.Sys.Dic.Content;
namespace NetAdmin.Domain.Dto.Sys.UserProfile;
///
/// 请求:创建用户档案
///
public record CreateUserProfileReq : Sys_UserProfile
{
///
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override DateTime? BornDate { get; init; }
///
[Certificate]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string CertificateNumber { get; init; }
///
[EnumDataType(typeof(CertificateTypes), ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.证件类型不正确))]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override CertificateTypes? CertificateType { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string CompanyAddress { get; init; }
///
public new QueryDicContentRsp CompanyArea { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string CompanyName { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[Telephone]
public override string CompanyTelephone { get; init; }
///
[EnumDataType(typeof(Educations), ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.学历不正确))]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override Educations? Education { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string EmergencyContactAddress { get; init; }
///
public new QueryDicContentRsp EmergencyContactArea { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[Mobile]
public override string EmergencyContactMobile { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string EmergencyContactName { get; init; }
///
[EnumDataType(typeof(Genders), ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.性别不正确))]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override Genders? Gender { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string GraduateSchool { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
[Range(100, 250)]
public override int? Height { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string HomeAddress { get; init; }
///
public new QueryDicContentRsp HomeArea { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[Telephone]
public override string HomeTelephone { get; init; }
///
[EnumDataType(typeof(MarriageStatues), ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.婚姻状况不正确))]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override MarriageStatues? MarriageStatus { get; init; }
///
[EnumDataType(typeof(Nations), ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.民族不正确))]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override Nations? Nation { get; init; }
///
public new CreateDicContentReq NationArea { get; init; }
///
[EnumDataType(typeof(PoliticalStatues), ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.政治面貌不正确))]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override PoliticalStatues? PoliticalStatus { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string Profession { get; init; }
///
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string RealName { get; init; }
}