2026-10-17-mp-webview-crm-customer-design.md 3.1 KB

小程序 H5 客户管理迁移需求

日期:2026-10-17。用户已授权整理需求后直接开发。

目标与边界

以当前 Web「CRM管理 / 客户管理」为业务基准,在小程序中通过已有 WebView 加载独立移动 H5 页面。仅排除导出。Web 页面、共享业务 API、其他模块的行为保持不变;已有未提交改动保留。其他页面发现的问题只记录在本次问题文档。

功能清单

  • 全部客户、我的客户、待跟进、重点客户四个视图;关键词搜索、字段筛选、排序、分页刷新。
  • 客户新增、编辑、详情、单条/批量删除、单条/批量放入公海。保留创建人删除限制与操作确认。
  • 全量客户可写字段、名称查重、拼音首字母重新生成、负责人默认当前用户。
  • 营业执照(5)、经营许可证(5)、其他证件(10):图片/PDF,即时上传、预览、下载、删除、上传期间禁止提交。
  • 跟进记录查看、新增、删除,联系人选择、跟进方式、内容、下次联系时间、附件(15)、备注。
  • 联系人查看、新增、编辑、删除、设置主要联系人;校验与 Web 相同。
  • 关联商机、合同列表及查看;合同使用已有移动详情;商机在本模块内提供移动详情,并保留详情中的修改、推进阶段、删除及跟进维护入口,不新增独立商机菜单。
  • 开票资料新增、编辑、删除、默认设置、粘贴识别;新增客户可同时填写第一条开票资料。
  • 操作日志分页及详情。
  • Web 源码中未暴露的转移/成交处理函数不作为新增入口;以当前实际界面可操作功能为准。
  • 桌面列显隐改为卡片字段显隐;列头筛选改为移动筛选面板,保留查询含义。

方案

沿用现有 MpWebviewShell、一次性 ticket、mp-webview.scss 与工作台路由映射。新增 /m/crm/customer、/new、/:id、/:id/edit。不新增第二套登录及 WebView 壳。

采用独立移动组件复用现有 API 与附件组件。相比修改 Web 客户弹窗增加移动分支,这样能满足本次 Web 功能完全不改的边界;相比独立 H5 工程,继续复用现有构建、鉴权和附件基础设施。

视觉采用三墙绿、手机卡片、分区表单、横向标签、底部动作栏及 Bottom Sheet;参考 views/m/crm/product/index.vue、views/m/crm/contract/detail.vue 和现有附件卡片。模式 P08(视图列表)、P12(分区表单)、P25(独立详情),移动样式以现有 H5 为准。

菜单使用 crm-customer-webview / mini:crm:customer:list,SQL 补齐移动父菜单与已有 Web 客户角色绑定,业务继续使用原接口权限。

验收

检查字段及上述功能逐项覆盖;单测验证 payload、列表参数、响应归一化及部分失败重试;手机宽度浏览器交互回归;构建与类型检查(已有问题分别记录);核对 Web 源码未被本次修改;执行字段一致性检查和图谱更新。数据库及真机环境无法直接验证的部分如实记录,不宣称已发布。