mac
|
f44f7eab9e
|
feat: 项目流水拆分为确收与回款+费用明细两Tab + 数据迁移
后端:
- 新增 expense_data TEXT 列(columns.py迁移)
- 新增 data_split 迁移:旧 budget_data cost/paid → expense_data(幂等)
- sum_budget cost/paid → sum_expense cost/paid(routes.py/helpers.py)
- TABLES 配置加入 expense_data
前端:
- 项目详情弹窗Tab:基本信息→确收与回款→费用明细→执行信息→任务管理→活动
- 确收与回款Tab:月份/确收/毛利/回款/备注
- 费用明细Tab:月份/费用类型/应付/已付/备注
- 项目表格三视图(月/季/总)cost/paid来源切换为expense_data
- 保存逻辑分两路: budget_data(rev/gross/payment)+expense_data(cost/paid)
|
2026-07-06 21:34:48 +08:00 |
|
mac
|
1b88366ba0
|
fix: 费用模块线上保存失败 — 空值转0兼容MySQL严格模式
expense.js保存时amount/incurred_amount空字符串转为0
避免MySQL 8.x strict mode报Data truncated
|
2026-07-06 19:19:41 +08:00 |
|
mac
|
56feeb0cfe
|
feat: 首页重构 — 财务概览转置+部门经营卡片+命名统一
首页:
- 5卡片→表格(行=指标,列=时间),新增已付/现金流/项目利润行,费用行
- 行列对换:8列(年度/季度/季环比/本月/月环比/上季度/上月)×9行
- 新增「部门经营情况」卡片(部门利润/费用/净利)
- 趋势图3→4列,新增月度项目利润折线图(indigo)
- 命名:利润→项目利润,费用→项目费用,月度利润→月度项目利润
- 卡片改名:经营管理→项目管理,财务概览→业务(项目)财务概览
- 指标列统一颜色,去掉行编号
项目模块:
- 利润→项目利润,费用→项目费用,总费用→总项目费用
- 月度回款与费用→月度回款与已付,柱状图→折线图
后端:
- 新增paid/cashflow/profit指标聚合(单/多租户)
- monthly_finance新增paid字段
- helpers.py修复重复return data
|
2026-07-06 19:10:14 +08:00 |
|
mac
|
340f8bd88c
|
feat: 首页财务概览重构 — 5卡片合并为表格 + 费用列 + 环比列
- 5张独立财务卡片合并为一张表格(行=时间维度,列=6项指标)
- 新增费用列(数据源expense_records,单/多租户路径均支持)
- 每列增加环比列(季度累计行=季度环比,本月新增行=月度环比)
- 环比:正值绿+xx%,负值红-xx%
- 后端新增expense_annual/q2/month/prev_q/prev_month指标
|
2026-07-06 18:20:34 +08:00 |
|
mac
|
7ab0c71b54
|
feat: 费用模块重构 + 项目模块优化 + 数据库迁移
费用模块:
- 字段精简为5个:费用类型(下拉6选)、月份(3年36月下拉)、金额、已发生金额、费用说明(textarea)
- 三视图切换(总/季度/月度),按expense_month筛选,汇总卡片实时更新
- 类型筛选功能,Toolbar+汇总+表格三段式布局
- 删除按钮移至关闭按钮左侧,间距8px
- 费用记录删除合计行,列宽固定200px,居中
项目模块:
- 卡片网格6→7列(14卡片7×2满排),配置驱动 METRIC_CARDS
- 新增费用/利润字段,利润=毛利-费用
- 表格行添加费用、利润列,比率列text-xs→text-sm
- 项目流水tab费用与已付列对调,汇总卡片6→1×6
- 修复月度/季度切换时汇总卡片不更新
- 筛选区统一为卡片,去除'筛选:'前缀
数据库:
- expense_records新增expense_type/expense_month/incurred_amount列
- migrations/columns.py幂等迁移,启动时自动执行
|
2026-07-06 17:31:34 +08:00 |
|
mac
|
8a78c756b7
|
refactor: 项目模块重构 — 统一渲染 + 配置驱动 + 交互优化
核心重构:
- 提取 renderView() / tdRow() 统一函数,消除三视图 16000+ 字符重复代码
- METRIC_CARDS 配置驱动,调整卡片顺序/单位只需改配置
- 筛选区统一为下拉框(视图 + 状态 + 日期),删除筛选:前缀
- 日历选择器移至顶部工具栏,卡片内不再重复
功能优化:
- 项目状态简化为已签约/待签约
- 新增签约项目总数卡片(月度/季度按签约月份过滤)
- 签约金额/已确收/已回款/应付/已付改为万元单位
- 项目名称固定300px + 省略号 + title悬停
- body min-width 1400px + overflow-x:auto
- 首页费用金额→应付金额
代码清理:
- 删除 monthOpts/quarterOpts/qLabels 等死代码
- 删除 purchase.js(采购→费用模块已另表迁移)
- 财务→项目(侧边栏),采购→费用(全域重命名)
|
2026-07-06 15:39:39 +08:00 |
|
mac
|
8430c93b97
|
feat: 新增采购模块 + 财务表格重建
采购模块:
- 新增 purchase_records 表 + CRUD 路由 + bootstrap 数据加载
- 前端采购管理页面: 表格 + 弹窗新增/编辑 + 侧边栏入口
财务模块:
- 表格新增签约金额、执行率、回款率、付款率、毛利、毛利率列
- 状态/日期筛选统一为无边框下拉框,移至页面顶部工具栏
- 删除 metric 卡片,新增 11 张汇总卡片(签约金额~现金流)
- 表格合计行移至表头下方,后改为汇总卡片
- 所有单元格统一水平/垂直居中
- 修复季度视图 gross 变量缺失、合计行遗漏
|
2026-07-06 13:04:56 +08:00 |
|
mac
|
ff7eb19d5d
|
refactor: 财务模块卡片头部重构为单行功能区 + 表格增加状态列
- 卡片头部简化为单行: 视图标签 | 筛选:状态/月份/季度下拉 + 新增按钮
- 状态筛选从标签按钮改为统一风格下拉框(自定义SVG箭头)
- 下拉框字体/高度与视图标签 btn-sm 完全对齐
- 表格增加状态列(已签约/流程中/待签约,分色显示)
- 季度视图 p-4 padding 修复
|
2026-07-03 19:06:54 +08:00 |
|
mac
|
493150cb27
|
财务项目详情升级:任务管理tab + 项目编号 + 执行信息 + 后端重构
后端重构:
- flask_app.py 拆分为 db.py/helpers.py/routes.py/seed_data.py + Blueprint
- 删除死代码 init_db/latest_followup,净减 240 行
- migrations 反向依赖消除
财务项目详情:
- 新增任务管理 tab(月份/类型/数量/已执行/差额/单价/执行金额/未执行金额)
- 新增项目编号、开始/结束时间、项目经理、合同服务费标准(5%-25%下拉)
- 科普业务类型新增科普专访、患教会
- task_data JSON 存储任务列表
财务视图:
- 只保留总视图和月度视图,去除确收/毛利和回款/应付视图
- 月度视图月份选择器
- 表格统一居中对齐
- 去除流程项目/流程金额卡片
|
2026-07-02 20:10:45 +08:00 |
|
mac
|
caebf90438
|
重构:flask_app.py 拆分为 db/helpers/routes/seed_data + Blueprint
- flask_app.py 1166行→33行纯入口
- 新建 db.py(配置+连接+SQL工具)
- 新建 helpers.py(attach_common/monthly_finance/add_file_index)
- 新建 routes.py(全路由 Blueprint + 装饰器 + TABLES)
- 新建 migrations/seed_data.py(seed_db 搬迁)
- migrations/{tables,columns,data_fixes,seed}.py 改 import 为 from db
- 删除死代码 init_db(228行)+ latest_followup(10行)
- 反向依赖消除:migrations 不再 import flask_app
- 前端零改动,URL 不变
|
2026-07-02 18:30:24 +08:00 |
|
mac
|
34786ba9e5
|
产品迭代表格化 + 财务总视图/月度视图 + 总工作台
产品迭代:
- 卡片改表格(10列),5个日期内联编辑,后端日期校验
- 表头排序,新增未开始状态,详情页耗时统计
- 删除 owner/platform/feature_list 字段
财务:
- 新增总视图和月度视图,去除确收/毛利和回款/应付视图
- 月度流水加已付列,费用改应付
- 月份选择器,表格居中对齐
- 去除流程项目/流程金额卡片
总工作台:
- 聚合所有工作台首页数据
- 只显示首页tab,隐藏4个模块卡片
|
2026-07-02 17:55:40 +08:00 |
|
mac
|
0eb9d69f1e
|
产品迭代模块:卡片改表格 + 日期内联编辑 + 后端日期校验
- 卡片列表改为表格列表(10列),参考用户运营中心产品台账
- 数据库新增 priority + 5 个日期字段(start/plan/dev_done/test/launch)
- 删除 owner/platform/feature_list 字段(migrate_drop_product_fields)
- 日期内联编辑:5个日期列直接渲染 date input
- 后端日期校验:4个时间不能早于启动时间;启动时间必填
- 详情页新增耗时统计区块(总/产品/研发/测试耗时)
- 优先级和状态合并同一行
- 新增'未开始'状态
- 表格垂直居中对齐
- renderProducts 后重新初始化 lucide 图标
|
2026-07-02 14:31:06 +08:00 |
|
mac
|
96948a37de
|
fix: migrations 模块在 gunicorn --preload 下无法导入
ModuleNotFoundError: No module named 'migrations'
根因:gunicorn 的 sys.path 不包含 backend/ 目录
修复:flask_app.py 顶层添加 sys.path.insert 确保 backend 在搜索路径中
|
2026-06-29 16:45:16 +08:00 |
|
mac
|
2bb99feda4
|
工作台重命名:无界·无界 → 学会·无界
- ALL_TENANTS / session / seed / migrations 全部同步
- 新增 migrate_rename_tenant() 数据迁移,启动自动 UPDATE 所有表
- migrations/ 模式重构(参考 SalesManager)
|
2026-06-26 12:21:02 +08:00 |
|
mac
|
25da1453be
|
新增自动化部署:Gitea Actions + systemd + gunicorn
Deploy / deploy (push) Failing after 1s
- .gitea/workflows/deploy.yml:push main 自动触发部署
- requirements.txt:Python 依赖清单
- deploy/opc-manager.service:systemd 服务(gunicorn --preload -w 4)
- deploy/README.md:完整部署指南
- deploy/服务器配置任务提示词.md:给服务器管理 Agent 的操作提示词
- health 接口简化返回 {ok, service}
|
2026-06-23 19:33:16 +08:00 |
|
mac
|
39f2b679a1
|
首页:新增回款/费用卡片 + 统计口径对齐 + UI 优化
- 新增回款金额、费用金额 2 个卡片(5 列布局)
- 卡片标题统一为 年度累计/季度累计/本月新增
- 季度计算改为动态本季度(不再写死 Q2)
- 卡片数字统一取整(moneyInt)
- 财务趋势图只统计已签约项目(与卡片口径对齐)
- net_profit 字段重命名为 gross(消除命名误导)
- 近期动态删除图标改为 trash-2(与附件删除一致)
|
2026-06-23 17:17:36 +08:00 |
|
mac
|
9b6257ff19
|
v1.1.0-beta: 安全/性能/架构优化 + 账号管理后台 + 视图切换
## 安全与性能
- .env 环境变量、debug=False、except 改 mysql.connector.Error+logging
- attach_common 批量 IN 查询消除 N+1
- 批量 esc() XSS 转义
## 架构
- app.js 拆分为 7 模块 + admin.js
- .form-ctrl 统一表单控件
## 经营管理
- 字段改名:客户名称→项目名称、销售人员→商务负责人
- 必填:项目名称/商务负责人/经营负责人/签约月份/签约金额>0
- 视图切换:确收/毛利 ↔ 回款/费用
## 重点工作与台账
- 统计卡片样式与经营管理统一
- 任务状态简化 3 态
- 优先级点击切换、右键菜单(重命名/副本)
- 修复新建任务绑定错误项目 bug
## 用户体系
- 新增工作台:MCN·无界、无界·无界
- 新增账号:mcn/wuji
- 账号管理后台(admin 限定)
- sidebar 顶部头像+显示名,点击弹菜单
- sidebar sticky 定位
## 其他
- 登录页样式优化(参考 UOC 平台)
- 首页财务趋势拆 3 图
- 业务方案标准资料库双 Tab
|
2026-06-23 15:54:03 +08:00 |
|
mac
|
5b1dc4555f
|
v1.0.1-beta: MySQL迁移 + 用户体系 + 经营管理/任务/产品改版
|
2026-06-22 19:34:31 +08:00 |
|
mac
|
bd7125fab8
|
v3.0.2 — 新增财务项目改为弹窗按钮+月度趋势缩减为6个月
|
2026-06-16 17:11:02 +08:00 |
|
mac
|
fa6c9b1711
|
v3.0 — 财务重构为项目财务视图:汇总卡片+项目明细+月度确收/毛利
|
2026-06-16 16:43:44 +08:00 |
|
mac
|
1b0049e342
|
v2.0.6 — X轴12月(前9+当前+后2) + Y轴万元 + 净利口径=确认收入-人力-费用-采购
|
2026-06-16 15:56:21 +08:00 |
|
mac
|
87a5d4f81d
|
v2.0.5 — 财务曲线改为5类对应+月度净利=确认收入-人力成本-费用-外部采购
|
2026-06-16 15:54:24 +08:00 |
|
mac
|
c42abb05da
|
v2.0 — 多项目支持:右上角下拉切换科普/科研/医患三个项目
|
2026-06-16 15:42:28 +08:00 |
|
mac
|
60bae583b2
|
v1.8.0 — 任务checkbox+删除线 + 拖拽排序 + 抽屉删除按钮
|
2026-06-16 15:14:31 +08:00 |
|
mac
|
c68fcaadcc
|
v1.7.10 — 首页指标简化为6卡片:重点项目/业务方案/产品版本/本月确收/本月毛利/本月净利
|
2026-06-16 15:09:49 +08:00 |
|
mac
|
be6a7f5c38
|
v1.7.8 — 首页改为3表格卡片(合同/确收/毛利) + 合同时间维指标
|
2026-06-16 14:21:57 +08:00 |
|
mac
|
301dfd0dfb
|
v1.2.0 — 合并业务机会+运营为重点项目 Tab,新增项目任务时间线
|
2026-06-15 10:01:31 +08:00 |
|
mac
|
9930727d14
|
v1.1.0 — 首页指标升级 + 运营金额列 + 产品平台分类
|
2026-06-15 09:22:31 +08:00 |
|
mac
|
8dc69f8bd6
|
feat: OPC 工作台 — 科普(慰心斋)单项目管理系统
Flask + Tailwind CSS + Trix + Chart.js + Lucide Icons + SQLite
- 首页概览:关键指标卡片、财务趋势图、风险提醒、近期动态
- 销售管理:客户表格 + 抽屉详情(自动保存 + 评论)
- 业务方案:版本表格 + 抽屉(文件上传/预览/删除 + 评论)
- 运营管理:项目表格(业务机会/执行项目分类)+ 抽屉
- 产品研发:版本表格 + 抽屉
- 财务管理:月度收入/毛利/成本/净利曲线图 + 明细表
- 所有抽屉:Plane 风格紧凑布局、字段失焦自动保存、Trix 富文本评论框、点击遮罩关闭
|
2026-05-30 00:08:28 +08:00 |
|