Files
xiaoqu_mcp_service/xiaoqu-agent-service/doc/relocation-order-mcp-tools-design.md
T

56 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 移机工单 MCP 查询工具设计
对应 AI-Proj 需求:`REQ-20260917-0010`。
## 工具
- `relocation.order.list.query`:对齐老系统 `POST /relocationOrder/pageList`,提供稳定分页和结构化状态文案。
- `relocation.order.detail.query`:按主键或移机工单号返回主单、移机明细、人员、已办流程和结单凭证。
两个工具均为 `workorder/read`,只读访问 m2 数据源。
## 数据来源
| 数据 | 表 | 关联方式 |
|---|---|---|
| 主单 | `relocation_order` | `id` / `order_no` |
| 移机明细 | `relocation_order_details` | `order_no` |
| 已办流程 | `order_process` | `order_no`,并限定 `order_type=4`、`schedule_state=2` |
| 当前及流程人员 | `install_order_user` | `install_order_no` / `install_order_process_id`,并限定 `type=2` |
| 结单凭证 | `warehouse_in_out_pic` | `aggregate_id=结单流程.id`、`in_out_allocation_type=15` |
附件仅返回 `id/fileName/bucket/objectKey`,服务不生成公开 URL。
## 列表契约
支持工单号、所属代理、项目、申请人、移机人员、协同人员、状态及申请/审核/调度/完成日期范围。
日期格式固定为 `yyyy-MM-dd`,结束日期按次日零点开区间实现“包含当天”。分页默认 `1/20`,每页上限
100,固定按 `id DESC`,避免旧接口未显式排序导致翻页漂移。
状态:0 待提交、1 待审核、2 被驳回、3 调度中、4 作业中、5 已完成、6 已取消。
## 详情契约
`id` 与 `relocationOrderNo` 至少传一个;同时传入时作为同一主查询的 AND 条件,必须命中同一记录。
不存在和无权访问均抛出 `NOT_FOUND_OR_FORBIDDEN`。
返回:
- `record`:主单及状态文案;
- `relocationDetails`:设备、源/目标位置、卫生间类型、执行状态与备注;
- `maintenanceUsers/cooperateUsers`:当前人员;
- `processes`:非抄送的已办流程,按操作时间、ID 正序,并附流程对应人员;
- `completionCertificates`:所有结单流程关联凭证。
## 行级权限
列表和详情均复用 `PermissionService.applyRelocationOrderRowFilter`:
- 总部身份查看全部;
- 普通代理查看本代理、授权代管代理、授权代管物业范围;
- 销售非负责人查看自己创建及授权代管代理名下物业;
- 当前用户参与过 `order_process` 且 `order_type=4` 的工单可见;
- 当前用户出现在 `install_order_user` 且 `type=2` 的工单可见,覆盖调度后尚未生成流程记录的作业人员。
代理身份未绑定代理商时失败关闭。