吸收数字员工日报物理事实发送记录预览
This commit is contained in:
@@ -3129,20 +3129,66 @@ function checkDigitalAdminDailyReportWorkbench() {
|
||||
const qimingOps = fs.readFileSync(qimingOpsPath, "utf8");
|
||||
const qimingTypes = fs.readFileSync(qimingTypesPath, "utf8");
|
||||
const docs = fs.readFileSync(docsPath, "utf8");
|
||||
const dailyReportFactEntity = fs.readFileSync(
|
||||
path.join(
|
||||
backendRoot,
|
||||
"app-platform-modules",
|
||||
"app-platform-agent",
|
||||
"app-platform-agent-core-adapter",
|
||||
"src",
|
||||
"main",
|
||||
"java",
|
||||
"com",
|
||||
"xspaceagi",
|
||||
"agent",
|
||||
"core",
|
||||
"adapter",
|
||||
"repository",
|
||||
"entity",
|
||||
"DigitalEmployeeDailyReportFact.java",
|
||||
),
|
||||
"utf8",
|
||||
);
|
||||
const sql = fs.readFileSync(path.join(backendRoot, "sql", "update-20260612.sql"), "utf8");
|
||||
const requiredSnippets = [
|
||||
[service, "daily_reports", "backend daily report view"],
|
||||
[service, "isDailyReportRow", "backend daily report matcher"],
|
||||
[service, "daily_report", "backend daily report category"],
|
||||
[service, "daily_report:record_approval_decision", "backend daily report approval decision action"],
|
||||
[service, "daily_report_table", "backend daily report table projection"],
|
||||
[service, "daily_report_materialized", "backend daily report materialized projection"],
|
||||
[service, "send_record_status", "backend send record status projection"],
|
||||
[service, "formal_daily_report_page_disabled", "backend formal daily report page guard projection"],
|
||||
[dto, "report_id", "backend report id row field"],
|
||||
[dto, "daily_report_table", "backend daily report table row field"],
|
||||
[dto, "daily_report_materialized", "backend daily report materialized row field"],
|
||||
[dto, "send_record_status", "backend send record status row field"],
|
||||
[dto, "formal_daily_report_page_disabled", "backend formal daily report page guard row field"],
|
||||
[dto, "daily_report_approval_id", "backend daily report approval id row field"],
|
||||
[dto, "daily_report_approval_action", "backend daily report approval action row field"],
|
||||
[dto, "daily_report_approval_recorded_at", "backend daily report approval recorded at row field"],
|
||||
[dailyReportFactEntity, "dailyReportFactId", "daily report fact entity fact id field"],
|
||||
[dailyReportFactEntity, "physicalFactStatus", "daily report fact entity physical status field"],
|
||||
[dailyReportFactEntity, "sendRecordStatus", "daily report fact entity send status field"],
|
||||
[dailyReportFactEntity, "materializedSource", "daily report fact entity materialized source field"],
|
||||
[sql, "daily_report_fact_id", "daily report fact sql fact id column"],
|
||||
[sql, "physical_fact_status", "daily report fact sql physical status column"],
|
||||
[sql, "send_record_status", "daily report fact sql send status column"],
|
||||
[sql, "materialized_source", "daily report fact sql materialized source column"],
|
||||
[test, "queryAdminWorkbenchDailyReportsReturnsDailyReportRowsOnly", "backend daily report workbench test"],
|
||||
[test, "syncOutboxMaterializesDailyReportPhysicalFactAndSendRecord", "backend daily report physical fact materialization test"],
|
||||
[test, "queryAdminWorkbenchDailyReportsReturnsPhysicalFactAndSendShellRows", "backend daily report physical send shell test"],
|
||||
[test, "getDailyReportApprovalId", "backend daily report approval assertion"],
|
||||
[qimingTypes, "daily_reports", "qiming daily report view type"],
|
||||
[qimingTypes, "daily_report_table", "qiming daily report table type field"],
|
||||
[qimingTypes, "daily_report_materialized", "qiming daily report materialized type field"],
|
||||
[qimingTypes, "send_record_status", "qiming send record status type field"],
|
||||
[qimingTypes, "formal_daily_report_page_disabled", "qiming formal daily report page guard type field"],
|
||||
[qimingTypes, "daily_report_approval_id", "qiming daily report approval id type field"],
|
||||
[qimingOps, "日报运营", "qiming daily report tab"],
|
||||
[qimingOps, "正式日报物理表", "qiming formal daily report physical table copy"],
|
||||
[qimingOps, "发送记录物化", "qiming send record materialized copy"],
|
||||
[qimingOps, "正式外部日报页面禁用", "qiming formal daily report page disabled copy"],
|
||||
[qimingOps, "记录已送达", "qiming daily report delivered action"],
|
||||
[qimingOps, "确认回执", "qiming daily report confirmed action"],
|
||||
[qimingOps, "请求审批", "qiming daily report approval action"],
|
||||
@@ -3150,6 +3196,7 @@ function checkDigitalAdminDailyReportWorkbench() {
|
||||
[qimingOps, "记录发送结果", "qiming daily report send record action"],
|
||||
[docs, "正式管理端日报运营预览", "docs daily report absorption"],
|
||||
[docs, "管理端日报审批裁决回写预览", "docs daily report approval decision absorption"],
|
||||
[docs, "正式日报物理事实与发送记录预览已开始吸收", "docs daily report physical fact send record absorption"],
|
||||
];
|
||||
const missing = requiredSnippets
|
||||
.filter(([content, snippet]) => !content.includes(snippet))
|
||||
|
||||
@@ -614,9 +614,9 @@ GET /api/digital-employee/approvals
|
||||
- 建议:先使用 sync record 派生业务查询模型和 embedded 业务视图预览承接联调,再按容量和查询压力决定是否拆 Plan / Task / Run / Event 物理业务表。
|
||||
|
||||
13. **日报实体与导出交付**
|
||||
- 已吸收:embedded 页面可基于当前 workday projection 导出本地文本日报;生成日报时会通过 qimingclaw bridge 写入 `daily_report` text / HTML / PDF Artifact 与 `daily_report_generated` Event,并可通过 `/api/digital-employee/daily-reports` 和详情接口读取只读日报投影。日报 HTML/PDF 导出、发送记录、管理端确认回执和日报发送审批已开始吸收,交付动作会写入 `daily_report_send_recorded` / `daily_report_confirmed` / `daily_report_approval_requested` 事件,sync `business_view.category = daily_report` 可被管理端筛选消费。管理端正式日报页面预览和正式管理端日报运营预览已开始吸收,embedded 新增“日报运营”入口,展示日报生成、交付、确认、审批和关联产物状态,并复用现有生成、记录发送、确认回执和请求审批动作;qiming-backend 的 `daily_reports` 运营台视图会聚合日报生成、发送记录、确认回执和审批请求,qiming“数字员工运营台”的“日报运营”tab 可记录已送达、确认回执、请求审批和发送结果。发送账单审计外壳已开始吸收,qiming-backend 新增 `/api/digital-employee/admin/daily-reports/send-records`,qiming 运营台可在日报详情中“记录发送结果”,但不接真实第三方发送通道。正式管理端协作运营收口已开始吸收,日报运营详情会展示 `daily_report_fact_id`、`send_record_id` 和 `approval_decision_status`,用于解释事实来源、发送记录和审批状态。管理端日报审批裁决回写预览已开始吸收,日报运营详情可展示 `daily_report_approval_id`、裁决动作、裁决人、原因和记录时间,并只记录审批裁决意图,不触发真实发送或自动审批。资产通知日报业务查询总收口已开始吸收,日报运营详情会补充 `daily_report_physical_fact_status`、发送渠道、发送请求状态、外部发送禁用和第三方发送禁用说明。
|
||||
- 缺口:没有正式 DailyReport 物理表、真实管理端发送通道和正式外部管理端日报页面。
|
||||
- 建议:先稳定 Artifact/Event 派生日报交付模型,再根据管理端联调需要决定是否物化 DailyReport 表与发送记录表。
|
||||
- 已吸收:embedded 页面可基于当前 workday projection 导出本地文本日报;生成日报时会通过 qimingclaw bridge 写入 `daily_report` text / HTML / PDF Artifact 与 `daily_report_generated` Event,并可通过 `/api/digital-employee/daily-reports` 和详情接口读取只读日报投影。日报 HTML/PDF 导出、发送记录、管理端确认回执和日报发送审批已开始吸收,交付动作会写入 `daily_report_send_recorded` / `daily_report_confirmed` / `daily_report_approval_requested` 事件,sync `business_view.category = daily_report` 可被管理端筛选消费。管理端正式日报页面预览和正式管理端日报运营预览已开始吸收,embedded 新增“日报运营”入口,展示日报生成、交付、确认、审批和关联产物状态,并复用现有生成、记录发送、确认回执和请求审批动作;qiming-backend 的 `daily_reports` 运营台视图会聚合日报生成、发送记录、确认回执和审批请求,qiming“数字员工运营台”的“日报运营”tab 可记录已送达、确认回执、请求审批和发送结果。发送账单审计外壳已开始吸收,qiming-backend 新增 `/api/digital-employee/admin/daily-reports/send-records`,qiming 运营台可在日报详情中“记录发送结果”,但不接真实第三方发送通道。正式管理端协作运营收口已开始吸收,日报运营详情会展示 `daily_report_fact_id`、`send_record_id` 和 `approval_decision_status`,用于解释事实来源、发送记录和审批状态。管理端日报审批裁决回写预览已开始吸收,日报运营详情可展示 `daily_report_approval_id`、裁决动作、裁决人、原因和记录时间,并只记录审批裁决意图,不触发真实发送或自动审批。资产通知日报业务查询总收口已开始吸收,日报运营详情会补充 `daily_report_physical_fact_status`、发送渠道、发送请求状态、外部发送禁用和第三方发送禁用说明。正式日报物理事实与发送记录预览已开始吸收,后端复用 `digital_employee_daily_report_fact` 增量物化日报事实、物理事实状态、审批裁决状态、发送记录状态和物化来源,qiming 日报运营详情展示正式日报物理表、发送记录物化和正式外部日报页面禁用状态。
|
||||
- 缺口:真实管理端发送通道、第三方发送通道、更完整 DailyReport 物理模型和正式外部管理端日报页面。
|
||||
- 建议:先稳定 `digital_employee_daily_report_fact` 增量物化与 Artifact/Event 派生交付模型,再根据管理端联调需要决定是否扩展正式 DailyReport 表、发送记录表和外部页面。
|
||||
|
||||
## 管理端联动原则
|
||||
|
||||
|
||||
Reference in New Issue
Block a user