You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

3.9 KiB

10 核心域·列表层改造

Type: task Status: resolved Blocked by: 07, 09

Scope

矩阵 #2/3/4/5/6/7/8/9/10/11/12/15/16(workspace 三件套):

  • 视图下拉补 FOLLOW_UP_DUE/RECENT(pool 越界视图不做禁用特判)。
  • 列筛选器六参数 UI + archiveStatus 归档态开关。
  • saved-view 四端点接线(save 发 JSON)+ savedViewId 查询;RECENT 不接。
  • 形态偏好 view-form get/save + 看板视图(mine/overview;summary 显式 groupColumn=stage、字段 cnt/groupValue;cards 渲染);pool 无看板选项 + I-06 静态注记;汇总卡与看板拆分。
  • 分屏/卡片形态占位(卡片=列表行子集)。
  • 列表补列(类型/行业/协议等级/VIP/进入公海时间——字段名以 field-alignment 为准)。
  • 分配弹窗整批化(assign-batch,保留 BatchResult 呈现)。

Accept

smoke-plan A 段步 2-7/归属动作可过;新增/改造 UI 不引入 console error。

Answer

(2026-09-11,AFK 实施。demo/index.html fork 基线 2350 行 → 2492 行(+142)。字段口径全部按 field-alignment.md K 注记与 #1/#7/#8/#9/#13-19 表。)

  1. 视图下拉五值齐全(矩阵 #2):补 FOLLOW_UP_DUE/RECENT;pool 越界视图不做禁用特判(SQL 自然空集);RECENT 选中时 svSel 禁用(saved-view 不接 RECENT)。
  2. 列筛选器六参数 + 归档态开关(#5/#6):第二行 viewbar 增加 archiveStatus(有效/已归档)+ customerStage/customerType(六种字典静态值)/customerStarLevel/relationStarLevel(1-5)/industryCode/provinceCode(code 输入框),loadList 全量携带 + 重置筛选按钮。
  3. saved-view 四端点接线(#7,P3-2 翻正):list 载入下拉、存为视图(save 发 @RequestBody JSON——唯一例外端点,conditions 本期只提交 1 组 keyword like)、选中→page 带 savedViewId、设默认、删除;scopeKey=customer.mine/overview/pool
  4. 形态偏好 + 看板视图(#8/#9,P3-1 翻正 + K3 落地):view-form/get 载入持久形态、save 发出;list/split/board 三态;看板=board/summary(显式 groupColumn,字段 cnt/groupValue 渲染,空列骨架前端补全)+ board/cards(groupValue 必传,卡片=列表行子集,不接 saved-view),分组列 stage/star/relation 可切;汇总卡面板整体移除(矩阵 #12 二选一取移除:A4 原型列表页无独立统计卡,board/summary 不再被挪用)。
  5. pool 边界:形态下拉不给 board 选项;pool workspace 显示 I-06 静态注记(data-defect="I-06",文本含「67001」+「记忆成功」双现象,不实调保 console 干净)。
  6. 分屏占位(#10):split=列表保留 + 行卡片预览面板(点击客户名称出该行子集卡片,不跳详情页)。
  7. 列表补列(#11):类型(字典文案)/行业(industry 树字典翻译,ensureDicts 增拉 tree?groupCode=industry)/协议等级/VIP 等级(null 显 "--");pool 列组切换:无负责人/部门列、加进入公海时间(原型差异口径);表头改 JS 动态渲染(listCols/paintHead)并补勾选列空表头(修复基线 11 th vs 12 td 错位);项目数按 K5 口径改按实返回 "--" 兜底(原硬编码 "--")。
  8. 分配整批化(#15/#16):dlgAssign 改取全部勾选 ids 走 assign-batch,BatchResult 三计数+失败明细表呈现;目标人员校验失败=整批拒绝(顶层非 0 落 errbox+提示预检语义)。

证据

  • Playwright 快验(_quickcheck.py,无 token 冷载):pageerror=0;新表头 15 列渲染;mine 形态下拉 3 选项;切 pool 后 I-06 注记可见、形态下拉仅 list/split。截图 demo/shots/t10-quick-pool.png。console 2 条=file:// 直连默认 API 的网络失败(冒烟经 route 反代后为 0,非本次 UI 缺陷)。
  • 完整 40 步冒烟归票 14(A 段步 2-7 断言本票行为)。