2.3 KiB
2.3 KiB
2026-08-15 工作记录
数控机床B端销售个人工作台(单文件 PWA)
- 交付文件:
/Users/alice/WorkBuddy/2026-08-15-13-49-49/cnc-sales-workbench.html(单文件,localStorage 存储,无需后端/登录) - 配套 PWA 文件:
manifest.webmanifest、sw.js(仅在 http/https 托管时启用离线+桌面安装;file:// 双击也可用) - 6 大模块:客户档案 / 销售流程(8阶段) / 任务待办(逾期标红) / 数据看板 / 资料库 / 数据中心
- 数据兼容(迭代规则):导出 JSON 含 schemaVersion;导入 normalize 时对缺 id 记录用自然键生成确定性 id(
c_+hash(公司名) 等),使 merge 幂等、replace 全量恢复,旧版备份可导入 - 导入导出:JSON 全量、Excel(xlsx,自写 zip 无需外部库)、CSV 客户导入;已单元验证 xlsx 生成有效、JSON 导入幂等、Excel 单元格 round-trip 结构正确
- 修复的 bug:Excel 导入阶段映射曾把合法 s3 等 id 错误折叠为 s1(已修正)
- 验证方式:Node 提取纯函数单测 + python http.server 实测三文件均 200
视觉/UX 迭代(第二轮需求)
- 视觉:冷白底
#f5f6f8+ 褐色渐变--pri-grad:linear-gradient(135deg,#a9743e,#6e4421),深色主题褐色系同步调整;manifest 主题色同步改为#8a5a2b - 彩带动效:Canvas 粒子系统
confetti(),触发点 = 任务标记完成 + 销售阶段推进到 s6(交付)/s8(回款);无外部库 - 图标全内联 SVG 去 emoji(含顶部/侧栏导航、看板、任务勾选、管线箭头、空状态等),Node 扫描 0 个 emoji
- 三档响应式:≤768 手机底部 4 Tab(客户/流程/任务/更多)+单列;≤1024 平板顶部横向导航;>1024 桌面左侧固定边栏+多栏
- 即时保存:修复关键 bug——旧
loadState要求o.data包装而 saveState 存顶层,导致刷新丢数据;现兼容顶层/导出两种格式;UI 状态(S.ui: 当前页/筛选/今日折叠)与表单草稿(S.drafts,防抖400ms)均即时写入 localStorage - 资源全内联:manifest 改为 data URI 内联,无任何外部 CDN/字体/库;sw.js 仅在 http(s) 下注册,file:// 双击可用
- 验证:JS 语法 OK(65915 字符)、持久化 round-trip/顶层加载/导出格式加载/merge 幂等 4 项测试全过、16 项关键特性存在性自检全过