# sensory_evaluation **Repository Path**: yangyue_93/sensory_evaluation ## Basic Information - **Project Name**: sensory_evaluation - **Description**: 感官评吸项目原型 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-03 - **Last Updated**: 2025-11-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 感官评吸系统 一个基于 Vue3 + Vite + Element Plus 和 Express.js + MySQL 的移动端感官评吸管理系统。 ## 技术栈 - **前端**: Vue3 + Vite + Element Plus - **后端**: Express.js - **数据库**: MySQL ## 项目结构 ``` 感官评吸/ ├── frontend/ # 前端项目 │ ├── src/ │ │ ├── views/ # 页面组件 │ │ ├── api/ # API 接口 │ │ ├── router/ # 路由配置 │ │ └── main.js # 入口文件 │ ├── package.json │ └── vite.config.js ├── backend/ # 后端项目 │ ├── config/ # 配置文件 │ ├── routes/ # 路由 │ ├── server.js # 服务器入口 │ └── package.json ├── sql/ # 数据库初始化脚本 │ └── init.sql └── dist/ # 前端打包后的文件(自动生成) ``` ## 数据库设计 ### 表 1:基础信息 - `评测日期` (DATE, 主键) - `牌别` (VARCHAR, 主键) - `批次` (VARCHAR, 主键) - `日期` (DATE) ### 表 2:评价表 - `评测日期` (DATE, 主键) - `牌别` (VARCHAR, 主键) - `批次` (VARCHAR, 主键) - `日期` (DATE) - `风格特征` (BOOLEAN) - `香气特征` (BOOLEAN) - `烟气特征` (BOOLEAN) - `口感特征` (BOOLEAN) - `特殊质量` (BOOLEAN) - `结论` (BOOLEAN) ### 表 3:缺陷描述 - `评测日期` (DATE, 主键) - `盒装缺陷` (BOOLEAN) - `卷制缺陷` (BOOLEAN) ## 安装步骤 ### 1. 初始化数据库 首先确保已安装 MySQL,然后执行初始化脚本: ```bash mysql -u root -p < sql/init.sql ``` 或者在 MySQL 客户端中直接执行 `sql/init.sql` 文件的内容。 ### 2. 配置数据库连接 在 `backend` 目录下创建 `.env` 文件(参考 `env.template`): ```bash # Windows PowerShell Copy-Item backend\env.template backend\.env # 或者在 backend 目录下手动创建 .env 文件 ``` 然后在 `.env` 文件中填入实际的数据库配置: ```env DB_HOST=localhost DB_USER=root DB_PASSWORD=your_password DB_NAME=sensory_evaluation PORT=3000 ``` ### 3. 安装后端依赖 ```bash cd backend npm install ``` ### 4. 安装前端依赖 ```bash cd frontend npm install ``` ## 启动项目 ### 开发模式 1. **启动后端服务器**: ```bash cd backend npm run dev ``` 后端将在 `http://localhost:3000` 运行 2. **启动前端开发服务器**(新开一个终端): ```bash cd frontend npm run dev ``` 前端将在 `http://localhost:5173` 运行 ### 生产模式 1. **打包前端**: ```bash cd frontend npm run build ``` 打包后的文件将输出到 `dist` 目录 2. **启动后端服务器**(会自动服务前端静态文件): ```bash cd backend npm start ``` 访问 `http://localhost:3000` 即可使用完整系统 ## 功能说明 ### 1. 基础信息维护页面 - 业务人员填写"牌别"、"批次"、"日期" - 系统自动根据当天日期生成"评测日期" - 提交后会将数据插入到"基础信息"表和"评价表"中 - 评价表的其他字段保持默认值(false) ### 2. 评价页面 - 显示当天的基础信息 - 显示感官特征评价表单(风格特征、香气特征、烟气特征、口感特征、特殊质量、结论) - 显示缺陷描述表单(盒装缺陷、卷制缺陷) - 所有布尔值使用开关组件(Switch)进行选择 - 提交后更新评价表和缺陷描述表 ## API 接口 ### 基础信息相关 - `GET /api/basic-info/today` - 获取当天的基础信息 - `POST /api/basic-info` - 创建基础信息 ### 评价相关 - `GET /api/evaluation/today` - 获取当天的评价信息 - `PUT /api/evaluation` - 更新评价表 ### 缺陷描述相关 - `GET /api/defect/today` - 获取当天的缺陷描述 - `POST /api/defect` - 创建或更新缺陷描述 ## 注意事项 1. 确保 MySQL 服务正在运行 2. 确保数据库连接配置正确 3. 在生产环境中,建议将 `.env` 文件添加到 `.gitignore` 中 4. 移动端访问时,建议使用响应式布局适配 ## 开发工具 - 后端开发:可以使用 `nodemon` 自动重启服务器(已配置在 dev 脚本中) - 前端开发:Vite 提供热模块替换(HMR),修改代码后自动刷新