chore(db): clean legacy sql assets and standardize migrations
This commit is contained in:
@@ -84,7 +84,7 @@ martial-master/
|
||||
│ ├── application-dev.yml # 开发环境
|
||||
│ ├── application-prod.yml # 生产环境
|
||||
│ └── db/migration/ # Flyway 迁移脚本
|
||||
├── database/ # 数据库初始化脚本
|
||||
├── database/ # SQL管理目录(init/flowable/upgrade)
|
||||
├── docs/ # 项目文档
|
||||
├── docker-compose.yml # Docker 编排配置
|
||||
├── Dockerfile.fullbuild # 完整构建(含 martial-tool)
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
# SQL Directory Guide
|
||||
|
||||
This project uses Flyway as the single source of truth for schema changes.
|
||||
|
||||
## Active SQL
|
||||
|
||||
- `src/main/resources/db/migration/*.sql`: production migrations (required)
|
||||
- `database/init/`: MySQL first-init directory (keep minimal)
|
||||
|
||||
## Optional reference SQL
|
||||
|
||||
- `database/flowable/`: Flowable engine schema scripts for multiple databases
|
||||
- `database/upgrade/`: BladeX cross-database upgrade reference scripts
|
||||
|
||||
## Cleanup rule
|
||||
|
||||
- Do not place full database dumps under `database/` root.
|
||||
- Keep backups outside repository (off-repo storage or backup system).
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,7 @@
|
||||
# MySQL init directory
|
||||
|
||||
Keep this directory minimal for new-environment bootstrap.
|
||||
|
||||
- Files in this directory are executed automatically by MySQL image on first initialization.
|
||||
- Do NOT place full backups or system-database dumps here.
|
||||
- Prefer schema management through Flyway migrations in `src/main/resources/db/migration`.
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,483 +0,0 @@
|
||||
-- MySQL dump 10.13 Distrib 8.0.44, for Linux (x86_64)
|
||||
--
|
||||
-- Host: localhost Database: martial_db
|
||||
-- ------------------------------------------------------
|
||||
-- Server version 8.0.44
|
||||
|
||||
/*!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 `mt_athlete`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_athlete` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`user_id` bigint DEFAULT NULL COMMENT '用户ID',
|
||||
`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '姓名',
|
||||
`gender` int DEFAULT '1' COMMENT '性别:1-男,2-女',
|
||||
`age` int DEFAULT NULL COMMENT '年龄',
|
||||
`id_card` varchar(18) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '身份证号',
|
||||
`unit_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '单位名称',
|
||||
`team_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '队伍名称',
|
||||
`id_type` int DEFAULT '1' COMMENT '证件类型:1-身份证',
|
||||
`player_number` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '选手编号(报名成功后生成)',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_user_id` (`user_id`) USING BTREE,
|
||||
KEY `idx_id_card` (`id_card`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='运动员选手表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_certificate`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_certificate` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`result_id` bigint NOT NULL COMMENT '成绩ID',
|
||||
`athlete_id` bigint NOT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`certificate_type` int DEFAULT '1' COMMENT '证书类型:1-冠军,2-亚军,3-季军,4-优秀奖',
|
||||
`certificate_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '证书URL',
|
||||
`generate_time` datetime DEFAULT NULL COMMENT '生成时间',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_result_id` (`result_id`) USING BTREE,
|
||||
KEY `idx_athlete_id` (`athlete_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='证书奖牌表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_competition`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_competition` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`title` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '赛事名称',
|
||||
`organizer` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '主办单位',
|
||||
`location` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '地区',
|
||||
`venue` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '详细地点',
|
||||
`register_start_time` datetime DEFAULT NULL COMMENT '报名开始时间',
|
||||
`register_end_time` datetime DEFAULT NULL COMMENT '报名结束时间',
|
||||
`match_start_time` datetime DEFAULT NULL COMMENT '比赛开始时间',
|
||||
`match_end_time` datetime DEFAULT NULL COMMENT '比赛结束时间',
|
||||
`venue_count` int DEFAULT '3' COMMENT '场地数量',
|
||||
`match_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '比赛编码',
|
||||
`share_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '报名分享链接',
|
||||
`info_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '信息发布内容',
|
||||
`rules_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '赛事规程内容',
|
||||
`schedule_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '活动日程内容',
|
||||
`status` int DEFAULT '0' COMMENT '状态:0-待开始,1-报名中,2-编排中,3-进行中,4-已结束',
|
||||
`total_register_count` int DEFAULT '0' COMMENT '总报名人数',
|
||||
`total_amount` decimal(10,2) DEFAULT '0.00' COMMENT '总金额',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE,
|
||||
KEY `idx_match_code` (`match_code`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='赛事表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_deduction_item`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_deduction_item` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`description` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '扣分项描述',
|
||||
`deduction_value` decimal(5,3) DEFAULT '0.000' COMMENT '扣分值',
|
||||
`sort_order` int DEFAULT '0' COMMENT '排序',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='扣分项表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_judge`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_judge` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`judge_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '裁判姓名',
|
||||
`invite_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '邀请码',
|
||||
`role` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'pub' COMMENT '角色:pub-普通裁判,admin-裁判长',
|
||||
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号',
|
||||
`venue_id` bigint DEFAULT NULL COMMENT '负责场地ID',
|
||||
`status` int DEFAULT '1' COMMENT '状态:1-正常,2-禁用',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_invite_code` (`invite_code`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='裁判表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_match_log`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_match_log` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_id` bigint NOT NULL COMMENT '编排ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`venue_id` bigint NOT NULL COMMENT '场地ID',
|
||||
`status` int DEFAULT '1' COMMENT '状态:1-待检录,2-已检录,3-比赛中,4-已完赛',
|
||||
`checkin_time` datetime DEFAULT NULL COMMENT '签到时间',
|
||||
`start_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||||
`end_time` datetime DEFAULT NULL COMMENT '结束时间',
|
||||
`operator_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_schedule_id` (`schedule_id`) USING BTREE,
|
||||
KEY `idx_venue_id` (`venue_id`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='比赛日志表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_project`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_project` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`project_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目名称',
|
||||
`project_type` int DEFAULT '1' COMMENT '项目类型:1-单人项目,2-集体项目',
|
||||
`price` decimal(10,2) DEFAULT '0.00' COMMENT '项目价格',
|
||||
`duration` int DEFAULT '5' COMMENT '单个比赛时长(分钟)',
|
||||
`gender` int DEFAULT '0' COMMENT '性别限制:0-不限,1-男,2-女',
|
||||
`age_group` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '年龄组别',
|
||||
`team_size` int DEFAULT '1' COMMENT '队伍人数(集体项目)',
|
||||
`register_count` int DEFAULT '0' COMMENT '报名人数/队伍数',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='项目表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_registration_order`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_registration_order` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`order_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '订单号',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`user_id` bigint NOT NULL COMMENT '用户ID',
|
||||
`contact_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '联系人姓名',
|
||||
`contact_phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '联系人电话',
|
||||
`total_amount` decimal(10,2) DEFAULT '0.00' COMMENT '总金额',
|
||||
`pay_amount` decimal(10,2) DEFAULT '0.00' COMMENT '实付金额',
|
||||
`status` int DEFAULT '0' COMMENT '订单状态:0-待支付,1-已支付,2-已取消,3-已退款',
|
||||
`pay_time` datetime DEFAULT NULL COMMENT '支付时间',
|
||||
`pay_type` int DEFAULT NULL COMMENT '支付方式:1-微信,2-支付宝',
|
||||
`participant_count` int DEFAULT '0' COMMENT '参赛人数',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
UNIQUE KEY `uk_order_no` (`order_no`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_user_id` (`user_id`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='报名订单表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_registration_project`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_registration_project` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`registration_order_id` bigint NOT NULL COMMENT '报名订单ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID(单人项目)',
|
||||
`team_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '队伍名称(集体项目)',
|
||||
`project_price` decimal(10,2) DEFAULT '0.00' COMMENT '项目价格',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_registration_order_id` (`registration_order_id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE,
|
||||
KEY `idx_athlete_id` (`athlete_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='报名项目关联表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_result`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_result` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_id` bigint NOT NULL COMMENT '编排ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`total_score` decimal(5,3) DEFAULT '0.000' COMMENT '总分',
|
||||
`final_score` decimal(5,3) DEFAULT '0.000' COMMENT '最终分数(裁判长可调整)',
|
||||
`rank` int DEFAULT NULL COMMENT '排名',
|
||||
`chief_adjust_score` decimal(5,3) DEFAULT NULL COMMENT '裁判长调整分数',
|
||||
`chief_remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '裁判长备注',
|
||||
`status` int DEFAULT '0' COMMENT '状态:0-待评分,1-评分中,2-已完成',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_schedule_id` (`schedule_id`) USING BTREE,
|
||||
KEY `idx_registration_project_id` (`registration_project_id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='成绩表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_schedule`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_schedule` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`venue_id` bigint NOT NULL COMMENT '场地ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`time_slot` datetime DEFAULT NULL COMMENT '比赛时间段',
|
||||
`estimated_start_time` datetime DEFAULT NULL COMMENT '预计开始时间',
|
||||
`estimated_end_time` datetime DEFAULT NULL COMMENT '预计结束时间',
|
||||
`actual_start_time` datetime DEFAULT NULL COMMENT '实际开始时间',
|
||||
`actual_end_time` datetime DEFAULT NULL COMMENT '实际结束时间',
|
||||
`order_no` int DEFAULT '0' COMMENT '出场顺序',
|
||||
`status` int DEFAULT '0' COMMENT '状态:0-预编排,1-已确定,2-比赛中,3-已完赛',
|
||||
`schedule_type` int DEFAULT '1' COMMENT '编排类型:1-自动编排,2-手动调整',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_venue_id` (`venue_id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE,
|
||||
KEY `idx_time_slot` (`time_slot`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='编排表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_score`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_score` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_id` bigint NOT NULL COMMENT '编排ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`venue_id` bigint NOT NULL COMMENT '场地ID',
|
||||
`judge_id` bigint NOT NULL COMMENT '裁判ID',
|
||||
`score` decimal(5,3) DEFAULT '0.000' COMMENT '评分(保留3位小数)',
|
||||
`deduction_items` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '扣分项(JSON格式)',
|
||||
`remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
|
||||
`score_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '评分时间',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_schedule_id` (`schedule_id`) USING BTREE,
|
||||
KEY `idx_registration_project_id` (`registration_project_id`) USING BTREE,
|
||||
KEY `idx_judge_id` (`judge_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='评分表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_team_member`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_team_member` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint NOT NULL COMMENT '运动员ID',
|
||||
`role` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '角色',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_registration_project_id` (`registration_project_id`) USING BTREE,
|
||||
KEY `idx_athlete_id` (`athlete_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='队员关联表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_user`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_user` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`openid` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信openid',
|
||||
`nickname` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '昵称',
|
||||
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号',
|
||||
`avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '头像',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
UNIQUE KEY `uk_openid` (`openid`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='用户表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_venue`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_venue` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`venue_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '场地名称',
|
||||
`venue_no` int NOT NULL COMMENT '场地编号',
|
||||
`status` int DEFAULT '1' COMMENT '场地状态:1-正常,2-维护中',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='场地表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
/*!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 2026-01-21 21:07:28
|
||||
@@ -1,666 +0,0 @@
|
||||
-- MySQL dump 10.13 Distrib 8.0.44, for Linux (x86_64)
|
||||
--
|
||||
-- Host: localhost Database: martial_db
|
||||
-- ------------------------------------------------------
|
||||
-- Server version 8.0.44
|
||||
|
||||
/*!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 `flyway_schema_history`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `flyway_schema_history`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `flyway_schema_history` (
|
||||
`installed_rank` int NOT NULL,
|
||||
`version` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||
`description` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`script` varchar(1000) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`checksum` int DEFAULT NULL,
|
||||
`installed_by` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`installed_on` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`execution_time` int NOT NULL,
|
||||
`success` tinyint(1) NOT NULL,
|
||||
PRIMARY KEY (`installed_rank`),
|
||||
KEY `flyway_schema_history_s_idx` (`success`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `flyway_schema_history`
|
||||
--
|
||||
|
||||
LOCK TABLES `flyway_schema_history` WRITE;
|
||||
/*!40000 ALTER TABLE `flyway_schema_history` DISABLE KEYS */;
|
||||
INSERT INTO `flyway_schema_history` VALUES (1,'0','<< Flyway Baseline >>','BASELINE','<< Flyway Baseline >>',NULL,'root','2026-01-13 04:28:14',0,1),(2,'1','baseline','SQL','V1__baseline.sql',393949116,'root','2026-01-13 04:28:15',8,1),(3,'2','add project fields','SQL','V2__add_project_fields.sql',-938292432,'root','2026-01-13 04:28:15',15,1),(4,'3','add missing fields and tables','SQL','V3__add_missing_fields_and_tables.sql',455547722,'root','2026-01-15 03:30:45',35,1),(5,'4','create missing tables','SQL','V4__create_missing_tables.sql',-277029490,'root','2026-01-15 03:30:45',33,1),(6,'5','create schedule tables','SQL','V5__create_schedule_tables.sql',-1114086524,'root','2026-01-15 03:30:45',15,1),(7,'6','add deduction item project id','SQL','V6__add_deduction_item_project_id.sql',0,'root','2026-01-16 08:14:40',5,1);
|
||||
/*!40000 ALTER TABLE `flyway_schema_history` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_athlete`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_athlete`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_athlete` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`user_id` bigint DEFAULT NULL COMMENT '用户ID',
|
||||
`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '姓名',
|
||||
`gender` int DEFAULT '1' COMMENT '性别:1-男,2-女',
|
||||
`age` int DEFAULT NULL COMMENT '年龄',
|
||||
`id_card` varchar(18) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '身份证号',
|
||||
`unit_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '单位名称',
|
||||
`team_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '队伍名称',
|
||||
`id_type` int DEFAULT '1' COMMENT '证件类型:1-身份证',
|
||||
`player_number` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '选手编号(报名成功后生成)',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_user_id` (`user_id`) USING BTREE,
|
||||
KEY `idx_id_card` (`id_card`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='运动员选手表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_athlete`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_athlete` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_athlete` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_athlete` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_certificate`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_certificate`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_certificate` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`result_id` bigint NOT NULL COMMENT '成绩ID',
|
||||
`athlete_id` bigint NOT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`certificate_type` int DEFAULT '1' COMMENT '证书类型:1-冠军,2-亚军,3-季军,4-优秀奖',
|
||||
`certificate_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '证书URL',
|
||||
`generate_time` datetime DEFAULT NULL COMMENT '生成时间',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_result_id` (`result_id`) USING BTREE,
|
||||
KEY `idx_athlete_id` (`athlete_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='证书奖牌表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_certificate`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_certificate` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_certificate` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_certificate` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_competition`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_competition`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_competition` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`title` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '赛事名称',
|
||||
`organizer` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '主办单位',
|
||||
`location` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '地区',
|
||||
`venue` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '详细地点',
|
||||
`register_start_time` datetime DEFAULT NULL COMMENT '报名开始时间',
|
||||
`register_end_time` datetime DEFAULT NULL COMMENT '报名结束时间',
|
||||
`match_start_time` datetime DEFAULT NULL COMMENT '比赛开始时间',
|
||||
`match_end_time` datetime DEFAULT NULL COMMENT '比赛结束时间',
|
||||
`venue_count` int DEFAULT '3' COMMENT '场地数量',
|
||||
`match_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '比赛编码',
|
||||
`share_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '报名分享链接',
|
||||
`info_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '信息发布内容',
|
||||
`rules_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '赛事规程内容',
|
||||
`schedule_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '活动日程内容',
|
||||
`status` int DEFAULT '0' COMMENT '状态:0-待开始,1-报名中,2-编排中,3-进行中,4-已结束',
|
||||
`total_register_count` int DEFAULT '0' COMMENT '总报名人数',
|
||||
`total_amount` decimal(10,2) DEFAULT '0.00' COMMENT '总金额',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE,
|
||||
KEY `idx_match_code` (`match_code`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='赛事表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_competition`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_competition` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_competition` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_competition` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_deduction_item`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_deduction_item`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_deduction_item` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`description` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '扣分项描述',
|
||||
`deduction_value` decimal(5,3) DEFAULT '0.000' COMMENT '扣分值',
|
||||
`sort_order` int DEFAULT '0' COMMENT '排序',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='扣分项表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_deduction_item`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_deduction_item` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_deduction_item` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_deduction_item` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_judge`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_judge`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_judge` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`judge_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '裁判姓名',
|
||||
`invite_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '邀请码',
|
||||
`role` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'pub' COMMENT '角色:pub-普通裁判,admin-裁判长',
|
||||
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号',
|
||||
`venue_id` bigint DEFAULT NULL COMMENT '负责场地ID',
|
||||
`status` int DEFAULT '1' COMMENT '状态:1-正常,2-禁用',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_invite_code` (`invite_code`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='裁判表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_judge`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_judge` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_judge` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_judge` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_match_log`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_match_log`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_match_log` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_id` bigint NOT NULL COMMENT '编排ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`venue_id` bigint NOT NULL COMMENT '场地ID',
|
||||
`status` int DEFAULT '1' COMMENT '状态:1-待检录,2-已检录,3-比赛中,4-已完赛',
|
||||
`checkin_time` datetime DEFAULT NULL COMMENT '签到时间',
|
||||
`start_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||||
`end_time` datetime DEFAULT NULL COMMENT '结束时间',
|
||||
`operator_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_schedule_id` (`schedule_id`) USING BTREE,
|
||||
KEY `idx_venue_id` (`venue_id`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='比赛日志表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_match_log`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_match_log` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_match_log` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_match_log` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_project`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_project`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_project` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`project_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目名称',
|
||||
`project_type` int DEFAULT '1' COMMENT '项目类型:1-单人项目,2-集体项目',
|
||||
`price` decimal(10,2) DEFAULT '0.00' COMMENT '项目价格',
|
||||
`duration` int DEFAULT '5' COMMENT '单个比赛时长(分钟)',
|
||||
`gender` int DEFAULT '0' COMMENT '性别限制:0-不限,1-男,2-女',
|
||||
`age_group` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '年龄组别',
|
||||
`team_size` int DEFAULT '1' COMMENT '队伍人数(集体项目)',
|
||||
`register_count` int DEFAULT '0' COMMENT '报名人数/队伍数',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='项目表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_project`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_project` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_project` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_project` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_registration_order`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_registration_order`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_registration_order` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`order_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '订单号',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`user_id` bigint NOT NULL COMMENT '用户ID',
|
||||
`contact_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '联系人姓名',
|
||||
`contact_phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '联系人电话',
|
||||
`total_amount` decimal(10,2) DEFAULT '0.00' COMMENT '总金额',
|
||||
`pay_amount` decimal(10,2) DEFAULT '0.00' COMMENT '实付金额',
|
||||
`status` int DEFAULT '0' COMMENT '订单状态:0-待支付,1-已支付,2-已取消,3-已退款',
|
||||
`pay_time` datetime DEFAULT NULL COMMENT '支付时间',
|
||||
`pay_type` int DEFAULT NULL COMMENT '支付方式:1-微信,2-支付宝',
|
||||
`participant_count` int DEFAULT '0' COMMENT '参赛人数',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
UNIQUE KEY `uk_order_no` (`order_no`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_user_id` (`user_id`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='报名订单表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_registration_order`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_registration_order` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_registration_order` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_registration_order` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_registration_project`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_registration_project`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_registration_project` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`registration_order_id` bigint NOT NULL COMMENT '报名订单ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID(单人项目)',
|
||||
`team_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '队伍名称(集体项目)',
|
||||
`project_price` decimal(10,2) DEFAULT '0.00' COMMENT '项目价格',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_registration_order_id` (`registration_order_id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE,
|
||||
KEY `idx_athlete_id` (`athlete_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='报名项目关联表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_registration_project`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_registration_project` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_registration_project` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_registration_project` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_result`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_result`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_result` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_id` bigint NOT NULL COMMENT '编排ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`total_score` decimal(5,3) DEFAULT '0.000' COMMENT '总分',
|
||||
`final_score` decimal(5,3) DEFAULT '0.000' COMMENT '最终分数(裁判长可调整)',
|
||||
`rank` int DEFAULT NULL COMMENT '排名',
|
||||
`chief_adjust_score` decimal(5,3) DEFAULT NULL COMMENT '裁判长调整分数',
|
||||
`chief_remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '裁判长备注',
|
||||
`status` int DEFAULT '0' COMMENT '状态:0-待评分,1-评分中,2-已完成',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_schedule_id` (`schedule_id`) USING BTREE,
|
||||
KEY `idx_registration_project_id` (`registration_project_id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='成绩表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_result`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_result` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_result` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_result` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_schedule`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_schedule`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_schedule` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`venue_id` bigint NOT NULL COMMENT '场地ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`time_slot` datetime DEFAULT NULL COMMENT '比赛时间段',
|
||||
`estimated_start_time` datetime DEFAULT NULL COMMENT '预计开始时间',
|
||||
`estimated_end_time` datetime DEFAULT NULL COMMENT '预计结束时间',
|
||||
`actual_start_time` datetime DEFAULT NULL COMMENT '实际开始时间',
|
||||
`actual_end_time` datetime DEFAULT NULL COMMENT '实际结束时间',
|
||||
`order_no` int DEFAULT '0' COMMENT '出场顺序',
|
||||
`status` int DEFAULT '0' COMMENT '状态:0-预编排,1-已确定,2-比赛中,3-已完赛',
|
||||
`schedule_type` int DEFAULT '1' COMMENT '编排类型:1-自动编排,2-手动调整',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_venue_id` (`venue_id`) USING BTREE,
|
||||
KEY `idx_project_id` (`project_id`) USING BTREE,
|
||||
KEY `idx_time_slot` (`time_slot`) USING BTREE,
|
||||
KEY `idx_status` (`status`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='编排表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_schedule`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_schedule` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_schedule` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_schedule` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_score`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_score`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_score` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_id` bigint NOT NULL COMMENT '编排ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '运动员ID',
|
||||
`project_id` bigint NOT NULL COMMENT '项目ID',
|
||||
`venue_id` bigint NOT NULL COMMENT '场地ID',
|
||||
`judge_id` bigint NOT NULL COMMENT '裁判ID',
|
||||
`score` decimal(5,3) DEFAULT '0.000' COMMENT '评分(保留3位小数)',
|
||||
`deduction_items` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '扣分项(JSON格式)',
|
||||
`remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
|
||||
`score_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '评分时间',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE,
|
||||
KEY `idx_schedule_id` (`schedule_id`) USING BTREE,
|
||||
KEY `idx_registration_project_id` (`registration_project_id`) USING BTREE,
|
||||
KEY `idx_judge_id` (`judge_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='评分表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_score`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_score` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_score` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_score` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_team_member`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_team_member`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_team_member` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`registration_project_id` bigint NOT NULL COMMENT '报名项目ID',
|
||||
`athlete_id` bigint NOT NULL COMMENT '运动员ID',
|
||||
`role` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '角色',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_registration_project_id` (`registration_project_id`) USING BTREE,
|
||||
KEY `idx_athlete_id` (`athlete_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='队员关联表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_team_member`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_team_member` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_team_member` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_team_member` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_user`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_user`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_user` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`openid` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '微信openid',
|
||||
`nickname` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '昵称',
|
||||
`phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号',
|
||||
`avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '头像',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`status` int DEFAULT '1' COMMENT '状态',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
UNIQUE KEY `uk_openid` (`openid`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='用户表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_user`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_user` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_user` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_user` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `mt_venue`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `mt_venue`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `mt_venue` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`venue_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '场地名称',
|
||||
`venue_no` int NOT NULL COMMENT '场地编号',
|
||||
`status` int DEFAULT '1' COMMENT '场地状态:1-正常,2-维护中',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='场地表';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `mt_venue`
|
||||
--
|
||||
|
||||
LOCK TABLES `mt_venue` WRITE;
|
||||
/*!40000 ALTER TABLE `mt_venue` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `mt_venue` 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 2026-01-16 8:15:00
|
||||
@@ -1,31 +0,0 @@
|
||||
-- MySQL dump 10.13 Distrib 8.0.44, for Linux (x86_64)
|
||||
--
|
||||
-- Host: localhost Database: martial_db
|
||||
-- ------------------------------------------------------
|
||||
-- Server version 8.0.44
|
||||
|
||||
/*!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 */;
|
||||
|
||||
--
|
||||
-- Dumping routines for database 'martial_db'
|
||||
--
|
||||
/*!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 2026-01-21 21:07:28
|
||||
+1
-1
@@ -12,7 +12,7 @@ services:
|
||||
- "3306:3306"
|
||||
volumes:
|
||||
- mysql_data:/var/lib/mysql
|
||||
- ./database:/docker-entrypoint-initdb.d
|
||||
- ./database/init:/docker-entrypoint-initdb.d:ro
|
||||
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
||||
healthcheck:
|
||||
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-pMartial@2026#Secure!Pwd"]
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ src/main/java/org/springblade/modules/martial/
|
||||
#### 步骤 1:创建数据库表
|
||||
|
||||
```sql
|
||||
-- database/martial-db/新增表.sql
|
||||
-- src/main/resources/db/migration/V11__create_mt_judge_level.sql
|
||||
CREATE TABLE mt_judge_level (
|
||||
id BIGINT PRIMARY KEY,
|
||||
level_name VARCHAR(50) NOT NULL COMMENT '等级名称',
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
# Server Migration Checklist (BladeX + Martial)
|
||||
|
||||
## 1. Database initialization policy
|
||||
|
||||
- MySQL init mount must point to `./database/init` only.
|
||||
- Keep `database/init` minimal. Avoid full backups or system DB dumps.
|
||||
- Schema evolution should be managed by Flyway migrations.
|
||||
|
||||
## 2. Flyway pre-check
|
||||
|
||||
Before first migration on an existing environment, run validate with pending ignored:
|
||||
|
||||
```bash
|
||||
mvn -Dflyway.url=jdbc:mysql://<host>:3306/martial_db \
|
||||
-Dflyway.user=<user> \
|
||||
-Dflyway.password=<password> \
|
||||
-Dflyway.locations=filesystem:src/main/resources/db/migration \
|
||||
-Dflyway.ignoreMigrationPatterns='*:pending' \
|
||||
flyway:validate
|
||||
```
|
||||
|
||||
Expected result: `BUILD SUCCESS`.
|
||||
|
||||
## 3. First boot sequence
|
||||
|
||||
1. Start MySQL/Redis/MinIO.
|
||||
2. Start martial-api.
|
||||
3. Flyway applies migrations (V0..latest).
|
||||
4. Confirm schema version and service health.
|
||||
|
||||
## 4. Post-migration verification SQL
|
||||
|
||||
```sql
|
||||
-- flyway history
|
||||
SELECT version, description, success
|
||||
FROM flyway_schema_history
|
||||
ORDER BY installed_rank;
|
||||
|
||||
-- core BladeX tables
|
||||
SELECT table_name
|
||||
FROM information_schema.tables
|
||||
WHERE table_schema='martial_db' AND table_name LIKE 'blade\\_%'
|
||||
ORDER BY table_name;
|
||||
|
||||
-- compatibility table used by mini module
|
||||
SELECT table_name
|
||||
FROM information_schema.tables
|
||||
WHERE table_schema='martial_db' AND table_name='mt_venue';
|
||||
```
|
||||
|
||||
## 5. Rollback note
|
||||
|
||||
- Do not rollback by replaying full backup SQL into a running environment.
|
||||
- Prefer restoring from DB snapshot/backup at infrastructure level.
|
||||
@@ -0,0 +1,5 @@
|
||||
# SQL Notes
|
||||
|
||||
Legacy manual SQL files were removed during cleanup.
|
||||
|
||||
Use Flyway migrations under `src/main/resources/db/migration/` for all schema changes.
|
||||
@@ -1,13 +0,0 @@
|
||||
-- 为成绩计算引擎添加难度系数字段
|
||||
-- 日期: 2025-11-30
|
||||
-- 功能: 支持成绩计算时应用难度系数
|
||||
|
||||
-- 添加难度系数字段到 martial_project 表
|
||||
ALTER TABLE martial_project
|
||||
ADD COLUMN difficulty_coefficient DECIMAL(5,2) DEFAULT 1.00 COMMENT '难度系数(默认1.00)';
|
||||
|
||||
-- 更新说明:
|
||||
-- 1. 该字段用于成绩计算引擎中的 Task 1.3 (应用难度系数)
|
||||
-- 2. 默认值为 1.00,表示不调整分数
|
||||
-- 3. 可设置为 > 1.00 (加分) 或 < 1.00 (减分)
|
||||
-- 4. 精度为小数点后2位,支持 0.01 - 999.99 范围
|
||||
@@ -1,30 +0,0 @@
|
||||
-- 创建异常事件表
|
||||
-- 日期: 2025-11-30
|
||||
-- 功能: 记录比赛日异常情况
|
||||
|
||||
CREATE TABLE IF NOT EXISTS martial_exception_event (
|
||||
id BIGINT PRIMARY KEY COMMENT 'ID',
|
||||
tenant_id VARCHAR(12) DEFAULT '000000' COMMENT '租户ID',
|
||||
competition_id BIGINT NOT NULL COMMENT '赛事ID',
|
||||
schedule_id BIGINT COMMENT '赛程ID',
|
||||
athlete_id BIGINT COMMENT '运动员ID',
|
||||
event_type INT NOT NULL COMMENT '事件类型 1-器械故障 2-受伤 3-评分争议 4-其他',
|
||||
event_description VARCHAR(500) COMMENT '事件描述',
|
||||
handler_name VARCHAR(50) COMMENT '处理人',
|
||||
handle_result VARCHAR(500) COMMENT '处理结果',
|
||||
handle_time DATETIME COMMENT '处理时间',
|
||||
status INT DEFAULT 0 COMMENT '状态 0-待处理 1-已处理',
|
||||
create_user BIGINT COMMENT '创建人',
|
||||
create_dept BIGINT COMMENT '创建部门',
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_user BIGINT COMMENT '更新人',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
is_deleted INT DEFAULT 0 COMMENT '是否已删除 0-未删除 1-已删除'
|
||||
) COMMENT '异常事件表';
|
||||
|
||||
-- 创建索引
|
||||
CREATE INDEX idx_competition_id ON martial_exception_event(competition_id);
|
||||
CREATE INDEX idx_schedule_id ON martial_exception_event(schedule_id);
|
||||
CREATE INDEX idx_athlete_id ON martial_exception_event(athlete_id);
|
||||
CREATE INDEX idx_status ON martial_exception_event(status);
|
||||
CREATE INDEX idx_event_type ON martial_exception_event(event_type);
|
||||
@@ -1,25 +0,0 @@
|
||||
-- 创建裁判-项目关联表
|
||||
-- 日期: 2025-11-30
|
||||
-- 功能: 管理裁判对项目的评分权限
|
||||
|
||||
CREATE TABLE IF NOT EXISTS martial_judge_project (
|
||||
id BIGINT PRIMARY KEY COMMENT 'ID',
|
||||
tenant_id VARCHAR(12) DEFAULT '000000' COMMENT '租户ID',
|
||||
competition_id BIGINT NOT NULL COMMENT '赛事ID',
|
||||
judge_id BIGINT NOT NULL COMMENT '裁判ID',
|
||||
project_id BIGINT NOT NULL COMMENT '项目ID',
|
||||
assign_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '分配时间',
|
||||
status INT DEFAULT 1 COMMENT '状态 0-禁用 1-启用',
|
||||
create_user BIGINT COMMENT '创建人',
|
||||
create_dept BIGINT COMMENT '创建部门',
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_user BIGINT COMMENT '更新人',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
is_deleted INT DEFAULT 0 COMMENT '是否已删除 0-未删除 1-已删除',
|
||||
UNIQUE KEY uk_judge_project (competition_id, judge_id, project_id, is_deleted)
|
||||
) COMMENT '裁判项目关联表';
|
||||
|
||||
-- 创建索引
|
||||
CREATE INDEX idx_judge_id ON martial_judge_project(judge_id);
|
||||
CREATE INDEX idx_project_id ON martial_judge_project(project_id);
|
||||
CREATE INDEX idx_competition_id ON martial_judge_project(competition_id);
|
||||
@@ -1,169 +0,0 @@
|
||||
-- =============================================
|
||||
-- 编排调度功能 - 数据库表创建脚本
|
||||
-- 创建时间: 2025-11-30
|
||||
-- 说明: 创建编排调度相关的5张表
|
||||
-- =============================================
|
||||
|
||||
-- 1. 编排方案表
|
||||
CREATE TABLE IF NOT EXISTS martial_schedule_plan (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
|
||||
competition_id BIGINT NOT NULL COMMENT '赛事ID',
|
||||
plan_name VARCHAR(100) COMMENT '方案名称',
|
||||
plan_type TINYINT DEFAULT 1 COMMENT '方案类型: 1-自动生成, 2-手动调整',
|
||||
status TINYINT DEFAULT 0 COMMENT '状态: 0-草稿, 1-已确认, 2-已发布',
|
||||
|
||||
-- 编排参数
|
||||
start_time DATETIME COMMENT '比赛开始时间',
|
||||
end_time DATETIME COMMENT '比赛结束时间',
|
||||
venue_count INT DEFAULT 0 COMMENT '场地数量',
|
||||
time_slot_duration INT DEFAULT 30 COMMENT '时间段长度(分钟)',
|
||||
|
||||
-- 规则配置
|
||||
rules JSON COMMENT '编排规则配置',
|
||||
|
||||
-- 统计信息
|
||||
total_matches INT DEFAULT 0 COMMENT '总场次',
|
||||
conflict_count INT DEFAULT 0 COMMENT '冲突数量',
|
||||
|
||||
-- 审计字段
|
||||
created_by BIGINT COMMENT '创建人',
|
||||
approved_by BIGINT COMMENT '审批人',
|
||||
approved_time DATETIME COMMENT '审批时间',
|
||||
published_time DATETIME COMMENT '发布时间',
|
||||
|
||||
-- 标准字段
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
is_deleted TINYINT DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
|
||||
|
||||
INDEX idx_competition (competition_id),
|
||||
INDEX idx_status (status),
|
||||
INDEX idx_create_time (create_time)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='编排方案表';
|
||||
|
||||
-- 2. 时间槽表
|
||||
CREATE TABLE IF NOT EXISTS martial_schedule_slot (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
|
||||
plan_id BIGINT NOT NULL COMMENT '编排方案ID',
|
||||
venue_id BIGINT COMMENT '场地ID',
|
||||
|
||||
-- 时间信息
|
||||
slot_date DATE COMMENT '比赛日期',
|
||||
start_time TIME COMMENT '开始时间',
|
||||
end_time TIME COMMENT '结束时间',
|
||||
duration INT DEFAULT 0 COMMENT '时长(分钟)',
|
||||
|
||||
-- 项目信息
|
||||
project_id BIGINT COMMENT '项目ID',
|
||||
category VARCHAR(50) COMMENT '组别',
|
||||
|
||||
-- 排序
|
||||
sort_order INT DEFAULT 0 COMMENT '排序号',
|
||||
|
||||
-- 状态
|
||||
status TINYINT DEFAULT 0 COMMENT '状态: 0-未开始, 1-进行中, 2-已完成',
|
||||
|
||||
-- 标准字段
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
is_deleted TINYINT DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
|
||||
|
||||
INDEX idx_plan (plan_id),
|
||||
INDEX idx_venue (venue_id),
|
||||
INDEX idx_time (slot_date, start_time),
|
||||
INDEX idx_project (project_id),
|
||||
INDEX idx_status (status)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='编排时间槽表';
|
||||
|
||||
-- 3. 运动员-时间槽关联表
|
||||
CREATE TABLE IF NOT EXISTS martial_schedule_athlete_slot (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
|
||||
slot_id BIGINT NOT NULL COMMENT '时间槽ID',
|
||||
athlete_id BIGINT NOT NULL COMMENT '运动员ID',
|
||||
|
||||
-- 出场信息
|
||||
appearance_order INT DEFAULT 0 COMMENT '出场顺序',
|
||||
estimated_time TIME COMMENT '预计出场时间',
|
||||
|
||||
-- 状态
|
||||
check_in_status TINYINT DEFAULT 0 COMMENT '签到状态: 0-未签到, 1-已签到',
|
||||
performance_status TINYINT DEFAULT 0 COMMENT '比赛状态: 0-未开始, 1-进行中, 2-已完成',
|
||||
|
||||
-- 调整记录
|
||||
is_adjusted TINYINT DEFAULT 0 COMMENT '是否调整过',
|
||||
adjust_note VARCHAR(200) COMMENT '调整备注',
|
||||
|
||||
-- 标准字段
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
is_deleted TINYINT DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
|
||||
|
||||
INDEX idx_slot (slot_id),
|
||||
INDEX idx_athlete (athlete_id),
|
||||
INDEX idx_order (appearance_order),
|
||||
UNIQUE KEY uk_slot_athlete (slot_id, athlete_id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运动员时间槽关联表';
|
||||
|
||||
-- 4. 编排冲突记录表
|
||||
CREATE TABLE IF NOT EXISTS martial_schedule_conflict (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
|
||||
plan_id BIGINT NOT NULL COMMENT '编排方案ID',
|
||||
conflict_type TINYINT COMMENT '冲突类型: 1-时间冲突, 2-场地冲突, 3-规则违反',
|
||||
severity TINYINT COMMENT '严重程度: 1-警告, 2-错误, 3-致命',
|
||||
|
||||
-- 冲突详情
|
||||
entity_type VARCHAR(20) COMMENT '实体类型: athlete/venue/slot',
|
||||
entity_id BIGINT COMMENT '实体ID',
|
||||
conflict_description TEXT COMMENT '冲突描述',
|
||||
|
||||
-- 解决状态
|
||||
is_resolved TINYINT DEFAULT 0 COMMENT '是否已解决',
|
||||
resolve_method VARCHAR(100) COMMENT '解决方法',
|
||||
|
||||
-- 标准字段
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
is_deleted TINYINT DEFAULT 0 COMMENT '是否删除: 0-否, 1-是',
|
||||
|
||||
INDEX idx_plan (plan_id),
|
||||
INDEX idx_type (conflict_type),
|
||||
INDEX idx_resolved (is_resolved)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='编排冲突记录表';
|
||||
|
||||
-- 5. 编排调整日志表
|
||||
CREATE TABLE IF NOT EXISTS martial_schedule_adjustment_log (
|
||||
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
|
||||
plan_id BIGINT NOT NULL COMMENT '编排方案ID',
|
||||
|
||||
-- 操作信息
|
||||
action_type VARCHAR(20) COMMENT '操作类型: move/swap/delete/insert',
|
||||
operator_id BIGINT COMMENT '操作人ID',
|
||||
operator_name VARCHAR(50) COMMENT '操作人姓名',
|
||||
operator_role VARCHAR(20) COMMENT '操作人角色: admin/referee',
|
||||
|
||||
-- 变更详情
|
||||
before_data JSON COMMENT '变更前数据',
|
||||
after_data JSON COMMENT '变更后数据',
|
||||
reason VARCHAR(200) COMMENT '调整原因',
|
||||
|
||||
-- 时间
|
||||
action_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '操作时间',
|
||||
|
||||
INDEX idx_plan (plan_id),
|
||||
INDEX idx_operator (operator_id),
|
||||
INDEX idx_time (action_time)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='编排调整日志表';
|
||||
|
||||
-- =============================================
|
||||
-- 数据验证查询
|
||||
-- =============================================
|
||||
|
||||
-- 验证表是否创建成功
|
||||
SELECT
|
||||
TABLE_NAME,
|
||||
TABLE_COMMENT,
|
||||
TABLE_ROWS,
|
||||
CREATE_TIME
|
||||
FROM information_schema.TABLES
|
||||
WHERE TABLE_SCHEMA = 'martial_db'
|
||||
AND TABLE_NAME LIKE 'martial_schedule%'
|
||||
ORDER BY TABLE_NAME;
|
||||
@@ -1,59 +0,0 @@
|
||||
-- =====================================================
|
||||
-- 武术比赛管理系统 - 补充裁判邀请表字段
|
||||
-- 添加实体类中存在但数据库表缺失的字段
|
||||
-- Date: 2025-12-12
|
||||
-- =====================================================
|
||||
|
||||
USE martial_db;
|
||||
|
||||
-- =====================================================
|
||||
-- martial_judge_invite (裁判邀请码表) - 添加缺失字段
|
||||
-- =====================================================
|
||||
|
||||
-- 添加 invite_status 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN invite_status int DEFAULT 0 COMMENT '邀请状态(0-待回复,1-已接受,2-已拒绝,3-已取消)' AFTER token_expire_time;
|
||||
|
||||
-- 添加 invite_time 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN invite_time datetime DEFAULT NULL COMMENT '邀请时间' AFTER invite_status;
|
||||
|
||||
-- 添加 reply_time 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN reply_time datetime DEFAULT NULL COMMENT '回复时间' AFTER invite_time;
|
||||
|
||||
-- 添加 reply_note 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN reply_note varchar(500) DEFAULT NULL COMMENT '回复备注' AFTER reply_time;
|
||||
|
||||
-- 添加 contact_phone 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN contact_phone varchar(20) DEFAULT NULL COMMENT '联系电话' AFTER reply_note;
|
||||
|
||||
-- 添加 contact_email 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN contact_email varchar(100) DEFAULT NULL COMMENT '联系邮箱' AFTER contact_phone;
|
||||
|
||||
-- 添加 invite_message 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN invite_message varchar(1000) DEFAULT NULL COMMENT '邀请消息' AFTER contact_email;
|
||||
|
||||
-- 添加 cancel_reason 字段
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN cancel_reason varchar(500) DEFAULT NULL COMMENT '取消原因' AFTER invite_message;
|
||||
|
||||
-- =====================================================
|
||||
-- 验证修改
|
||||
-- =====================================================
|
||||
SELECT '=== 裁判邀请表字段补充完成 ===' AS status;
|
||||
|
||||
-- 查看表结构
|
||||
SHOW COLUMNS FROM martial_judge_invite;
|
||||
|
||||
-- 统计字段数量
|
||||
SELECT
|
||||
'martial_judge_invite 字段数:' AS info,
|
||||
COUNT(*) AS count
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA='martial_db'
|
||||
AND TABLE_NAME='martial_judge_invite';
|
||||
@@ -1,147 +0,0 @@
|
||||
-- =====================================================
|
||||
-- 武术比赛管理系统 - 菜单数据
|
||||
-- 添加武术比赛管理相关菜单
|
||||
-- Date: 2025-12-12
|
||||
-- =====================================================
|
||||
|
||||
-- 注意:请根据实际情况调整菜单ID,避免与现有菜单冲突
|
||||
-- 建议先查询当前最大菜单ID: SELECT MAX(id) FROM blade_menu;
|
||||
|
||||
USE bladex;
|
||||
|
||||
-- =====================================================
|
||||
-- 1. 武术比赛管理 - 一级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2000000, 0, 'martial', '武术比赛', 'menu', '/martial', 'iconfont icon-quanxian', 1, 1, 0, 1, '武术比赛管理系统', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 2. 赛事管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2001000, 2000000, 'martial:competition', '赛事管理', 'menu', '/martial/competition/list', 'iconfont icon-rizhi', 1, 1, 0, 1, '赛事信息管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 3. 报名管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2002000, 2000000, 'martial:registration', '报名详情', 'menu', '/martial/registration/detail', 'iconfont icon-wenben', 2, 1, 0, 1, '报名信息管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 4. 订单管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2003000, 2000000, 'martial:order', '订单管理', 'menu', '/martial/order/list', 'iconfont icon-caidan', 3, 1, 0, 1, '订单信息管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 5. 参赛选手管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2004000, 2000000, 'martial:participant', '参赛选手管理', 'menu', '/martial/participant/list', 'iconfont icon-icon-', 4, 1, 0, 1, '参赛选手信息管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 6. 项目管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2005000, 2000000, 'martial:project', '项目管理', 'menu', '/martial/project/list', 'iconfont icon-liebiao', 5, 1, 0, 1, '比赛项目管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 7. 评委管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2006000, 2000000, 'martial:referee', '评委管理', 'menu', '/martial/referee/list', 'iconfont icon-quanxian', 6, 1, 0, 1, '评委信息管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 8. 裁判邀请 - 二级菜单 ⭐ 重点
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2007000, 2000000, 'martial:judgeInvite', '裁判邀请', 'menu', '/martial/judgeInvite/list', 'iconfont icon-email', 7, 1, 0, 1, '裁判邀请码管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 9. 裁判分配 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2008000, 2000000, 'martial:judgeProject', '裁判分配', 'menu', '/martial/judgeProject/list', 'iconfont icon-quanxian', 8, 1, 0, 1, '裁判项目分配', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 10. 评分管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2009000, 2000000, 'martial:score', '评分管理', 'menu', '/martial/score/index', 'iconfont icon-icon-', 9, 1, 0, 1, '评分记录管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 11. 扣分项管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2010000, 2000000, 'martial:deduction', '扣分项管理', 'menu', '/martial/deduction/list', 'iconfont icon-icon-', 10, 1, 0, 1, '扣分项配置管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 12. 成绩管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2011000, 2000000, 'martial:result', '成绩管理', 'menu', '/martial/result/list', 'iconfont icon-icon-', 11, 1, 0, 1, '成绩统计管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 13. 赛程计划 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2012000, 2000000, 'martial:schedulePlan', '赛程计划', 'menu', '/martial/schedulePlan/list', 'iconfont icon-riqi', 12, 1, 0, 1, '赛程安排管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 14. 选手关联 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2013000, 2000000, 'martial:scheduleAthlete', '选手关联', 'menu', '/martial/scheduleAthlete/list', 'iconfont icon-icon-', 13, 1, 0, 1, '赛程选手关联', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 15. 轮播图管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2014000, 2000000, 'martial:banner', '轮播图管理', 'menu', '/martial/banner/index', 'iconfont icon-tupian', 14, 1, 0, 1, '轮播图配置', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 16. 直播管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2015000, 2000000, 'martial:live', '直播管理', 'menu', '/martial/live/list', 'iconfont icon-icon-', 15, 1, 0, 1, '直播信息管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 17. 信息发布 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2016000, 2000000, 'martial:info', '信息发布', 'menu', '/martial/info/list', 'iconfont icon-wenben', 16, 1, 0, 1, '信息发布管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 18. 异常事件 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2017000, 2000000, 'martial:exception', '异常事件', 'menu', '/martial/exception/list', 'iconfont icon-icon-', 17, 1, 0, 1, '异常事件管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 19. 活动日程 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2018000, 2000000, 'martial:activity', '活动日程', 'menu', '/martial/activity/list', 'iconfont icon-riqi', 18, 1, 0, 1, '活动日程管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 20. 赛事规程管理 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2019000, 2000000, 'martial:rules', '赛事规程管理', 'menu', '/martial/rules/index', 'iconfont icon-wenben', 19, 1, 0, 1, '赛事规程文件管理', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 21. 导出中心 - 二级菜单
|
||||
-- =====================================================
|
||||
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `remark`, `is_deleted`)
|
||||
VALUES (2020000, 2000000, 'martial:export', '导出中心', 'menu', '/martial/export/index', 'iconfont icon-icon-', 20, 1, 0, 1, '数据导出中心', 0);
|
||||
|
||||
-- =====================================================
|
||||
-- 验证插入
|
||||
-- =====================================================
|
||||
SELECT '=== 菜单数据插入完成 ===' AS status;
|
||||
|
||||
-- 查看插入的菜单
|
||||
SELECT id, parent_id, name, path, sort
|
||||
FROM blade_menu
|
||||
WHERE id >= 2000000 AND id <= 2020000
|
||||
ORDER BY id;
|
||||
@@ -1,97 +0,0 @@
|
||||
-- =====================================================
|
||||
-- 武术比赛管理系统 - 数据库字段补充脚本
|
||||
-- 基于前端需求分析,补充缺失字段
|
||||
-- Date: 2025-11-29
|
||||
-- =====================================================
|
||||
|
||||
USE martial_db;
|
||||
|
||||
-- =====================================================
|
||||
-- 1. martial_athlete (参赛选手表) - 添加4个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_athlete
|
||||
ADD COLUMN id_card_type int DEFAULT 1 COMMENT '证件类型(1-身份证,2-护照,3-其他)' AFTER id_card,
|
||||
ADD COLUMN birth_date date DEFAULT NULL COMMENT '出生日期' AFTER age,
|
||||
ADD COLUMN nation varchar(50) DEFAULT NULL COMMENT '民族' AFTER birth_date,
|
||||
ADD COLUMN organization_type int DEFAULT 1 COMMENT '单位类别(1-学校,2-协会,3-俱乐部,4-其他)' AFTER organization;
|
||||
|
||||
-- =====================================================
|
||||
-- 2. martial_registration_order (报名订单表) - 添加7个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_registration_order
|
||||
ADD COLUMN transaction_no varchar(100) DEFAULT NULL COMMENT '支付交易号' AFTER payment_time,
|
||||
ADD COLUMN refund_amount decimal(10,2) DEFAULT 0.00 COMMENT '退款金额' AFTER paid_amount,
|
||||
ADD COLUMN refund_time datetime DEFAULT NULL COMMENT '退款时间' AFTER transaction_no,
|
||||
ADD COLUMN refund_reason varchar(500) DEFAULT NULL COMMENT '退款原因' AFTER refund_time,
|
||||
ADD COLUMN invoice_type int DEFAULT 0 COMMENT '发票类型(0-不需要,1-普通,2-增值税)' AFTER organization,
|
||||
ADD COLUMN invoice_title varchar(200) DEFAULT NULL COMMENT '发票抬头' AFTER invoice_type,
|
||||
ADD COLUMN invoice_tax_no varchar(50) DEFAULT NULL COMMENT '税号' AFTER invoice_title;
|
||||
|
||||
-- =====================================================
|
||||
-- 3. martial_score (评分表) - 添加5个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_score
|
||||
ADD COLUMN venue_id bigint DEFAULT NULL COMMENT '场地ID' AFTER schedule_id,
|
||||
ADD COLUMN original_score decimal(10,3) DEFAULT NULL COMMENT '原始评分(修改前)' AFTER score,
|
||||
ADD COLUMN modify_reason varchar(500) DEFAULT NULL COMMENT '修改原因' AFTER note,
|
||||
ADD COLUMN modify_time datetime DEFAULT NULL COMMENT '修改时间' AFTER score_time,
|
||||
ADD COLUMN ip_address varchar(50) DEFAULT NULL COMMENT '评分IP地址' AFTER modify_time,
|
||||
ADD INDEX idx_venue (venue_id);
|
||||
|
||||
-- =====================================================
|
||||
-- 4. martial_result (成绩表) - 添加5个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_result
|
||||
ADD COLUMN max_score decimal(10,3) DEFAULT NULL COMMENT '最高分(去掉用)' AFTER total_score,
|
||||
ADD COLUMN min_score decimal(10,3) DEFAULT NULL COMMENT '最低分(去掉用)' AFTER max_score,
|
||||
ADD COLUMN valid_score_count int DEFAULT 0 COMMENT '有效评分数' AFTER min_score,
|
||||
ADD COLUMN difficulty_coefficient decimal(5,2) DEFAULT 1.00 COMMENT '难度系数' AFTER adjusted_score,
|
||||
ADD COLUMN final_score decimal(10,3) DEFAULT NULL COMMENT '最终得分(总分*系数)' AFTER difficulty_coefficient;
|
||||
|
||||
-- =====================================================
|
||||
-- 5. martial_project (比赛项目表) - 添加4个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_project
|
||||
ADD COLUMN min_age int DEFAULT NULL COMMENT '最小年龄' AFTER max_participants,
|
||||
ADD COLUMN max_age int DEFAULT NULL COMMENT '最大年龄' AFTER min_age,
|
||||
ADD COLUMN gender_limit int DEFAULT 0 COMMENT '性别限制(0-不限,1-仅男,2-仅女)' AFTER max_age,
|
||||
ADD COLUMN registration_deadline datetime DEFAULT NULL COMMENT '报名截止时间' AFTER price;
|
||||
|
||||
-- =====================================================
|
||||
-- 6. martial_banner (轮播图表) - 添加4个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_banner
|
||||
ADD COLUMN position int DEFAULT 1 COMMENT '显示位置(1-首页,2-赛事详情,3-其他)' AFTER title,
|
||||
ADD COLUMN start_time datetime DEFAULT NULL COMMENT '开始显示时间' AFTER sort_order,
|
||||
ADD COLUMN end_time datetime DEFAULT NULL COMMENT '结束显示时间' AFTER start_time,
|
||||
ADD COLUMN click_count int DEFAULT 0 COMMENT '点击次数' AFTER end_time;
|
||||
|
||||
-- =====================================================
|
||||
-- 7. martial_info_publish (信息发布表) - 添加3个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_info_publish
|
||||
ADD COLUMN view_count int DEFAULT 0 COMMENT '阅读次数' AFTER sort_order,
|
||||
ADD COLUMN attachments varchar(1000) DEFAULT NULL COMMENT '附件(JSON)' AFTER images,
|
||||
ADD COLUMN publisher_name varchar(50) DEFAULT NULL COMMENT '发布人姓名' AFTER publish_time;
|
||||
|
||||
-- =====================================================
|
||||
-- 8. martial_judge_invite (裁判邀请码表) - 添加4个字段
|
||||
-- =====================================================
|
||||
ALTER TABLE martial_judge_invite
|
||||
ADD COLUMN device_info varchar(500) DEFAULT NULL COMMENT '设备信息' AFTER use_time,
|
||||
ADD COLUMN login_ip varchar(50) DEFAULT NULL COMMENT '登录IP' AFTER device_info,
|
||||
ADD COLUMN access_token varchar(500) DEFAULT NULL COMMENT '访问令牌' AFTER login_ip,
|
||||
ADD COLUMN token_expire_time datetime DEFAULT NULL COMMENT 'token过期时间' AFTER access_token;
|
||||
|
||||
-- =====================================================
|
||||
-- 验证修改
|
||||
-- =====================================================
|
||||
SELECT '=== 字段补充完成 ===' AS status;
|
||||
SELECT 'martial_athlete 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_athlete';
|
||||
SELECT 'martial_registration_order 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_registration_order';
|
||||
SELECT 'martial_score 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_score';
|
||||
SELECT 'martial_result 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_result';
|
||||
SELECT 'martial_project 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_project';
|
||||
SELECT 'martial_banner 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_banner';
|
||||
SELECT 'martial_info_publish 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_info_publish';
|
||||
SELECT 'martial_judge_invite 字段数:', COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='martial_db' AND TABLE_NAME='martial_judge_invite';
|
||||
@@ -1,19 +0,0 @@
|
||||
-- 添加缺失的 status 字段到4张表
|
||||
-- 生成时间: 2025-11-29
|
||||
-- 说明: 所有继承 TenantEntity 的实体类都需要 status 字段
|
||||
|
||||
-- 1. martial_athlete 表添加 status 字段
|
||||
ALTER TABLE martial_athlete
|
||||
ADD COLUMN status int DEFAULT 1 COMMENT '状态(1-启用,2-禁用)' AFTER update_time;
|
||||
|
||||
-- 2. martial_live_update 表添加 status 字段
|
||||
ALTER TABLE martial_live_update
|
||||
ADD COLUMN status int DEFAULT 1 COMMENT '状态(1-启用,2-禁用)' AFTER update_time;
|
||||
|
||||
-- 3. martial_result 表添加 status 字段
|
||||
ALTER TABLE martial_result
|
||||
ADD COLUMN status int DEFAULT 1 COMMENT '状态(1-启用,2-禁用)' AFTER update_time;
|
||||
|
||||
-- 4. martial_schedule_athlete 表添加 status 字段
|
||||
ALTER TABLE martial_schedule_athlete
|
||||
ADD COLUMN status int DEFAULT 1 COMMENT '状态(1-启用,2-禁用)' AFTER update_time;
|
||||
@@ -1,570 +0,0 @@
|
||||
-- =====================================================
|
||||
-- 武术比赛管理系统 - 完整数据库设计
|
||||
-- Database: martial_db
|
||||
-- Author: Claude Code
|
||||
-- Date: 2025-11-29
|
||||
-- =====================================================
|
||||
|
||||
-- 设置字符集
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- =====================================================
|
||||
-- 1. 赛事管理核心表
|
||||
-- =====================================================
|
||||
|
||||
-- 赛事信息表
|
||||
DROP TABLE IF EXISTS `martial_competition`;
|
||||
CREATE TABLE `martial_competition` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_name` varchar(200) NOT NULL COMMENT '赛事名称',
|
||||
`competition_code` varchar(50) NOT NULL COMMENT '赛事编码(用于裁判登录)',
|
||||
`organizer` varchar(200) DEFAULT NULL COMMENT '主办单位',
|
||||
`location` varchar(100) DEFAULT NULL COMMENT '地区',
|
||||
`venue` varchar(200) DEFAULT NULL COMMENT '详细地点',
|
||||
`registration_start_time` datetime DEFAULT NULL COMMENT '报名开始时间',
|
||||
`registration_end_time` datetime DEFAULT NULL COMMENT '报名结束时间',
|
||||
`competition_start_time` datetime DEFAULT NULL COMMENT '比赛开始时间',
|
||||
`competition_end_time` datetime DEFAULT NULL COMMENT '比赛结束时间',
|
||||
`introduction` text COMMENT '赛事简介',
|
||||
`poster_images` varchar(1000) DEFAULT NULL COMMENT '宣传图片(JSON数组)',
|
||||
`contact_person` varchar(50) DEFAULT NULL COMMENT '联系人',
|
||||
`contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
|
||||
`contact_email` varchar(100) DEFAULT NULL COMMENT '联系邮箱',
|
||||
`rules` text COMMENT '竞赛规则',
|
||||
`requirements` text COMMENT '参赛要求',
|
||||
`awards` text COMMENT '奖项设置',
|
||||
`regulation_files` varchar(1000) DEFAULT NULL COMMENT '规程文件(JSON数组)',
|
||||
`total_participants` int DEFAULT 0 COMMENT '报名总人数',
|
||||
`total_amount` decimal(10,2) DEFAULT 0.00 COMMENT '报名总金额',
|
||||
`status` int DEFAULT 0 COMMENT '状态(0-未开始,1-报名中,2-比赛中,3-已结束,4-已取消)',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` int DEFAULT 0 COMMENT '是否已删除',
|
||||
`tenant_id` varchar(12) DEFAULT '000000' COMMENT '租户ID',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_code` (`competition_code`),
|
||||
KEY `idx_tenant_status` (`tenant_id`,`status`),
|
||||
KEY `idx_time` (`competition_start_time`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='赛事信息表';
|
||||
|
||||
-- 比赛项目表
|
||||
DROP TABLE IF EXISTS `martial_project`;
|
||||
CREATE TABLE `martial_project` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`project_name` varchar(100) NOT NULL COMMENT '项目名称',
|
||||
`project_code` varchar(50) DEFAULT NULL COMMENT '项目编码',
|
||||
`category` varchar(50) DEFAULT NULL COMMENT '组别(男子组/女子组)',
|
||||
`type` int DEFAULT 1 COMMENT '类型(1-个人,2-双人,3-集体)',
|
||||
`min_participants` int DEFAULT 1 COMMENT '最少参赛人数',
|
||||
`max_participants` int DEFAULT 1 COMMENT '最多参赛人数',
|
||||
`estimated_duration` int DEFAULT 5 COMMENT '预估时长(分钟)',
|
||||
`price` decimal(10,2) DEFAULT 0.00 COMMENT '报名费用',
|
||||
`description` varchar(500) DEFAULT NULL COMMENT '项目描述',
|
||||
`sort_order` int DEFAULT 0 COMMENT '排序',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-禁用,1-启用)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='比赛项目表';
|
||||
|
||||
-- 场地信息表
|
||||
DROP TABLE IF EXISTS `martial_venue`;
|
||||
CREATE TABLE `martial_venue` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`venue_name` varchar(100) NOT NULL COMMENT '场地名称',
|
||||
`venue_code` varchar(50) DEFAULT NULL COMMENT '场地编码',
|
||||
`location` varchar(200) DEFAULT NULL COMMENT '场地位置',
|
||||
`capacity` int DEFAULT 0 COMMENT '容纳人数',
|
||||
`facilities` varchar(500) DEFAULT NULL COMMENT '设施说明',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-禁用,1-启用)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='场地信息表';
|
||||
|
||||
-- =====================================================
|
||||
-- 2. 报名订单相关表
|
||||
-- =====================================================
|
||||
|
||||
-- 报名订单表
|
||||
DROP TABLE IF EXISTS `martial_registration_order`;
|
||||
CREATE TABLE `martial_registration_order` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`order_no` varchar(50) NOT NULL COMMENT '订单号',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`user_id` bigint DEFAULT NULL COMMENT '用户ID',
|
||||
`user_name` varchar(50) DEFAULT NULL COMMENT '用户名',
|
||||
`contact_person` varchar(50) DEFAULT NULL COMMENT '联系人',
|
||||
`contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
|
||||
`organization` varchar(200) DEFAULT NULL COMMENT '所属单位',
|
||||
`total_participants` int DEFAULT 0 COMMENT '参赛总人数',
|
||||
`total_amount` decimal(10,2) DEFAULT 0.00 COMMENT '订单总金额',
|
||||
`paid_amount` decimal(10,2) DEFAULT 0.00 COMMENT '已支付金额',
|
||||
`payment_method` int DEFAULT NULL COMMENT '支付方式(1-微信,2-支付宝,3-线下)',
|
||||
`payment_time` datetime DEFAULT NULL COMMENT '支付时间',
|
||||
`status` int DEFAULT 0 COMMENT '状态(0-待支付,1-已支付,2-已取消,3-已退款)',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_order_no` (`order_no`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_user` (`user_id`),
|
||||
KEY `idx_tenant_status` (`tenant_id`,`status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报名订单表';
|
||||
|
||||
-- 参赛选手表
|
||||
DROP TABLE IF EXISTS `martial_athlete`;
|
||||
CREATE TABLE `martial_athlete` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`order_id` bigint NOT NULL COMMENT '订单ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`project_id` bigint DEFAULT NULL COMMENT '项目ID',
|
||||
`player_name` varchar(50) NOT NULL COMMENT '选手姓名',
|
||||
`player_no` varchar(50) DEFAULT NULL COMMENT '参赛编号',
|
||||
`gender` int DEFAULT 1 COMMENT '性别(1-男,2-女)',
|
||||
`age` int DEFAULT NULL COMMENT '年龄',
|
||||
`id_card` varchar(18) DEFAULT NULL COMMENT '身份证号',
|
||||
`contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
|
||||
`organization` varchar(200) DEFAULT NULL COMMENT '所属单位',
|
||||
`team_name` varchar(100) DEFAULT NULL COMMENT '队伍名称',
|
||||
`category` varchar(50) DEFAULT NULL COMMENT '组别',
|
||||
`order_num` int DEFAULT 0 COMMENT '出场顺序',
|
||||
`introduction` varchar(500) DEFAULT NULL COMMENT '选手简介',
|
||||
`attachments` varchar(1000) DEFAULT NULL COMMENT '附件(JSON数组)',
|
||||
`photo_url` varchar(500) DEFAULT NULL COMMENT '照片URL',
|
||||
`registration_status` int DEFAULT 0 COMMENT '报名状态(0-待确认,1-已确认,2-已取消)',
|
||||
`competition_status` int DEFAULT 0 COMMENT '比赛状态(0-待出场,1-进行中,2-已完成)',
|
||||
`total_score` decimal(10,3) DEFAULT NULL COMMENT '总分',
|
||||
`ranking` int DEFAULT NULL COMMENT '排名',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_order` (`order_id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_project` (`project_id`),
|
||||
KEY `idx_player_no` (`player_no`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='参赛选手表';
|
||||
|
||||
-- =====================================================
|
||||
-- 3. 赛程安排相关表
|
||||
-- =====================================================
|
||||
|
||||
-- 活动日程表
|
||||
DROP TABLE IF EXISTS `martial_activity_schedule`;
|
||||
CREATE TABLE `martial_activity_schedule` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_date` date NOT NULL COMMENT '日程日期',
|
||||
`schedule_time` time DEFAULT NULL COMMENT '日程时间',
|
||||
`event_name` varchar(200) NOT NULL COMMENT '活动项目',
|
||||
`venue` varchar(200) DEFAULT NULL COMMENT '地点',
|
||||
`description` varchar(500) DEFAULT NULL COMMENT '描述',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
`sort_order` int DEFAULT 0 COMMENT '排序',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-未开始,1-进行中,2-已完成)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_date` (`schedule_date`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='活动日程表';
|
||||
|
||||
-- 赛程编排表(竞赛分组)
|
||||
DROP TABLE IF EXISTS `martial_schedule`;
|
||||
CREATE TABLE `martial_schedule` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`order_id` bigint DEFAULT NULL COMMENT '订单ID',
|
||||
`group_title` varchar(200) NOT NULL COMMENT '分组标题',
|
||||
`group_code` varchar(50) DEFAULT NULL COMMENT '分组编码',
|
||||
`group_type` int DEFAULT 1 COMMENT '分组类型(1-个人,2-双人,3-集体)',
|
||||
`venue_id` bigint DEFAULT NULL COMMENT '场地ID',
|
||||
`project_id` bigint DEFAULT NULL COMMENT '项目ID',
|
||||
`schedule_date` date DEFAULT NULL COMMENT '比赛日期',
|
||||
`time_slot` varchar(50) DEFAULT NULL COMMENT '时间段',
|
||||
`start_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||||
`end_time` datetime DEFAULT NULL COMMENT '结束时间',
|
||||
`participant_count` int DEFAULT 0 COMMENT '参赛队伍数/人数',
|
||||
`estimated_duration` int DEFAULT 0 COMMENT '预估时长(分钟)',
|
||||
`is_confirmed` int DEFAULT 0 COMMENT '是否已确认(0-未确认,1-已确认)',
|
||||
`status` int DEFAULT 0 COMMENT '状态(0-待开始,1-进行中,2-已完成)',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_venue` (`venue_id`),
|
||||
KEY `idx_date_time` (`schedule_date`,`time_slot`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='赛程编排表';
|
||||
|
||||
-- 选手赛程关联表
|
||||
DROP TABLE IF EXISTS `martial_schedule_athlete`;
|
||||
CREATE TABLE `martial_schedule_athlete` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`schedule_id` bigint NOT NULL COMMENT '赛程ID',
|
||||
`athlete_id` bigint NOT NULL COMMENT '选手ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`order_num` int DEFAULT 0 COMMENT '出场顺序',
|
||||
`is_completed` int DEFAULT 0 COMMENT '是否已完赛(0-未完赛,1-已完赛)',
|
||||
`is_refereed` int DEFAULT 0 COMMENT '是否已裁判(0-未裁判,1-已裁判)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_schedule` (`schedule_id`),
|
||||
KEY `idx_athlete` (`athlete_id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='选手赛程关联表';
|
||||
|
||||
-- =====================================================
|
||||
-- 4. 裁判评分相关表
|
||||
-- =====================================================
|
||||
|
||||
-- 裁判信息表
|
||||
DROP TABLE IF EXISTS `martial_judge`;
|
||||
CREATE TABLE `martial_judge` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`name` varchar(50) NOT NULL COMMENT '裁判姓名',
|
||||
`gender` int DEFAULT 1 COMMENT '性别(1-男,2-女)',
|
||||
`phone` varchar(20) DEFAULT NULL COMMENT '手机号',
|
||||
`id_card` varchar(18) DEFAULT NULL COMMENT '身份证号',
|
||||
`referee_type` int DEFAULT 2 COMMENT '裁判类型(1-裁判长,2-普通裁判)',
|
||||
`level` varchar(50) DEFAULT NULL COMMENT '等级/职称',
|
||||
`specialty` varchar(200) DEFAULT NULL COMMENT '擅长项目',
|
||||
`photo_url` varchar(500) DEFAULT NULL COMMENT '照片URL',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-禁用,1-启用)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_phone` (`phone`),
|
||||
KEY `idx_type` (`referee_type`),
|
||||
KEY `idx_tenant_status` (`tenant_id`,`status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='裁判信息表';
|
||||
|
||||
-- 裁判邀请码表
|
||||
DROP TABLE IF EXISTS `martial_judge_invite`;
|
||||
CREATE TABLE `martial_judge_invite` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`judge_id` bigint DEFAULT NULL COMMENT '裁判ID',
|
||||
`invite_code` varchar(50) NOT NULL COMMENT '邀请码',
|
||||
`role` varchar(20) NOT NULL COMMENT '角色(judge-普通裁判,chief_judge-裁判长)',
|
||||
`venue_id` bigint DEFAULT NULL COMMENT '分配场地ID',
|
||||
`projects` varchar(500) DEFAULT NULL COMMENT '分配项目(JSON数组)',
|
||||
`expire_time` datetime DEFAULT NULL COMMENT '过期时间',
|
||||
`is_used` int DEFAULT 0 COMMENT '是否已使用(0-未使用,1-已使用)',
|
||||
`use_time` datetime DEFAULT NULL COMMENT '使用时间',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-禁用,1-启用)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_competition_code` (`competition_id`,`invite_code`),
|
||||
KEY `idx_judge` (`judge_id`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='裁判邀请码表';
|
||||
|
||||
-- 扣分项配置表
|
||||
DROP TABLE IF EXISTS `martial_deduction_item`;
|
||||
CREATE TABLE `martial_deduction_item` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`item_name` varchar(200) NOT NULL COMMENT '扣分项名称',
|
||||
`item_code` varchar(50) DEFAULT NULL COMMENT '扣分项编码',
|
||||
`deduction_point` decimal(10,3) DEFAULT 0.000 COMMENT '扣分值',
|
||||
`category` varchar(50) DEFAULT NULL COMMENT '分类',
|
||||
`applicable_projects` varchar(500) DEFAULT NULL COMMENT '适用项目(JSON数组)',
|
||||
`description` varchar(500) DEFAULT NULL COMMENT '描述',
|
||||
`sort_order` int DEFAULT 0 COMMENT '排序',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-禁用,1-启用)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_tenant_status` (`tenant_id`,`status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='扣分项配置表';
|
||||
|
||||
-- 评分记录表
|
||||
DROP TABLE IF EXISTS `martial_score`;
|
||||
CREATE TABLE `martial_score` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`athlete_id` bigint NOT NULL COMMENT '选手ID',
|
||||
`project_id` bigint DEFAULT NULL COMMENT '项目ID',
|
||||
`schedule_id` bigint DEFAULT NULL COMMENT '赛程ID',
|
||||
`judge_id` bigint NOT NULL COMMENT '裁判ID',
|
||||
`judge_name` varchar(50) DEFAULT NULL COMMENT '裁判姓名',
|
||||
`score` decimal(10,3) NOT NULL COMMENT '评分(5.000-10.000)',
|
||||
`deduction_items` varchar(500) DEFAULT NULL COMMENT '选中的扣分项ID(JSON数组)',
|
||||
`note` varchar(500) DEFAULT NULL COMMENT '评分备注',
|
||||
`score_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '评分时间',
|
||||
`status` int DEFAULT 1 COMMENT '状态(1-正常,2-已修改,3-已作废)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_athlete` (`athlete_id`),
|
||||
KEY `idx_judge` (`judge_id`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评分记录表';
|
||||
|
||||
-- 成绩表(总分汇总)
|
||||
DROP TABLE IF EXISTS `martial_result`;
|
||||
CREATE TABLE `martial_result` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`athlete_id` bigint NOT NULL COMMENT '选手ID',
|
||||
`project_id` bigint DEFAULT NULL COMMENT '项目ID',
|
||||
`venue_id` bigint DEFAULT NULL COMMENT '场地ID',
|
||||
`player_name` varchar(50) DEFAULT NULL COMMENT '选手姓名',
|
||||
`team_name` varchar(100) DEFAULT NULL COMMENT '队伍名称',
|
||||
`total_score` decimal(10,3) DEFAULT NULL COMMENT '总分(所有裁判平均分)',
|
||||
`original_score` decimal(10,3) DEFAULT NULL COMMENT '原始总分',
|
||||
`adjusted_score` decimal(10,3) DEFAULT NULL COMMENT '调整后总分',
|
||||
`adjust_range` decimal(10,3) DEFAULT 0.005 COMMENT '允许调整范围',
|
||||
`adjust_note` varchar(500) DEFAULT NULL COMMENT '调整说明',
|
||||
`ranking` int DEFAULT NULL COMMENT '排名',
|
||||
`medal` int DEFAULT NULL COMMENT '奖牌(1-金牌,2-银牌,3-铜牌)',
|
||||
`is_final` int DEFAULT 0 COMMENT '是否最终成绩(0-否,1-是)',
|
||||
`publish_time` datetime DEFAULT NULL COMMENT '发布时间',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_competition_athlete` (`competition_id`,`athlete_id`,`project_id`),
|
||||
KEY `idx_athlete` (`athlete_id`),
|
||||
KEY `idx_project` (`project_id`),
|
||||
KEY `idx_ranking` (`ranking`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='成绩表';
|
||||
|
||||
-- =====================================================
|
||||
-- 5. 信息发布相关表
|
||||
-- =====================================================
|
||||
|
||||
-- 信息发布表
|
||||
DROP TABLE IF EXISTS `martial_info_publish`;
|
||||
CREATE TABLE `martial_info_publish` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint DEFAULT NULL COMMENT '赛事ID(NULL表示全局)',
|
||||
`title` varchar(200) NOT NULL COMMENT '标题',
|
||||
`info_type` int DEFAULT 1 COMMENT '信息类型(1-通知,2-公告,3-重要)',
|
||||
`content` text COMMENT '内容',
|
||||
`images` varchar(1000) DEFAULT NULL COMMENT '图片(JSON数组)',
|
||||
`publish_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '发布时间',
|
||||
`is_published` int DEFAULT 0 COMMENT '是否已发布(0-未发布,1-已发布)',
|
||||
`sort_order` int DEFAULT 0 COMMENT '排序',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-禁用,1-启用)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_type` (`info_type`),
|
||||
KEY `idx_tenant_status` (`tenant_id`,`status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='信息发布表';
|
||||
|
||||
-- 比赛实况表
|
||||
DROP TABLE IF EXISTS `martial_live_update`;
|
||||
CREATE TABLE `martial_live_update` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`schedule_id` bigint DEFAULT NULL COMMENT '赛程ID',
|
||||
`athlete_id` bigint DEFAULT NULL COMMENT '选手ID',
|
||||
`update_type` int DEFAULT 1 COMMENT '实况类型(1-赛况,2-比分,3-精彩瞬间)',
|
||||
`title` varchar(200) DEFAULT NULL COMMENT '标题',
|
||||
`content` varchar(1000) DEFAULT NULL COMMENT '内容',
|
||||
`images` varchar(1000) DEFAULT NULL COMMENT '图片(JSON数组)',
|
||||
`score_info` varchar(200) DEFAULT NULL COMMENT '比分信息',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`sort_order` int DEFAULT 0 COMMENT '排序',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_competition` (`competition_id`),
|
||||
KEY `idx_schedule` (`schedule_id`),
|
||||
KEY `idx_update_time` (`update_time`),
|
||||
KEY `idx_tenant` (`tenant_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='比赛实况表';
|
||||
|
||||
-- 轮播图表
|
||||
DROP TABLE IF EXISTS `martial_banner`;
|
||||
CREATE TABLE `martial_banner` (
|
||||
`id` bigint NOT NULL COMMENT '主键ID',
|
||||
`title` varchar(200) NOT NULL COMMENT '轮播图标题',
|
||||
`image_url` varchar(500) NOT NULL COMMENT '轮播图图片URL',
|
||||
`link_url` varchar(500) DEFAULT NULL COMMENT '跳转链接',
|
||||
`sort_order` int DEFAULT 0 COMMENT '排序顺序',
|
||||
`status` int DEFAULT 1 COMMENT '状态(0-禁用,1-启用)',
|
||||
`create_user` bigint DEFAULT NULL,
|
||||
`create_dept` bigint DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_user` bigint DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`is_deleted` int DEFAULT 0,
|
||||
`tenant_id` varchar(12) DEFAULT '000000',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_sort` (`sort_order`),
|
||||
KEY `idx_tenant_status` (`tenant_id`,`status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='轮播图表';
|
||||
|
||||
-- =====================================================
|
||||
-- 6. 统计分析相关视图
|
||||
-- =====================================================
|
||||
|
||||
-- 参赛人数统计视图
|
||||
CREATE OR REPLACE VIEW v_martial_participant_stats AS
|
||||
SELECT
|
||||
a.competition_id,
|
||||
a.organization AS school_unit,
|
||||
a.category,
|
||||
COUNT(CASE WHEN p.type = 1 THEN 1 END) AS individual_count,
|
||||
COUNT(CASE WHEN p.type = 2 THEN 1 END) AS dual_count,
|
||||
COUNT(CASE WHEN p.type = 3 THEN 1 END) AS team_count,
|
||||
COUNT(CASE WHEN a.gender = 2 THEN 1 END) AS female_count,
|
||||
COUNT(*) AS total_count
|
||||
FROM martial_athlete a
|
||||
LEFT JOIN martial_project p ON a.project_id = p.id
|
||||
WHERE a.is_deleted = 0
|
||||
GROUP BY a.competition_id, a.organization, a.category;
|
||||
|
||||
-- 项目时间统计视图
|
||||
CREATE OR REPLACE VIEW v_martial_project_time_stats AS
|
||||
SELECT
|
||||
p.competition_id,
|
||||
p.project_name,
|
||||
a.category AS participant_category,
|
||||
COUNT(DISTINCT a.team_name) AS team_count,
|
||||
COUNT(*) AS participant_count,
|
||||
p.estimated_duration,
|
||||
(COUNT(DISTINCT a.team_name) * p.estimated_duration) AS total_estimated_duration
|
||||
FROM martial_project p
|
||||
LEFT JOIN martial_athlete a ON p.id = a.project_id AND a.is_deleted = 0
|
||||
WHERE p.is_deleted = 0
|
||||
GROUP BY p.competition_id, p.id, p.project_name, a.category;
|
||||
|
||||
-- 金额统计视图
|
||||
CREATE OR REPLACE VIEW v_martial_amount_stats AS
|
||||
SELECT
|
||||
o.competition_id,
|
||||
a.organization AS school_unit,
|
||||
COUNT(DISTINCT a.project_id) AS project_count,
|
||||
SUM(p.price) AS total_amount
|
||||
FROM martial_registration_order o
|
||||
INNER JOIN martial_athlete a ON o.id = a.order_id AND a.is_deleted = 0
|
||||
LEFT JOIN martial_project p ON a.project_id = p.id AND p.is_deleted = 0
|
||||
WHERE o.is_deleted = 0 AND o.status = 1
|
||||
GROUP BY o.competition_id, a.organization;
|
||||
|
||||
-- =====================================================
|
||||
-- 7. 初始化基础数据
|
||||
-- =====================================================
|
||||
|
||||
-- 插入默认扣分项
|
||||
INSERT INTO `martial_deduction_item` (`id`, `item_name`, `deduction_point`, `category`, `sort_order`, `tenant_id`) VALUES
|
||||
(1, '动作不规范', 0.100, '技术动作', 1, '000000'),
|
||||
(2, '节奏失误', 0.050, '技术动作', 2, '000000'),
|
||||
(3, '器械掉落', 0.200, '器械使用', 3, '000000'),
|
||||
(4, '出界', 0.100, '场地规则', 4, '000000'),
|
||||
(5, '超时', 0.100, '时间规则', 5, '000000'),
|
||||
(6, '服装不符', 0.050, '着装要求', 6, '000000'),
|
||||
(7, '礼仪不当', 0.050, '行为规范', 7, '000000'),
|
||||
(8, '其他违规', 0.100, '其他', 8, '000000');
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
||||
|
||||
-- =====================================================
|
||||
-- 索引优化说明
|
||||
-- =====================================================
|
||||
-- 1. 所有表都添加了 tenant_id 索引,支持多租户查询
|
||||
-- 2. 外键字段都添加了索引,提高关联查询性能
|
||||
-- 3. 常用查询字段添加了组合索引
|
||||
-- 4. 时间字段添加了索引,支持按时间范围查询
|
||||
-- 5. 状态字段添加了组合索引,支持状态过滤
|
||||
|
||||
-- =====================================================
|
||||
-- 数据完整性说明
|
||||
-- =====================================================
|
||||
-- 1. 所有主表都包含 BladeX 标准字段(create_user, create_dept, create_time, update_user, update_time, is_deleted, tenant_id)
|
||||
-- 2. 支持逻辑删除(is_deleted)
|
||||
-- 3. 支持多租户(tenant_id)
|
||||
-- 4. 所有decimal字段使用3位小数精度,满足评分需求
|
||||
-- 5. 使用datetime类型存储时间,支持精确到秒的时间记录
|
||||
@@ -1,245 +0,0 @@
|
||||
-- =====================================================
|
||||
-- 武术比赛管理系统 - 模拟测试数据
|
||||
-- Database: martial_db
|
||||
-- Author: Claude Code
|
||||
-- Date: 2025-11-29
|
||||
-- =====================================================
|
||||
|
||||
USE martial_db;
|
||||
|
||||
-- 清空现有测试数据(保留扣分项配置)
|
||||
DELETE FROM martial_score WHERE id > 0;
|
||||
DELETE FROM martial_result WHERE id > 0;
|
||||
DELETE FROM martial_schedule_athlete WHERE id > 0;
|
||||
DELETE FROM martial_schedule WHERE id > 0;
|
||||
DELETE FROM martial_judge_invite WHERE id > 0;
|
||||
DELETE FROM martial_judge WHERE id > 0;
|
||||
DELETE FROM martial_athlete WHERE id > 0;
|
||||
DELETE FROM martial_registration_order WHERE id > 0;
|
||||
DELETE FROM martial_live_update WHERE id > 0;
|
||||
DELETE FROM martial_info_publish WHERE id > 0;
|
||||
DELETE FROM martial_activity_schedule WHERE id > 0;
|
||||
DELETE FROM martial_venue WHERE id > 0;
|
||||
DELETE FROM martial_project WHERE id > 0;
|
||||
DELETE FROM martial_competition WHERE id > 0;
|
||||
DELETE FROM martial_banner WHERE id > 0;
|
||||
|
||||
-- =====================================================
|
||||
-- 1. 插入赛事数据
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_competition` VALUES
|
||||
(1, '2025年全国武术散打锦标赛暨第十七届世界武术锦标赛选拔赛',
|
||||
'WS2025001',
|
||||
'国家体育总局武术运动管理中心',
|
||||
'北京市',
|
||||
'北京市朝阳区国家奥林匹克体育中心',
|
||||
'2025-01-01 00:00:00',
|
||||
'2025-02-20 23:59:59',
|
||||
'2025-06-25 08:00:00',
|
||||
'2025-06-27 18:00:00',
|
||||
'本次比赛旨在选拔优秀武术运动员参加第十七届世界武术锦标赛,展示中华武术精神,传承优秀传统文化。',
|
||||
'["https://example.com/poster1.jpg","https://example.com/poster2.jpg"]',
|
||||
'张教练',
|
||||
'13800138000',
|
||||
'wushu2025@example.com',
|
||||
'按照国家武术运动管理中心最新竞赛规则执行',
|
||||
'年龄18-35岁,持有运动员等级证书,身体健康',
|
||||
'金牌、银牌、铜牌及优秀奖',
|
||||
'["https://example.com/regulation.pdf"]',
|
||||
156,
|
||||
78000.00,
|
||||
2,
|
||||
1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 2. 插入场地数据
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_venue` VALUES
|
||||
(1, 1, '第一场地', 'VENUE-001', '主竞技馆1号场地', 500, '标准武术竞技场地,配备LED屏幕、音响设备', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, '第二场地', 'VENUE-002', '主竞技馆2号场地', 500, '标准武术竞技场地,配备LED屏幕、音响设备', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, '第三场地', 'VENUE-003', '训练馆3号场地', 300, '训练场地,配备基础设施', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, 1, '第四场地', 'VENUE-004', '训练馆4号场地', 300, '训练场地,配备基础设施', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(5, 1, '第五场地', 'VENUE-005', '备用场地', 200, '备用竞技场地', 1, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 3. 插入比赛项目数据
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_project` VALUES
|
||||
(1, 1, '男子组陈氏太极拳', 'PRJ-001', '男子组', 1, 1, 1, 5, 100.00, '传统陈氏太极拳套路', 1, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, '女子组长拳', 'PRJ-002', '女子组', 1, 1, 1, 5, 100.00, '长拳基本套路', 2, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, '女子组双剑(含长穗双剑)', 'PRJ-003', '女子组', 2, 2, 2, 6, 200.00, '双剑配合演练', 3, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, 1, '男子组杨氏太极拳', 'PRJ-004', '男子组', 1, 1, 1, 5, 100.00, '杨氏太极拳套路', 4, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(5, 1, '女子组刀术', 'PRJ-005', '女子组', 1, 1, 1, 4, 100.00, '传统刀术', 5, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(6, 1, '男子组棍术', 'PRJ-006', '男子组', 1, 1, 1, 4, 100.00, '传统棍术', 6, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(7, 1, '女子组枪术', 'PRJ-007', '女子组', 1, 1, 1, 4, 100.00, '传统枪术', 7, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(8, 1, '男子组剑术', 'PRJ-008', '男子组', 1, 1, 1, 4, 100.00, '传统剑术', 8, 1, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 4. 插入裁判数据
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_judge` VALUES
|
||||
(1, '欧阳丽娜', 2, '13900000001', '110101198501011234', 1, '国家一级裁判', '太极拳,长拳', NULL, '主裁判', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, '张三', 1, '13900000002', '110101198502021234', 2, '国家二级裁判', '刀剑术', NULL, '普通裁判', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, '李四', 1, '13900000003', '110101198503031234', 2, '国家二级裁判', '棍术', NULL, '普通裁判', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, '王五', 2, '13900000004', '110101198504041234', 2, '国家二级裁判', '枪术', NULL, '普通裁判', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(5, '赵六', 1, '13900000005', '110101198505051234', 2, '国家三级裁判', '长拳', NULL, '普通裁判', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(6, '陈七', 2, '13900000006', '110101198506061234', 2, '国家三级裁判', '太极拳', NULL, '普通裁判', 1, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 5. 插入裁判邀请码
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_judge_invite` VALUES
|
||||
(1, 1, 1, 'admin', 'chief_judge', NULL, NULL, '2025-06-30 23:59:59', 1, '2025-06-25 08:00:00', 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, 2, 'pub', 'judge', 1, '["男子组陈氏太极拳","男子组杨氏太极拳"]', '2025-06-30 23:59:59', 1, '2025-06-25 08:15:00', 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, 3, 'pub001', 'judge', 1, '["女子组长拳","女子组刀术"]', '2025-06-30 23:59:59', 0, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, 1, 4, 'pub002', 'judge', 2, '["女子组双剑","女子组枪术"]', '2025-06-30 23:59:59', 0, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(5, 1, 5, 'pub003', 'judge', 2, '["男子组棍术","男子组剑术"]', '2025-06-30 23:59:59', 0, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(6, 1, 6, 'pub004', 'judge', 3, '["女子组长拳","男子组陈氏太极拳"]', '2025-06-30 23:59:59', 0, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 6. 插入报名订单数据
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_registration_order` VALUES
|
||||
(1, 'ORD202506250001', 1, 1001, '用户A', '张教练', '13800001111', '少林寺武术大学院', 26, 2600.00, 2600.00, 1, '2025-01-15 10:30:00', 1, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 'ORD202506250002', 1, 1002, '用户B', '李老师', '13800002222', '北京体育大学', 15, 1500.00, 1500.00, 2, '2025-01-20 14:20:00', 1, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 'ORD202506250003', 1, 1003, '用户C', '王队长', '13800003333', '上海武术协会', 20, 2200.00, 2200.00, 1, '2025-02-01 09:15:00', 1, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, 'ORD202506250004', 1, 1004, '用户D', '赵主任', '13800004444', '武当山武术学校', 18, 1900.00, 1900.00, 3, '2025-02-10 16:45:00', 1, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 7. 插入参赛选手数据(每个订单多名选手)
|
||||
-- =====================================================
|
||||
-- 订单1的选手(少林寺武术大学院 - 26人)
|
||||
INSERT INTO `martial_athlete` VALUES
|
||||
(1, 1, 1, 1, '张三丰', '123-4567898275', 1, 25, '110101199901011111', '13911111111', '少林寺武术大学院', '少林A队', '男子组', 1, '擅长陈氏太极拳', NULL, NULL, 1, 2, 8.907, 1, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, 1, 1, '李天龙', '123-4567898276', 1, 23, '110101200001021111', '13911111112', '少林寺武术大学院', '少林A队', '男子组', 2, NULL, NULL, NULL, 1, 0, NULL, NULL, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, 1, 2, '王小红', '123-4567898277', 2, 22, '110101200101031111', '13911111113', '少林寺武术大学院', '少林B队', '女子组', 1, NULL, NULL, NULL, 1, 0, NULL, NULL, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, 1, 1, 2, '赵美丽', '123-4567898278', 2, 24, '110101199901041111', '13911111114', '少林寺武术大学院', '少林B队', '女子组', 2, NULL, NULL, NULL, 1, 0, NULL, NULL, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(5, 1, 1, 5, '孙燕子', '123-4567898279', 2, 21, '110101200201051111', '13911111115', '少林寺武术大学院', '少林C队', '女子组', 1, NULL, NULL, NULL, 1, 0, NULL, NULL, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- 继续插入更多选手(模拟26人,这里简化只插入关键数据)
|
||||
INSERT INTO `martial_athlete` (id, order_id, competition_id, project_id, player_name, player_no, gender, age, id_card, contact_phone, organization, team_name, category, order_num, registration_status, competition_status, tenant_id)
|
||||
SELECT
|
||||
5 + n, 1, 1,
|
||||
CASE (n % 4) WHEN 0 THEN 1 WHEN 1 THEN 2 WHEN 2 THEN 4 ELSE 6 END,
|
||||
CONCAT('选手', LPAD(n, 2, '0')),
|
||||
CONCAT('123-456789', LPAD(8280 + n, 4, '0')),
|
||||
((n % 2) + 1),
|
||||
18 + (n % 15),
|
||||
CONCAT('11010119', 1995 + (n % 10), LPAD((n % 12) + 1, 2, '0'), LPAD((n % 28) + 1, 2, '0'), LPAD(1111 + n, 4, '0')),
|
||||
CONCAT('139111111', LPAD(16 + n, 2, '0')),
|
||||
'少林寺武术大学院',
|
||||
CONCAT('少林', CHAR(65 + (n % 5)), '队'),
|
||||
CASE ((n % 2) + 1) WHEN 1 THEN '男子组' ELSE '女子组' END,
|
||||
n + 1,
|
||||
1, 0, '000000'
|
||||
FROM (
|
||||
SELECT @row := @row + 1 AS n
|
||||
FROM (SELECT 0 UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t1,
|
||||
(SELECT 0 UNION SELECT 1 UNION SELECT 2) t2,
|
||||
(SELECT @row := 0) r
|
||||
LIMIT 21
|
||||
) numbers;
|
||||
|
||||
-- 订单2的选手(北京体育大学 - 15人)
|
||||
INSERT INTO `martial_athlete` (id, order_id, competition_id, project_id, player_name, player_no, gender, age, id_card, contact_phone, organization, team_name, category, order_num, registration_status, competition_status, tenant_id)
|
||||
SELECT
|
||||
100 + n, 2, 1,
|
||||
CASE (n % 4) WHEN 0 THEN 1 WHEN 1 THEN 3 WHEN 2 THEN 5 ELSE 7 END,
|
||||
CONCAT('北体选手', LPAD(n, 2, '0')),
|
||||
CONCAT('223-456789', LPAD(8300 + n, 4, '0')),
|
||||
((n % 2) + 1),
|
||||
19 + (n % 12),
|
||||
CONCAT('11010220', 1996 + (n % 8), LPAD((n % 12) + 1, 2, '0'), LPAD((n % 28) + 1, 2, '0'), LPAD(2222 + n, 4, '0')),
|
||||
CONCAT('139222222', LPAD(10 + n, 2, '0')),
|
||||
'北京体育大学',
|
||||
CONCAT('北体', CHAR(65 + (n % 3)), '队'),
|
||||
CASE ((n % 2) + 1) WHEN 1 THEN '男子组' ELSE '女子组' END,
|
||||
n + 1,
|
||||
1, 0, '000000'
|
||||
FROM (
|
||||
SELECT @row2 := @row2 + 1 AS n
|
||||
FROM (SELECT 0 UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) t1,
|
||||
(SELECT 0 UNION SELECT 1) t2,
|
||||
(SELECT @row2 := 0) r
|
||||
LIMIT 15
|
||||
) numbers;
|
||||
|
||||
-- =====================================================
|
||||
-- 8. 插入赛程编排数据
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_schedule` VALUES
|
||||
(1, 1, 1, '男子组陈氏太极拳 - 上午场', 'SCH-001', 1, 1, 1, '2025-06-25', '上午 9:00-12:00', '2025-06-25 09:00:00', '2025-06-25 12:00:00', 10, 150, 1, 1, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, 1, '女子组长拳 - 上午场', 'SCH-002', 1, 2, 2, '2025-06-25', '上午 9:00-12:00', '2025-06-25 09:00:00', '2025-06-25 12:00:00', 8, 120, 1, 0, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, 1, '男子组杨氏太极拳 - 下午场', 'SCH-003', 1, 1, 4, '2025-06-25', '下午 14:00-17:00', '2025-06-25 14:00:00', '2025-06-25 17:00:00', 8, 120, 1, 0, NULL, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 9. 插入评分数据(张三丰的6位裁判评分)
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_score` VALUES
|
||||
(1, 1, 1, 1, 1, 1, '欧阳丽娜', 8.907, '[3,6,7]', '动作流畅,但节奏稍有失误', '2025-06-25 10:15:00', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, 1, 1, 1, 2, '张三', 8.901, '[3]', '整体表现良好', '2025-06-25 10:15:30', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, 1, 1, 1, 3, '李四', 8.902, '[]', '动作规范', '2025-06-25 10:16:00', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, 1, 1, 1, 1, 4, '王五', 8.907, '[7]', '精神面貌好', '2025-06-25 10:16:30', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(5, 1, 1, 1, 1, 5, '赵六', 8.905, '[1]', '表现出色', '2025-06-25 10:17:00', 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(6, 1, 1, 1, 1, 6, '陈七', 8.904, '[]', '动作标准', '2025-06-25 10:17:30', 1, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 10. 插入成绩数据
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_result` VALUES
|
||||
(1, 1, 1, 1, 1, '张三丰', '少林A队', 8.907, 8.904, 8.907, 0.005, NULL, 1, 1, 1, '2025-06-25 10:20:00', 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 11. 插入活动日程
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_activity_schedule` VALUES
|
||||
(1, 1, '2025-06-25', '08:00:00', '签到注册', '主会场大厅', '参赛队伍签到,领取参赛证', NULL, 1, 2, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, '2025-06-25', '09:00:00', '开幕式', '主竞技馆', '赛事开幕仪式', NULL, 2, 2, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, '2025-06-25', '10:00:00', '预赛第一轮', '第一/二场地', '男子组陈氏太极拳、女子组长拳预赛', NULL, 3, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(4, 1, '2025-06-25', '14:00:00', '预赛第二轮', '第一/二场地', '其他项目预赛', NULL, 4, 0, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(5, 1, '2025-06-26', '09:00:00', '半决赛', '第一/二/三场地', '各项目半决赛', NULL, 5, 0, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(6, 1, '2025-06-26', '14:00:00', '决赛', '主竞技馆', '各项目决赛', NULL, 6, 0, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(7, 1, '2025-06-27', '10:00:00', '颁奖典礼', '主竞技馆', '颁发金银铜牌', NULL, 7, 0, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(8, 1, '2025-06-27', '11:30:00', '闭幕式', '主竞技馆', '赛事闭幕仪式', NULL, 8, 0, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 12. 插入信息发布
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_info_publish` VALUES
|
||||
(1, 1, '报名截止时间通知', 1, '请各参赛队伍注意,报名将于2025年2月20日23:59:59截止,请尽快完成报名。', NULL, '2025-01-10 10:00:00', 1, 1, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, 1, '场地变更公告', 2, '由于天气原因,部分项目场地有所调整,请关注最新通知。', NULL, '2025-06-20 15:00:00', 1, 2, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, 1, '疫情防控须知', 3, '请所有参赛人员配合做好疫情防控工作,进场需出示健康码和行程卡。', NULL, '2025-06-23 09:00:00', 1, 3, 1, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 13. 插入比赛实况
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_live_update` VALUES
|
||||
(1, 1, 1, 1, 3, '精彩瞬间', '选手张三丰完成了一套流畅的陈氏太极拳,赢得现场观众热烈掌声!', '["https://example.com/live1.jpg"]', NULL, '2025-06-25 10:18:00', 1, 1, 1, NOW(), 1, 0, '000000'),
|
||||
(2, 1, 1, 1, 2, '比分更新', '张三丰 - 男子组陈氏太极拳', NULL, '8.907分', '2025-06-25 10:20:00', 2, 1, 1, NOW(), 1, 0, '000000'),
|
||||
(3, 1, 1, NULL, 1, '赛况播报', '上午场比赛进行顺利,目前已完成10名选手的比赛。', NULL, NULL, '2025-06-25 11:00:00', 3, 1, 1, NOW(), 1, 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 14. 插入轮播图
|
||||
-- =====================================================
|
||||
INSERT INTO `martial_banner` VALUES
|
||||
(1, '2025武术锦标赛盛大开幕', 'https://example.com/banner1.jpg', '/competition/detail/1', 1, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(2, '报名火热进行中', 'https://example.com/banner2.jpg', '/competition/register/1', 2, 1, 1, 1, NOW(), 1, NOW(), 0, '000000'),
|
||||
(3, '往届精彩回顾', 'https://example.com/banner3.jpg', '/competition/history', 3, 1, 1, 1, NOW(), 1, NOW(), 0, '000000');
|
||||
|
||||
-- =====================================================
|
||||
-- 验证数据
|
||||
-- =====================================================
|
||||
SELECT '=== 数据插入完成 ===' AS status;
|
||||
SELECT '赛事数据:', COUNT(*) FROM martial_competition;
|
||||
SELECT '项目数据:', COUNT(*) FROM martial_project;
|
||||
SELECT '场地数据:', COUNT(*) FROM martial_venue;
|
||||
SELECT '裁判数据:', COUNT(*) FROM martial_judge;
|
||||
SELECT '订单数据:', COUNT(*) FROM martial_registration_order;
|
||||
SELECT '选手数据:', COUNT(*) FROM martial_athlete;
|
||||
SELECT '赛程数据:', COUNT(*) FROM martial_schedule;
|
||||
SELECT '评分数据:', COUNT(*) FROM martial_score;
|
||||
SELECT '成绩数据:', COUNT(*) FROM martial_result;
|
||||
SELECT '活动日程:', COUNT(*) FROM martial_activity_schedule;
|
||||
SELECT '信息发布:', COUNT(*) FROM martial_info_publish;
|
||||
SELECT '比赛实况:', COUNT(*) FROM martial_live_update;
|
||||
SELECT '轮播图:', COUNT(*) FROM martial_banner;
|
||||
@@ -1,91 +0,0 @@
|
||||
-- ============================================
|
||||
-- 初始化裁判-项目关联数据
|
||||
-- 用于解决"您没有权限给该项目打分"的问题
|
||||
-- ============================================
|
||||
|
||||
-- 说明:
|
||||
-- 1. 这个脚本会为所有裁判分配所有项目的评分权限
|
||||
-- 2. 如果需要更精细的权限控制,请根据实际情况修改
|
||||
-- 3. 执行前请确保 martial_judge 和 martial_project 表中已有数据
|
||||
|
||||
-- 清空现有的裁判-项目关联(可选)
|
||||
-- TRUNCATE TABLE martial_judge_project;
|
||||
|
||||
-- 方案1:为所有裁判分配所有项目(适用于测试环境)
|
||||
INSERT INTO martial_judge_project (
|
||||
competition_id,
|
||||
judge_id,
|
||||
project_id,
|
||||
assign_time,
|
||||
status,
|
||||
is_deleted,
|
||||
create_time,
|
||||
update_time
|
||||
)
|
||||
SELECT
|
||||
j.competition_id,
|
||||
j.id AS judge_id,
|
||||
p.id AS project_id,
|
||||
NOW() AS assign_time,
|
||||
1 AS status,
|
||||
0 AS is_deleted,
|
||||
NOW() AS create_time,
|
||||
NOW() AS update_time
|
||||
FROM martial_judge j
|
||||
CROSS JOIN martial_project p
|
||||
WHERE j.is_deleted = 0
|
||||
AND p.is_deleted = 0
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM martial_judge_project jp
|
||||
WHERE jp.judge_id = j.id
|
||||
AND jp.project_id = p.id
|
||||
AND jp.is_deleted = 0
|
||||
);
|
||||
|
||||
-- 方案2:为特定裁判分配特定项目(适用于生产环境)
|
||||
-- 示例:为裁判ID=456分配项目ID=5的权限
|
||||
/*
|
||||
INSERT INTO martial_judge_project (
|
||||
competition_id,
|
||||
judge_id,
|
||||
project_id,
|
||||
assign_time,
|
||||
status,
|
||||
is_deleted,
|
||||
create_time,
|
||||
update_time
|
||||
) VALUES (
|
||||
200, -- 比赛ID
|
||||
456, -- 裁判ID
|
||||
5, -- 项目ID
|
||||
NOW(),
|
||||
1,
|
||||
0,
|
||||
NOW(),
|
||||
NOW()
|
||||
);
|
||||
*/
|
||||
|
||||
-- 验证数据
|
||||
SELECT
|
||||
jp.id,
|
||||
j.name AS judge_name,
|
||||
p.project_name,
|
||||
jp.status,
|
||||
jp.assign_time
|
||||
FROM martial_judge_project jp
|
||||
LEFT JOIN martial_judge j ON jp.judge_id = j.id
|
||||
LEFT JOIN martial_project p ON jp.project_id = p.id
|
||||
WHERE jp.is_deleted = 0
|
||||
ORDER BY jp.judge_id, jp.project_id;
|
||||
|
||||
-- 查看每个裁判分配的项目数量
|
||||
SELECT
|
||||
j.id AS judge_id,
|
||||
j.name AS judge_name,
|
||||
COUNT(jp.id) AS project_count
|
||||
FROM martial_judge j
|
||||
LEFT JOIN martial_judge_project jp ON j.id = jp.judge_id AND jp.is_deleted = 0
|
||||
WHERE j.is_deleted = 0
|
||||
GROUP BY j.id, j.name
|
||||
ORDER BY j.id;
|
||||
@@ -0,0 +1,23 @@
|
||||
-- =====================================================
|
||||
-- Migration: Create legacy mt_venue table for mini module compatibility
|
||||
-- Version: V10
|
||||
-- Description: Add mt_venue table if not exists
|
||||
-- Date: 2026-02-15
|
||||
-- =====================================================
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `mt_venue` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||||
`competition_id` bigint NOT NULL COMMENT '赛事ID',
|
||||
`venue_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '场地名称',
|
||||
`venue_no` int NOT NULL COMMENT '场地编号',
|
||||
`status` int DEFAULT '1' COMMENT '场地状态:1-正常,2-维护中',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
`is_deleted` tinyint DEFAULT '0' COMMENT '是否删除:0-否,1-是',
|
||||
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `idx_competition_id` (`competition_id`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='场地表';
|
||||
Reference in New Issue
Block a user