文睿 张
|
1a4b48cf9a
|
fix: 切换公司时重置组织级页面状态
- 组织级 store 统一提供 resetForOrganization,清空缓存、查询参数、分页与 loading
- 加载方法提交状态前校验捕获的公司 ID 与上下文版本,旧公司延迟响应不再覆盖新公司
- 页面重挂载清理局部状态(物料选择、单据 ID、申请详情、审批弹窗)
- 新增切换守卫,脏表单时取消切换不清空数据、保存期间禁止切换
- 接上库存事件消费与写请求的保存互斥标记
- 仓库配置页在已有仓库/库位时隐藏新增入口,仅保留编辑与启停
|
2026-10-09 14:19:17 +08:00 |
|
文睿 张
|
d580efebe5
|
fix: 接线公司实时连接生命周期并钉住角色撤销语义
- organization store 接线 companySocket:切换后为当前公司重连,登出/空状态只关闭不重连
- companySocket 延迟解析 WebSocket 并静默吞掉取票/建连失败,不阻断公司切换
- authApi 新增 createWebSocketTicket(组织级请求)
- 补 store 三例接线测试:切换触发重连、登出触发关闭、空公司不连接
- 补 Go 用例钉住复核边界:纯业务角色撤销、公司授权仍在时不断流
|
2026-10-09 13:50:08 +08:00 |
|
文睿 张
|
ffcf7748fb
|
fix: 补全公司切换的保存互斥与旧读请求中止
- 保存请求执行期间禁止切换:organization store 新增 saving/busy 与
beginSaving/endSaving,切换守卫与切换器禁用条件均由 switching 改为 busy
- 切换提交时 abort 旧读请求:commitOrganizationId 内调用 abortReadRequests,
不再只在 resetOrganizationContext 里取消
- validateCandidate 仅将 403 视为候选失效,网络异常/500 等向上抛出;
initialize 置 loadError,App 据此区分“加载失败”与“请先选择公司”并支持重试
- 补竞态与中止测试;需要写请求时旧响应仍被版本丢弃的用例改用 POST 覆盖
|
2026-10-09 10:34:19 +08:00 |
|
文睿 张
|
6cc3cd5dda
|
feat: 新增公司切换与请求上下文
- 新增 company 请求上下文工具、organization store 与公司切换器
- axios 拦截器为组织级请求写入 X-Organization-ID 并校验上下文版本
- 切换公司用 AbortController 取消旧读请求,丢弃旧响应且不弹提示
- 路由与页面加公司初始化屏障,组织级页面按公司 ID + 版本挂载
|
2026-10-09 10:19:19 +08:00 |
|