CRM 日期列头排序 Demo

在现有漏斗过滤旁增加日期列排序(正序 / 倒序)。样式对齐 Fresh Mint。 打开本文件即可交互:点击切换排序,表格会即时重排。

工作量结论: 只给 type: 'datetime' 的列加排序 —— 改公共列头组件 + 列表查询加一个排序参数,改动集中、可控。 若所有有漏斗的列(文本/枚举/数字/日期)都加 —— 前端交互可复用,但后端几乎每个 CRM 列表接口都要做白名单排序字段,工作量大约是「日期方案」的 2~3 倍,且数字/文本排序语义更啰嗦。 建议先只做日期列。

方案范围 A · 仅日期列 推荐

  • 前端:列头组件识别 datetime → 显示排序控件
  • 后端:列表支持 sortField + sortOrder(白名单仅日期字段)
  • 默认仍是 create_time DESC;点列头后覆盖

方案范围 B · 所有漏斗列

  • 交互可做成通用,但文本/枚举排序价值一般
  • 数字列还要处理空值、精度
  • 每个列表 API 白名单字段更多,联调面大

交互样式对比(选一种即可)

样式 1 · 点击列名循环 推荐

无排序 → 升序 → 降序 → 无。漏斗只管过滤,互不干扰。

创建时间 ↑

样式 2 · 双三角(Element 风格)

上下三角独立点选;与漏斗并排,更贴近表格库默认习惯。

创建时间

样式 3 · 放进漏斗面板

排序入口藏在过滤弹层里;列头更干净,但多一步点击。

创建时间

客户列表(示意)

日期列:点击列名循环 无 → 升序 → 降序
已选 0 项 非日期列仅有漏斗,无排序
客户名称
状态
负责人