vps-work 2.2.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.well-known/skills/index.json +20 -4
- package/README.md +10 -3
- package/USAGE.md +31 -0
- package/dist/OFFICE-LICENSE +202 -0
- package/dist/OFFICE-NOTICE +25 -0
- package/dist/office-runtime.cjs +57828 -0
- package/dist/vps-work.cjs +35461 -36405
- package/package.json +9 -4
- package/scripts/build-office.mjs +24 -0
- package/scripts/test-office-desktop.mjs +123 -0
- package/skills/README.md +2 -2
- package/skills/sale-performance-query/SKILL.md +1 -1
- package/skills/sale-performance-query/references/vps-sales-agent-five-suite.md +16 -2
- package/skills/sale-performance-query/references/vps-sales-dealer-performance.md +17 -0
- package/skills/vps-approval/SKILL.md +12 -0
- package/skills/vps-creative/SKILL.md +2 -0
- package/skills/vps-daily-report-assistant/SKILL.md +3 -1
- package/skills/vps-daily-sales-report/SKILL.md +1 -1
- package/skills/vps-daily-sales-report/reference.md +2 -2
- package/skills/vps-finance-ledger/SKILL.md +29 -0
- package/skills/vps-finance-ledger/scripts/save-export.mjs +8 -0
- package/skills/vps-hr-compensation-documents/SKILL.md +3 -2
- package/skills/vps-hr-compensation-documents/reference.md +4 -2
- package/skills/vps-hr-compensation-documents/references/+payslip.md +2 -2
- package/skills/vps-hr-compensation-documents/references/runtime-and-helpers.md +1 -1
- package/skills/vps-mail/SKILL.md +61 -6
- package/skills/vps-pending-approval-assistant/SKILL.md +15 -10
- package/skills/vps-pending-approval-assistant/reference.md +21 -5
- package/skills/vps-purchase/SKILL.md +47 -0
- package/skills/vps-sale-personnel-efficiency/SKILL.md +1 -1
- package/skills/vps-store-management/SKILL.md +11 -3
- package/skills/vps-store-management/references/store-analytics.md +47 -0
- package/skills/vps-task-management-assistant/SKILL.md +13 -0
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: vps-pending-approval-assistant
|
|
3
3
|
description: |
|
|
4
|
-
提供 VPS 审批相关能力:`vps-work approval +wait` / `+pending` / `+my-submitted` / `+my-approved` 拉取本人、部门或全员待办与历史视图,`+logs` 看单证轨迹,`+pass` / `+refuse`
|
|
4
|
+
提供 VPS 审批相关能力:`vps-work approval +wait` / `+pending` / `+my-submitted` / `+my-approved` 拉取本人、部门或全员待办与历史视图,`+logs` 看单证轨迹,`+pass` / `+refuse` 在明确意图下操作当前步骤。新版 VPS 及 ERP 历史付款申请列表、金额明细和审批进度复用现有 exec 的 payment_applications 只读查询,需独立全量查询权限。在用户查看待我审批、付款申请单、ERP 历史付款、审批流、签核历史、我提交的审批、我已批过的单子、同意或驳回、统计待办类型或整理审批队列时使用。其他业务单据结构化取数由对应业务域 skill 负责,不拼接业务表查询。
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# 审批助手
|
|
8
8
|
|
|
9
9
|
## 何时使用
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
用户需要审批相关能力:查看待我审批、我提交的审批、我已批过的单子、某单的审批轨迹、新版及 ERP 历史付款申请列表和详情,或在明确意图下通过/拒绝原有审批步骤。付款查询仅支持下述只读能力;其他业务单据的金额/明细等取数仍交给对应业务域 skill。
|
|
12
12
|
|
|
13
13
|
## 工作流
|
|
14
14
|
|
|
@@ -18,27 +18,32 @@ description: |
|
|
|
18
18
|
2. **历史审批** — **`vps-work approval +my-submitted`** / **`+my-approved`**。用户未区分时两条都跑
|
|
19
19
|
3. **审批轨迹** — `vps-work approval +logs --res-model <m> --res-id <id>`
|
|
20
20
|
4. **通过/拒绝** — 仅在用户明确表态后调用 `vps-work approval +pass` / `refuse`,带 res_model + res_id
|
|
21
|
-
5.
|
|
21
|
+
5. **付款申请查询** — `vps-work exec --skill vps-pending-approval-assistant --script payment_applications`,需显式 `approvals.payment.all:read`。默认合并本企业新版 VPS 及 ERP 历史付款申请,可用 `--param source=vps` 或 `--param source=erp` 单独查询。支持日期、状态、申请人、单号和关键词筛选;详情使用 `--param operation=detail --param document_number=<完整单号>`。合并结果以 `next_cursor` 传 `cursor` 续查,单来源按 `next_offset` 传 `offset`。筛选及标识规则见 [reference.md](reference.md),无发起、审批或编辑能力。
|
|
22
|
+
6. **其他业务正文** — 用户要看其他类型单据的金额/申请人/明细时,交给对应 `res_model` 的业务域 skill;不拼接 `--fields` / `--domain` 绕路。若无对应专项 skill,则说明该明细暂不提供。
|
|
22
23
|
|
|
23
24
|
## 硬约束
|
|
24
25
|
|
|
25
|
-
-
|
|
26
|
+
- **按已登记契约查询**:新版及 ERP 历史付款的业务明细只用 `payment_applications`;其他业务字段交给对应业务域 skill,不在本技能里查 `res_model` 业务表。本付款入口仅只读,禁止将查询权限当作审批或付款权限,也不得将原生付款 UUID 交给 ERP 的 `+pass/refuse/logs`。
|
|
26
27
|
- **禁止盲构查询**:字段名/关系/枚举必须出现在 **skills/** 文档中;禁止 `vps-work knowledge`;禁止 `_fields` 嗅探;缺口 `POST /ai/skills/v1/feedback`
|
|
27
|
-
-
|
|
28
|
-
-
|
|
28
|
+
- **原有审批队列视图**(`+wait` / `+pending` / `+my-submitted` / `+my-approved`)只向用户展示 `model_name` 与数量,禁止展示 `res_model/res_ids` 或原始 id 列表。
|
|
29
|
+
- **付款查询例外(新版及 ERP 历史)**:已有独立权限且通过 `payment_applications` 取得数据时,可直接展示单号、申请人、部门、金额、币种、收款人、状态、明细行、审批进度和附件名称,无需转交其他技能。不展示内部附件标识或上传凭据;业务字段按名称解释,没有返回的数据不得编造。区分来源和日期口径;ERP 查询失败不能按“无历史单据”回答。
|
|
30
|
+
- 原有 `web.approval.commit/approvaled` 与 `wait` 同形,fields 完全相同;这条仅描述原有队列视图,不限制付款查询的输出。
|
|
29
31
|
- 所有 CLI 以当前用户 ACL 执行,不提供法律/强制性建议
|
|
30
32
|
|
|
31
33
|
## 常见坑点
|
|
32
34
|
|
|
33
35
|
| 现象 | 根因 | 正确做法 |
|
|
34
36
|
|------|------|---------|
|
|
35
|
-
|
|
|
36
|
-
|
|
|
37
|
-
|
|
|
37
|
+
| 用户追问新版或 ERP 历史付款的单号、金额、申请人或明细 | 将原有队列的汇总限制套到付款查询 | 用 `payment_applications` 查询列表或详情,直接按返回数据展示;缺少独立权限时说明权限不足,不绕过授权 |
|
|
38
|
+
| 同一单号在两边都有 | 只按单号无法定位来源 | 传 `source=vps/erp`,或用对应 `submission_id/erp_id`;不得按名称或金额猜匹配 |
|
|
39
|
+
| 按人查历史单报关联缺失 | VPS 和 ERP 使用不同身份编号 | 不直接把 VPS 数字 ID 当 ERP 用户 ID;可明确只查新版,或使用 `source=erp` 与已知 ERP 员工 ID |
|
|
40
|
+
| 用户追问其他类型单据的具体单子、金额或申请人 | 只看了 model_name 和 count,想在本技能里直接查业务表 | **交给对应 res_model 的业务域 skill**;无对应专项 skill 则说明该明细暂不提供 |
|
|
41
|
+
| 其他类型单据的业务字段报错 / 返回空 | 在本技能内对业务模型自行猜字段 | 禁止盲构;交给对应域 skill 后只使用文档已列字段,无文档则 feedback |
|
|
42
|
+
| 原有审批操作后状态未变 | 没确认审批轨迹 | 通过/拒绝后查 approval logs 验证 |
|
|
38
43
|
|
|
39
44
|
## 关联技能
|
|
40
45
|
|
|
41
|
-
-
|
|
46
|
+
- 新版及 ERP 历史付款按 [reference.md](reference.md) 的已登记契约直接查询和展示;其他业务下钻前读对应专项 skill 文档,未知字段禁止运行时嗅探。
|
|
42
47
|
- **vps-current-user-identity** — 第一人称身份解析,审批视图已自动限定当前用户,无需额外取身份
|
|
43
48
|
|
|
44
49
|
---
|
|
@@ -10,6 +10,21 @@
|
|
|
10
10
|
| 通过 | `vps-work approval +pass --res-model … --res-id …` | VPS 审批服务 |
|
|
11
11
|
| 拒绝 | `vps-work approval +refuse …` | VPS 审批服务 |
|
|
12
12
|
| 轨迹 | `vps-work approval +logs …` | VPS 审批服务 |
|
|
13
|
+
| 新版及 ERP 历史付款申请 | `vps-work exec --skill vps-pending-approval-assistant --script payment_applications` | 默认合并两个来源,只读,需 `approvals.payment.all:read` |
|
|
14
|
+
|
|
15
|
+
付款查询参数:默认 `operation=list`、`source=all`,合并新版 VPS 和 ERP `cost.pay.apply` 历史申请,也可指定 `source=vps` 或 `source=erp`。可选 `start_date/end_date`(VPS 提交日期、ERP 申请日期,含首尾日期)、`status`、`applicant_user_id`、`keyword`、`document_number`。`limit` 默认50、最大100;合并结果原样传回 `next_cursor` 到 `cursor`,不能与 `offset` 同传或更改筛选条件;单来源按 `next_offset` 传 `offset` 续查。合并列表先按 VPS 提交时间 / ERP 申请日上海零点降序,同一时刻先 VPS,各来源内部再按 ID 降序;两库分别为只读快照,翻页期间源数据变化可能影响列表位置。
|
|
16
|
+
|
|
17
|
+
`operation=detail` 必须且只能传 `submission_id`(VPS UUID)、`erp_id`(ERP 正整数 ID)或完整 `document_number`;带对应 ID 时自动确定来源。只传单号时默认在两边精确查找;两边同号或 ERP 内同号多条均报冲突,应指定来源或精确 ID,不能按金额/姓名猜匹配。仅有当前企业独立权限才可查询全员,不继承普通审批或管理员通配权限,不授予任何写入操作。
|
|
18
|
+
|
|
19
|
+
`applicant_user_id` 始终是 VPS 用户 ID,历史筛选只使用当前企业账号的明确 `res.users` 来源关联;缺失/歧义时报错。历史离职员工未在 VPS 关联时,可明确 `source=erp --param erp_employee_id=<ERP员工ID>` 查询,不能和 `applicant_user_id` 同传。ERP 输出中的 `erp_employee_id/erp_applicant_user_id` 为来源标识,不当作 VPS 身份。
|
|
20
|
+
|
|
21
|
+
新版及 ERP 历史付款都是本技能可直接展示业务明细的例外,不受原有队列“只展示类型与数量、明细切技能”的限制:列表 `items` 可展示 `source`、`document_number`、`applicant_name`、`applicant_department_path`、`amount/amount_cny`、`currency`、`payee`、`status`、`submitted_at/application_date` 及 `pending_approvers`;详情 `submission` 可展示 `values` 的表单与明细行、`approval_tasks`、`approval_history`、`comments`、`attachments` 和 `node_materials` 的业务信息。新版按冻结 `fields` 解读,ERP 的 `fields` 是已登记的原字段标签。无需转交其他技能,不展示内部标识或上传凭据。
|
|
22
|
+
|
|
23
|
+
ERP `source_status` 保留原始状态:`draft→draft`、`approval→in_progress`、`finished→approved`,用于统一筛选;`finished` 表示 ERP 流程完成,不能据此断言已打款,应结合 `payment_date` 和原始历史。ERP `application_date` 是业务申请日,`submitted_at=null`,不能伪造成实际提交时刻。ERP 费用、发票、付款阶段、固定资产、分摊明细分别在 `values.payment_expense_lines/payment_invoice_lines/payment_stage_lines/payment_asset_lines/payment_allocation_lines`,完整返回,未设原审批卡片的8行展示上限。VPS 回写 ERP 的镜像按 `vps_request_id/vps_tenant_id` 明确标记排除,不按单号或金额去重。任一数据源不可用时合并查询报错;可明确 `source=vps` 单独查新版,不能把错误当作历史单据数量0。
|
|
24
|
+
|
|
25
|
+
`attachments` 是表单附件与旧附件表的合并目录,含 `file_name/content_type/size_bytes`、来源 `source`(`form_values` 或 `legacy`)及位置 `field_key/field_path`;明细行位置如 `["payment_expense_lines",0,"evidence"]` 中行号从0开始,向用户说“第1行”。相同文件在不同字段或行内的引用保留,不按文件名去重。原表单未记录上传时间时 `created_at=null`,不能用提交时间代替。`id` 仅供程序识别,目录不提供原文件下载能力;审批节点材料仍在 `node_materials` 中单列。
|
|
26
|
+
|
|
27
|
+
ERP 附件目录还包含 `erp_form_values/erp_attachment` 来源:主表发票、结算单、付款凭证、行政发票 JSON 附件、发票行附件及旧 `ir_attachment`/关系表附件;不复制附件 URL、访问令牌或二进制内容到目录。无法解析的原附件通过 `attachment_issues` 标明字段位置和原因,不能把它描述成“没有附件”。ERP 办理附件包含在此目录,没有单独的 VPS 节点材料表,`node_materials=[]`。
|
|
13
28
|
|
|
14
29
|
## 三种视图的通用查询
|
|
15
30
|
|
|
@@ -33,9 +48,9 @@
|
|
|
33
48
|
- **`vps-work approval +logs`**:`res_model`、`res_id`。
|
|
34
49
|
- **`vps-work approval +pass` / `+refuse`**:`res_model`、`res_id`;`+pass` 可选 `proposal`。
|
|
35
50
|
|
|
36
|
-
##
|
|
51
|
+
## 其他类型单据下钻明细必须切技能
|
|
37
52
|
|
|
38
|
-
|
|
53
|
+
除上述新版及 ERP 历史付款查询外,用户从原有"审批待办/历史"进入其他类型单据的"具体是哪些单子 / 金额多少 / 谁提交的 / 明细行" 这一步时,切换到对应技能:
|
|
39
54
|
|
|
40
55
|
1. **交给对应 `res_model` 的业务域 skill** —— 由它负责业务模型取数;若无对应专项 skill,则说明该明细暂不提供。
|
|
41
56
|
2. 匹配 **Features** 中与 `res_model` 对应的专项 skill,读其 `reference.md` / `references/*.md` 中的字段与 domain 示例。
|
|
@@ -49,7 +64,8 @@
|
|
|
49
64
|
|
|
50
65
|
## 输出结构(对用户)
|
|
51
66
|
|
|
52
|
-
1.
|
|
67
|
+
1. 原有队列待办/历史:仅文档类型标签 + 数量。
|
|
53
68
|
2. 轨迹:时间顺序叙述,无内部 id。
|
|
54
|
-
3.
|
|
55
|
-
4.
|
|
69
|
+
3. 新版及 ERP 历史付款:直接展示已授权查询返回的来源、单号、申请人、金额、明细行、进度及附件名称。
|
|
70
|
+
4. 其他业务信息:经数据技能路径取数后,用业务语言转述。
|
|
71
|
+
5. 可给简短核对建议,不编造数据。
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: vps-purchase
|
|
3
|
+
description: "只读查询 VPS 原生采购申请及明细、ERP 采购订单及订单行。适用于采购单、办公采购申请、供应商订单、采购数量、单价、收货及开票数量查询。必须使用当前身份的独立采购只读权限。"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 采购只读查询
|
|
7
|
+
|
|
8
|
+
开始前读取 [vps-shared](../vps-shared/SKILL.md)。先用 `vps-work catalog --domain purchase` 检查当前企业可见能力。
|
|
9
|
+
|
|
10
|
+
## 权限和来源
|
|
11
|
+
|
|
12
|
+
- `purchase.requests.all:read`:本内部企业全部 **VPS 原生**采购申请及明细。
|
|
13
|
+
- `purchase.orders.all:read`:内部企业 ERP 业务库的全部采购订单及明细,可按公司筛选。
|
|
14
|
+
- 两项独立,沿用 VPS 角色 → 权限组 → 权限项配置;管理员、普通审批权限、付款权限均不自动获得。无权限应说明权限不足,不切换身份或绕过授权。
|
|
15
|
+
- ERP 订单查询要求企业开通 ERP;企业停用 ERP 不影响原生采购申请。
|
|
16
|
+
- 本入口不读取 ERP 历史 `cost.procure.apply`,不将 VPS 采购申请当成采购订单;不存在申请到 ERP 订单的推定关联。
|
|
17
|
+
|
|
18
|
+
## 命令
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
vps-work purchase +requests --start-date 2026-10-01 --end-date 2026-10-28 --limit 50
|
|
22
|
+
vps-work purchase +request-detail --id <VPS申请UUID>
|
|
23
|
+
vps-work purchase +request-lines --document-number <完整申请单号> --limit 50 --offset 0
|
|
24
|
+
vps-work purchase +orders --company-id 1 --status purchase --keyword <关键词>
|
|
25
|
+
vps-work purchase +order-detail --id <ERP订单整数ID>
|
|
26
|
+
vps-work purchase +order-lines --id <ERP订单整数ID> --limit 50 --offset 0
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
已有 CLI 可通过通用 `exec` 使用相同能力,无需等待快捷命令发布:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
vps-work exec --skill vps-purchase --script requests --param operation=list
|
|
33
|
+
vps-work exec --skill vps-purchase --script orders --param operation=lines --param id=123
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## 查询契约
|
|
37
|
+
|
|
38
|
+
脚本为 `requests` 或 `orders`,参数以 catalog 为准。`operation` 支持 `list`(默认)、`detail`、`lines`。
|
|
39
|
+
|
|
40
|
+
- 详情和明细必须提供一个标识:申请用 `submission_id`(快捷命令 `--id`),订单用整数 `id`,或二者都可用 `document_number` 精确匹配完整单号。多个同号记录返回冲突,改用 ID。
|
|
41
|
+
- 列表支持 `status`、`keyword`、`company_id`、`start_date`、`end_date`、完整单号;条件取交集。日期均按上海时区且包含两端,申请按提交日期,订单按订单日期。未提交日期为空的申请不进入日期筛选结果。
|
|
42
|
+
- 列表和明细分页:`limit` 1–100,默认 50;用响应 `next_offset` 继续,直到 `has_more=false`。不能把一页当作完整清单。详情不接受分页参数。
|
|
43
|
+
- 申请详情含 `details.purchase_lines`;订单详情返回 `line_count` 和 `lines_query`,另用 `lines` 分页取明细,避免静默截断。
|
|
44
|
+
- ERP 金额和数量按十进制字符串返回。申请明细区分预计数量/单价与实际采购数量/单价/金额。不同币种不得直接相加。
|
|
45
|
+
- `erp_buyer_user_id` 是 ERP 用户 ID,不是 VPS 用户 ID,不用姓名匹配身份。
|
|
46
|
+
- 仅返回固定业务字段,不返回附件 URL、上传凭据或审批操作能力。禁止任意模型、字段、SQL、domain、租户参数和写入动作。
|
|
47
|
+
- ERP 失败必须报告不可用,不得回答“没有订单”;申请查询不会依赖 ERP 在线校验。
|
|
@@ -67,7 +67,7 @@ description: |
|
|
|
67
67
|
- **开单率目标源例外**:分母必须显式传 `okr_source=legacy`,与管理端个人业绩目标页面一致
|
|
68
68
|
- **开单率固定排除**:国内渠道排除二级部门国内代理;AI渠道排除二级部门AI电商;输出必须披露
|
|
69
69
|
- **人产共用口径**:分母和固定排除与开单率一致,禁止改用在职人数或开单人数
|
|
70
|
-
- **取数走
|
|
70
|
+
- **取数走 VPS 业务工具**:通过 `vps-work sales +…` 查询 VPS 平台提供的销售数据,连接与认证由宿主管理,无需配置数据库连接
|
|
71
71
|
|
|
72
72
|
## 常见坑点
|
|
73
73
|
|
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: vps-store-management
|
|
3
|
-
description: "
|
|
3
|
+
description: "门店经营查询:Walk-in 按部门和日期筛选分组,门店库存按报表部门、门店和商品筛选分组,以及接待转化和客户画像。自然进店来源的经销商订单使用 sales +agent-walkin。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# 门店管理
|
|
7
7
|
|
|
8
8
|
**CRITICAL — 开始前 MUST 先读取 [`../vps-shared/SKILL.md`](../vps-shared/SKILL.md)。**
|
|
9
9
|
|
|
10
|
+
## Walk-in 与门店库存
|
|
11
|
+
|
|
12
|
+
按部门、日期查询客流使用 `vps-work store +walk-in`;查询当前门店库存使用 `vps-work store +inventory`。参数、组合分组和统计口径见 [references/store-analytics.md](references/store-analytics.md)。
|
|
13
|
+
|
|
14
|
+
库存报表中的部门是库位对应名称,不等同人事部门 ID;库存为当前账面数量,不要解释为可售数量。回答前核对 filter,跨页汇总使用 summary。
|
|
15
|
+
|
|
10
16
|
## 门店接待情况
|
|
11
17
|
|
|
12
18
|
使用 `vps-work store +reception`,详细参数和口径见
|
|
@@ -29,7 +35,9 @@ vps-work store +reception --period this_month --source dealer
|
|
|
29
35
|
## Script
|
|
30
36
|
|
|
31
37
|
- `skill_key`: `vps-store-management`
|
|
32
|
-
- `script_key`: `store_reception_summary`
|
|
38
|
+
- `script_key`: `store_reception_summary`、`store_walkin_summary`、`store_inventory_summary`
|
|
33
39
|
- 权限:`sales.headline_kpi:read`
|
|
34
40
|
|
|
35
|
-
返回除汇总和门店行外,还包含 `breakdowns`:接待类型、到店时段、单据状态、性别、年龄段、购买目的、手机品牌、客户来源、微信状态和意向商品。
|
|
41
|
+
`store +reception` 返回除汇总和门店行外,还包含 `breakdowns`:接待类型、到店时段、单据状态、性别、年龄段、购买目的、手机品牌、客户来源、微信状态和意向商品。
|
|
42
|
+
|
|
43
|
+
`store +walk-in` 和 `store +inventory` 返回 `summary`、分页 `rows` 与 `total_groups`,不返回 `breakdowns`。
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Walk-in 与门店库存
|
|
2
|
+
|
|
3
|
+
## Walk-in 查询
|
|
4
|
+
|
|
5
|
+
```sh
|
|
6
|
+
vps-work store +walk-in --start-date 2026-10-01 --end-date 2026-10-14 --group-by department,date
|
|
7
|
+
vps-work store +walk-in --department "上海国金" --period this_month --group-by date --date-grain week
|
|
8
|
+
vps-work store +walk-in --department-id 1464 --period today --source all --group-by all
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
接口为 `POST /v1/execute`,`skill_key=vps-store-management`,`script_key=store_walkin_summary`。
|
|
12
|
+
|
|
13
|
+
- `department` / `department_id`:接待所属部门精确匹配,不自动包含子部门。两者一起提供取交集。
|
|
14
|
+
- `start_date` / `end_date`:含首尾日期;只提供一端按该单日查询。也支持 `period`,默认本月。日期使用接待自然日,不根据成交日期归属。
|
|
15
|
+
- `store`:接待表单门店名称精确匹配。
|
|
16
|
+
- `source`:`store` 默认排除代理商、`dealer` 仅代理商、`all` 全部。
|
|
17
|
+
- `group_by`:`department`、`date`、`store` 的逗号组合;`all` 仅总计。默认 `department,date`。
|
|
18
|
+
- `date_grain`:`day` 默认、`week`、`month`;分组日期分别为当日、周一、月初。
|
|
19
|
+
- `limit` / `offset`:分组分页,默认 100 / 0,limit 上限 1000。
|
|
20
|
+
|
|
21
|
+
指标:`walkin_groups` 接待记录数;`walkin_people` 进店人数;`deal_groups` 成交组数;`deal_amount` 成交金额(仅成交记录)。保留未归属部门或门店为 null。此接口不将客流限于四个国内区域;需要旧区域、客户画像和转化率报表使用 `store +reception`。
|
|
22
|
+
|
|
23
|
+
## 门店库存查询
|
|
24
|
+
|
|
25
|
+
```sh
|
|
26
|
+
vps-work store +inventory --group-by department,store,product
|
|
27
|
+
vps-work store +inventory --department "北京国贸CL2009" --store "北京国贸" --group-by product
|
|
28
|
+
vps-work store +inventory --product "METAVERTU" --group-by store
|
|
29
|
+
vps-work store +inventory --product-code "商品编码" --group-by all
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
接口同上,`script_key=store_inventory_summary`。
|
|
33
|
+
|
|
34
|
+
- `department`:现有库存报表部门名称精确匹配,**不是人事部门 ID**。
|
|
35
|
+
- `store`:库位路径首段的门店名称精确匹配。
|
|
36
|
+
- `product`:商品名称或商品编码包含匹配,百分号和下划线按普通文字处理。
|
|
37
|
+
- `product_code`:编码精确匹配。多个筛选条件取交集。
|
|
38
|
+
- `group_by`:`department`、`store`、`product` 的逗号组合,或 `all`。默认三者组合。
|
|
39
|
+
- `limit` / `offset` 同上。商品分组保留 `product_code` 和 `product`,避免不同编码的同名商品混合。
|
|
40
|
+
|
|
41
|
+
复用 ERP 实时库存报表视图的库位排除和名称归一规则,只统计归类为门店库存的产成品、半成品,不包含工厂、线上、海外分类库存。`quantity` 为当前账面库存净数量,保留负数抵减;不代表可售库存。不接受日期参数,也不承诺历史库存查询。`queried_at` 是请求完成时间,不是某份物化快照的刷新时间。
|
|
42
|
+
|
|
43
|
+
## 返回值和权限
|
|
44
|
+
|
|
45
|
+
两个接口都返回 `filter`、`group_by`、`summary`、`rows`、`total_groups`、`limit`、`offset`。`summary` 是完整筛选范围,不能把单页 rows 当成全部结果;需要全部分组时按 offset 翻页。没有匹配记录时 summary 为零、rows 为空(`all` 分组返回一行零汇总)。
|
|
46
|
+
|
|
47
|
+
权限沿用 `sales.headline_kpi:read`,服务端 catalog 和执行入口统一检查。服务端通过既有 `VERTU_PG_*` 环境配置读取业务库,CLI 不接收数据库凭据。部署服务端后,旧 CLI 可通过 `catalog` / `exec` 发现调用;新快捷命令需要发布新版 CLI。
|
|
@@ -60,6 +60,19 @@ description: |
|
|
|
60
60
|
| `+tc-okr-options` | 当前用户可绑定的正式 OKR/KR;可选 `--period YYYY-MM`、`--owner-type`、`--owner-id` |
|
|
61
61
|
| `+my-okr` | 个人或团队 OKR(`--type mine|team`,默认 mine;`--period YYYY-MM` 省略=当前周期) |
|
|
62
62
|
|
|
63
|
+
## 简单日期查询的快速路径
|
|
64
|
+
|
|
65
|
+
“我明天的任务是什么”只查询当前用户在所问日期的事项,不默认扩展到其他部门、研发 MCP、品牌增长、审批、考勤或整周日历。用户明确要求跨系统时再扩展;“工作安排/日程”才增加本人日历查询。
|
|
66
|
+
|
|
67
|
+
当前 CLI 提供 `--start-time YYYY-MM-DD --end-time YYYY-MM-DD --date-field deadline|start_date`(待办不支持 start_date),日期范围含首尾两天。先在宿主当前 CLI 的帮助中确认这些参数可用;旧版本没有这些参数时不要猜测或声称已经按日期筛选。
|
|
68
|
+
|
|
69
|
+
- 当前用户身份已通过本轮认证上下文确认后复用,不重复查询身份。
|
|
70
|
+
- 第一次列表查询就传本人 `--owner-user-id <当前用户ID>` 和 `--no-include-department`,不要先读取全部门再筛选。
|
|
71
|
+
- 并行读取本人当天 `deadline` 到期任务、`start_date` 计划开始任务,以及 `deadline` 到期待办;日期按业务时区解释。任务 UUID 去重,不能把没有到期项说成“当天没有工作”。
|
|
72
|
+
- `has_more=true` 时继续翻页:任务 `--offset` 从 0 开始递增实际页长度;待办 `--page` 从 1 开始递增。没有完整读完不能声称零项或给出全量数量。
|
|
73
|
+
- 查询成功且范围内无结果就返回明确范围,不通过扫描无关系统“凑答案”。失败说明失败,不当作空结果。
|
|
74
|
+
- 实时语音优先先给结论和最多五条必要事项;不要生成长表格或顺带扩展任务。
|
|
75
|
+
|
|
63
76
|
## 工作流
|
|
64
77
|
|
|
65
78
|
1. 判断用户是查询还是写操作;任务/待办/项目都走 `+tc-*`。
|