4.0 KiB
4.0 KiB
2026-07-21 表头筛选功能全面优化(全天汇总)
旭东 → OpenClaw:
(全天多个优化请求合并汇总)
- 计划预测、国内订单管理、海外订单管理、包材订单管理4个菜单下的表头筛选三角形按钮大小调整至20px
- 联动筛选—筛选了某个列后,再点其他列的下拉选项,会基于已筛选的数据显示,但是目前我在货品编号列筛选之后,产品类型列显示的还是全部选项,并且都是勾选状态
- 采购计划列筛选胡孟怡后,采购跟单列筛选显示人员不是组别;采购跟单列筛选跟单三组人员只是排序到前面不是筛选;点击表头筛选卡一下加载中
- 数字列的筛选没有做到全量筛选,还是只对当前页面内容进行筛选
- 采购跟单列表头筛选显示还是人名,没有显示组别
- 需要加一个筛选状态显示,比如我对某几列筛选时,我需要能看见我筛选了哪几列
- 默认标签改回为"内容筛选",值只从当前页DOM提取是错误的,需要从全量2785条数据里面筛选
- 筛选昨日销量39出11条数据后,再点总库存列筛选,显示的是全部2785条数据而不是当前11条
- 联动和全量不冲突:无筛选状态是全量,有筛选后再筛就是联动
- 产品类型列筛选成品+现货后,再次点击表头筛选只显示成品勾选
- 数字列的升序降序功能需要加上
- 数字列的内容筛选又显示暂无数据
OpenClaw 响应:
一、筛选三角按钮调整
- 4个菜单的筛选▾字符大小统一调整为20px(涉及计划预测/国内/海外/包材订单的app.js 4处+计划预测表头重建1处)
二、联动筛选修复
- 订单页面:
openOrderFilterMenu调用后端column-values时传入order_filter参数 - 计划预测:预定义列有筛选时从DOM提取已筛选行的唯一值;数字列拉值传
plan_filter参数 - 后端列值API支持
plan_filter联动过滤
三、人员字段优化
- 前端:
column-values结果对procurement_follower/planner做人员→组别转换(处理逗号分隔多值) - 后端:
__multi__过滤的db_col_map加入人员字段,组名展开为具体人名做SQL LIKE匹配,客户端过滤循环也加组名展开 - 计划预测初始加载+表头重建时的人员字段筛选下拉都显示组别
四、筛选状态可视化
- 计划预测初始加载+表头重建:筛选中的列图标变为蓝色▼、表头浅蓝底色
- 订单页面:已有
_syncOrderFilterIcons机制,筛选列图标蓝色
五、数字列全量筛选
- 后端
if not values: continue跳过num类型 → 改为if ft != 'num' and not values: continue db_col_map扩展加入成本价、生产货期、物流时间、最低起订量- 前端向后端传
order_filter参数支持订单页数字筛选
六、数字列内容筛选优化
- 内容筛选值来源改为从
/api/planning/column-values后端拉全量唯一值(不再读当前页DOM) - 默认标签改回"内容筛选"
planNumFilterApply改为双模式:内容标签创建list筛选,条件标签创建num筛选- 内容筛选联动支持:有已有筛选时传
plan_filter - 添加升降序按钮(▲升序/▼降序)
- 后端列值API新增40+计算字段(昨日销量/库存/日销量预测等)的全量enrichment查询
- 提升级SW缓存版本(v7→v8)和JS版本号(v1653→v1654)排除缓存干扰
七、筛选状态回显
- 预定义列已有筛选时重新打开,显示完整选项列表+已选项勾选状态(不再只显示过滤后的选项)
八、加载闪烁
- 去掉
_createFilterMenuShell中的"加载中..."占位文字
涉及文件
static/js/app.js:前端全部筛选逻辑routes/planning.py:后端计划预测筛选+列值APIstatic/sw.js:Service Worker缓存版本templates/base.html:JS版本号- 4个菜单(计划预测/国内/海外/包材订单)同步优化
- 部署于192.168.8.186测试环境,多次重启Gunicorn生效