using System; using System.ComponentModel.DataAnnotations; namespace AsbCloudApp.Data.User; /// /// Контакт /// public class ContactDto : IId { /// public int Id { get; set; } /// /// ключ типа компании /// [Required] [Range(1, int.MaxValue)] public int IdCompanyType { get; set; } /// /// ключ скважины /// [Required] [Range(1,int.MaxValue)] public int IdWell { get; set; } /// /// ФИО /// [Required] [StringLength(260, MinimumLength = 0, ErrorMessage = "Допустимая длина ФИО от 1 до 260 символов")] public string FullName { get; set; } = null!; /// /// Email /// [RegularExpression(@"^[a-zA-Z0-9_\-\.]{3,128}@[a-zA-Z0-9_\-\.]{2,128}\.[a-zA-Z]{1,32}$", ErrorMessage = "Некорректный email")] public string? Email { get; set; } /// /// Phone /// [RegularExpression(@"^(?:\+7|8)\s?(?:\(\d{3}\)|\d{3})\s?\d{3}-?\d{2}-?\d{2}$", ErrorMessage = "Некорректный номер телефона")] public string? Phone { get; set; } /// /// Должность /// [Required] [StringLength(260, MinimumLength = 1, ErrorMessage = "Допустимая длина должности от 1 до 260 символов")] public string Position { get; set; } = null!; /// /// Компания /// [Required] [StringLength(260, MinimumLength = 3, ErrorMessage = "Допустимая длина названия компании от 3 до 260 символов")] public string Company { get; set; } = null!; }