推送给招商

This commit is contained in:
houhuan committed 2025-12-07 21:04:24 +08:00
commit 1f669e1a1f
14 files changed
+1383

No files matched your search

+54
View File
@@ -0,0 +1,54 @@
# 自动化营业额数据推送与展示系统
## 快速部署(Docker)
- 1:准备环境变量(不要提交真实口令到仓库)
- 复制 `.env.example` 到 `.env` 并填写 `ADMIN_TOKEN`
- 2:启动服务
```bash
docker-compose up -d
```
- 3:访问入口
- 浏览器打开 `http://<服务器IP或域名>:57778`
## 腾讯云环境优化
- 使用腾讯云 PyPI 镜像:Dockerfile 已设置 `pip -i https://mirrors.cloud.tencent.com/pypi/simple`
- 设置时区为 `Asia/Shanghai`:Dockerfile 安装并配置 `tzdata`
- 数据持久化:`docker-compose.yml` 将宿主机 `./data` 映射为容器 `/app/data`,数据库路径 `sqlite:///data/data.db`
## 功能概览
- 每日 23:00(服务器本地时区)自动生成并定版当日营业额
- 修正接口:支持按日期修正金额,前端即时一致更新;修正过程不直接在前端展示
- 审计与日志:所有生成/修正写入审计表,兼容追加到 `app.log`
- 看板:今日/昨日/前日、本周(周一~昨日)、上周(周一~周日)、本月
- 折线图:最近 7 天、本月、上月、最近 90 天;支持缩放、导出图片/CSV
## 项目结构
```
.
├── backend/ # Flask API + APScheduler
├── frontend/ # 单页 HTML(Tailwind+Chart.js)
├── data/ # SQLite 数据卷(自动创建/挂载)
├── Dockerfile # 生产镜像(已适配腾讯云)
├── docker-compose.yml # 一键部署
├── .env.example # 环境变量示例(不要提交真实 .env)
└── README.md
```
## 环境变量
- `DATABASE_URL`:数据库连接字符串(默认 `sqlite:///data/data.db`)
- `ADMIN_TOKEN`:管理修正口令;修正时在请求头加入 `X-Admin-Token`
- `TZ`:容器时区(默认 `Asia/Shanghai`)
- `PORT`:应用监听端口(默认 `5000`,示例已改为 `57778`)
## 修正接口示例
```bash
curl -X PUT http://localhost:5000/api/admin/turnover \
-H "Content-Type: application/json" \
-H "X-Admin-Token: $ADMIN_TOKEN" \
-d '{"date":"2025-12-06","amount":3123.45,"reason":"调整入账"}'
```
## 生产建议
- 建议使用反向代理(Nginx)暴露 `5000` 端口,并开启 gzip
- 建议通过 `docker-compose` 的 `restart: unless-stopped` 保持服务稳定
- 如需外部数据库,设置 `DATABASE_URL`(例如 PostgreSQL),并移除数据卷映射