# air-ticket **Repository Path**: MajorLkl/air-ticket ## Basic Information - **Project Name**: air-ticket - **Description**: 分机票项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-22 - **Last Updated**: 2025-07-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 项目目录说明 * doc目录存放第三方接口文档、说明文档等 * design目录存放系统架构设计、业务流程设计等 * [air-ticket-ui](air-ticket-ui)为系统管理前端页面,使用arco-design-pro构建 * [air-ticket-server](air-ticket-server)目录为后端业务实现,以及对应air-ticket-ui的前端接口实现 ### 项目技术栈分析 #### 前端技术栈 (air-ticket-ui) * **基础框架**: Vue 3.5.4 + TypeScript * **构建工具**: Vite 5.1.5 * **UI组件库**: Arco Design Vue 2.57.0 * **状态管理**: Pinia 2.0.16 + pinia-plugin-persistedstate * **路由管理**: Vue Router 4.2.2 * **工具库**: - VueUse 10.5.0 (Vue组合式API工具集) - Lodash-es 4.17.21 (JavaScript工具库) - Day.js 1.11.4 (日期处理) - Axios 0.27.2 (HTTP请求) * **开发工具**: ESLint + Prettier (代码规范) * **特色功能**: - 富文本编辑器 (@wangeditor/editor) - 图表组件 (ECharts 5.4.2) - 代码编辑器 (CodeMirror 6.0.1) - 拖拽排序 (Sortable.js) - Mock数据支持 #### 后端技术栈 (air-ticket-server) * **基础框架**: Spring Boot 3.5.3 * **Java版本**: JDK 17 * **ORM框架**: MyBatis-Plus 3.5.5 * **数据库**: MySQL (mysql-connector-j) * **数据库版本管理**: Liquibase * **权限认证**: Sa-Token 1.38.0 * **缓存**: Redis (Spring Data Redis) * **构建工具**: Maven * **项目结构**: 标准Spring Boot项目结构 #### 系统管理模块设计 ##### 数据库表结构 * **sys_user**: 用户表 - 存储用户基本信息、状态、部门关联等 * **sys_role**: 角色表 - 存储角色信息和权限配置 * **sys_dept**: 部门表 - 树形结构存储组织架构 * **sys_menu**: 菜单表 - 树形结构存储系统菜单和权限 * **sys_dict**: 字典表 - 存储系统字典类型 * **sys_dict_data**: 字典数据表 - 存储具体字典值 * **sys_user_role**: 用户角色关联表 * **sys_role_menu**: 角色菜单权限关联表 ##### 接口设计 * **认证模块**: `/api/auth` - 支持登录、登出、用户信息获取 * **用户管理**: `/api/system/user` - 支持分页查询、新增、编辑、删除、批量操作 * **角色管理**: `/api/system/role` - 支持分页查询、权限分配、角色管理 * **部门管理**: `/api/system/dept` - 支持树形结构查询、部门层级管理 * **菜单管理**: `/api/system/menu` - 支持树形菜单管理、权限配置 * **字典管理**: `/api/system/dict` - 支持字典类型和数据管理 * **用户账户**: `/api/system/account` - 支持个人信息管理 ##### 技术特点 * **Sa-Token**: 轻量级权限认证框架,支持登录认证、权限授权、Session会话管理 * **Redis缓存**: 使用Redis存储用户会话和Token信息 * **MyBatis-Plus**: 提供强大的CRUD操作和分页功能 * **Liquibase**: 数据库版本控制,支持多环境部署 * **自动填充**: 创建时间和更新时间自动管理 * **统一返回**: 标准化API响应格式 * **分页查询**: 内置分页插件支持 * **条件查询**: 灵活的查询条件构建 * **跨域支持**: 配置了CORS支持前后端分离开发 #### 项目特点 1. **现代化技术栈**: 采用Vue3 + Spring Boot 3的最新技术组合 2. **完整的前后端分离架构**: 前端基于成熟的Arco Design Pro框架 3. **丰富的UI组件**: 包含表格、表单、图表、编辑器等完整的管理系统组件 4. **开发友好**: 配置了完整的开发环境和代码规范工具 5. **可扩展性强**: 基于开源框架,便于后续功能扩展和定制 6. **数据库版本管理**: 使用Liquibase进行数据库结构版本控制 #### 开发建议 * 前端页面开发可充分利用air-ticket-ui中已有的组件和样式 * 遵循项目既定的代码规范和目录结构 * 利用Mock功能进行前端独立开发和测试 * 后端开发遵循MyBatis-Plus最佳实践 * 数据库变更通过Liquibase管理,确保多环境一致性