仅修改移动页面、明确page分支和移动专用接口。Web保持原功能、模板及默认调用不变。所有缺陷需对应真实UI或受控生产函数证据;模拟不计真实保存。
10/17客户迁移要求保留排序;10/18定稿只删显示字段。CustomerFilters常用增加datetimeDefs八项(lastTime/nextTime/dealTime/intoPoolTime/claimTime/protectTime/createTime/updateTime)及asc/desc,syncFromProps与buildQuery保留合法pair。reset清空;默认不传时待跟进nextTime asc,其余createTime desc。ensureFacet删除排序是正确行为,勿改。列表已透传query。
product-form-dialog只在isPageVariant使用el-tree-select的label slot,现有categoryOptions结合buildPathLabelMapFromTreeRoots。树节点保持categoryName、提交categoryId不变。报价移动表单/详情也按categoryId映射全祖先路径,失败退回原categoryName,不改payload/PC。
10/15报价设计D6及明细字段要求对齐Web,10/18未删这些能力。移动QuoteFormPanel目前只读,需搜索/清空Sheet及移动维护Sheet,复用handleBrandIdChange、prepareLineAliasAndBrandForSubmit、applyManagedProductMetaToLines。维护取消不写、失败保留输入、成功同产品多行同步、不自动选择新项。移动detail.vue原首别名/首品牌补值错误,改applyAliasDisplayMeta依已存productName反推别名、品牌只展示行快照。标准名应无别名,第二别名不能变第一别名。当前品牌any是合法默认。
M08和M07真实检索后document.activeElement=BODY。M08和M07详情返回搜索均为空,已真实确认。骨架应仅替换body,header常驻。扩展现有useListReturnState保存各自tab、搜索、日期、筛选、排序、展开、分页滚动;按账号/精确路由隔离,返回重新读取,不能恢复旧批量选中状态。
真实:全部+已齐备705条,列表含PO20261009022。更多计划号输入该值无匹配,清空候选仅500,终点PO20260922026。CertFilters.vue仅filterable,useColumnFacetOptions默认500且不接受keyword,无竞态隔离。
后端POST /transport/plan/column-facet-values已支持{...context,field,keyword,limit:500},先LIKE后升序再limit,没有分页/总数。主列表q与候选keyword不可混用。无需后端修改,不改共享Web hook。
仅CertFilters动态枚举换模块专用loader/搜索多选BottomSheet。覆盖planNo/licensePlate/loadCustomer/deliveryCustomer/productContract/productName/productSpec/productUnit。复用stripSelfColumnParams并保留原日期、客户合并、合同侧别、tab优先级上下文;保留合同侧别特殊选项。输入立即作废旧请求,防抖约300ms,清空立即;字段/上下文/关闭/卸载隔离旧成功/失败/finally。可见错误重试,不用空态吞错误。已选独立缓存跨搜索A+B保持;500上限提示缩小关键词。M07更多仅q/日期,不涉及此facet链路,不新增复杂列筛选。
M08更多确定按钮height=30px,低于44px;日期两端单列占首屏大部分。适当日期/数值短字段两列,长值全宽,最终375/414量测。合同移动主按钮已局部绿色44px,其他radio/switch/nav需复审;不可改Web全局变量。
合同detail/MpContractList、报价detail原审批人popup无搜索,Vant popup整体滚动导致顶部完成栏离开视口。Root合同实际38候选查找需长滚,管理员最后一项。改移动可搜索多选Sheet,固定头/操作栏、按姓名/账号查找、已选顺序/跨搜索保持、取消不提交选择;打开时取当前选择快照。复用新ContractPickerSheet或抽仅移动通用组件,不能改变Web或审批API。新合同表单ContractSubmitSheet已经有可搜索选择器,此次不要重复修改。