# ticket **Repository Path**: andy150/ticket ## Basic Information - **Project Name**: ticket - **Description**: 可配置的工单流程引擎是一个现代化的企业级应用,旨在提供一个完整的工单解决方案。系统允许管理员通过直观的所见即所得界面设计工单表单和审批流程,无需编程即可实现复杂的业务需求。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-03-01 - **Last Updated**: 2026-04-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 深度可配置的工单流程引擎 这是一个功能强大的工单管理系统,作为深度可配置的工单流程引擎,系统核心能力在于其高度的自定义性:通过所见即所得的前台界面,管理员可自由创建工单模板(定义字段类型、布局),并拖拽式设计审批流程(节点、条件、会签/或签等)。支持复杂业务场景下的动态表单与柔性流程调整,是组织流程数字化转型的利器。 ## 项目简介 可配置的工单流程引擎是一个现代化的企业级应用,旨在提供一个完整的工单解决方案。系统允许管理员通过直观的所见即所得界面设计工单表单和审批流程,无需编程即可实现复杂的业务需求。 ### 核心特点 - **所见即所得表单设计**: 通过可视化界面自由创建工单模板,定义字段类型和布局 - **拖拽式流程引擎**: 可视化拖拽方式设计审批流程,支持节点、条件、会签/或签等复杂逻辑 - **深度自定义能力**: 管理员可以完全自定义工单表单和审批流程 - **柔性流程调整**: 支持动态表单与柔性流程调整,适应复杂业务场景 - **灵活的权限控制**: 精细化的用户角色和权限管理 - **实时协作**: 多用户协同处理工单 - **数据驱动决策**: 提供详细的数据统计和分析报告 ![输入图片说明](docs/b3246683953787ca6bfd7bbc9870f37b.jpg) ![输入图片说明](docs/7669f641a00b21f4a80a1eecea8bb7d1.jpg) ![输入图片说明](docs/7316572ca5f436ae267f066e2c72247c.jpg) ![输入图片说明](docs/653def5cbf21ae05375fa9d1beaa588a.jpg) ## 项目结构 ``` ticket/ ├── ticket-server/ # 后端服务 (Spring Boot) └── ticket-ui/ # 前端管理界面 (Vue.js) ``` ## 技术栈 ### 后端 (ticket-server) - **框架**: Spring Boot - **数据库**: MySQL - **ORM**: MyBatis-Plus - **工具库**: Hutool, Lombok, FastJSON - **工作流**: Flowable - **文档**: Swagger - **构建工具**: Maven ### 前端 (ticket-ui) - **框架**: Vue.js - **UI 库**: Element UI - **构建工具**: Webpack (通过 Vue CLI) - **HTTP 客户端**: Axios ## 功能特性 ### 系统核心功能 - **动态表单创建**: 通过所见即所得界面自由创建工单模板 - **字段类型定义**: 支持多种字段类型(文本、数字、日期、选择框等) - **布局自定义**: 灵活调整表单字段布局和显示方式 - **拖拽式流程设计**: 直观的界面设计审批流程,支持复杂业务逻辑 - **审批节点控制**: 支持会签/或签、条件判断等高级审批模式 - **权限管理**: 细粒度的角色和权限控制 - **数据统计**: 工单处理情况统计和分析 ### 后端特性 - 用户认证与权限控制 - 工单业务逻辑处理 - 工作流程管理 (Flowable) - 数据持久化 (MySQL) - API 文档 (Swagger) - 输入验证与错误处理 ### 前端特性 - 响应式管理后台界面 - 所见即所得表单设计器 - 可视化流程编辑器 - 实时数据展示 - 表单验证与提交 - 路由权限控制 ## 快速开始 ### 环境要求 - **后端** - JDK 1.8+ - Maven 3.6+ - MySQL 5.7+ - **前端** - Node.js 12+ - npm 或 yarn ### 后端启动步骤 1. 创建数据库并导入初始数据 ```bash # 创建数据库 CREATE DATABASE ticket CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 2. 修改数据库连接配置 ```bash # 编辑 application-local.yml 文件中的数据库连接信息 spring.datasource.url=jdbc:mysql://localhost:3306/ticket spring.datasource.username=your_username spring.datasource.password=your_password ``` 3. 构建并运行项目 ```bash cd ticket-server mvn clean install mvn spring-boot:run ``` ### 前端启动步骤 1. 安装依赖 ```bash cd ticket-ui npm install ``` 2. 启动开发服务器 ```bash npm run dev ``` 3. 访问应用 打开浏览器访问 `http://localhost:9528` ## 配置说明 ### 后端配置 - `application-local.yml`: 本地开发环境配置 - `application-dev.yml`: 开发环境配置 - `application-prod.yml`: 生产环境配置 ### 前端配置 - `.env.development`: 开发环境变量 - `.env.production`: 生产环境变量 - `vue.config.js`: Webpack 配置 ## API 接口 后端提供 RESTful API 服务,接口文档可通过 Swagger 查看: - 本地环境: http://localhost:8080/swagger-ui.html ## 部署 ### 后端部署 ```bash # 打包 mvn clean package # 运行 JAR 包 java -jar ares-ticket.jar --spring.profiles.active=prod ``` ### 前端部署 ```bash # 构建生产版本 npm run build:prod # 部署到 Web 服务器 (如 Nginx) ``` ## 开发规范 - 代码风格遵循团队编码规范 - 提交信息使用约定式提交格式 - 功能分支命名规则: `feature/功能名`、`bugfix/问题描述` - 所有功能需经过测试后方可合并 ## 项目维护 - **后端负责人**: [在此处添加负责人] - **前端负责人**: [在此处添加负责人] - **文档维护**: [在此处添加负责人] ## 许可证 本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件 ## 支持 如遇到问题,请: 1. 检查 FAQ 文档 2. 提交 Issue 3. 联系项目维护者