도메인 관리 시스템
도메인 스키마
interface Domain {
_id: ObjectId;
name: string; // 도메인 식별자 (예: 'example.com')
title: string; // 도메인 표시명 (예: 'Example Domain')
webName: string; // 웹사이트 이름
redirectUrl: string; // 리다이렉트 URL
purchaseDoneUrl: string; // 구매 완료 후 리다이렉트 URL
adminTronWalletAddress: string; // 관리자 TRON 지갑 주소
snpChargeAmount: number; // SNP 충전 금액
maxReferralLevel: number; // 최대 추천 레벨 (기본값: 3)
referralRates: {
// 레벨별 추천 수당 비율
level: number; // 추천 레벨
rate: number; // 수당 비율 (%)
}[];
isActive: boolean; // 활성화 상태
description?: string; // 도메인 설명 (선택사항)
createdAt: Date; // 생성일
updatedAt: Date; // 수정일
}
주요 기능
-
도메인 관리
- 도메인 생성/수정/삭제
- 활성화/비활성화
- 도메인별 설정 관리
-
수당 정책 관리
- 레벨별 수당 비율 설정
- 최대 추천 레벨 설정
- SNP 충전 금액 설정
-
TRON 지갑 관리
- 관리자 TRON 지갑 주소 설정
- 수당 지급용 지갑 관리
- 트랜잭션 추적
-
사용자 관리
- 도메인별 사용자 목록
- 권한 관리
- 사용자 통계
-
상품 관리
- 도메인별 상품 카탈로그
- 가격 정책
- 재고 관리
최근 업데이트 내역 (2024.02)
-
도메인 설정 기능 강화
- 웹사이트 이름(webName) 필드 추가
- 리다이렉트 URL(redirectUrl) 필드 추가
- 구매 완료 리다이렉트 URL(purchaseDoneUrl) 필드 추가
-
권한 관리 개선
- SUPER_ADMIN: 모든 도메인 관리 가능
- DOMAIN_ADMIN: 자신의 도메인만 관리 가능
- 도메인 ID 기반 접근 제어 구현
-
API 응답 개선
- 도메인 설정 수정 시 전체 도메인 정보 반환
- 타임스탬프(createdAt, updatedAt) 포함
- 상세한 에러 메시지 제공
설정 제한사항
-
URL 필드 유효성 검사
- redirectUrl: 유효한 URL 형식 필수
- purchaseDoneUrl: 유효한 URL 형식 필수
-
추천 시스템 제한
- maxReferralLevel: 1-10 레벨 사이 설정 가능
- referralRates: 각 레벨당 0-100% 사이 설정 가능
-
필수 필드
- name, title, webName
- redirectUrl, purchaseDoneUrl
- adminTronWalletAddress