# 校园咖啡系统 **Repository Path**: yuanspaces/coffee-system ## Basic Information - **Project Name**: 校园咖啡系统 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-15 - **Last Updated**: 2026-03-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 校园咖啡馆智能点单系统 基于 `Flask + Jinja2 + SQLAlchemy + MySQL` 的校园咖啡馆点单系统,包含用户端与后台管理端。项目目前已经覆盖商品浏览、个性化推荐、购物车、订单流转、商品标签、用户偏好、评价系统和后台基础运营管理。 ## 项目状态 当前仓库可以直接运行,前后台页面、数据库模型和主要业务流程都已接通。 已实现的核心能力: - 用户注册、登录、退出 - 首页推荐轮播、热门商品、销量排行、最近上新 - 商品搜索、分类浏览、商品详情 - 标签驱动的个性化推荐 - 偏好设置:甜度、咖啡因、温度、酸度、苦度 - 购物车、立即购买、下单、支付、取消、完成订单 - 商品评价与评价统计 - 用户资料编辑、头像上传 - 后台商品管理、标签管理、订单管理、用户管理 - 后台仪表盘与统计页 ## 技术栈 - 后端:`Flask 3` - 模板:`Jinja2` - ORM:`Flask-SQLAlchemy` / `SQLAlchemy` - 数据库:`MySQL` + `PyMySQL` - 表单安全:`Flask-WTF` + `CSRFProtect` - 数据分析/推荐相关:`scikit-learn`、`numpy`、`scipy` [//]: # (- 图表:`pyecharts`) [//]: # (- 前端:HTML、CSS、JavaScript、jQuery) ## 运行环境 - Python 3.10 及以上 - MySQL 5.7 / 8.0 - Windows / Linux / macOS 均可 ## 安装与启动 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 导入数据库 ```bash mysql -u root -p < coffee_cafe_system.sql ``` 数据库名默认是: ```text coffee_cafe_system ``` ### 3. 修改数据库连接 项目当前在 [app.py](C:/Users/86176/Desktop/python_flask/app/app.py) 中直接写了数据库连接配置: ``` app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+pymysql://root:1124@localhost:3306/coffee_cafe_system?charset=utf8" ``` 启动前请按你的本地环境修改用户名、密码、主机和端口。 ### 4. 启动项目 ```bash python app_start.py ``` 当前启动端口是: ```text http://127.0.0.1:5050 ``` ## 默认账号 SQL 文件中包含一个默认管理员账号: - 用户名:`admin` - 密码:`admin123` 管理员入口: ```text http://127.0.0.1:5050/admin ``` 用户端入口: ```text http://127.0.0.1:5050/ ``` ## 主要页面与功能 ### 用户端 - 首页:推荐轮播、推荐商品、热门商品、销量排行、最近上新 - 菜单页:分类筛选、价格排序、分页浏览 - 推荐页:基于用户偏好和标签的推荐结果 - 商品详情页:标签、相关推荐、销量、评价、评分统计 - 偏好设置页:保存用户口味偏好 - 搜索页:按商品名/分类等关键词查询 - 购物车页:增删改购物车商品 - 订单页:查看订单、支付、取消、完成 - 个人中心:资料修改、头像上传、推荐摘要 ### 管理端 - 仪表盘:订单、收入、商品、用户的概览统计 - 商品管理:新增、编辑、删除、详情查看、商品标签绑定 - 标签管理:新增、编辑、删除标签 - 订单管理:查看订单详情并更新订单状态 - 用户管理:搜索、编辑、删除用户 - 统计页:商品、订单、销售额等汇总信息 ## 推荐逻辑说明 项目当前的推荐逻辑位于 [view.py](C:/Users/86176/Desktop/python_flask/app/user/view.py) 中,主要基于: - 用户标签与商品标签的 Jaccard 相似度 - 用户偏好权重叠加分数 - 无偏好数据时回退到热门商品 推荐结果通过 `coffee_tag`、`user_tag` 等表关联生成。 ## 数据库核心表 主要表包括: - `user` - `coffee` - `tag` - `coffee_tag` - `user_tag` - `cart` - `order` - `order_item` - `review` ## 项目结构 ```text python_flask/ ├─ app/ │ ├─ admin/ 后台蓝图与管理逻辑 │ ├─ user/ 用户端蓝图与业务逻辑 │ ├─ utils/ 数据模型与工具脚本 │ ├─ static/ 静态资源 │ │ ├─ admin/ │ │ ├─ user/ │ │ ├─ imgs/ │ │ └─ profile_imgs/ │ ├─ templates/ Jinja2 模板 │ │ ├─ admin/ │ │ └─ user/ │ ├─ app.py Flask 应用入口与配置 │ └─ __init__.py ├─ coffee_cafe_system.sql 数据库初始化脚本 ├─ requirements.txt Python 依赖 ├─ app_start.py 启动脚本 ├─ README.md └─ README.en.md ```