my_local_kimi_dev2
e1fcae2eb1
feat(mcp): add agent.user.list.query for agent-role user listing
...
查询 m0.user 中 enterprise_type=1 的代理角色用户,返回所属权限组、
dept_user 部门岗位明细与当前站点;行级权限复用 visibleAgentIds
(总部全量/代理商自己+直属下级+代管),mobile 原样不脱敏,
idcard/password/openid 不进白名单,不返回位置字段。
设计:doc/agent-user-list-mcp-tool-design.md(2026-10-13 王恒拍板)
2026-10-13 11:33:19 +08:00
my_local_kimi_dev2
f55e07f6ec
feat(mcp): 新增 district.paper.trace.list.query 客户换纸记录工具 (REQ-20261012-0002)
...
- ES paperuselog 热/冷索引 + LocalEsDate 云/本地集群路由(复用 statistics 同款)
- 出分页明细(from+size+track_total_hits),不复刻老系统 scroll 轨迹展开
- snCode/rfid 走 .keyword 精确匹配(修老系统 matchQuery 分词坑)
- state 可选(2上纸/4撤纸,不传查所有,修老系统强制覆盖坑);区间硬限 31 天
- applyDistrictRowFilter 站点可见性校验(老系统此接口无鉴权属历史遗漏,MCP 收紧)
- isAssignment 查 m0 rfid_info assignment_flag>=1;v1 不返回满卷标记
- 单测 420/420(新增 gateway 4 例 + 工具 9 例)
2026-10-12 14:18:30 +08:00
my_local_kimi_dev2
3f7a487f38
feat(district): 新增 district.paper.position.detail.query 客户用纸详情工具 (REQ-20261012-0001)
...
- 纯 MySQL monthly_statistics,位置(厕位/厕墙)×日期分组
- 修复老接口整数除法截断 bug,厕墙人均改 null
- 位置命名直查 positions/toilet,补行级权限
- 扁平 rows[] 输出,seed/文档登记
2026-10-12 11:54:33 +08:00
qiudl
c1ebb30cce
Merge remote-tracking branch 'origin/main' into feat/REQ-20260922-0004-paper-percapita
...
# Conflicts:
# xiaoqu-agent-service/README.md
# xiaoqu-agent-service/doc/agent-mcp-tools-reference.md
2026-09-22 11:30:56 +02:00
qiudl
7385b06bd9
feat(mcp): 新增设备日均用纸统计工具 (REQ-20260922-0007)
2026-09-22 11:29:08 +02:00
my_local_kimi_dev2
b3b5877e26
feat(hardware): 新增设备电量消息记录查询工具 (REQ-20260921-0007)
2026-09-21 17:59:20 +08:00
qiudl
315f9bafff
feat(hardware): 新增电池故障列表查询工具 (REQ-20260921-0006)
2026-09-21 10:43:30 +02:00
my_local_kimi_dev2
3f46b64218
feat(open): 服务身份免登录分页查询(REQ-20260921-0004)
...
- agent_scope 新增 service_enabled 标记(Flyway V7 + 回滚),服务 Token 签发
由 sync 硬编码改为标记驱动,管理后台作用域 CRUD/前端支持该标记
- PermissionService 全部行过滤入口加 tenant_service 分支:服务主体总部视角
全量可见不做行过滤,用户身份行为不变;非服务主体的 null user 显式拒绝
- warehouse.todo.list.query 按当前登录人统计,服务身份返回 PERMISSION_DENIED
- RateLimitService 新增 SERVICE-QUERY 独立限流档(默认 300/分钟)
- seed-dev.sql 新增 ops-query 作用域并绑定全部在线查询工具
- 文档:tools-reference §0.3、README Open API 服务 Token 段
2026-09-21 15:58:08 +08:00
wangheng
1f433b5275
新增 district.paper.statistics.query 客户用纸统计工具(含 ES 7.17 客户端引入) ( #23 )
2026-09-20 18:54:30 +08:00
wangheng
c3aa167403
[REQ-20260917-0003] 取货工单 MCP 查询工具(列表+详情) ( #19 )
2026-09-17 11:44:21 +08:00
mcp_dev1 and my_local_kimi_dev2
936590a3e3
feat(mcp): add install order query tools (REQ-20260916-0009)
2026-09-16 17:15:24 +08:00
wangheng
6c8fe2e3bb
[REQ-20260916-0020] 送货工单 MCP 查询工具(列表+详情) ( #18 )
2026-09-16 16:41:08 +08:00
my_local_kimi_dev2
78e319c2f9
feat(mcp): add warehouse todo unified query tool
...
Merge outbound/inbound/allocation process views into warehouse.todo.list.query,
filtered by task assignee (user_id) matching legacy todo semantics (REQ-20260915-0008)
2026-09-15 17:32:59 +08:00
jiashumeng and xiaoqu
e2835362e9
feat(mcp): add warehouse inbound query tools
2026-09-15 16:31:40 +08:00
jiashumeng
e064e86def
feat(admin): add managed Open API client keys
2026-09-15 12:05:26 +09:30
xiaoqu
795a433f35
feat(mcp): 新增 integration.context.get 身份与能力自检工具 (REQ-20260911-0012)
...
- 实时取 AkAuthFilter 鉴权上下文(ThreadLocal AuthContext)+ ToolGuard 同源能力计算,不缓存权限
- tenant_id 映射启用作用域编码;principal_type 集中在 IntegrationContextService.resolvePrincipalType
判定(当前按 token 绑定用户推导 user_delegated,5629 给 agent_api_key 加 principal_type 列后仅改该方法)
- data_scope_version = token_scope 绑定集合最大 modify_time 的 epoch 毫秒,无状态计算
- capability_levels 数据驱动:能力集合含 *.changes.list 工具即具备 SYNC,当前返回 QUERY
- seed-dev.sql operation 作用域白名单加入该工具
2026-09-11 23:10:19 +08:00
xiaoqu
f2ac17731a
feat(mcp): 统一输出规范与错误码体系——schema_version 双跑信封 + 8 错误码收敛 + 工具只读声明 + 日志脱敏 (REQ-20260911-0011)
2026-09-11 22:48:14 +08:00
xiaoqu
5daecc8ae8
docs(agent-service): 更新生产 HTTPS 部署文档(agent.ququclean.com 上线)
2026-09-11 10:34:09 +08:00
xiaoqu
8c872ac15d
feat(open): ensure支持二次获取明文(ak存AES-GCM密文key_cipher, app.token-cipher-key派生密钥); 历史无密文Token自动轮换; V3迁移+回滚方案; 同步文档
2026-09-07 12:41:03 +08:00
xiaoqu
237a1f1c26
feat(mcp): tools/list按token作用域过滤(servlet层重写响应); ToolGuard.allowedToolNames批量查询; AkAuthFilter定序@Order(10)
2026-09-04 18:00:41 +08:00
xiaoqu
965b314751
feat(token): 一作用域一Token(签发N个作用域生成N把); 新增Open API /api/open/token/ensure(get-or-create, X-Open-Key鉴权, 明文不可回吐)
2026-09-04 16:53:18 +08:00
xiaoqu
80b0035ba6
docs: 客户端接入改明文ak配置(headers.Authorization), 去除XQ_API_KEY环境变量写法
2026-09-04 15:45:55 +08:00
xiaoqu
af23ced207
feat(config): dev环境DB/Redis连接信息明文写入application-dev.yml, 不再走环境变量; 同步README/.env.example/设计文档
2026-09-04 14:28:53 +08:00
xqzp2026
87659f9de9
fix(database): enforce Flyway migration governance
2026-09-03 18:28:10 +09:30
xqzp2026
b1dd68a14c
feat(admin): implement P4 management console
2026-09-03 18:01:00 +09:30
xiaoqu
7eaf51973a
新增本机部署脚本 deploy/deploy.sh(build/start/stop/restart/status/log+健康检查), 凭据走 gitignore 的 deploy/.env.dev; README 补部署说明
2026-09-03 15:05:02 +08:00
xqzp2026
e501afe292
fix(security): 收紧 MCP 数据权限并移除默认凭据
2026-09-03 16:00:19 +09:30
xiaoqu
ddd4b3b4ed
property.list.query 销售非负责人规则改为 1:1 复刻老代码 saleFlag 分支(id IN 自建∪代管物业,互斥 return);新增销售视角种子 ak,dev 实测 total=14 与老语义 SQL 逐 id 一致
2026-09-03 14:00:13 +08:00
xiaoqu
fd7ec29374
property.list.query 移除 enterprise_type=2 物业用户限制:物业用户不查此列表,与老 /property/listByPage 语义一致(PermissionService 保留 isPropertyUser 通用方法);同步设计文档 §9.1 与 README,回归 total 141/73 不变
2026-09-03 13:47:01 +08:00
xiaoqu
674c4ea7e6
xiaoqu-agent-service P3 首批工具完整版:agent.list.query 补齐入出参与 supervisorName 批量富化,新增 property.list.query(完整版行权限),rows 上限截断提示,LLM 友好 description,种子与 README 客户端接入说明,curl 实测隔离正确
2026-09-03 12:40:19 +08:00
xiaoqu
70a45cf3b9
xiaoqu-agent-service P2 权限层:自有库 7 表 + svc 数据源,/mcp ak 鉴权(401/ThreadLocal),tool 表启动同步 + scope 强制校验,行级数据权限引擎(移植 getByIsAgent),agent.list.query 基础版,audit_log 审计,种子数据与 curl 全流程实测通过
2026-09-03 12:01:09 +08:00
xiaoqu
7a9ea1e888
新增 xiaoqu-agent-service:P1 骨架(Spring Boot 3.5.16 + Spring AI 1.1.8 MCP Streamable,三数据源连通,codegen 生成 m0/m2 实体,sys.ping/agent.count demo 工具实测调通)
2026-09-03 11:18:51 +08:00