diff --git a/sql/SAMS-2025_02_13_00_21_14-dump.sql b/sql/SAMS-2025_02_13_00_21_14-dump.sql deleted file mode 100644 index 64f368db..00000000 --- a/sql/SAMS-2025_02_13_00_21_14-dump.sql +++ /dev/null @@ -1,406 +0,0 @@ --- MySQL dump 10.13 Distrib 8.0.41, for Linux (x86_64) --- --- Host: 127.0.0.1 Database: SAMS --- ------------------------------------------------------ --- Server version 8.0.41-0ubuntu0.22.04.1 - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!50503 SET NAMES utf8mb4 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `ams_activity` --- - -DROP TABLE IF EXISTS `ams_activity`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_activity` ( - `act_id` bigint NOT NULL AUTO_INCREMENT COMMENT '活动ID', - `title` varchar(100) NOT NULL COMMENT '活动标题', - `description` text COMMENT '活动描述', - `start_time` datetime NOT NULL COMMENT '开始时间', - `end_time` datetime NOT NULL COMMENT '结束时间', - `location` varchar(255) DEFAULT NULL COMMENT '地点', - `budget` decimal(10,2) DEFAULT NULL COMMENT '预算', - `max_participants` int DEFAULT NULL COMMENT '最大参与人数', - `creator_id` bigint NOT NULL COMMENT '创建者ID', - `club_id` bigint DEFAULT NULL COMMENT '所属社团ID', - `visibility` enum('public','private') DEFAULT 'public' COMMENT '是否公开', - `status` enum('draft','approved','ongoing','completed','cancelled') DEFAULT 'draft' COMMENT '活动状态', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`act_id`), - KEY `creator_id` (`creator_id`), - KEY `club_id` (`club_id`), - CONSTRAINT `ams_activity_ibfk_1` FOREIGN KEY (`creator_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `ams_activity_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_activity` --- - -LOCK TABLES `ams_activity` WRITE; -/*!40000 ALTER TABLE `ams_activity` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_activity` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_approval` --- - -DROP TABLE IF EXISTS `ams_approval`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_approval` ( - `appr_id` bigint NOT NULL AUTO_INCREMENT COMMENT '审批ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `user_id` bigint NOT NULL COMMENT '发起者ID', - `approver_id` bigint NOT NULL COMMENT '审批人ID', - `status` tinyint(1) DEFAULT '0' COMMENT '审批状态 (0: 待审批, 1: 通过, 2: 拒绝)', - `reason` text COMMENT '拒绝原因(如果适用)', - `approved_at` datetime DEFAULT NULL COMMENT '审批时间', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`appr_id`), - KEY `act_id` (`act_id`), - KEY `user_id` (`user_id`), - KEY `approver_id` (`approver_id`), - CONSTRAINT `ams_approval_ibfk_1` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`), - CONSTRAINT `ams_approval_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `ams_approval_ibfk_3` FOREIGN KEY (`approver_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动审批表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_approval` --- - -LOCK TABLES `ams_approval` WRITE; -/*!40000 ALTER TABLE `ams_approval` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_approval` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_comment` --- - -DROP TABLE IF EXISTS `ams_comment`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_comment` ( - `comment_id` bigint NOT NULL AUTO_INCREMENT COMMENT '评论ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `parent_comment_id` bigint DEFAULT NULL COMMENT '父评论ID(为空表示是顶级评论)', - `content` text NOT NULL COMMENT '评论内容', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '评论时间', - PRIMARY KEY (`comment_id`), - KEY `user_id` (`user_id`), - KEY `act_id` (`act_id`), - KEY `parent_comment_id` (`parent_comment_id`), - CONSTRAINT `ams_comment_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE, - CONSTRAINT `ams_comment_ibfk_2` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`) ON DELETE CASCADE, - CONSTRAINT `ams_comment_ibfk_3` FOREIGN KEY (`parent_comment_id`) REFERENCES `ams_comment` (`comment_id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动评论表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_comment` --- - -LOCK TABLES `ams_comment` WRITE; -/*!40000 ALTER TABLE `ams_comment` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_comment` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_reaction` --- - -DROP TABLE IF EXISTS `ams_reaction`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_reaction` ( - `reaction_id` bigint NOT NULL AUTO_INCREMENT COMMENT '点赞/点踩ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `reaction_type` enum('like','dislike') NOT NULL COMMENT '反应类型(like: 点赞, dislike: 点踩)', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '反应时间', - PRIMARY KEY (`reaction_id`), - UNIQUE KEY `uniq_user_activity_reaction` (`user_id`,`act_id`), - KEY `act_id` (`act_id`), - CONSTRAINT `ams_reaction_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE, - CONSTRAINT `ams_reaction_ibfk_2` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动点赞/点踩表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_reaction` --- - -LOCK TABLES `ams_reaction` WRITE; -/*!40000 ALTER TABLE `ams_reaction` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_reaction` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_registration` --- - -DROP TABLE IF EXISTS `ams_registration`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_registration` ( - `reg_id` bigint NOT NULL AUTO_INCREMENT COMMENT '报名ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `status` enum('registered','cancelled','attended','absent') DEFAULT 'registered' COMMENT '报名状态', - `register_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '报名时间', - `attend_time` datetime DEFAULT NULL COMMENT '参与时间', - PRIMARY KEY (`reg_id`), - KEY `act_id` (`act_id`), - KEY `user_id` (`user_id`), - CONSTRAINT `ams_registration_ibfk_1` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`), - CONSTRAINT `ams_registration_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动报名表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_registration` --- - -LOCK TABLES `ams_registration` WRITE; -/*!40000 ALTER TABLE `ams_registration` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_registration` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_club` --- - -DROP TABLE IF EXISTS `sms_club`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_club` ( - `club_id` bigint NOT NULL AUTO_INCREMENT COMMENT '社团ID', - `club_name` varchar(50) NOT NULL COMMENT '社团名称', - `description` text COMMENT '社团简介', - `category` enum('文化艺术','学术科技','社会公益','其他') NOT NULL COMMENT '社团类型', - `college_id` bigint NOT NULL COMMENT '所属院系', - `leader_id` bigint DEFAULT NULL COMMENT '负责人ID', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`club_id`), - KEY `college_id` (`college_id`), - KEY `leader_id` (`leader_id`), - CONSTRAINT `sms_club_ibfk_1` FOREIGN KEY (`college_id`) REFERENCES `sms_college` (`college_id`), - CONSTRAINT `sms_club_ibfk_2` FOREIGN KEY (`leader_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社团表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_club` --- - -LOCK TABLES `sms_club` WRITE; -/*!40000 ALTER TABLE `sms_club` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_club` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_college` --- - -DROP TABLE IF EXISTS `sms_college`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_college` ( - `college_id` bigint NOT NULL AUTO_INCREMENT COMMENT '院系ID', - `college_name` varchar(255) NOT NULL COMMENT '名称(高校或院系)', - `parent_id` bigint DEFAULT NULL COMMENT '父院系ID(高校此值为空)', - `leader_id` bigint DEFAULT NULL COMMENT '负责人ID', - `email` varchar(50) DEFAULT '' COMMENT '邮箱', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`college_id`), - KEY `parent_id` (`parent_id`), - KEY `leader_id` (`leader_id`), - CONSTRAINT `sms_college_ibfk_1` FOREIGN KEY (`parent_id`) REFERENCES `sms_college` (`college_id`) ON DELETE SET NULL, - CONSTRAINT `sms_college_ibfk_2` FOREIGN KEY (`leader_id`) REFERENCES `sys_user` (`user_id`) ON DELETE SET NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='高校及院系表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_college` --- - -LOCK TABLES `sms_college` WRITE; -/*!40000 ALTER TABLE `sms_college` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_college` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_user_club` --- - -DROP TABLE IF EXISTS `sms_user_club`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_user_club` ( - `suc_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `club_id` bigint NOT NULL COMMENT '社团ID', - `role_id` bigint NOT NULL COMMENT '角色ID', - `is_active` tinyint(1) DEFAULT '1' COMMENT '是否活跃', - `join_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入日期', - PRIMARY KEY (`suc_id`), - KEY `user_id` (`user_id`), - KEY `club_id` (`club_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sms_user_club_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `sms_user_club_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`), - CONSTRAINT `sms_user_club_ibfk_3` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户社团关系表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_user_club` --- - -LOCK TABLES `sms_user_club` WRITE; -/*!40000 ALTER TABLE `sms_user_club` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_user_club` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_logs` --- - -DROP TABLE IF EXISTS `sys_logs`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_logs` ( - `log_id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `action` varchar(255) NOT NULL COMMENT '操作类型', - `description` text COMMENT '描述', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '操作时间', - PRIMARY KEY (`log_id`), - KEY `user_id` (`user_id`), - CONSTRAINT `sys_logs_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统日志表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_logs` --- - -LOCK TABLES `sys_logs` WRITE; -/*!40000 ALTER TABLE `sys_logs` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_logs` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_notification` --- - -DROP TABLE IF EXISTS `sys_notification`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_notification` ( - `notification_id` bigint NOT NULL AUTO_INCREMENT COMMENT '通知ID', - `title` varchar(255) NOT NULL COMMENT '通知标题', - `content` text NOT NULL COMMENT '通知内容', - `receiver_id` bigint NOT NULL COMMENT '接收者ID', - `is_read` tinyint(1) DEFAULT '0' COMMENT '是否已读', - `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`notification_id`), - KEY `receiver_id` (`receiver_id`), - CONSTRAINT `sys_notification_ibfk_1` FOREIGN KEY (`receiver_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统通知表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_notification` --- - -LOCK TABLES `sys_notification` WRITE; -/*!40000 ALTER TABLE `sys_notification` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_notification` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_role` --- - -DROP TABLE IF EXISTS `sys_role`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_role` ( - `role_id` bigint NOT NULL AUTO_INCREMENT COMMENT '角色ID', - `role_name` varchar(30) NOT NULL COMMENT '角色名称', - `role_key` varchar(64) NOT NULL COMMENT '角色标识', - `role_desc` varchar(255) DEFAULT NULL COMMENT '角色描述', - `status` enum('active','inactive') DEFAULT 'active' COMMENT '状态', - PRIMARY KEY (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户角色表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_role` --- - -LOCK TABLES `sys_role` WRITE; -/*!40000 ALTER TABLE `sys_role` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_role` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_user` --- - -DROP TABLE IF EXISTS `sys_user`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_user` ( - `user_id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID', - `role_id` bigint NOT NULL COMMENT '用户角色', - `nick_name` varchar(30) DEFAULT '' COMMENT '用户昵称', - `user_name` varchar(30) NOT NULL COMMENT '真实姓名', - `password` varchar(100) NOT NULL COMMENT '用户密码', - `school_id` char(12) NOT NULL COMMENT '学号/教职工号', - `college_id` bigint NOT NULL COMMENT '所属院系', - `email` varchar(50) DEFAULT '' COMMENT '用户邮箱', - `avatar` varchar(100) DEFAULT '' COMMENT '头像地址', - `status` enum('active','inactive','banned') DEFAULT 'active' COMMENT '账号状态', - PRIMARY KEY (`user_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sys_user_ibfk_1` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统用户表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_user` --- - -LOCK TABLES `sys_user` WRITE; -/*!40000 ALTER TABLE `sys_user` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_user` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2025-02-13 0:21:14 diff --git a/sql/SAMS-2025_02_13_00_32_38-dump.sql b/sql/SAMS-2025_02_13_00_32_38-dump.sql deleted file mode 100644 index 823eb0bb..00000000 --- a/sql/SAMS-2025_02_13_00_32_38-dump.sql +++ /dev/null @@ -1,407 +0,0 @@ --- MySQL dump 10.13 Distrib 8.0.41, for Linux (x86_64) --- --- Host: 127.0.0.1 Database: SAMS --- ------------------------------------------------------ --- Server version 8.0.41-0ubuntu0.22.04.1 - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!50503 SET NAMES utf8mb4 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `ams_activity` --- - -DROP TABLE IF EXISTS `ams_activity`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_activity` ( - `act_id` bigint NOT NULL AUTO_INCREMENT COMMENT '活动ID', - `title` varchar(100) NOT NULL COMMENT '活动标题', - `description` text COMMENT '活动描述', - `start_time` datetime NOT NULL COMMENT '开始时间', - `end_time` datetime NOT NULL COMMENT '结束时间', - `location` varchar(255) DEFAULT NULL COMMENT '地点', - `budget` decimal(10,2) DEFAULT NULL COMMENT '预算', - `max_participants` int DEFAULT NULL COMMENT '最大参与人数', - `creator_id` bigint NOT NULL COMMENT '创建者ID', - `club_id` bigint DEFAULT NULL COMMENT '所属社团ID', - `visibility` enum('public','private') DEFAULT 'public' COMMENT '是否公开', - `status` enum('draft','approved','ongoing','completed','cancelled') DEFAULT 'draft' COMMENT '活动状态', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间', - PRIMARY KEY (`act_id`), - KEY `creator_id` (`creator_id`), - KEY `club_id` (`club_id`), - CONSTRAINT `ams_activity_ibfk_1` FOREIGN KEY (`creator_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `ams_activity_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_activity` --- - -LOCK TABLES `ams_activity` WRITE; -/*!40000 ALTER TABLE `ams_activity` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_activity` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_approval` --- - -DROP TABLE IF EXISTS `ams_approval`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_approval` ( - `appr_id` bigint NOT NULL AUTO_INCREMENT COMMENT '审批ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `user_id` bigint NOT NULL COMMENT '发起者ID', - `approver_id` bigint NOT NULL COMMENT '审批人ID', - `status` tinyint(1) DEFAULT '0' COMMENT '审批状态 (0: 待审批, 1: 通过, 2: 拒绝)', - `reason` text COMMENT '拒绝原因(如果适用)', - `approved_at` datetime DEFAULT NULL COMMENT '审批时间', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`appr_id`), - KEY `act_id` (`act_id`), - KEY `user_id` (`user_id`), - KEY `approver_id` (`approver_id`), - CONSTRAINT `ams_approval_ibfk_1` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`), - CONSTRAINT `ams_approval_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `ams_approval_ibfk_3` FOREIGN KEY (`approver_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动审批表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_approval` --- - -LOCK TABLES `ams_approval` WRITE; -/*!40000 ALTER TABLE `ams_approval` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_approval` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_comment` --- - -DROP TABLE IF EXISTS `ams_comment`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_comment` ( - `comment_id` bigint NOT NULL AUTO_INCREMENT COMMENT '评论ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `parent_comment_id` bigint DEFAULT NULL COMMENT '父评论ID(为空表示是顶级评论)', - `content` text NOT NULL COMMENT '评论内容', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '评论时间', - PRIMARY KEY (`comment_id`), - KEY `user_id` (`user_id`), - KEY `act_id` (`act_id`), - KEY `ams_comment_ibfk_3` (`parent_comment_id`), - CONSTRAINT `ams_comment_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE, - CONSTRAINT `ams_comment_ibfk_2` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`) ON DELETE CASCADE, - CONSTRAINT `ams_comment_ibfk_3` FOREIGN KEY (`parent_comment_id`) REFERENCES `ams_comment` (`comment_id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动评论表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_comment` --- - -LOCK TABLES `ams_comment` WRITE; -/*!40000 ALTER TABLE `ams_comment` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_comment` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_reaction` --- - -DROP TABLE IF EXISTS `ams_reaction`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_reaction` ( - `reaction_id` bigint NOT NULL AUTO_INCREMENT COMMENT '点赞/点踩ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `reaction_type` enum('like','dislike') NOT NULL COMMENT '反应类型(like: 点赞, dislike: 点踩)', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '反应时间', - PRIMARY KEY (`reaction_id`), - UNIQUE KEY `uniq_user_activity_reaction` (`user_id`,`act_id`), - KEY `act_id` (`act_id`), - CONSTRAINT `ams_reaction_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE, - CONSTRAINT `ams_reaction_ibfk_2` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动点赞/点踩表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_reaction` --- - -LOCK TABLES `ams_reaction` WRITE; -/*!40000 ALTER TABLE `ams_reaction` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_reaction` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_registration` --- - -DROP TABLE IF EXISTS `ams_registration`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_registration` ( - `reg_id` bigint NOT NULL AUTO_INCREMENT COMMENT '报名ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `status` enum('registered','cancelled','attended','absent') DEFAULT 'registered' COMMENT '报名状态', - `register_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '报名时间', - `attend_time` datetime DEFAULT NULL COMMENT '参与时间', - PRIMARY KEY (`reg_id`), - KEY `act_id` (`act_id`), - KEY `user_id` (`user_id`), - CONSTRAINT `ams_registration_ibfk_1` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`), - CONSTRAINT `ams_registration_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动报名表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_registration` --- - -LOCK TABLES `ams_registration` WRITE; -/*!40000 ALTER TABLE `ams_registration` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_registration` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_club` --- - -DROP TABLE IF EXISTS `sms_club`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_club` ( - `club_id` bigint NOT NULL AUTO_INCREMENT COMMENT '社团ID', - `club_name` varchar(50) NOT NULL COMMENT '社团名称', - `description` text COMMENT '社团简介', - `category` enum('文化艺术','学术科技','社会公益','其他') NOT NULL COMMENT '社团类型', - `college_id` bigint NOT NULL COMMENT '所属院系', - `leader_id` bigint DEFAULT NULL COMMENT '负责人ID', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`club_id`), - KEY `college_id` (`college_id`), - KEY `leader_id` (`leader_id`), - CONSTRAINT `sms_club_ibfk_1` FOREIGN KEY (`college_id`) REFERENCES `sms_college` (`college_id`), - CONSTRAINT `sms_club_ibfk_2` FOREIGN KEY (`leader_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社团表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_club` --- - -LOCK TABLES `sms_club` WRITE; -/*!40000 ALTER TABLE `sms_club` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_club` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_college` --- - -DROP TABLE IF EXISTS `sms_college`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_college` ( - `college_id` bigint NOT NULL AUTO_INCREMENT COMMENT '院系ID', - `college_name` varchar(255) NOT NULL COMMENT '名称(高校或院系)', - `parent_id` bigint DEFAULT NULL COMMENT '父院系ID(高校此值为空)', - `leader_id` bigint DEFAULT NULL COMMENT '负责人ID', - `email` varchar(50) DEFAULT '' COMMENT '邮箱', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`college_id`), - KEY `parent_id` (`parent_id`), - KEY `leader_id` (`leader_id`), - CONSTRAINT `sms_college_ibfk_1` FOREIGN KEY (`parent_id`) REFERENCES `sms_college` (`college_id`) ON DELETE SET NULL, - CONSTRAINT `sms_college_ibfk_2` FOREIGN KEY (`leader_id`) REFERENCES `sys_user` (`user_id`) ON DELETE SET NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='高校及院系表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_college` --- - -LOCK TABLES `sms_college` WRITE; -/*!40000 ALTER TABLE `sms_college` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_college` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_user_club` --- - -DROP TABLE IF EXISTS `sms_user_club`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_user_club` ( - `suc_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `club_id` bigint NOT NULL COMMENT '社团ID', - `role_id` bigint NOT NULL COMMENT '角色ID', - `is_active` tinyint(1) DEFAULT '1' COMMENT '是否活跃', - `join_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入日期', - PRIMARY KEY (`suc_id`), - KEY `user_id` (`user_id`), - KEY `club_id` (`club_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sms_user_club_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `sms_user_club_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`), - CONSTRAINT `sms_user_club_ibfk_3` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户社团关系表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_user_club` --- - -LOCK TABLES `sms_user_club` WRITE; -/*!40000 ALTER TABLE `sms_user_club` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_user_club` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_logs` --- - -DROP TABLE IF EXISTS `sys_logs`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_logs` ( - `log_id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `action` varchar(255) NOT NULL COMMENT '操作类型', - `description` text COMMENT '描述', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '操作时间', - PRIMARY KEY (`log_id`), - KEY `idx_user_id` (`user_id`), - CONSTRAINT `sys_logs_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统日志表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_logs` --- - -LOCK TABLES `sys_logs` WRITE; -/*!40000 ALTER TABLE `sys_logs` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_logs` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_notification` --- - -DROP TABLE IF EXISTS `sys_notification`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_notification` ( - `notification_id` bigint NOT NULL AUTO_INCREMENT COMMENT '通知ID', - `title` varchar(255) NOT NULL COMMENT '通知标题', - `content` text NOT NULL COMMENT '通知内容', - `receiver_id` bigint NOT NULL COMMENT '接收者ID', - `is_read` tinyint(1) DEFAULT '0' COMMENT '是否已读', - `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`notification_id`), - KEY `idx_receiver_id` (`receiver_id`), - CONSTRAINT `sys_notification_ibfk_1` FOREIGN KEY (`receiver_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统通知表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_notification` --- - -LOCK TABLES `sys_notification` WRITE; -/*!40000 ALTER TABLE `sys_notification` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_notification` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_role` --- - -DROP TABLE IF EXISTS `sys_role`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_role` ( - `role_id` bigint NOT NULL AUTO_INCREMENT COMMENT '角色ID', - `role_name` varchar(30) NOT NULL COMMENT '角色名称', - `role_key` varchar(64) NOT NULL COMMENT '角色标识', - `role_desc` varchar(255) DEFAULT NULL COMMENT '角色描述', - `status` enum('active','inactive') DEFAULT 'active' COMMENT '状态', - PRIMARY KEY (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户角色表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_role` --- - -LOCK TABLES `sys_role` WRITE; -/*!40000 ALTER TABLE `sys_role` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_role` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_user` --- - -DROP TABLE IF EXISTS `sys_user`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_user` ( - `user_id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID', - `role_id` bigint NOT NULL COMMENT '用户角色', - `nick_name` varchar(30) DEFAULT '' COMMENT '用户昵称', - `user_name` varchar(30) NOT NULL COMMENT '真实姓名', - `password` varchar(100) NOT NULL COMMENT '用户密码', - `school_id` char(12) NOT NULL COMMENT '学号/教职工号', - `college_id` bigint NOT NULL COMMENT '所属院系', - `email` varchar(50) DEFAULT '' COMMENT '用户邮箱', - `avatar` varchar(100) DEFAULT '' COMMENT '头像地址', - `status` enum('active','inactive','banned') DEFAULT 'active' COMMENT '账号状态', - PRIMARY KEY (`user_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sys_user_ibfk_1` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统用户表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_user` --- - -LOCK TABLES `sys_user` WRITE; -/*!40000 ALTER TABLE `sys_user` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_user` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2025-02-13 0:32:39 diff --git a/sql/SAMS-2025_02_13_12_11_06-dump.sql b/sql/SAMS-2025_02_13_12_11_06-dump.sql deleted file mode 100644 index 87a56f4f..00000000 --- a/sql/SAMS-2025_02_13_12_11_06-dump.sql +++ /dev/null @@ -1,435 +0,0 @@ --- MySQL dump 10.13 Distrib 8.0.41, for Linux (x86_64) --- --- Host: 127.0.0.1 Database: SAMS --- ------------------------------------------------------ --- Server version 8.0.41-0ubuntu0.22.04.1 - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!50503 SET NAMES utf8mb4 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `ams_activity` --- - -DROP TABLE IF EXISTS `ams_activity`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_activity` ( - `act_id` bigint NOT NULL AUTO_INCREMENT COMMENT '活动ID', - `title` varchar(100) NOT NULL COMMENT '活动标题', - `description` text COMMENT '活动描述', - `start_time` datetime NOT NULL COMMENT '开始时间', - `end_time` datetime NOT NULL COMMENT '结束时间', - `location` varchar(255) DEFAULT NULL COMMENT '地点', - `budget` decimal(10,2) DEFAULT '0.00' COMMENT '预算', - `max_participants` int DEFAULT NULL COMMENT '最大参与人数', - `creator_id` bigint NOT NULL COMMENT '创建者ID', - `club_id` bigint DEFAULT NULL COMMENT '所属社团ID', - `visibility` enum('public','private') DEFAULT 'public' COMMENT '是否公开', - `status` enum('draft','approved','ongoing','completed','cancelled') DEFAULT 'draft' COMMENT '活动状态', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间', - PRIMARY KEY (`act_id`), - KEY `creator_id` (`creator_id`), - KEY `club_id` (`club_id`), - CONSTRAINT `ams_activity_ibfk_1` FOREIGN KEY (`creator_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `ams_activity_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_activity` --- - -LOCK TABLES `ams_activity` WRITE; -/*!40000 ALTER TABLE `ams_activity` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_activity` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_approval` --- - -DROP TABLE IF EXISTS `ams_approval`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_approval` ( - `appr_id` bigint NOT NULL AUTO_INCREMENT COMMENT '审批ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `user_id` bigint NOT NULL COMMENT '发起者ID', - `approver_id` bigint NOT NULL COMMENT '审批人ID', - `status` tinyint(1) DEFAULT '0' COMMENT '审批状态 (0: 待审批, 1: 通过, 2: 拒绝)', - `reason` text COMMENT '拒绝原因(如果适用)', - `approved_at` datetime DEFAULT NULL COMMENT '审批时间', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`appr_id`), - KEY `act_id` (`act_id`), - KEY `user_id` (`user_id`), - KEY `approver_id` (`approver_id`), - CONSTRAINT `ams_approval_ibfk_1` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`), - CONSTRAINT `ams_approval_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `ams_approval_ibfk_3` FOREIGN KEY (`approver_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动审批表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_approval` --- - -LOCK TABLES `ams_approval` WRITE; -/*!40000 ALTER TABLE `ams_approval` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_approval` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_comment` --- - -DROP TABLE IF EXISTS `ams_comment`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_comment` ( - `comment_id` bigint NOT NULL AUTO_INCREMENT COMMENT '评论ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `parent_comment_id` bigint DEFAULT NULL COMMENT '父评论ID(为空表示是顶级评论)', - `content` text NOT NULL COMMENT '评论内容', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '评论时间', - PRIMARY KEY (`comment_id`), - KEY `user_id` (`user_id`), - KEY `act_id` (`act_id`), - KEY `ams_comment_ibfk_3` (`parent_comment_id`), - CONSTRAINT `ams_comment_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE, - CONSTRAINT `ams_comment_ibfk_2` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`) ON DELETE CASCADE, - CONSTRAINT `ams_comment_ibfk_3` FOREIGN KEY (`parent_comment_id`) REFERENCES `ams_comment` (`comment_id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动评论表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_comment` --- - -LOCK TABLES `ams_comment` WRITE; -/*!40000 ALTER TABLE `ams_comment` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_comment` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_reaction` --- - -DROP TABLE IF EXISTS `ams_reaction`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_reaction` ( - `reaction_id` bigint NOT NULL AUTO_INCREMENT COMMENT '点赞/点踩ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `reaction_type` enum('like','dislike') NOT NULL COMMENT '反应类型(like: 点赞, dislike: 点踩)', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '反应时间', - PRIMARY KEY (`reaction_id`), - UNIQUE KEY `uniq_user_activity_reaction` (`user_id`,`act_id`), - KEY `act_id` (`act_id`), - CONSTRAINT `ams_reaction_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE, - CONSTRAINT `ams_reaction_ibfk_2` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动点赞/点踩表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_reaction` --- - -LOCK TABLES `ams_reaction` WRITE; -/*!40000 ALTER TABLE `ams_reaction` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_reaction` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `ams_registration` --- - -DROP TABLE IF EXISTS `ams_registration`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `ams_registration` ( - `reg_id` bigint NOT NULL AUTO_INCREMENT COMMENT '报名ID', - `act_id` bigint NOT NULL COMMENT '活动ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `status` enum('registered','cancelled','attended','absent') DEFAULT 'registered' COMMENT '报名状态', - `register_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '报名时间', - `attend_time` datetime DEFAULT NULL COMMENT '参与时间', - PRIMARY KEY (`reg_id`), - KEY `act_id` (`act_id`), - KEY `user_id` (`user_id`), - CONSTRAINT `ams_registration_ibfk_1` FOREIGN KEY (`act_id`) REFERENCES `ams_activity` (`act_id`), - CONSTRAINT `ams_registration_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='活动报名表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `ams_registration` --- - -LOCK TABLES `ams_registration` WRITE; -/*!40000 ALTER TABLE `ams_registration` DISABLE KEYS */; -/*!40000 ALTER TABLE `ams_registration` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_club` --- - -DROP TABLE IF EXISTS `sms_club`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_club` ( - `club_id` bigint NOT NULL AUTO_INCREMENT COMMENT '社团ID', - `club_name` varchar(50) NOT NULL COMMENT '社团名称', - `description` text COMMENT '社团简介', - `category` enum('文化艺术','学术科技','社会公益','其他') NOT NULL COMMENT '社团类型', - `college_id` bigint NOT NULL COMMENT '所属院系', - `leader_id` bigint DEFAULT NULL COMMENT '负责人ID', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`club_id`), - KEY `college_id` (`college_id`), - KEY `leader_id` (`leader_id`), - CONSTRAINT `sms_club_ibfk_1` FOREIGN KEY (`college_id`) REFERENCES `sms_college` (`college_id`), - CONSTRAINT `sms_club_ibfk_2` FOREIGN KEY (`leader_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社团表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_club` --- - -LOCK TABLES `sms_club` WRITE; -/*!40000 ALTER TABLE `sms_club` DISABLE KEYS */; -INSERT INTO `sms_club` VALUES (1,'编程爱好者协会','学习编程、算法与开发','学术科技',2,2,'2025-02-13 11:43:50'),(2,'篮球社','喜欢打篮球的同学们','其他',3,3,'2025-02-13 11:43:50'); -/*!40000 ALTER TABLE `sms_club` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_college` --- - -DROP TABLE IF EXISTS `sms_college`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_college` ( - `college_id` bigint NOT NULL AUTO_INCREMENT COMMENT '院系ID', - `college_name` varchar(255) NOT NULL COMMENT '名称(高校或院系)', - `parent_id` bigint DEFAULT NULL COMMENT '父院系ID(高校此值为空)', - `email` varchar(50) DEFAULT '' COMMENT '邮箱', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`college_id`), - KEY `parent_id` (`parent_id`), - CONSTRAINT `sms_college_ibfk_1` FOREIGN KEY (`parent_id`) REFERENCES `sms_college` (`college_id`) ON DELETE SET NULL -) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='高校及院系表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_college` --- - -LOCK TABLES `sms_college` WRITE; -/*!40000 ALTER TABLE `sms_college` DISABLE KEYS */; -INSERT INTO `sms_college` VALUES (1,'山东建筑大学',NULL,'contact@sdu.edu.cn','2025-02-13 11:40:45'),(2,'计算机科学与技术学院',1,'cs@sdu.edu.cn','2025-02-13 11:40:45'),(3,'土木工程学院',1,'civil@sdu.edu.cn','2025-02-13 11:40:45'),(4,'管理工程学院',1,'contact4@sdu.edu.cn','2025-02-13 11:51:12'),(5,'热能工程学院',1,'contact5@sdu.edu.cn','2025-02-13 11:51:12'),(6,'市政与环境工程学院',1,'contact6@sdu.edu.cn','2025-02-13 11:51:12'),(7,'机电工程学院',1,'contact7@sdu.edu.cn','2025-02-13 11:51:12'),(8,'理学院',1,'contact8@sdu.edu.cn','2025-02-13 11:51:12'),(9,'商学院',1,'contact9@sdu.edu.cn','2025-02-13 11:51:12'),(10,'交通工程学院',1,'contact10@sdu.edu.cn','2025-02-13 11:51:12'),(11,'艺术学院',1,'contact11@sdu.edu.cn','2025-02-13 11:51:12'),(12,'法学院',1,'contact12@sdu.edu.cn','2025-02-13 11:51:12'),(13,'外国语学院',1,'contact13@sdu.edu.cn','2025-02-13 11:51:12'),(20,'山东大学',NULL,'contact@su.edu.cn','2025-02-13 11:52:27'),(21,'计算机科学与技术学院',2,'cs@sdu.edu.cn','2025-02-13 11:52:48'),(22,'土木工程学院',2,'civil@sdu.edu.cn','2025-02-13 11:52:48'),(23,'管理工程学院',2,'contact4@sdu.edu.cn','2025-02-13 11:52:48'),(24,'热能工程学院',2,'contact5@sdu.edu.cn','2025-02-13 11:52:48'),(25,'市政与环境工程学院',2,'contact6@sdu.edu.cn','2025-02-13 11:52:48'),(26,'机电工程学院',2,'contact7@sdu.edu.cn','2025-02-13 11:52:48'),(27,'理学院',2,'contact8@sdu.edu.cn','2025-02-13 11:52:48'),(28,'商学院',2,'contact9@sdu.edu.cn','2025-02-13 11:52:48'),(29,'交通工程学院',2,'contact10@sdu.edu.cn','2025-02-13 11:52:48'),(30,'艺术学院',2,'contact11@sdu.edu.cn','2025-02-13 11:52:48'),(31,'法学院',2,'contact12@sdu.edu.cn','2025-02-13 11:52:48'),(32,'外国语学院',2,'contact13@sdu.edu.cn','2025-02-13 11:52:48'); -/*!40000 ALTER TABLE `sms_college` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_college_leader` --- - -DROP TABLE IF EXISTS `sms_college_leader`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_college_leader` ( - `college_id` bigint NOT NULL COMMENT '院系ID', - `user_id` bigint NOT NULL COMMENT '负责人ID', - `assigned_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '指派时间', - PRIMARY KEY (`college_id`,`user_id`), - KEY `user_id` (`user_id`), - CONSTRAINT `sms_college_leader_ibfk_1` FOREIGN KEY (`college_id`) REFERENCES `sms_college` (`college_id`) ON DELETE CASCADE, - CONSTRAINT `sms_college_leader_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='院系负责人表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_college_leader` --- - -LOCK TABLES `sms_college_leader` WRITE; -/*!40000 ALTER TABLE `sms_college_leader` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_college_leader` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sms_user_club` --- - -DROP TABLE IF EXISTS `sms_user_club`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_user_club` ( - `suc_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `club_id` bigint NOT NULL COMMENT '社团ID', - `role_id` bigint NOT NULL COMMENT '角色ID', - `is_active` tinyint(1) DEFAULT '1' COMMENT '是否活跃', - `join_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入日期', - PRIMARY KEY (`suc_id`), - UNIQUE KEY `uniq_user_club` (`user_id`,`club_id`), - KEY `club_id` (`club_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sms_user_club_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `sms_user_club_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`), - CONSTRAINT `sms_user_club_ibfk_3` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户社团关系表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sms_user_club` --- - -LOCK TABLES `sms_user_club` WRITE; -/*!40000 ALTER TABLE `sms_user_club` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_user_club` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_logs` --- - -DROP TABLE IF EXISTS `sys_logs`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_logs` ( - `log_id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `action` varchar(255) NOT NULL COMMENT '操作类型', - `description` text COMMENT '描述', - `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '操作时间', - PRIMARY KEY (`log_id`), - KEY `idx_user_id` (`user_id`), - CONSTRAINT `sys_logs_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统日志表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_logs` --- - -LOCK TABLES `sys_logs` WRITE; -/*!40000 ALTER TABLE `sys_logs` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_logs` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_notification` --- - -DROP TABLE IF EXISTS `sys_notification`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_notification` ( - `notification_id` bigint NOT NULL AUTO_INCREMENT COMMENT '通知ID', - `title` varchar(255) NOT NULL COMMENT '通知标题', - `content` text NOT NULL COMMENT '通知内容', - `receiver_id` bigint NOT NULL COMMENT '接收者ID', - `is_read` tinyint(1) DEFAULT '0' COMMENT '是否已读', - `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - PRIMARY KEY (`notification_id`), - KEY `idx_receiver_id` (`receiver_id`), - CONSTRAINT `sys_notification_ibfk_1` FOREIGN KEY (`receiver_id`) REFERENCES `sys_user` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统通知表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_notification` --- - -LOCK TABLES `sys_notification` WRITE; -/*!40000 ALTER TABLE `sys_notification` DISABLE KEYS */; -/*!40000 ALTER TABLE `sys_notification` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_role` --- - -DROP TABLE IF EXISTS `sys_role`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_role` ( - `role_id` bigint NOT NULL AUTO_INCREMENT COMMENT '角色ID', - `role_name` varchar(30) NOT NULL COMMENT '角色名称', - `role_key` varchar(64) NOT NULL COMMENT '角色标识', - `role_desc` varchar(255) DEFAULT NULL COMMENT '角色描述', - `status` enum('active','inactive') DEFAULT 'active' COMMENT '状态', - PRIMARY KEY (`role_id`) -) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户角色表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_role` --- - -LOCK TABLES `sys_role` WRITE; -/*!40000 ALTER TABLE `sys_role` DISABLE KEYS */; -INSERT INTO `sys_role` VALUES (0,'系统管理员','admin','最高权限,管理所有用户与活动','active'),(1,'参与者','participant','普通用户,可以报名活动、评论、点赞','active'),(2,'管理员','leader','管理活动和人员','active'); -/*!40000 ALTER TABLE `sys_role` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `sys_user` --- - -DROP TABLE IF EXISTS `sys_user`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sys_user` ( - `user_id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID', - `role_id` bigint NOT NULL COMMENT '用户角色', - `nick_name` varchar(30) DEFAULT '' COMMENT '用户昵称', - `user_name` varchar(30) NOT NULL COMMENT '真实姓名', - `password` varchar(100) NOT NULL COMMENT '用户密码', - `school_id` char(12) NOT NULL COMMENT '学号/教职工号', - `college_id` bigint DEFAULT NULL COMMENT '所属院系', - `email` varchar(50) DEFAULT '' COMMENT '用户邮箱', - `avatar` varchar(100) DEFAULT '' COMMENT '头像地址', - `status` enum('active','inactive','banned') DEFAULT 'active' COMMENT '账号状态', - PRIMARY KEY (`user_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sys_user_ibfk_1` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) -) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统用户表'; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `sys_user` --- - -LOCK TABLES `sys_user` WRITE; -/*!40000 ALTER TABLE `sys_user` DISABLE KEYS */; -INSERT INTO `sys_user` VALUES (1,1,'张三','zhangsan','password123','202511110001',2,'zhangsan@example.com','avatar1.jpg','active'),(2,2,'李四','lisi','password123','202511110002',2,'lisi@example.com','avatar2.jpg','active'),(3,2,'王五','wangwu','password123','202511110003',2,'wangwu@example.com','avatar3.jpg','active'),(4,1,'赵六','zhaoliu','password123','202511110004',3,'zhaoliu@example.com','avatar4.jpg','active'),(6,1,'用户6','user6','password123','202588456301',4,'user6@example.com','avatar6.jpg','active'),(7,1,'用户7','user7','password123','202598705123',5,'user7@example.com','avatar7.jpg','active'),(8,1,'用户8','user8','password123','202556098765',6,'user8@example.com','avatar8.jpg','active'),(9,1,'用户9','user9','password123','202512340987',7,'user9@example.com','avatar9.jpg','active'),(10,1,'用户10','user10','password123','202599888222',8,'user10@example.com','avatar10.jpg','active'),(11,1,'用户11','user11','password123','202533665588',9,'user11@example.com','avatar11.jpg','active'),(12,1,'用户12','user12','password123','202500112233',10,'user12@example.com','avatar12.jpg','active'),(13,1,'用户13','user13','password123','202511122233',11,'user13@example.com','avatar13.jpg','active'),(14,1,'用户14','user14','password123','202522334455',12,'user14@example.com','avatar14.jpg','active'),(15,1,'用户15','user15','password123','202544556677',13,'user15@example.com','avatar15.jpg','active'),(16,1,'用户16','user16','password123','202566778899',4,'user16@example.com','avatar16.jpg','active'),(17,1,'用户17','user17','password123','202577889900',5,'user17@example.com','avatar17.jpg','active'),(18,1,'用户18','user18','password123','202500998877',6,'user18@example.com','avatar18.jpg','active'),(19,1,'用户19','user19','password123','202511223344',7,'user19@example.com','avatar19.jpg','active'),(20,1,'用户20','user20','password123','202522334455',8,'user20@example.com','avatar20.jpg','active'),(21,1,'用户21','user21','password123','202533445566',9,'user21@example.com','avatar21.jpg','active'),(22,1,'用户22','user22','password123','202544556677',10,'user22@example.com','avatar22.jpg','active'),(23,1,'用户23','user23','password123','202555667788',11,'user23@example.com','avatar23.jpg','active'),(24,1,'用户24','user24','password123','202566778899',12,'user24@example.com','avatar24.jpg','active'),(25,1,'用户25','user25','password123','202577889900',13,'user25@example.com','avatar25.jpg','active'),(26,1,'用户26','user26','password123','202588990011',4,'user26@example.com','avatar26.jpg','active'),(27,1,'用户27','user27','password123','202599001122',5,'user27@example.com','avatar27.jpg','active'),(28,1,'用户28','user28','password123','202511223344',6,'user28@example.com','avatar28.jpg','active'),(29,1,'用户29','user29','password123','202522334455',7,'user29@example.com','avatar29.jpg','active'),(30,1,'用户30','user30','password123','202533445566',8,'user30@example.com','avatar30.jpg','active'); -/*!40000 ALTER TABLE `sys_user` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2025-02-13 12:11:06 diff --git a/sql/SAMS_localhost-2025_02_19_17_25_12-dump.sql b/sql/SAMS-2025_02_20_18_04_30-dump.sql similarity index 84% rename from sql/SAMS_localhost-2025_02_19_17_25_12-dump.sql rename to sql/SAMS-2025_02_20_18_04_30-dump.sql index 9bf40a19..84d6b823 100644 --- a/sql/SAMS_localhost-2025_02_19_17_25_12-dump.sql +++ b/sql/SAMS-2025_02_20_18_04_30-dump.sql @@ -38,6 +38,8 @@ CREATE TABLE `ams_activity` ( `status` enum('draft','pending_approval','approved','ongoing','completed','cancelled') DEFAULT 'draft' COMMENT '活动状态', `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间', + `activity_type` enum('COLLEGE','DEPARTMENT','CLUB_INTERNAL','CLUB_EXTERNAL') DEFAULT 'DEPARTMENT' COMMENT '活动类型(COLLEGE: 校级, DEPARTMENT: 院级, CLUB_INTERNAL: 社团内部, CLUB_EXTERNAL: 社团外部)', + `current_approver_id` bigint DEFAULT NULL COMMENT '当前审批人ID', PRIMARY KEY (`act_id`), KEY `creator_id` (`creator_id`), KEY `club_id` (`club_id`), @@ -71,7 +73,7 @@ CREATE TABLE `ams_approval` ( `approver_id` bigint NOT NULL COMMENT '审批人ID', `status` tinyint(1) DEFAULT '0' COMMENT '审批状态 (0: 待审批, 1: 通过, 2: 拒绝)', `reason` text COMMENT '拒绝原因(如果适用)', - `approved_at` datetime DEFAULT NULL COMMENT '审批时间', + `approved_at` enum('APPROVED','REJECTED','PENDING') DEFAULT 'PENDING' COMMENT '审批状态', `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`appr_id`), KEY `act_id` (`act_id`), @@ -220,6 +222,36 @@ INSERT INTO `sms_club` VALUES (1,'编程爱好者协会','学习编程、算法 /*!40000 ALTER TABLE `sms_club` ENABLE KEYS */; UNLOCK TABLES; +-- +-- Table structure for table `sms_club_user` +-- + +DROP TABLE IF EXISTS `sms_club_user`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `sms_club_user` ( + `suc_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID', + `user_id` bigint NOT NULL COMMENT '用户ID', + `club_id` bigint NOT NULL COMMENT '社团ID', + `is_active` tinyint(1) DEFAULT '1' COMMENT '是否活跃', + `join_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入日期', + PRIMARY KEY (`suc_id`), + UNIQUE KEY `uniq_user_club` (`user_id`,`club_id`), + KEY `club_id` (`club_id`), + CONSTRAINT `sms_club_user_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), + CONSTRAINT `sms_club_user_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社团用户关系表'; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `sms_club_user` +-- + +LOCK TABLES `sms_club_user` WRITE; +/*!40000 ALTER TABLE `sms_club_user` DISABLE KEYS */; +/*!40000 ALTER TABLE `sms_club_user` ENABLE KEYS */; +UNLOCK TABLES; + -- -- Table structure for table `sms_college` -- @@ -277,36 +309,33 @@ LOCK TABLES `sms_college_leader` WRITE; UNLOCK TABLES; -- --- Table structure for table `sms_user_club` +-- Table structure for table `sys_file` -- -DROP TABLE IF EXISTS `sms_user_club`; +DROP TABLE IF EXISTS `sys_file`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `sms_user_club` ( - `suc_id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID', - `user_id` bigint NOT NULL COMMENT '用户ID', - `club_id` bigint NOT NULL COMMENT '社团ID', - `role_id` bigint NOT NULL COMMENT '角色ID', - `is_active` tinyint(1) DEFAULT '1' COMMENT '是否活跃', - `join_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入日期', - PRIMARY KEY (`suc_id`), - UNIQUE KEY `uniq_user_club` (`user_id`,`club_id`), - KEY `club_id` (`club_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sms_user_club_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `sys_user` (`user_id`), - CONSTRAINT `sms_user_club_ibfk_2` FOREIGN KEY (`club_id`) REFERENCES `sms_club` (`club_id`), - CONSTRAINT `sms_user_club_ibfk_3` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户社团关系表'; +CREATE TABLE `sys_file` ( + `file_id` bigint NOT NULL AUTO_INCREMENT COMMENT '文件ID', + `file_name` varchar(255) NOT NULL COMMENT '文件名称', + `file_path` varchar(255) NOT NULL COMMENT '存储路径', + `file_type` enum('document','club_image','other') NOT NULL COMMENT '文件类型', + `uploaded_by` bigint NOT NULL COMMENT '上传者ID', + `visibility` enum('public','private') DEFAULT 'private' COMMENT '文件可见性', + `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '上传时间', + PRIMARY KEY (`file_id`), + KEY `uploaded_by` (`uploaded_by`), + CONSTRAINT `sys_file_ibfk_1` FOREIGN KEY (`uploaded_by`) REFERENCES `sys_user` (`user_id`) ON DELETE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统文件表'; /*!40101 SET character_set_client = @saved_cs_client */; -- --- Dumping data for table `sms_user_club` +-- Dumping data for table `sys_file` -- -LOCK TABLES `sms_user_club` WRITE; -/*!40000 ALTER TABLE `sms_user_club` DISABLE KEYS */; -/*!40000 ALTER TABLE `sms_user_club` ENABLE KEYS */; +LOCK TABLES `sys_file` WRITE; +/*!40000 ALTER TABLE `sys_file` DISABLE KEYS */; +/*!40000 ALTER TABLE `sys_file` ENABLE KEYS */; UNLOCK TABLES; -- @@ -389,7 +418,7 @@ CREATE TABLE `sys_role` ( LOCK TABLES `sys_role` WRITE; /*!40000 ALTER TABLE `sys_role` DISABLE KEYS */; -INSERT INTO `sys_role` VALUES (0,'系统管理员','admin','最高权限,管理所有用户与活动','active'),(1,'参与者','participant','普通用户,可以报名活动、评论、点赞','active'),(2,'校级管理员','college_admin','管理校级活动及院系','active'),(3,'院级管理员','department_admin','管理院系活动','active'),(4,'社团管理员','club_admin','管理社团活动','active'); +INSERT INTO `sys_role` VALUES (0,'系统管理员','ADMIN','最高权限,管理所有用户与活动','active'),(1,'参与者','PARTICIPANT','普通用户,可以报名活动、评论、点赞','active'),(2,'校级管理员','COLLEGE_ADMIN','管理校级活动及院系','active'),(3,'院级管理员','DEPARTMENT_ADMIN','管理院系活动','active'),(4,'社团管理员','CLUB_ADMIN','管理社团活动','active'); /*!40000 ALTER TABLE `sys_role` ENABLE KEYS */; UNLOCK TABLES; @@ -402,7 +431,6 @@ DROP TABLE IF EXISTS `sys_user`; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `sys_user` ( `user_id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID', - `role_id` bigint NOT NULL COMMENT '用户角色', `nick_name` varchar(30) DEFAULT '' COMMENT '用户昵称', `user_name` varchar(30) NOT NULL COMMENT '真实姓名', `password` varchar(100) NOT NULL COMMENT '用户密码', @@ -411,9 +439,7 @@ CREATE TABLE `sys_user` ( `email` varchar(50) DEFAULT '' COMMENT '用户邮箱', `avatar` varchar(100) DEFAULT '' COMMENT '头像地址', `status` enum('active','inactive','banned') DEFAULT 'active' COMMENT '账号状态', - PRIMARY KEY (`user_id`), - KEY `role_id` (`role_id`), - CONSTRAINT `sys_user_ibfk_1` FOREIGN KEY (`role_id`) REFERENCES `sys_role` (`role_id`) + PRIMARY KEY (`user_id`) ) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='系统用户表'; /*!40101 SET character_set_client = @saved_cs_client */; @@ -423,7 +449,7 @@ CREATE TABLE `sys_user` ( LOCK TABLES `sys_user` WRITE; /*!40000 ALTER TABLE `sys_user` DISABLE KEYS */; -INSERT INTO `sys_user` VALUES (1,2,'张三','zhangsan','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110001',2,'zhangsan@example.com','avatar1.jpg','active'),(2,3,'李四','lisi','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110002',2,'lisi@example.com','avatar2.jpg','active'),(3,4,'王五','wangwu','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110003',2,'wangwu@example.com','avatar3.jpg','active'),(4,1,'赵六','zhaoliu','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110004',3,'zhaoliu@example.com','avatar4.jpg','active'),(6,1,'用户6','user6','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202588456301',4,'user6@example.com','avatar6.jpg','active'),(7,1,'用户7','user7','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202598705123',5,'user7@example.com','avatar7.jpg','active'),(8,1,'用户8','user8','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202556098765',6,'user8@example.com','avatar8.jpg','active'),(9,1,'用户9','user9','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202512340987',7,'user9@example.com','avatar9.jpg','active'); +INSERT INTO `sys_user` VALUES (1,'张三','zhangsan','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110001',2,'zhangsan@example.com','','active'),(2,'李四','lisi','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110002',2,'lisi@example.com','','active'),(3,'王五','wangwu','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110003',2,'wangwu@example.com','','active'),(4,'赵六','zhaoliu','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202511110004',3,'zhaoliu@example.com','','active'),(6,'用户6','user6','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202588456301',4,'user6@example.com','','active'),(7,'用户7','user7','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202598705123',5,'user7@example.com','','active'),(8,'用户8','user8','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202556098765',6,'user8@example.com','','active'),(9,'用户9','user9','$2a$10$e/hB5Ps/op5jkDtMZXyRo.53CKoXUkOLVvCvlqGktaMqKspJo0WGW','202512340987',7,'user9@example.com','','active'); /*!40000 ALTER TABLE `sys_user` ENABLE KEYS */; UNLOCK TABLES; @@ -447,6 +473,7 @@ CREATE TABLE `sys_user_role` ( LOCK TABLES `sys_user_role` WRITE; /*!40000 ALTER TABLE `sys_user_role` DISABLE KEYS */; +INSERT INTO `sys_user_role` VALUES (1,0),(2,2),(3,3),(3,4),(4,4),(6,1),(7,1),(8,1),(9,1); /*!40000 ALTER TABLE `sys_user_role` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -459,4 +486,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2025-02-19 17:25:10 +-- Dump completed on 2025-02-20 18:04:29 diff --git a/src/main/java/com/bruce/sams/common/filter/GlobalExceptionHandler.java b/src/main/java/com/bruce/sams/common/filter/GlobalExceptionHandler.java index bd47cf33..5b4989ce 100644 --- a/src/main/java/com/bruce/sams/common/filter/GlobalExceptionHandler.java +++ b/src/main/java/com/bruce/sams/common/filter/GlobalExceptionHandler.java @@ -1,7 +1,7 @@ package com.bruce.sams.common.filter; import com.bruce.sams.common.exception.CustomException; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; diff --git a/src/main/java/com/bruce/sams/controller/AuthController.java b/src/main/java/com/bruce/sams/controller/AuthController.java index 221a2a16..24c1058c 100644 --- a/src/main/java/com/bruce/sams/controller/AuthController.java +++ b/src/main/java/com/bruce/sams/controller/AuthController.java @@ -1,12 +1,10 @@ package com.bruce.sams.controller; -import com.bruce.sams.common.utils.FileUploadUtil; import com.bruce.sams.domain.entity.LoginRequest; import com.bruce.sams.service.AuthService; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; /** * 认证控制器,处理用户登录请求 diff --git a/src/main/java/com/bruce/sams/controller/ams/ActivityController.java b/src/main/java/com/bruce/sams/controller/ams/ActivityController.java index a35f03ad..2df58425 100644 --- a/src/main/java/com/bruce/sams/controller/ams/ActivityController.java +++ b/src/main/java/com/bruce/sams/controller/ams/ActivityController.java @@ -1,7 +1,7 @@ package com.bruce.sams.controller.ams; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import com.bruce.sams.domain.ams.Activity; import com.bruce.sams.service.ActivityService; import org.springframework.beans.factory.annotation.Autowired; diff --git a/src/main/java/com/bruce/sams/controller/ams/ApprovalController.java b/src/main/java/com/bruce/sams/controller/ams/ApprovalController.java index 5bcd1969..18fba9ce 100644 --- a/src/main/java/com/bruce/sams/controller/ams/ApprovalController.java +++ b/src/main/java/com/bruce/sams/controller/ams/ApprovalController.java @@ -1,6 +1,6 @@ package com.bruce.sams.controller.ams; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import com.bruce.sams.service.ApprovalService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; diff --git a/src/main/java/com/bruce/sams/controller/sms/ClubController.java b/src/main/java/com/bruce/sams/controller/sms/ClubController.java index 83c021ae..571fac0e 100644 --- a/src/main/java/com/bruce/sams/controller/sms/ClubController.java +++ b/src/main/java/com/bruce/sams/controller/sms/ClubController.java @@ -1,6 +1,6 @@ package com.bruce.sams.controller.sms; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import com.bruce.sams.domain.sms.Club; import com.bruce.sams.service.ClubService; import org.springframework.beans.factory.annotation.Autowired; diff --git a/src/main/java/com/bruce/sams/controller/sms/ClubUserController.java b/src/main/java/com/bruce/sams/controller/sms/ClubUserController.java index 48d2c6d2..050327d4 100644 --- a/src/main/java/com/bruce/sams/controller/sms/ClubUserController.java +++ b/src/main/java/com/bruce/sams/controller/sms/ClubUserController.java @@ -1,14 +1,12 @@ package com.bruce.sams.controller.sms; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import com.bruce.sams.service.ClubUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import java.util.List; - /** * 社团成员管理控制器(权限区分) */ diff --git a/src/main/java/com/bruce/sams/controller/sms/CollegeController.java b/src/main/java/com/bruce/sams/controller/sms/CollegeController.java index 6c35bd9d..708451bb 100644 --- a/src/main/java/com/bruce/sams/controller/sms/CollegeController.java +++ b/src/main/java/com/bruce/sams/controller/sms/CollegeController.java @@ -4,7 +4,7 @@ import com.bruce.sams.domain.sms.College; import com.bruce.sams.domain.sms.CollegeLeader; import com.bruce.sams.service.CollegeLeaderService; import com.bruce.sams.service.CollegeService; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.security.access.prepost.PreAuthorize; diff --git a/src/main/java/com/bruce/sams/controller/sys/AdminUserController.java b/src/main/java/com/bruce/sams/controller/sys/AdminUserController.java index c49e9a68..9759b8fc 100644 --- a/src/main/java/com/bruce/sams/controller/sys/AdminUserController.java +++ b/src/main/java/com/bruce/sams/controller/sys/AdminUserController.java @@ -2,7 +2,7 @@ package com.bruce.sams.controller.sys; import com.bruce.sams.domain.sys.User; import com.bruce.sams.service.UserService; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; diff --git a/src/main/java/com/bruce/sams/controller/sys/DocumentUploadController.java b/src/main/java/com/bruce/sams/controller/sys/DocumentUploadController.java deleted file mode 100644 index 1111d8e3..00000000 --- a/src/main/java/com/bruce/sams/controller/sys/DocumentUploadController.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.bruce.sams.controller.sys; - -import com.bruce.sams.common.utils.FileUploadUtil; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; - -@RestController -@RequestMapping("/api/upload") -public class DocumentUploadController { - - @PostMapping("/document") - public String uploadDocument(@RequestParam("file") MultipartFile file) { - return FileUploadUtil.uploadFile(file, "documents/"); - } -} diff --git a/src/main/java/com/bruce/sams/controller/sys/FileController.java b/src/main/java/com/bruce/sams/controller/sys/FileController.java new file mode 100644 index 00000000..c919145b --- /dev/null +++ b/src/main/java/com/bruce/sams/controller/sys/FileController.java @@ -0,0 +1,5 @@ +package com.bruce.sams.controller.sys; + +public class FileController { + +} \ No newline at end of file diff --git a/src/main/java/com/bruce/sams/controller/sys/UserController.java b/src/main/java/com/bruce/sams/controller/sys/UserController.java index a13d29ba..a08e1e86 100644 --- a/src/main/java/com/bruce/sams/controller/sys/UserController.java +++ b/src/main/java/com/bruce/sams/controller/sys/UserController.java @@ -3,7 +3,7 @@ package com.bruce.sams.controller.sys; import com.bruce.sams.common.utils.FileUploadUtil; import com.bruce.sams.domain.sys.User; import com.bruce.sams.service.UserService; -import com.bruce.sams.common.utils.AjaxResult; +import com.bruce.sams.domain.entity.AjaxResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.web.bind.annotation.*; diff --git a/src/main/java/com/bruce/sams/common/utils/AjaxResult.java b/src/main/java/com/bruce/sams/domain/entity/AjaxResult.java similarity index 99% rename from src/main/java/com/bruce/sams/common/utils/AjaxResult.java rename to src/main/java/com/bruce/sams/domain/entity/AjaxResult.java index 0bd62eb7..47698a63 100644 --- a/src/main/java/com/bruce/sams/common/utils/AjaxResult.java +++ b/src/main/java/com/bruce/sams/domain/entity/AjaxResult.java @@ -1,4 +1,4 @@ -package com.bruce.sams.common.utils; +package com.bruce.sams.domain.entity; import com.bruce.sams.common.constant.HttpStatus; diff --git a/src/main/java/com/bruce/sams/domain/sys/File.java b/src/main/java/com/bruce/sams/domain/sys/File.java new file mode 100644 index 00000000..ba8ca8db --- /dev/null +++ b/src/main/java/com/bruce/sams/domain/sys/File.java @@ -0,0 +1,104 @@ +package com.bruce.sams.domain.sys; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.util.Date; +import lombok.Data; + +/** + * 系统文件表 + * @TableName sys_file + */ +@TableName(value ="sys_file") +@Data +public class File { + /** + * 文件ID + */ + @TableId(type = IdType.AUTO) + private Long fileId; + + /** + * 文件名称 + */ + private String fileName; + + /** + * 存储路径 + */ + private String filePath; + + /** + * 文件类型 + */ + private Object fileType; + + /** + * 上传者ID + */ + private Long uploadedBy; + + /** + * 文件可见性 + */ + private Object visibility; + + /** + * 上传时间 + */ + private Date createdAt; + + @Override + public boolean equals(Object that) { + if (this == that) { + return true; + } + if (that == null) { + return false; + } + if (getClass() != that.getClass()) { + return false; + } + File other = (File) that; + return (this.getFileId() == null ? other.getFileId() == null : this.getFileId().equals(other.getFileId())) + && (this.getFileName() == null ? other.getFileName() == null : this.getFileName().equals(other.getFileName())) + && (this.getFilePath() == null ? other.getFilePath() == null : this.getFilePath().equals(other.getFilePath())) + && (this.getFileType() == null ? other.getFileType() == null : this.getFileType().equals(other.getFileType())) + && (this.getUploadedBy() == null ? other.getUploadedBy() == null : this.getUploadedBy().equals(other.getUploadedBy())) + && (this.getVisibility() == null ? other.getVisibility() == null : this.getVisibility().equals(other.getVisibility())) + && (this.getCreatedAt() == null ? other.getCreatedAt() == null : this.getCreatedAt().equals(other.getCreatedAt())); + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((getFileId() == null) ? 0 : getFileId().hashCode()); + result = prime * result + ((getFileName() == null) ? 0 : getFileName().hashCode()); + result = prime * result + ((getFilePath() == null) ? 0 : getFilePath().hashCode()); + result = prime * result + ((getFileType() == null) ? 0 : getFileType().hashCode()); + result = prime * result + ((getUploadedBy() == null) ? 0 : getUploadedBy().hashCode()); + result = prime * result + ((getVisibility() == null) ? 0 : getVisibility().hashCode()); + result = prime * result + ((getCreatedAt() == null) ? 0 : getCreatedAt().hashCode()); + return result; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", fileId=").append(fileId); + sb.append(", fileName=").append(fileName); + sb.append(", filePath=").append(filePath); + sb.append(", fileType=").append(fileType); + sb.append(", uploadedBy=").append(uploadedBy); + sb.append(", visibility=").append(visibility); + sb.append(", createdAt=").append(createdAt); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/src/main/java/com/bruce/sams/mapper/FileMapper.java b/src/main/java/com/bruce/sams/mapper/FileMapper.java new file mode 100644 index 00000000..f6a58ea8 --- /dev/null +++ b/src/main/java/com/bruce/sams/mapper/FileMapper.java @@ -0,0 +1,18 @@ +package com.bruce.sams.mapper; + +import com.bruce.sams.domain.sys.File; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author bruce +* @description 针对表【sys_file(系统文件表)】的数据库操作Mapper +* @createDate 2025-02-20 17:57:16 +* @Entity com.bruce.sams.domain.sys.File +*/ +public interface FileMapper extends BaseMapper { + +} + + + + diff --git a/src/main/java/com/bruce/sams/service/FileService.java b/src/main/java/com/bruce/sams/service/FileService.java new file mode 100644 index 00000000..d98f6bf9 --- /dev/null +++ b/src/main/java/com/bruce/sams/service/FileService.java @@ -0,0 +1,13 @@ +package com.bruce.sams.service; + +import com.bruce.sams.domain.sys.File; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author bruce +* @description 针对表【sys_file(系统文件表)】的数据库操作Service +* @createDate 2025-02-20 17:57:16 +*/ +public interface FileService extends IService { + +} diff --git a/src/main/java/com/bruce/sams/service/impl/FileServiceImpl.java b/src/main/java/com/bruce/sams/service/impl/FileServiceImpl.java new file mode 100644 index 00000000..65550234 --- /dev/null +++ b/src/main/java/com/bruce/sams/service/impl/FileServiceImpl.java @@ -0,0 +1,22 @@ +package com.bruce.sams.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.bruce.sams.domain.sys.File; +import com.bruce.sams.service.FileService; +import com.bruce.sams.mapper.FileMapper; +import org.springframework.stereotype.Service; + +/** +* @author bruce +* @description 针对表【sys_file(系统文件表)】的数据库操作Service实现 +* @createDate 2025-02-20 17:57:16 +*/ +@Service +public class FileServiceImpl extends ServiceImpl + implements FileService{ + +} + + + + diff --git a/src/main/resources/mapper/FileMapper.xml b/src/main/resources/mapper/FileMapper.xml new file mode 100644 index 00000000..9a5bb6ab --- /dev/null +++ b/src/main/resources/mapper/FileMapper.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + file_id,file_name,file_path,file_type,uploaded_by,visibility, + created_at + +