# Maintenance **Repository Path**: chenshanji/maintenance ## Basic Information - **Project Name**: Maintenance - **Description**: 维修单打印工具 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-14 - **Last Updated**: 2025-12-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 维修单打印工具 基于Vue 3和ArcoVue组件库开发的维修单打印工具,支持数据管理、编号生成、二维码生成和打印功能。 ## 功能特性 - ✅ **维修单管理**: 填写日期、店铺、工厂、客户账号、备注信息 - ✅ **编号生成**: 自动生成格式为"月份日期+前缀+序号"的编号(如:1010修01) - ✅ **二维码生成**: 为客户账号和编号生成二维码 - ✅ **数据管理**: 店铺和工厂的增删改查功能 - ✅ **前缀设置**: 可自定义编号中的前缀字符 - ✅ **打印功能**: 优化的打印样式和设置 - ✅ **悬浮按钮**: 便捷的管理功能入口 ## 技术栈 ### 前端 - Vue 3 (Composition API) - ArcoVue 组件库 - Vite 构建工具 - Axios HTTP客户端 - QRCode.js 二维码生成 ### 后端 - Node.js + Express - MySQL2 数据库驱动 - Moment.js 日期处理 - CORS 跨域支持 ## 项目结构 ``` h:/maintenance/ ├── src/ # 前端源码 │ ├── components/ # Vue组件 │ │ ├── MaintenanceForm.vue # 主表单组件 │ │ ├── FloatingButton.vue # 悬浮按钮 │ │ ├── StoreManager.vue # 店铺管理 │ │ ├── FactoryManager.vue # 工厂管理 │ │ └── PrefixManager.vue # 前缀设置 │ ├── utils/ # 工具函数 │ │ └── api.js # API请求封装 │ ├── styles/ # 样式文件 │ │ └── global.scss # 全局样式 │ ├── App.vue # 根组件 │ └── main.js # 入口文件 ├── server/ # 后端源码 │ ├── config/ # 配置文件 │ │ └── database.js # 数据库配置 │ ├── models/ # 数据模型 │ │ ├── storeModel.js # 店铺模型 │ │ ├── factoryModel.js # 工厂模型 │ │ ├── printRecordModel.js # 打印记录模型 │ │ └── numberPrefixModel.js # 编号前缀模型 │ ├── routes/ # 路由文件 │ │ ├── stores.js # 店铺路由 │ │ ├── factories.js # 工厂路由 │ │ ├── printRecords.js # 打印记录路由 │ │ └── numberPrefix.js # 编号前缀路由 │ └── app.js # 服务器入口 ├── package.json # 项目配置 ├── vite.config.js # Vite配置 └── index.html # HTML模板 ``` ## 数据库配置 ### 连接信息 - 数据库: ccc(自行替换) - 用户: ccc(自行替换) - 密码: ccc(自行替换) - 地址: cccc:3333(自行替换) ### 数据表结构 1. **stores** - 店铺表 2. **factories** - 工厂表 3. **print_records** - 打印记录表 4. **number_prefix** - 编号前缀设置表 5. **date_sequences** - 日期序列表 ## 安装和运行 ### 1. 安装依赖 ```bash cd h:/maintenance npm install ``` ### 2. 启动后端服务 ```bash npm run serve ``` 后端服务将在 http://localhost:3001 启动 ### 3. 启动前端开发服务器 ```bash npm run dev ``` 前端应用将在 http://localhost:3000 启动 ### 4. 构建生产版本 ```bash npm run build ``` ## 使用说明 ### 基本操作 1. 填写维修单信息(日期、店铺、工厂、客户账号、备注) 2. 点击"生成并打印"按钮 3. 系统自动生成编号和二维码 4. 在打印预览中确认信息 5. 点击"打印"按钮进行打印 ### 管理功能 - 点击右下角悬浮按钮展开管理菜单 - **店铺管理**: 添加、编辑、删除店铺 - **工厂管理**: 添加、编辑、删除工厂 - **编号设置**: 修改编号前缀(默认为"修") ### 编号规则 - 格式: MMDD + 前缀 + 序号 - 示例: 1010修01, 1010修02 - 序号按日期自动递增 ## API接口 ### 店铺管理 - GET /api/stores - 获取所有店铺 - POST /api/stores - 创建店铺 - PUT /api/stores/:id - 更新店铺 - DELETE /api/stores/:id - 删除店铺 ### 工厂管理 - GET /api/factories - 获取所有工厂 - POST /api/factories - 创建工厂 - PUT /api/factories/:id - 更新工厂 - DELETE /api/factories/:id - 删除工厂 ### 打印记录 - GET /api/print-records - 获取打印记录 - POST /api/print-records - 创建打印记录 - POST /api/print-records/generate-qrcode - 生成二维码 ### 编号前缀 - GET /api/number-prefix - 获取当前前缀 - PUT /api/number-prefix - 更新前缀 ## 注意事项 1. 确保数据库连接正常 2. 打印前请检查打印机设置 3. 建议使用Chrome浏览器以获得最佳打印效果 4. 编号前缀修改后立即生效 5. 删除店铺或工厂前请确认没有关联的打印记录 ## 故障排除 ### 常见问题 1. **数据库连接失败**: 检查网络连接和数据库配置 2. **前端无法访问**: 确认前端服务器已启动 3. **API请求失败**: 检查后端服务器状态 4. **打印样式异常**: 尝试使用Chrome浏览器 ### 日志查看 - 后端日志: 查看终端输出 - 前端错误: 打开浏览器开发者工具 ## 版本信息 - 版本: 1.0.0 - 开发时间: 2025年11月 - 技术支持: Vue 3 + ArcoVue + Express + MySQL