提交图
77 次代码提交
作者 SHA1 备注 提交日期
wangsli 69c831d578 feat(P19ERP2-3,P19ERP2-4): 新增采购ERP轨道接口与详情挂件 2026-03-08 23:50:11 +08:00
wangsli 855bcdffeb feat(P19ERP1-3,P19ERP1-4): 实现ERP凭证导出与管理入口 2026-03-08 16:29:05 +08:00
wangsli faff86c947 feat(P19IM1-3,P19IM1-4): 接入业务事件与通知渠道后台 2026-03-08 13:14:22 +08:00
wangsli 94cb0fdf23 feat(P18B-3,P18B-4): 实现资产盘点页面与流转前端入口 2026-03-07 23:20:43 +08:00
wangsli 447ffa66d2 feat(P18A-3,P18A-4): 实现资产台账接口与页面入口 2026-03-07 22:33:10 +08:00
wangsli 408186644c feat(P17B-3,P17B-4): 增加采购归档前端与审批链路E2E 2026-03-07 22:01:06 +08:00
wangsli 7f1c3e842d feat(P17A-3,P17A-4): 实现采购申请接口附件与前端入口 2026-03-07 20:59:42 +08:00
wangsli 0259aa45c3 feat(G2-4): 升级预算页为多作用域模式 2026-03-07 18:59:58 +08:00
wangsli 09b6f4fbb0 feat(P16C-4,P16C-6): 完成供应商主数据前端与矩阵收口 2026-03-07 17:44:55 +08:00
wangsli 195f46a2e3 feat(G1,P16A,P16B): 收口主数据核心与节假日日历增强 2026-03-07 17:29:03 +08:00
wangsli 4ba311199d feat(P15B-1,P15B-6): 完成请假V1闭环 2026-03-07 08:11:24 +08:00
wangsli 3b221a2202 feat(P11-P12): 落地治理开关与移动端MVP(G0-G6/H1/M1-M4)
- 新增 Feature Flag 模型、评估服务与管理 API(erp_sync/invoice_verification)\n- 完成 ERP 与验真灰度收口(路由/服务/作业统一判定)\n- 补齐 pay 与手动 sync 的 department_id 灰度上下文\n- 增加管理后台开关页、PWA 基础设施与移动拍照/审批页面\n- 增加回归脚本、安全基线与压测脚本,更新文档与执行合同\n\nIssue: G0,G1,G2,G3,G4,G5,G6,H1,M1,M2,M3,M4
2026-02-11 20:33:30 +08:00
wangsli 4e5a7793fe feat: 完成P6-P8前端能力闭环(V3,D2,D3,B3) 2026-02-10 11:28:51 +08:00
wangsli f233a0d5bc feat: 完成 F17 报表导出(CSV/XLSX)\n\n- 后端新增 /api/exports/* 导出接口(含权限与审计记录)\n- CSV 采用流式生成,XLSX 使用 exceljs\n- 前端在报销/票据/审计页加入导出入口(下载 Blob)\n- 更新 P5 蓝图 v3 中 F17 状态为 DONE 2026-02-09 19:35:51 +08:00
wangsli 2c58061ec7 feat: 完成 F18 审批规则维护(API+前端)\n\n- 新增 /api/approval-rules 管理接口(system.settings)并写审计\n- 前端新增审批规则页与菜单入口(system.settings)\n- 更新 P5 蓝图 v3 中 F18 状态为 DONE 2026-02-09 19:20:53 +08:00
wangsli c9ac18e2e2 feat(client): 完成 F34 票据中心增强\n\n- 补齐人工修正/手工归档/解绑/重试 OCR/判重例外等入口\n- 补充 data-testid 并与后端错误码映射保持一致\n- 更新 P5 蓝图 v3 中 F34 状态为 DONE 2026-02-09 18:55:46 +08:00
wangsli b341e2fa63 feat(client): 行政代提交/代上传 owner 选择入口(F33)
- 报销创建支持选择 ownerEmployeeId(delegation-grants received)
- 票据上传支持 owner_employee_id(delegation-grants received)
- 保持普通员工流程不变,权限不足由后端阻断
2026-02-09 18:32:38 +08:00
wangsli efa4a3d3f6 feat(client): 部门管理与员工创建增强(F32)
- 新增部门管理页:列表/创建/归档
- 用户创建支持选择部门与直属上级
- 补齐 departments/employees API 封装与导航入口
2026-02-09 18:24:07 +08:00
wangsli 2566289d37 feat(client): 首次登录改密守卫与错误文案(F35,F38)
- 登录响应支持 mustChangePassword 并强制跳转改密页
- 新增改密页面与全局路由守卫
- 完善 AUTH_002/SYS_429/VALID_00x 等错误提示
2026-02-09 18:16:22 +08:00
wangsli 273caf10a9 feat(client): 通知中心与未读角标(F16)
- Topbar 增加通知铃铛与未读数
- 新增 /notifications 列表页,支持筛选与标记已读
- 为 workflow/reimbursement/auth 通知提供跳转入口
2026-02-09 18:01:27 +08:00
wangsli a4f38792f1 feat(client): 报销明细编辑器与费用类型下拉(F6)
- 报销详情新增明细列表与新增/编辑/删除入口
- 接入费用类型只读接口并保持总金额自动刷新
- 补 data-testid 以便 E2E/回归
2026-02-09 17:54:59 +08:00
wangsli fc50ffc808 feat(client): 用户管理页 + E2E 门禁(E15/E16/E18)
- 新增系统用户管理页(创建/禁用启用/重置密码/角色)

- 引入 Playwright E2E:覆盖登录-报销-待办-票据-OCR-支付-登出

- 新增 ci-e2e 工作流(PR + nightly)
2026-02-09 01:13:14 +08:00
wangsli f4c476883e feat: 默认账号文档与登录失败体验(E8)
- README 补充 seed:dev 默认账号(仅本地联调)
- LoginPage 增加后端不可达提示与 data-testid
- errorMessages 补充 SYS_001/AUTH_003 可读化
2026-02-08 23:42:59 +08:00
wangsli a707edd3c9 feat(client): 委派管理页最小运营闭环(E7)
- 新增委派 API 封装与委派管理页面(创建/列表/撤销)
- 增加菜单入口与路由守卫(expense.proxy_manage)
2026-02-08 23:38:38 +08:00
wangsli 7a6f5573a6 feat(client): 完成 P3 业务页联动闭环(D6/D8/D10/D11)
- 待办:列表/详情 + approve/reject/return/transfer(D6)
- 报销:列表/详情 + create/submit/withdraw/pay(D8)
- 票据:列表/上传/OCR轮询/绑定/预览(D10)
- 统一:Api types + 错误映射 + react-query缓存失效(D11)
2026-02-08 23:08:41 +08:00
wangsli 4c7018ca4a feat(client): 增加审计日志页面与权限路由菜单 2026-02-07 21:54:37 +08:00
wangsli c290e03fef feat(client): 初始化前端壳与鉴权守卫(P1-5)
- 技术栈:React 18 + TypeScript + Vite + Tailwind

- API 层:ApiError + 401 自动刷新 + single-flight 重试

- 鉴权:内存 Access Token + Cookie Refresh + 启动 bootstrap

- RBAC:权限映射 + RequireAuth/RequirePermission 路由守卫

- 布局:OA 工作台壳层 + 侧边栏 + 5 个占位页面

- 样式:复用 hyb-web 视觉 token(单向同步)

- 文档:新增 client README,补充 server 联调说明
2026-02-07 16:43:57 +08:00