# order
**Repository Path**: RougeWhite/orders
## Basic Information
- **Project Name**: order
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-06-10
- **Last Updated**: 2026-06-10
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 家庭点餐 (Orders)
一个手机端的家用点餐应用,灵感来自微信小程序 UI,绿色主题。
家里人在手机上看菜单、加菜、提单;做饭的人在管理端维护菜品和看订单。
**不涉及任何支付/结算**,纯粹是“今天谁要吃啥”的协调工具。
> 后端基于 [wxmini](https://gitee.com/RougeWhite/wxmini) 的数据模型重写,前端从 0 用 Vue3 实现。
---
## 技术栈
| 端 | 选型 |
|---|---|
| 后端 | Python 3.10+ · Flask 3 · Flask-SQLAlchemy · uv |
| 数据库 | SQLite (落在 `backend/instance/orders.db`) |
| 前端 | Vue 3 · Vite · Vue Router · Pinia · Axios |
| 部署 | `deploy.sh` 一键安装 / 构建 / 后台启动 / 防火墙开放 |
| 端口 | **8120** (生产模式下 Flask 同时接管前端静态资源) |
---
## 目录结构
```
orders/
├── backend/ # Flask 后端 (uv 管理)
│ ├── app/ # Flask 工厂、models、blueprints
│ ├── instance/ # SQLite 数据库 (运行时生成)
│ ├── pyproject.toml
│ ├── README.md
│ └── run.py
├── frontend/ # Vue 3 前端
│ ├── src/
│ │ ├── components/ # NavBar / CartBar / CartDrawer / QuantityStepper / ...
│ │ ├── views/ # MenuView / OrderConfirmView / OrdersView / OrderDetailView
│ │ ├── views/admin/ # AdminLayout / AdminDishesView / ...
│ │ ├── stores/ # pinia: cart, toast
│ │ ├── api/ # axios 客户端
│ │ └── styles/ # 设计令牌 (CSS 变量)
│ ├── index.html
│ ├── package.json
│ └── vite.config.js
├── doc/ # 接口、数据模型、部署文档
├── run/ # 运行时 PID / 日志 (运行时生成)
├── deploy.sh # 一键部署脚本
└── README.md # ← 你正在看
```
---
## 快速开始
### 一键部署 (Ubuntu)
```bash
git clone https://gitee.com/RougeWhite/orders.git
cd orders
./deploy.sh install # 装 python/node/uv + 所有依赖
./deploy.sh seed # (可选) 塞入示例分类+菜品
./deploy.sh start # 后台启动,自动 build 前端 + 开 ufw 8120 端口
```
启动成功后访问:
- 用户端 (家里人下单):
- 管理端 (维护菜品):
### 常用脚本
| 命令 | 说明 |
|---|---|
| `./deploy.sh status` | 查看运行状态 |
| `./deploy.sh logs -f` | 实时日志 |
| `./deploy.sh restart` | 重启 |
| `./deploy.sh stop` | 停止 |
| `./deploy.sh build` | 仅构建前端 |
| `./deploy.sh firewall`| 单独开端口防火墙 |
---
## 开发模式
前后端分开跑,前端通过 vite 代理 `/api` 到后端。
### 后端
```bash
cd backend
uv sync
uv run flask --app app run --host 0.0.0.0 --port 8120
```
### 前端
```bash
cd frontend
npm install
npm run dev # 5173 端口
```
---
## 文档
- [API 接口文档](doc/api.md)
- [数据模型](doc/data-model.md)
- [部署说明](doc/deploy.md)
---
## 截图 (设计风格)
- 主色:`#52c41a` (鲜亮食欲绿) + `#f6ffed` 淡绿底
- 用户端:仿小程序点餐界面,左侧分类导航 + 右侧菜品列表 + 底部固定购物车栏
- 管理端:顶部状态/分类筛选 + 列表卡片 + 浮动 + 按钮 + 底部 Sheet 编辑
---
## License
家用,无 License。Fork 随意。