v0.2.8 文件系统完善。新建系统文件表

v0.2o
bruce 2025-02-20 18:05:21 +08:00
parent 77a09d2eba
commit eb4aa3f774
21 changed files with 249 additions and 1306 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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;

View File

@ -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;
/**
*

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;
/**
*
*/

View File

@ -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;

View File

@ -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.*;

View File

@ -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/");
}
}

View File

@ -0,0 +1,5 @@
package com.bruce.sams.controller.sys;
public class FileController {
}

View File

@ -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.*;

View File

@ -1,4 +1,4 @@
package com.bruce.sams.common.utils;
package com.bruce.sams.domain.entity;
import com.bruce.sams.common.constant.HttpStatus;

View File

@ -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();
}
}

View File

@ -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<File> {
}

View File

@ -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<File> {
}

View File

@ -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<FileMapper, File>
implements FileService{
}

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bruce.sams.mapper.FileMapper">
<resultMap id="BaseResultMap" type="com.bruce.sams.domain.sys.File">
<id property="fileId" column="file_id" />
<result property="fileName" column="file_name" />
<result property="filePath" column="file_path" />
<result property="fileType" column="file_type" />
<result property="uploadedBy" column="uploaded_by" />
<result property="visibility" column="visibility" />
<result property="createdAt" column="created_at" />
</resultMap>
<sql id="Base_Column_List">
file_id,file_name,file_path,file_type,uploaded_by,visibility,
created_at
</sql>
</mapper>