using Microsoft.AspNetCore.Http; using System.ComponentModel; namespace Application.Features.Config.Get; public sealed class Response { public int ID { get; init; } public BasicConfigDto Basic { get; init; } = new(); public ImagesConfigDto Images { get; init; } = new(); public MetaConfigDto Meta { get; init; } = new(); public CompanyConfigDto Company { get; init; } = new(); public AccountConfigDto Account { get; init; } = new(); public EmailTemplateConfigDto EmailTemplate { get; init; } = new(); public ExternalApiConfigDto External { get; init; } = new(); public PaymentConfigDto Payment { get; init; } = new(); public sealed class BasicConfigDto { [DisplayName("»çÀÌÆ® À̸§")] public string? SiteName { get; init; } [DisplayName("»çÀÌÆ® ÁÖ¼Ò")] public string? SiteURL { get; init; } [DisplayName("ÃÖ°í °ü¸®ÀÚ ID")] public string? RootID { get; init; } [DisplayName("¼Û¼ö½Å À̸ÞÀÏ")] public string? FromEmail { get; init; } [DisplayName("¼Û¼ö½ÅÀÚ À̸§")] public string? FromName { get; init; } [DisplayName("SMTP Server")] public string? SmtpServer { get; init; } [DisplayName("SMTP Port")] public int? SmtpPort { get; set; } [DisplayName("SMTP Enable SSL")] public bool SmtpEnableSSL { get; init; } = false; [DisplayName("SMTP Username")] public string? SmtpUsername { get; init; } [DisplayName("SMTP Password")] public string? SmtpPassword { get; init; } [DisplayName("°ü¸®ÀÚ´Ü Á¢±Ù °¡´É IP")] public string? AdminWhiteIPList { get; init; } [DisplayName("»ç¿ëÀÚ´Ü Á¢±Ù °¡´É IP")] public string? FrontWhiteIPList { get; init; } [DisplayName("Â÷´Ü ½Ã ¾È³»¹® Á¦¸ñ")] public string? BlockAlertTitle { get; init; } [DisplayName("Â÷´Ü ½Ã ¾È³»¹® ³»¿ë")] public string? BlockAlertContent { get; init; } [DisplayName("Á¡°Ë ¿©ºÎ")] public bool IsMaintenance { get; init; } = false; [DisplayName("Á¡°Ë ³»¿ë")] public string? MaintenanceContent { get; init; } } public sealed class ImagesConfigDto { // ====== DB¿¡ ÀúÀå/Ç¥½ÃÇÒ °æ·Î(¹®ÀÚ¿­) ====== [DisplayName("Favicon")] public string? FaviconPath { get; init; } [DisplayName("Logo-square")] public string? LogoSquarePath { get; init; } [DisplayName("Logo-horizontal")] public string? LogoHorizontalPath { get; init; } [DisplayName("og-default")] public string? OgDefaultPath { get; init; } [DisplayName("Twitter-image")] public string? TwitterImagePath { get; init; } [DisplayName("Apple-touch-icon")] public string? AppleTouchIconPath { get; init; } [DisplayName("App-icon-192")] public string? AppIcon192Path { get; init; } [DisplayName("App-icon-512")] public string? AppIcon512Path { get; init; } // ====== ¾÷·Îµå ÀÔ·Â(Æû ¹ÙÀεù¿ë) ====== [DisplayName("Favicon ¾÷·Îµå")] public IFormFile? FaviconFile { get; init; } [DisplayName("Logo-square ¾÷·Îµå")] public IFormFile? LogoSquareFile { get; init; } [DisplayName("Logo-horizontal ¾÷·Îµå")] public IFormFile? LogoHorizontalFile { get; init; } [DisplayName("og-default ¾÷·Îµå")] public IFormFile? OgDefaultFile { get; init; } [DisplayName("Twitter-image ¾÷·Îµå")] public IFormFile? TwitterImageFile { get; init; } [DisplayName("Apple-touch-icon ¾÷·Îµå")] public IFormFile? AppleTouchIconFile { get; init; } [DisplayName("App-icon-192 ¾÷·Îµå")] public IFormFile? AppIcon192File { get; init; } [DisplayName("App-icon-512 ¾÷·Îµå")] public IFormFile? AppIcon512File { get; init; } } public sealed class MetaConfigDto { [DisplayName("Meta Keywords")] public string? Keywords { get; init; } [DisplayName("Meta Description")] public string? Description { get; init; } [DisplayName("Meta Author")] public string? Author { get; init; } [DisplayName("Meta Viewport")] public string? Viewport { get; init; } [DisplayName("Meta ApplicationName")] public string? ApplicationName { get; init; } [DisplayName("Meta Generator")] public string? Generator { get; init; } [DisplayName("Meta Robots")] public string? Robots { get; init; } [DisplayName("Meta Adds")] public string? Adds { get; init; } } public sealed class CompanyConfigDto { [DisplayName("»óÈ£ ¸í")] public string? Name { get; init; } [DisplayName("»ç¾÷ÀÚ µî·Ï ¹øÈ£")] public string? RegNo { get; init; } [DisplayName("»ç¾÷ÀÚ ¼ÒÀçÁö")] public string? Address { get; init; } [DisplayName("¿ìÆí¹øÈ£")] public string? ZipCode { get; init; } [DisplayName("´ëÇ¥ÀÚ ¸í")] public string? Owner { get; init; } [DisplayName("´ëÇ¥ ÀüÈ­¹øÈ£")] public string? Tel { get; init; } [DisplayName("FAX")] public string? Fax { get; init; } [DisplayName("Åë½ÅÆÇ¸Å¾÷ ½Å°í¹øÈ£")] public string? RetailSaleNo { get; init; } [DisplayName("ºÎ°¡Åë½Å »ç¾÷ÀÚ¹øÈ£")] public string? AddedSaleNo { get; init; } [DisplayName("È£½ºÆÃ ¼­ºñ½º")] public string? Hosting { get; init; } [DisplayName("Á¤º¸°ü¸®Ã¥ÀÓÀÚ")] public string? AdminName { get; init; } [DisplayName("Á¤º¸°ü¸®Ã¥ÀÓÀÚ À̸ÞÀÏ")] public string? AdminEmail { get; init; } [DisplayName("»çÀÌÆ® ÁÖ¼Ò")] public string? SiteUrl { get; init; } [DisplayName("ÀԱݰèÁ - ÀºÇà")] public string? BankCode { get; init; } [DisplayName("ÀԱݰèÁ - ¿¹±ÝÁÖ")] public string? BankOwner { get; init; } [DisplayName("ÀԱݰèÁ - °èÁ¹øÈ£")] public string? BankNumber { get; init; } } public sealed class AccountConfigDto { public bool IsRegisterBlock { get; init; } public bool IsRegisterEmailAuth { get; init; } public ushort? PasswordMinLength { get; init; } public ushort? PasswordUppercaseLength { get; init; } public ushort? PasswordNumbersLength { get; init; } public ushort? PasswordSpecialcharsLength { get; init; } public string? DeniedEmailList { get; init; } public string? DeniedNameList { get; init; } public ushort? ChangeEmailDay { get; init; } public ushort? ChangeNameDay { get; init; } public ushort? ChangeSummaryDay { get; init; } public ushort? ChangeIntroDay { get; init; } public ushort? ChangePasswordDay { get; init; } public ushort? MaxLoginTryCount { get; init; } public ushort? MaxLoginTryLimitSecond { get; init; } } public sealed class EmailTemplateConfigDto { public string? RegisterEmailFormTitle { get; init; } public string? RegisterEmailFormContent { get; init; } public string? RegistrationEmailFormTitle { get; init; } public string? RegistrationEmailFormContent { get; init; } public string? ResetPasswordEmailFormTitle { get; init; } public string? ResetPasswordEmailFormContent { get; init; } public string? ChangedPasswordEmailFormTitle { get; init; } public string? ChangedPasswordEmailFormContent { get; init; } public string? WithdrawEmailFormTitle { get; init; } public string? WithdrawEmailFormContent { get; init; } public string? EmailVerifyFormTitle { get; init; } public string? EmailVerifyFormContent { get; init; } public string? ChangedEmailFormTitle { get; init; } public string? ChangedEmailFormContent { get; init; } } public sealed class ExternalApiConfigDto { public string? YouTubeApiKeyEnc { get; init; } public string? YouTubeApiName { get; init; } public string? GoogleClientId { get; init; } public string? GoogleClientSecretEnc { get; init; } public string? GoogleAppId { get; init; } } public sealed class PaymentConfigDto { } }