--- fenglin/TODO/sql/db_stru.sql	2025/04/09 06:15:33	1.11
+++ fenglin/TODO/sql/db_stru.sql	2025/06/24 09:15:26	1.20
@@ -52,7 +52,6 @@ CREATE TABLE `bbs` (
   `excerption` tinyint UNSIGNED NOT NULL DEFAULT '0',
   `ontop` tinyint UNSIGNED NOT NULL DEFAULT '0',
   `static` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `recommend` tinyint UNSIGNED NOT NULL DEFAULT '0',
   `gen_ex` tinyint UNSIGNED NOT NULL DEFAULT '0',
   `m_del` tinyint UNSIGNED NOT NULL DEFAULT '0',
   `old_SID` smallint NOT NULL DEFAULT '0'
@@ -74,16 +73,6 @@ CREATE TABLE `bbs_content` (
   `content` longtext
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
-CREATE TABLE `bbs_ex_dl` (
-  `ID` mediumint NOT NULL,
-  `SID` smallint NOT NULL DEFAULT '0',
-  `url` varchar(255) DEFAULT NULL,
-  `dl_count` mediumint NOT NULL DEFAULT '0',
-  `dl_type` char(1) NOT NULL DEFAULT 'C',
-  `filename` varchar(50) DEFAULT NULL,
-  `enable` tinyint UNSIGNED NOT NULL DEFAULT '1'
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
 CREATE TABLE `bbs_msg` (
   `MID` int NOT NULL,
   `fromUID` mediumint NOT NULL DEFAULT '0',
@@ -131,58 +120,6 @@ CREATE TABLE `friend_list` (
   `fUID` mediumint NOT NULL DEFAULT '0'
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
-CREATE TABLE `journal_data` (
-  `ID` mediumint NOT NULL,
-  `JID` smallint NOT NULL DEFAULT '0',
-  `AID` mediumint NOT NULL DEFAULT '0',
-  `abstract` longtext NOT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
-CREATE TABLE `journal_index` (
-  `JID` smallint NOT NULL,
-  `dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
-  `enable` tinyint(1) NOT NULL DEFAULT '0'
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
-CREATE TABLE `mng_err_login_log` (
-  `ID` int NOT NULL,
-  `username` varchar(14) DEFAULT NULL,
-  `password` varchar(12) DEFAULT NULL,
-  `login_dt` datetime DEFAULT NULL,
-  `login_ip` varchar(20) DEFAULT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
-CREATE TABLE `mng_login_log` (
-  `ID` int NOT NULL,
-  `UID` mediumint NOT NULL DEFAULT '0',
-  `login_dt` datetime DEFAULT NULL,
-  `login_ip` varchar(20) DEFAULT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
-CREATE TABLE `mng_priv_list` (
-  `PID` mediumint NOT NULL,
-  `UID` mediumint NOT NULL DEFAULT '0',
-  `ch_passwd` tinyint UNSIGNED NOT NULL DEFAULT '1',
-  `db_cleanup` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `score_cacl` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `auth_user_op` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `section_op` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `master_op` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `photo_check` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `prize_op` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `article_audit` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `gen_ex` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `upload_check` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `article_recommend` tinyint UNSIGNED NOT NULL DEFAULT '0'
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
-CREATE TABLE `mng_user_list` (
-  `UID` mediumint NOT NULL,
-  `username` varchar(14) NOT NULL DEFAULT '',
-  `password` varchar(64) NOT NULL DEFAULT '',
-  `enable` tinyint UNSIGNED NOT NULL DEFAULT '0'
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
 CREATE TABLE `section_class` (
   `CID` smallint NOT NULL,
   `cname` varchar(20) DEFAULT NULL,
@@ -191,17 +128,6 @@ CREATE TABLE `section_class` (
   `sort_order` smallint NOT NULL DEFAULT '10'
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
-CREATE TABLE `section_class_master` (
-  `MID` smallint NOT NULL,
-  `CID` smallint NOT NULL DEFAULT '0',
-  `UID` mediumint NOT NULL DEFAULT '0',
-  `begin_dt` datetime DEFAULT NULL,
-  `end_dt` datetime DEFAULT NULL,
-  `enable` tinyint UNSIGNED NOT NULL DEFAULT '1',
-  `memo` text,
-  `major` tinyint UNSIGNED NOT NULL DEFAULT '0'
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
 CREATE TABLE `section_config` (
   `SID` smallint NOT NULL,
   `sname` varchar(20) DEFAULT NULL,
@@ -219,6 +145,8 @@ CREATE TABLE `section_config` (
   `sort_order` smallint NOT NULL DEFAULT '10',
   `ex_gen_tm` datetime DEFAULT NULL,
   `ex_update` tinyint UNSIGNED NOT NULL DEFAULT '0',
+  `ex_menu_tm` datetime DEFAULT NULL,
+  `ex_menu_update` tinyint NOT NULL DEFAULT '0',
   `read_user_level` smallint NOT NULL DEFAULT '0',
   `write_user_level` smallint NOT NULL DEFAULT '0'
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
@@ -240,13 +168,6 @@ CREATE TABLE `section_master` (
   `memo` text
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
-CREATE TABLE `section_user_priv` (
-  `SID` smallint NOT NULL DEFAULT '0',
-  `UID` mediumint NOT NULL DEFAULT '0',
-  `read` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `write` tinyint UNSIGNED NOT NULL DEFAULT '0'
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
 CREATE TABLE `send_pass_log` (
   `ID` mediumint NOT NULL,
   `UID` mediumint NOT NULL DEFAULT '0',
@@ -356,9 +277,10 @@ CREATE TABLE `user_pubinfo` (
   `sign_1` mediumtext,
   `sign_2` mediumtext,
   `sign_3` mediumtext,
-  `sub_permission` tinyint UNSIGNED NOT NULL DEFAULT '1',
   `upload_limit` int NOT NULL DEFAULT '1048576',
-  `login_notify_dt` datetime DEFAULT NULL
+  `login_notify_dt` datetime DEFAULT NULL,
+  `user_timezone` varchar(50) NOT NULL DEFAULT '',
+  `game_money` int NOT NULL DEFAULT '0'
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
 CREATE TABLE `user_reginfo` (
@@ -370,13 +292,6 @@ CREATE TABLE `user_reginfo` (
   `memo` mediumtext
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
 
-CREATE TABLE `user_regverify` (
-  `UID` mediumint NOT NULL DEFAULT '0',
-  `verify_code` varchar(10) NOT NULL DEFAULT '',
-  `complete` tinyint UNSIGNED NOT NULL DEFAULT '0',
-  `set_dt` datetime DEFAULT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-
 CREATE TABLE `user_score` (
   `UID` mediumint NOT NULL DEFAULT '0',
   `score` mediumint NOT NULL DEFAULT '0',
@@ -440,11 +355,6 @@ ALTER TABLE `bbs_content`
   ADD PRIMARY KEY (`CID`),
   ADD KEY `AID` (`AID`);
 
-ALTER TABLE `bbs_ex_dl`
-  ADD PRIMARY KEY (`ID`),
-  ADD UNIQUE KEY `SID` (`SID`),
-  ADD KEY `dl_type` (`dl_type`);
-
 ALTER TABLE `bbs_msg`
   ADD PRIMARY KEY (`MID`),
   ADD KEY `fromUID` (`fromUID`),
@@ -468,39 +378,10 @@ ALTER TABLE `friend_list`
   ADD KEY `fUID` (`fUID`),
   ADD KEY `UID` (`UID`);
 
-ALTER TABLE `journal_data`
-  ADD PRIMARY KEY (`ID`),
-  ADD UNIQUE KEY `AID` (`AID`),
-  ADD KEY `JID` (`JID`);
-
-ALTER TABLE `journal_index`
-  ADD PRIMARY KEY (`JID`);
-
-ALTER TABLE `mng_err_login_log`
-  ADD PRIMARY KEY (`ID`);
-
-ALTER TABLE `mng_login_log`
-  ADD PRIMARY KEY (`ID`),
-  ADD KEY `UID` (`UID`),
-  ADD KEY `login_dt` (`login_dt`);
-
-ALTER TABLE `mng_priv_list`
-  ADD PRIMARY KEY (`PID`),
-  ADD UNIQUE KEY `UID` (`UID`);
-
-ALTER TABLE `mng_user_list`
-  ADD PRIMARY KEY (`UID`),
-  ADD UNIQUE KEY `username` (`username`);
-
 ALTER TABLE `section_class`
   ADD PRIMARY KEY (`CID`),
   ADD KEY `sort_order` (`sort_order`);
 
-ALTER TABLE `section_class_master`
-  ADD PRIMARY KEY (`MID`),
-  ADD KEY `UID` (`UID`),
-  ADD KEY `CID` (`CID`);
-
 ALTER TABLE `section_config`
   ADD PRIMARY KEY (`SID`),
   ADD KEY `CID` (`CID`),
@@ -518,10 +399,6 @@ ALTER TABLE `section_master`
   ADD KEY `SID` (`SID`),
   ADD KEY `UID` (`UID`);
 
-ALTER TABLE `section_user_priv`
-  ADD PRIMARY KEY (`SID`,`UID`),
-  ADD KEY `UID` (`UID`);
-
 ALTER TABLE `send_pass_log`
   ADD PRIMARY KEY (`ID`),
   ADD KEY `UID` (`UID`);
@@ -586,10 +463,6 @@ ALTER TABLE `user_pubinfo`
 ALTER TABLE `user_reginfo`
   ADD PRIMARY KEY (`UID`);
 
-ALTER TABLE `user_regverify`
-  ADD PRIMARY KEY (`UID`),
-  ADD UNIQUE KEY `verify_code` (`verify_code`);
-
 ALTER TABLE `user_score`
   ADD PRIMARY KEY (`UID`),
   ADD KEY `score` (`score`);
@@ -600,6 +473,7 @@ ALTER TABLE `user_score_log`
 
 ALTER TABLE `view_article_log`
   ADD PRIMARY KEY (`AID`,`UID`),
+  ADD UNIQUE KEY `UID` (`UID`,`AID`),
   ADD KEY `dt` (`dt`);
 
 ALTER TABLE `visit_log`
@@ -621,9 +495,6 @@ ALTER TABLE `bbs_article_op`
 ALTER TABLE `bbs_content`
   MODIFY `CID` int NOT NULL AUTO_INCREMENT;
 
-ALTER TABLE `bbs_ex_dl`
-  MODIFY `ID` mediumint NOT NULL AUTO_INCREMENT;
-
 ALTER TABLE `bbs_msg`
   MODIFY `MID` int NOT NULL AUTO_INCREMENT;
 
@@ -636,30 +507,9 @@ ALTER TABLE `ex_dir`
 ALTER TABLE `friend_list`
   MODIFY `ID` mediumint NOT NULL AUTO_INCREMENT;
 
-ALTER TABLE `journal_data`
-  MODIFY `ID` mediumint NOT NULL AUTO_INCREMENT;
-
-ALTER TABLE `journal_index`
-  MODIFY `JID` smallint NOT NULL AUTO_INCREMENT;
-
-ALTER TABLE `mng_err_login_log`
-  MODIFY `ID` int NOT NULL AUTO_INCREMENT;
-
-ALTER TABLE `mng_login_log`
-  MODIFY `ID` int NOT NULL AUTO_INCREMENT;
-
-ALTER TABLE `mng_priv_list`
-  MODIFY `PID` mediumint NOT NULL AUTO_INCREMENT;
-
-ALTER TABLE `mng_user_list`
-  MODIFY `UID` mediumint NOT NULL AUTO_INCREMENT;
-
 ALTER TABLE `section_class`
   MODIFY `CID` smallint NOT NULL AUTO_INCREMENT;
 
-ALTER TABLE `section_class_master`
-  MODIFY `MID` smallint NOT NULL AUTO_INCREMENT;
-
 ALTER TABLE `section_config`
   MODIFY `SID` smallint NOT NULL AUTO_INCREMENT;
 
