2.8 KiB
2.8 KiB
杜康好客 · v3.5.15 开发文档
2026-09-02 · ops / admin-web / domain / shared-types
主题:企微机器人增加经营报告(日报 / 周报 / 月报)
1. 版本目标
| # | 任务 | 类型 | 交付 |
|---|---|---|---|
| 1 | 报告模块 | 需求 | HQ「企微机器人 → 报告」,与「消息推送」分开 |
| 2 | 三种报 | 需求 | 日报、周报、月报:存量 + 本期新增 |
| 3 | 推送 | 需求 | 企微群机器人 Webhook markdown;可预览 / 立即发送 / 定时 |
不做:并入消息推送条件、新权限键、城市范围裁剪、同比。
2. 规则
配置在报告页,每种报一份 Webhook / 启用 / 发送时刻(周报另选星期,月报另选每月几号)。不占用「消息推送」的事件条件。
口径(北京日历,与概览折线一致):
| 指标 | 存量 | 新增 |
|---|---|---|
| 用户数量 | status=1 且未合并,createdAt < 期末 |
区间内创建 |
| 合伙人数量 | 主账号 is_primary=1 |
区间内创建 |
| 门店数量 | 全部门店 | 区间内创建 |
| 订单数量 | 按下单 createdAt,排除待支付 / 已取消 / 退款中 |
区间内下单 |
| 订单金额 | 已付 payAmount(paidAt),排除待支付 / 已取消 / 退款中 |
区间内支付 |
| 核销单数量 / 金额 | RedeemRecord |
区间内核销 |
- 日报:发送日前一自然日(截账至发送日 0 点 / 前一天 24 点);默认 20:00 发送;新增文案「当日新增」。
- 周报:上一自然周(周一~周日);默认周一 09:00;期末为该周日 24 点。
- 月报:上一自然月;默认每月 1 日 09:00;期末为该月最后一日 24 点。
三种报都不含发送当天发生额。
错过发送时刻会在之后补发一次(按 last_sent_period 去重)。
3. API
GET /admin/wecom-reports
GET/PUT /admin/wecom-reports/:kind(daily | weekly | monthly)
POST /admin/wecom-reports/:kind/preview
POST /admin/wecom-reports/:kind/send
权限:wecom_bots。
表 wecom_report_push(kind 唯一)。
4. 变更面
| 层 | 路径 |
|---|---|
| domain | wecom-report.ts |
| shared-types | wecom-report.ts |
| Prisma | WecomReportPush;prisma/migrate-wecom-report.ts |
| API | admin-wecom-reports.* |
| HQ | WecomReportsPage.tsx;侧栏「报告」 |
5. 验收
- 侧栏企微机器人下有「报告」,与消息推送分开
- 日报/周报/月报可分别填 Webhook、启停、时刻并保存
- 预览文案含用户/合伙人/门店/订单数量与金额/核销数量与金额的存量+新增
- 立即发送走该报自己的 Webhook,不触发消息推送事件
- 启用后到达时刻只发一次该周期