| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318 |
- 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
- {
- [DisplayName("회원가입 시 - 차단 여부")]
- public bool IsRegisterBlock { get; init; }
- [DisplayName("회원가입 시 - 이메일 인증 여부")]
- public bool IsRegisterEmailAuth { get; init; }
- [DisplayName("회원가입 시 - 비밀번호 최소 길이")]
- public ushort? PasswordMinLength { get; init; }
- [DisplayName("회원가입 시 - 비밀번호 대문자 최소 개수")]
- public ushort? PasswordUppercaseLength { get; init; }
- [DisplayName("회원가입 시 - 비밀번호 숫자 최소 개수")]
- public ushort? PasswordNumbersLength { get; init; }
- [DisplayName("회원가입 시 - 비밀번호 특수문자 최소 개수")]
- public ushort? PasswordSpecialcharsLength { get; init; }
- [DisplayName("회원가입 시 - 금지 이메일")]
- public string? DeniedEmailList { get; init; }
- [DisplayName("회원가입 시 - 금지 별명")]
- public string? DeniedNameList { get; init; }
- [DisplayName("회원수정 시 - 이메일 갱신 주기")]
- public ushort? ChangeEmailDay { get; init; }
- [DisplayName("회원수정 시 - 이름 갱신 주기")]
- public ushort? ChangeNameDay { get; init; }
- [DisplayName("회원수정 시 - 소개 갱신 주기")]
- public ushort? ChangeSummaryDay { get; init; }
- [DisplayName("회원수정 시 - 자기소개 갱신 주기")]
- public ushort? ChangeIntroDay { get; init; }
- [DisplayName("회원수정 시 - 비밀번호 갱신 주기")]
- public ushort? ChangePasswordDay { get; init; }
- [DisplayName("로그인 시 - 이메일 인증 필요")]
- public bool IsLoginEmailVerifiedOnly { get; init; }
- [DisplayName("로그인 시 - 로그인 시도(회)")]
- public ushort? MaxLoginTryCount { get; init; }
- [DisplayName("로그인 시 - 로그인 제한(초)")]
- public ushort? MaxLoginTryLimitSecond { get; init; }
- }
- public sealed class EmailTemplateConfigDto
- {
- [DisplayName("회원가입 시 - 제목")]
- public string? RegisterEmailFormTitle { get; init; }
- [DisplayName("회원가입 시 - 내용")]
- public string? RegisterEmailFormContent { get; init; }
- [DisplayName("회원가입 완료 - 제목")]
- public string? RegistrationEmailFormTitle { get; init; }
- [DisplayName("회원가입 완료 - 내용")]
- public string? RegistrationEmailFormContent { get; init; }
- [DisplayName("비밀번호 재설정 - 제목")]
- public string? ResetPasswordEmailFormTitle { get; init; }
- [DisplayName("비밀번호 재설정 - 내용")]
- public string? ResetPasswordEmailFormContent { get; init; }
- [DisplayName("비밀번호 변경 완료 - 제목")]
- public string? ChangedPasswordEmailFormTitle { get; init; }
- [DisplayName("비밀번호 변경 완료 - 내용")]
- public string? ChangedPasswordEmailFormContent { get; init; }
- [DisplayName("회원탈퇴 시 - 제목")]
- public string? WithdrawEmailFormTitle { get; init; }
- [DisplayName("회원탈퇴 시 - 내용")]
- public string? WithdrawEmailFormContent { get; init; }
- [DisplayName("이메일 변경 시 - 제목")]
- public string? EmailVerifyFormTitle { get; init; }
- [DisplayName("이메일 변경 시 - 내용")]
- public string? EmailVerifyFormContent { get; init; }
- [DisplayName("이메일 변경 완료 - 제목")]
- public string? ChangedEmailFormTitle { get; init; }
- [DisplayName("이메일 변경 완료 - 내용")]
- public string? ChangedEmailFormContent { get; init; }
- }
- public sealed class ExternalApiConfigDto
- {
- [DisplayName("YouTube - API Name")]
- public string? YouTubeApiKeyEnc { get; init; }
- [DisplayName("YouTube - API Key")]
- public string? YouTubeApiName { get; init; }
- [DisplayName("Google - Client ID")]
- public string? GoogleClientId { get; init; }
- [DisplayName("Google - Client Secret")]
- public string? GoogleClientSecretEnc { get; init; }
- [DisplayName("Google - App ID")]
- public string? GoogleAppId { get; init; }
- }
- public sealed class PaymentConfigDto
- {
- }
- }
|