3.9 KiB
3.9 KiB
OPC Manager Version Log
v1.0.1-beta — 2026-06-22
- 数据库迁移:SQLite → MySQL 9.6,适配占位符/类型/游标
- 用户体系:管理员 + OPC负责人角色,工作台权限隔离,登录鉴权
- 经营管理:状态改为已签约/流程中/待签约三类,签约月份列可编辑,财务指标卡片(确收/毛利/回款/费用/现金流)
- 重点工作与台账:阶段排序固定化+折叠分组,任务拖拽手柄与状态互换位置,关闭抽屉自动刷新,首次进入自动选第一个项目
- 产品迭代:统一表格(去平台tab),状态点击循环切换,日期改为 date 选择器,新增版本改用右侧抽屉
- 左侧工作台/顶部 tab 记忆恢复,跨工作台转移功能
- 近期动态修复 tenant 归属
v1.2.0 — 2026-06-15
- 业务机会 + 运营管理合并为「重点项目」Tab,统一表格展示
- 新增项目任务追踪:按阶段分组展示里程碑/执行项/负责人/截止日/卡点
- 新增
project_tasks表,抽屉内展示项目时间线
v1.1.0 — 2026-06-15
- 首页指标升级:增加已签约合同总额、合同流程中金额、年度/Q2 累计确收、年度/Q2 累计毛利、已签约未执行
- 运营表格增加「金额」列
- 产品研发增加「平台」字段(真研/科普/关爱),支持平台筛选
v1.0.7 — 2026-06-04
- 修复新增表单 async 后
event.currentTarget丢失导致页面不刷新(影响所有新增按钮) createResource改用预存 form 引用 + try/catch 错误提示
v1.0.6 — 2026-06-04
- 修复财务 Tab Chart 无限堆积:renderChartOn 缺少旧 chart 销毁 + state 跟踪
- 财务图表容器加固定高度(300px),避免 resize 循环
v1.0.5 — 2026-06-04
- "销售管理" Tab 改为"业务机会","目标客户"字段统一改为"业务机会"
v1.0.4 — 2026-06-04
- CDN 全量本地化:Tailwind / Chart.js / Squire / Lucide 下载到
static/vendor/,不再依赖外部 CDN
v1.0.3 — 2026-06-04
- CDN 脚本加
defer+preconnect:解决 Chart.js / Squire / Lucide 同步加载阻塞页面渲染
v1.0.2 — 2026-05-30
- 新增 Codex Skill:
opc-manager,说"打开 OPC 工作台"即可在任意上下文启动
v1.0.1 — 2026-05-30
- 将 data/opc.sqlite 加入 .gitignore,避免运行时数据库被误提交
v1.0.0 — 2026-05-30
首次正式发布
Features
- 首页概览:7 项关键指标卡片(4 列自动换行)、财务趋势图、风险提醒、近期动态
- 销售管理:客户表格 + 抽屉详情(字段失焦自动保存)
- 业务方案:版本表格 + 抽屉(文件上传/预览/下载/删除)
- 运营管理:项目表格(业务机会/已签约执行分类筛选)+ 抽屉
- 产品研发:版本表格 + 抽屉
- 财务管理:月度收入/毛利/成本/净利曲线图 + 明细表
Interactions
- 所有抽屉:Plane 风格紧凑布局(720px)、字段失焦自动保存、状态指示
- 评论区:Squire 富文本编辑器(加粗/斜体/下划线/删除线/无序列表/有序列表/引用/撤销/重做)
- 评论支持删除,带确认弹窗
- 评论内容保留 HTML 格式(加粗、列表等)
- 图标库:Lucide
Tech Stack
- Backend: Flask + SQLite
- Frontend: Vanilla JS + Tailwind CSS CDN
- Editor: Squire (Fastmail)
- Charts: Chart.js
- Icons: Lucide
Fixes
- 首页财务图表空白问题:固定容器高度 140px + maintainAspectRatio: false
- 首页指标卡片布局:grid-cols-7 → grid-cols-4 自动换行
- 风险提醒文字竖排:grid-cols-2 等宽布局 + break-words
- 评论区工具栏按钮无效:onclick → onmousedown 防止焦点丢失
- 格式 toggle 无效:hasFormat 检测 + removeBold/removeItalic
- 列表按钮无效:Squire API 替代 Trix
- 评论内容格式丢失:encodeURIComponent 编码 + decodeURIComponent 渲染
- 列表显示无标记:list-style: revert 覆盖 Tailwind reset