Files
one_divine_lot/docs/02-计划/计划-分仓管理工具完善与优化.md
T
2026-08-29 16:20:33 +08:00

56 lines
3.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.
# 计划:分仓管理工具完善与优化(阶段航点)
> 编号:PLAN-002 | 粒度:阶段航点(大粒度) | 创建:2026-08-28 | 状态:待执行
> 派生自终极目标:目标-001(DSH 插件形态)、目标-002(策略定义能力)
> 依据需求:**R-003(已定稿,2026-08-28** —— 符合入范围门槛
> 设计约束:产品约束-002/003/004、技术约束-001~007
## 目标
对 R-002 分仓管理工具进行完善与优化:O2 策略 tab 动态化、O3 策略 CRUD 设置界面、O5 数据加载失败兜底提示+重试、O6 份额快捷操作。将「分仓管理」从写死的 3 tab 形态升级为「策略配置驱动 + 完整策略管理 + 健壮加载体验」的可用工具。
## 范围
**做**(对应 R-003 定稿范围):
1. **O2 策略 tab 动态化**
- tab 由服务端策略配置驱动(进入/设置变更后重新拉取策略配置);
- 隐藏策略的 tab 不显示;
- 策略变更后提示用户手动刷新(不做自动广播/轮询);
2. **O3 设置界面完善(策略 CRUD)**
- 新增策略(自动生成英文 id slug);
- 重命名策略(分配数据挂 id 不挂名称,改名不影响);
- 删除策略(弹窗确认 + 份额回未分配,产品约束-004);
- 排序(上移/下移按钮);
- 预置策略(网格超市/手动做T)可删除,彻底自由;
- 保留显示/隐藏开关;
3. **O5 数据加载失败兜底**
- 页面/表格数据加载失败 → 显示常规失败提示(含原因)+ 重试按钮;
- 自动重试 2 次(间隔 2s),仍失败显示提示 + 手动重试;
- 超时(15s 可配置)给出提示;
- **非数据源状态监控**(不引入全局状态栏);
4. **O6 份额编辑体验**
- 单票「全部移入」:该票未分配份额全部移入当前策略(行内操作);
- 策略「一键清零」:当前策略内全部移出(弹窗确认);
- 保留 step=100 步进 + 手动输入任意值;
- 操作反馈:顶部轻提示(成功绿/失败红,3s 消失)。
**不做**(本期):
- O1 持仓信息补全(现价/市值/盈亏列展示)—— 后续评估;
- O4 数据实时刷新(定时轮询 / WebSocket)—— 后续;
- T-005 WebSocket 实时推送 —— 不转正,留草稿;
- 数据池/数据集中间层 + 动态字段配置(T-006 草稿)—— 独立需求另行讨论;
- 表格列可配置 —— T-006 落地前保持代码写死;
- 网格参数管理、做T 记录、风控 —— 后续。
## 实现方式
- 沿用独立插件 one-divine-lot,服务端(src/index.js、api.js、settings.js、position/manager.js+ 客户端(src/client/)改造;
- 遵循技术约束-004webServer 自开路由)、-005(客户端 bundle ModuleLoader 包装)、-006slots.register 第二参数)、-007dsh plugin add 安装);
- 涉及客户端 UI 改造,遵循技术约束-005/006。
## 验收标准(迭代细化)
1. 设置中增删改/隐藏策略后,主窗口 tab 栏同步更新(手动刷新提示出现);
2. 策略 CRUD 完整可用:新增(自动 id)、重命名、删除(弹窗确认 + 份额回未分配)、排序、显隐;
3. 数据加载失败时显示失败提示(含原因)+ 重试按钮,重试后恢复;
4. 份额操作支持「全部移入」(单票)与「一键清零」(弹窗确认),操作有轻提示反馈;
5. 现有功能(全部持仓/策略持仓展示、份额分配、本地持久化)不回归。