推送给招商

This commit is contained in:
2025-12-07 21:04:24 +08:00
commit 1f669e1a1f
14 changed files with 1383 additions and 0 deletions
+75
View File
@@ -0,0 +1,75 @@
# 自动化营业额数据推送与展示系统 技术架构
## 技术栈
- 后端:FastAPIPython
- 定时:APScheduler(内嵌)/ Celery(可选)
- 数据库:SQLite(开发默认)/ PostgreSQL(生产)
- 前端:React + Tailwind(或 Vue + Tailwind
- 部署:Docker + Docker Compose
## 系统架构
```
[Generator & Scheduler] -> [FastAPI REST] -> [DB]
|
-> [Web UI]
-> [Notifier]
```
## 数据模型
- 表:`turnover`
- `id` INTEGER PK
- `date` DATE UNIQUE
- `amount` DECIMAL(12,2)
- `created_at` TIMESTAMP
- 表:`config`
- `key` TEXT PK
- `value` TEXT
## API 契约
- `GET /api/turnover/today` 返回当日数据
- `GET /api/turnover/range?start=YYYY-MM-DD&end=YYYY-MM-DD` 区间查询
- `GET /api/turnover/export.csv` 导出 CSV
- `POST /api/admin/recompute?date=YYYY-MM-DD` 重新生成指定日期(管理员)
## 定时方案
- APScheduler `cron` 每日 `00:05` 触发生成任务
- 任务幂等:同日重复执行将覆盖/更新当日记录
## 容器化
- `backend`FastAPI + APScheduler
- `frontend`:静态构建产物挂载到 `nginx``vite preview`
- `db`SQLite 挂载卷 / 可切换 PostgreSQL 服务
- `notifier`:邮件/Webhook 可选模块
## Docker Compose 示例
```yaml
services:
backend:
build: ./backend
env_file: .env
volumes:
- ./data:/app/data
ports:
- "8000:8000"
frontend:
build: ./frontend
ports:
- "3000:3000"
db:
image: postgres:16
environment:
POSTGRES_PASSWORD: example
volumes:
- ./pgdata:/var/lib/postgresql/data
ports:
- "5432:5432"
```
## 异常与告警
- 生成失败:记录日志并触发邮件/Webhook(启用时)
- API 错误:统一异常处理中返回标准错误响应
## 安全与配置
- `.env` 管理数据库与通知凭据
- 简易登录:基于环境变量开关,默认关闭
+45
View File
@@ -0,0 +1,45 @@
# 自动化营业额数据推送与展示系统 PRD
## 项目概述
- 目标:摆脱第三方平台依赖,实现每日自动生成、持久化、展示营业额数据,并通过 Docker 一键部署。
- 使用人群:运营(查看与导出)、技术(运维与配置)。
## 用户角色
- 管理员:配置任务、查看与导出数据、触发重跑、查看告警。
- 访客:查看仪表盘与历史数据。
## 核心功能
- 数据生成:保留现有假数据逻辑(可优化为可参数化),每日定时生成。
- 数据存储:SQLite(默认)/ PostgreSQL(生产),结构化存储并持久化历史。
- Web 展示:响应式仪表盘、趋势图、表格历史查询、区间筛选与导出。
- 定时执行:APScheduler(内嵌)或 Celery(可选扩展)。
- 容器化:Dockerfile + Docker Compose 一键部署。
- 通知提醒:邮件或 Webhook(可选),失败时发送告警。
- 访问控制:简易登录(可选),基于环境变量开关。
## 页面与交互
- 首页仪表盘
- 当日营业额、近7/30日趋势图、同比环比(基于模拟规则)。
- 历史数据页
- 时间区间筛选、列表与图表联动、CSV/Excel 导出。
- 配置管理页(可选)
- 定时规则、数据生成参数、通知渠道配置。
## 验收标准
- 每日自动生成与写库,无需人工干预。
- Web 界面在 PC 与移动端均能正常展示与操作。
- 历史数据可查询并支持 CSV/Excel 导出。
- Docker Compose 可一键启动全部服务并运行定时任务。
- 失败自动告警可在启用时生效。
## 非功能需求
- 可维护:配置项集中于 `.env``config.json`
- 可扩展:后端 API 与任务模块化,便于替换生成逻辑。
- 安全:不提交敏感信息到代码仓库;登录开关默认关闭。
## 里程碑
- M1:后端 API + 数据模型 + 定时任务(APScheduler)。
- M2:前端响应式展示 + 区间查询 + 导出。
- M3Docker 化与部署文档。
- M4:告警通知与简单登录(可选)。