Commit Graph

4 Commits

Author SHA1 Message Date
weicw-dshsa 876847ccbb feat(自主填报): 销量填写拆为独立页并按原型改版
甲方反馈原销量填写功能难看、不好用,按原型图改版。

改造前,销量填写是自主填报页内的一个区块(新增商品 → 底部弹层选品 →
回列表手输数量),与原型差异大。现拆为独立页面。

新页 packageUser/self-report/sales:
- 视觉对齐原型:搜索框 + 筛选、新增商品 + 批量填写、卡片式列表
  (序号徽标/封面/分类/厂家/编码/规格胶囊/数量步进器/删除)、底部提交
- 新增搜索(按名称或编码过滤清单)
- 新增分类筛选(弹层选择,可清空)
- 新增批量填写(弹层一次录入多项数量)

自主填报页(create.vue):
- 销量区块改为入口卡片 + 摘要列表,明细编辑移入新页
- 提交按钮文案「提交销量」改为「提交填报」——该页提交的是整单
  (打卡/门头照/销量/小票/小结/评分/定位),原标题名不副实
- 删除已迁移到新页的商品库选择逻辑(约 270 行)及废弃样式

页面间交接(util/sales-handoff.js):
- 工程无全局状态管理,页面间只能靠 storage 传递
- 仅负责一次性交接,消费后即清;持久化草稿统一由自主填报页的
  整单草稿负责(其 buildDraftPayload 已含 salesItems),避免两份状态互相覆盖
- 换连锁/换门店后清空销量明细与交接数据

修复:
- 数量步进器改用纯文本按钮。原用 u-icon 时点击无效——该组件根节点自带
  @tap,会吃掉落在图标上的点击;同页「删除」按钮因带文字才正常
- 数量输入限制为非负整数。type=number 在部分机型仍可输入 . / e / -,
  故增加输入清洗与失焦兜底;采用「取开头连续数字」而非「删掉所有非数字」,
  后者会把 1.5 抹成 15、1e3 抹成 13,属静默的数据污染

提交结构 salesGroups 未变,后端与审核端无需调整。

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-11 18:47:03 +08:00
weicw-dshsa 9eaa168d72 feat(填报记录): 被驳回记录支持修改后重新提交
- records.vue:已驳回记录卡片底部新增“重新提交”按钮,跳转
  create?id=<id>&mode=resubmit;同时补上驳回原因展示
  (原 normalizeRecord 未提取 rejectReason,列表页看不到驳回理由)
- create.vue:复用同一表单页做编辑模式,onLoad 读 id/mode,
  回填门店、日期、打卡照、摆台照、小票、销量、小结、评分、定位;
  标题与按钮切换为“重新提交填报/重新提交”,隐藏保存草稿
  (草稿 key 与新增共用,会互相覆盖)
- 提交走 resubmit 接口,成功后返回列表,onShow 自动刷新为待审核
- api/self-report.js:新增 selfReportResubmitReq
2026-10-11 17:05:12 +08:00
weicw-dshsa 575b4a723a perf(门店选择): 门店明细移出页面 data,修复首屏卡顿
门店接口 /shop/merchant/groupByChain 一次返回 8105 家门店(约 1.1MB)。
此前把门店明细原样放进页面 data,data 树膨胀到 1118KB,导致此后每次
setData 都要重新 diff/序列化整棵树——即使载荷只有 1 个字段,耗时也从
约 490ms 涨到约 1000ms,首屏因此多花约 3.5s。

改为把明细挂在实例属性 merchantStore 上(不进页面 data),
merchantChainList 只保留 {id, text, merchantCount} 骨架,
新增 getMerchantsByChainId() / getVisibleMerchants() 按需取数。

涉及页面:
- packageUser/self-report/create.vue
- packageUser/chronic/index.vue
- pages/task/detail.vue
- pages/share/create.vue
- pages/share/index.vue
- pages/audit/components/AuditShareItem.vue

实测(微信开发者工具自动化):
- 页面 data 门店明细 1118KB -> 1KB
- 单字段 setData 998ms -> 10~53ms
- self-report/create 首屏 9055ms -> 5341ms
- 门店 picker 选项数不变(大参林 2700 项),搜索与选中回填均正常
2026-10-11 15:18:06 +08:00
b2894lxlx 69e6ed8c59 20260929 2026-09-29 15:17:13 +08:00