| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- -- DDL 007: 알림 테이블 생성
- -- 생성일: 2025-07-22
- -- 목적: 벤더사-인플루언서 간 알림 관리
- CREATE TABLE `NOTIFICATION` (
- `SEQ` int(11) NOT NULL AUTO_INCREMENT COMMENT '기본키',
- `RECIPIENT_SEQ` int(11) NOT NULL COMMENT '수신자 SEQ (USER_LIST.SEQ 참조)',
- `SENDER_SEQ` int(11) DEFAULT NULL COMMENT '발신자 SEQ (USER_LIST.SEQ 참조)',
- `TYPE` varchar(50) NOT NULL COMMENT '알림 타입: PARTNERSHIP_REQUEST, PARTNERSHIP_APPROVED, PARTNERSHIP_REJECTED, PARTNERSHIP_CANCELLED, PARTNERSHIP_EXPIRED, SYSTEM_NOTICE',
- `TITLE` varchar(200) NOT NULL COMMENT '알림 제목',
- `MESSAGE` text NOT NULL COMMENT '알림 메시지',
- `RELATED_TYPE` varchar(50) DEFAULT NULL COMMENT '관련 테이블 타입: VENDOR_INFLUENCER_MAPPING, PARTNERSHIP_HISTORY',
- `RELATED_SEQ` int(11) DEFAULT NULL COMMENT '관련 테이블 SEQ',
- `IS_READ` varchar(1) NOT NULL DEFAULT 'N' COMMENT '읽음 상태: Y(읽음), N(안읽음)',
- `READ_DATE` timestamp NULL DEFAULT NULL COMMENT '읽은 일시',
- `PRIORITY` varchar(20) DEFAULT 'NORMAL' COMMENT '우선순위: HIGH, NORMAL, LOW',
- `PUSH_SENT` varchar(1) DEFAULT 'N' COMMENT '푸시 발송 여부: Y(발송), N(미발송)',
- `EMAIL_SENT` varchar(1) DEFAULT 'N' COMMENT '이메일 발송 여부: Y(발송), N(미발송)',
- `SMS_SENT` varchar(1) DEFAULT 'N' COMMENT 'SMS 발송 여부: Y(발송), N(미발송)',
- `EXPIRES_AT` timestamp NULL DEFAULT NULL COMMENT '만료일시',
- `CREATED_AT` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '생성일시',
- `UPDATED_AT` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp() COMMENT '수정일시',
- `ADD_INFO1` varchar(500) DEFAULT NULL COMMENT '추가정보1',
- `ADD_INFO2` varchar(500) DEFAULT NULL COMMENT '추가정보2',
- `ADD_INFO3` varchar(500) DEFAULT NULL COMMENT '추가정보3',
- PRIMARY KEY (`SEQ`),
- INDEX `idx_recipient_seq` (`RECIPIENT_SEQ`),
- INDEX `idx_sender_seq` (`SENDER_SEQ`),
- INDEX `idx_type` (`TYPE`),
- INDEX `idx_is_read` (`IS_READ`),
- INDEX `idx_priority` (`PRIORITY`),
- INDEX `idx_created_at` (`CREATED_AT`),
- INDEX `idx_recipient_read_created` (`RECIPIENT_SEQ`, `IS_READ`, `CREATED_AT`),
- INDEX `idx_related_type_seq` (`RELATED_TYPE`, `RELATED_SEQ`),
- CONSTRAINT `fk_notification_recipient`
- FOREIGN KEY (`RECIPIENT_SEQ`) REFERENCES `USER_LIST` (`SEQ`)
- ON DELETE CASCADE ON UPDATE CASCADE,
- CONSTRAINT `fk_notification_sender`
- FOREIGN KEY (`SENDER_SEQ`) REFERENCES `USER_LIST` (`SEQ`)
- ON DELETE SET NULL ON UPDATE CASCADE
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci COMMENT='알림 테이블';
|