using System.Runtime.CompilerServices; using Quadarax.Application.QLiberace.Common.Dtos; using Quadarax.Application.QLiberace.Customer.Enums; using Quadarax.Foundation.Core.Data.Interface.Entity; #if DEBUG [assembly: InternalsVisibleTo("qdr.app.qlbrc.base.Tests")] [assembly: InternalsVisibleTo("qdr.app.qlbrc.common.Tests")] #endif namespace Quadarax.Application.QLiberace.Customer.Dtos { public class ContactRDto : QlbrcDtoTrackedWithId, IReadDto { /// /// Reference to customer that contact belongs /// public long CustomerId { get; set; } /// /// Contact type (0-Email, 1-Address, 2-Phone, 3-SMS) /// public ContactTypeEnum Type { get; set; } /// /// Contact heading caption. /// public string Caption { get; set; } = null!; /// /// Main address value. If phone, email, sms stores email address or telephone number. /// public string Address { get; set; } = null!; /// /// Secondary address value. /// public string? Address1 { get; set; } /// /// Contact city. /// public string? City { get; set; } /// /// Contact ZIP code. /// public string? Zip { get; set; } /// /// Contact country code. /// public string? CountryCode { get; set; } /// /// Flag if Contact is preffered. /// public bool IsPreffered { get; set; } } public class ContactWDto : QlbrcDtoWithoutId, IUpdateDto, ICreateDto { /// /// Contact type (0-Email, 1-Address, 2-Phone, 3-SMS) /// public ContactTypeEnum Type { get; set; } /// /// Contact heading caption. /// public string Caption { get; set; } = null!; /// /// Main address value. If phone, email, sms stores email address or telephone number. /// public string Address { get; set; } = null!; /// /// Secondary address value. /// public string? Address1 { get; set; } /// /// Contact city. /// public string? City { get; set; } /// /// Contact ZIP code. /// public string? Zip { get; set; } /// /// Contact country code. /// public string? CountryCode { get; set; } /// /// Flag if Contact is preffered. /// public bool IsPreferred { get; set; } } public class ContactDDto : QlbrcDtoWithId, IDeleteDto { } }