| # | 需求 | 桌面端 | 移动端 | 后端 |
| 1 | 库存抽屉加供应商 | 两端共用同一抽屉组件(product_editor_drawer.dart 的 _infoBody,桌面=右滑抽屉 / 移动=底部 sheet),加一行两端同时生效;由库存列表调用点传 item.supplierName,其它调用方不传即不显示 | 零 |
| 2 | 批次号↔生产日期换位 | inventory.html COLS + _colDefs 对调(批次号第4列 ↔ 生产日期第8列);列偏好按 key 存,用户配置不受影响 | 移动端无批次号字段,不涉及 | 零 |
| 3 | 出入库单抽屉加「生产日期+批次号」 | 明细表插双行列(上=生产日期 fsSm mono,下=批次号 fsXs 小字,照抄「商品·编码」列先例):入库 5→6 列微调列宽不加宽;出库管理员 7→8 列太紧,抽屉 600→660px(L1 atoms.css .drawer.wide 与 Flutter 常量同提交) | 明细行金额左侧同样插入双行列(上=生产日期,下=批次号小字,与桌面同构;两值皆空不渲染) | 零 |
| 4 | 状态筛选多选 + 默认草稿+待审核 | 状态 chip 单选 PopupMenu → 库存屏已有多选先例 showDsMultiMenu(摘要 值/「N 项」/ × 清) | 状态底部 sheet 单选 → 多选勾选;KPI 卡点击=覆盖单值 | 零(已支持逗号多值) |
| 5 | 新建单默认填默认仓库 | 两表单共用同一代码路径(OrderFormShell docHead),新建模式仓库列表加载后 ??= 默认仓(无默认仓且仅一仓则取它),改一处两端生效;编辑模式不受影响 | 零 |
| 6 | 财务加往来单位筛选 + 统一时间组件 | 流水表 toolbar 加 ComboSearchField(照出库「客户」筛选),数据源 allPartnersProvider | 时间 chips 行尾加「往来单位」chip → 底部 sheet 可搜单选(财务移动屏无 toolbar/详搜结构,此为最轻形态) | 零(partner_id 已支持) |
| 6b | 自定义时间统一 | showDateRangePicker(Material 原生)→ 入库管理用的 showDateRangeDropdown(桌面=chip 下拉双滚轮 / 窄屏=底部 sheet,组件内部自适应,一处改动两端生效) | 零 |