freedakgmail
|
8f5271fcc6
|
fix: P2/P3审计问题修复 + 更新审计文档移除已修复问题
- 修复schema前缀:确认central_kitchen/mv_distribution/mv_dish_sales等表在public schema,撤销错误的analytics.前缀
- 移除API内部物化视图刷新:mv_distribution_monthly/mv_dish_sales_monthly改为console.warn
- 修复BOM树节点key:使用path字段替代material_code+level确保唯一性
- 修复HR人才矩阵potential_score:基于v3_learning_record动态计算替代硬编码60
- 修复StoreDetailPage公司均值:优先使用API返回的companyAvg
- 修复前端字段名匹配:discount_rate_pct/check_comment等
- 添加explicit column list和LIMIT到大型查询
- 更新数据溯源审计.md:移除全部52个已修复/确认无需修复的问题条目
|
2026-08-11 22:00:58 +08:00 |
|
freedakgmail
|
b2cdf352db
|
fix: 修复老板驾驶舱与总部驾驶舱实收数据源不一致
BossPage核心指标行的优惠和实收从/store-expense/overview改为/overview API
- 优惠: ex.total_discount → od.discount
- 实收总额: ex.total_received → od.received
- totalRev(风险门店占比分母)同步改为od.received
现在两个驾驶舱的营业收入/优惠/实收完全一致
|
2026-08-11 19:58:22 +08:00 |
|
freedakgmail
|
3f1c291486
|
fix: 修复门店评估数据不一致问题
- 恢复被误删的5家门店旧账单数据(58377行)
- 合并哈马尔罕大钟寺店费用到大钟寺店(0022)
- 修改v_store_operating_expense_monthly视图按sales_store_code聚合费用
- 修复利润机会池食材成本差异为负时opportunity不为负
- 修复前端totalOpportunity只累加正数机会
- 刷新bill_fact/mv_store_risk_rating_monthly等物化视图
- 新增PromotionPage和promotion路由
|
2026-08-11 07:26:11 +08:00 |
|
freedakgmail
|
d04e837d9c
|
V3.0: 门店分级与风险等级页面、数据填充脚本、后端API
- 新增V3.0数据库表结构(12-15)和数据填充脚本(16)
- 新增后端路由: store-grade, enterprise, product, intelligence, alert, scheduler, target
- 新增前端页面: StoreGradePage, EnterprisePage, ProductLifecyclePage, IntelligencePage, AlertManagementPage, DataImportPage, SchedulerManagementPage, TargetManagementPage
- 门店分级: 自动分级算法(达成率40%+毛利率25%+会员15%+风险20%)
- 风险等级: 基于mv_store_risk_rating模型展示风险分布和原因
- 弹窗: 雷达图+详细指标+分级原因+风险原因(primary_issue)
- FilterableTable: filterOptions支持{value,label}对象格式
|
2026-08-05 20:09:39 +08:00 |
|
freedakgmail
|
37cd5ae7e1
|
feat: 店长工作台新增人力排班Tab及概览折叠功能
- 后端新增 /api/stores/:code/staffing 路由,返回人工成本概览、按星期/餐段排班建议、日营收明细、综合诊断
- 前端 StorePage 新增 staffing Tab,展示 MetricCard 概览、优化建议、排班图表、诊断算法说明
- 修复公司均值人工率被异常门店污染问题(过滤 wage_rate_pct > 100)
- 诊断逻辑改为与公司均值动态比较,建议人工率改为动态计算
- 增强任务反馈表单(执行证据、未完成原因、下一步计划)
- 点击非概览Tab时自动折叠上方概况区域
|
2026-08-04 08:19:20 +08:00 |
|
freedakgmail
|
6bc2f43da7
|
feat: 新增本月经营态势弹窗+千问TTS语音播报
- 新增 BusinessReportDialog 组件,展示整体经营/成本费用/风险态势/利润机会四部分文字报告
- BossPage 标题栏新增「本月经营态势」按钮
- 后端新增 /api/tts 路由,调用千问 CosyVoice TTS API 合成语音
- 前端按句分段合成、逐句顺序播放,边播边合成
- 报告含待确认门店数量
|
2026-08-03 22:55:50 +08:00 |
|
freedakgmail
|
a011729fc9
|
fix: 角色权限与数据范围修复
- 添加 RoleRoute 路由守卫组件,防止越权访问页面
- 菜单配置:区域经理加'区域对比',店长加'态势感知'
- database.ts: scope注入时检测主表别名避免store_code歧义
- analytics-enhanced.ts: KPI region模式手动注入scope过滤
- situational-awareness.ts: health-score手动注入scope,alerts加skipScope
- smart-scheduling.ts: position-salary-compare店长角色降低HAVING阈值
|
2026-08-02 21:28:25 +08:00 |
|
freedakgmail
|
cfa12c9b7f
|
feat: 多租户数据权限 + 数据库连接修正
- adminPool 连服务器本地 5432 sbrain_admin (SCRAM 认证)
- tenantPool/pool 连 FRP 隧道 15432 bill_query (trust 认证)
- query() 自动注入 store_code 数据权限 (store/regional 角色)
- 区域经理 region 字段存储逗号分隔的 store_code 列表
- /overview 和 /overview/daily 对 scoped 用户从 bill_fact 聚合
- tenant_users.region 扩展为 VARCHAR(500)
- deploy.sh .env 增加 ADMIN_DB_* 配置
- run.md 更新数据库连接架构说明
- 新增海淀区区域经理用户 (21 家海淀区门店)
|
2026-08-02 20:10:42 +08:00 |
|
freedakgmail
|
30651969ad
|
feat: 混合模式UI优化 - 全局态势状态条 + 预警前置 + 风险分布条 + 健康度仪表盘
- 新建 StatusBanner 组件: 全局态势状态条(门店风险/预警/闭环健康度)
- Layout: 侧边栏增加Activity图标,主内容区顶部嵌入StatusBanner
- MetricCard: status增加左侧彩色竖条强化视觉层级
- DashboardPage: 预警区域前置到经营指标上方,有红色预警时默认展开
- DashboardPage: 标题下方新增风险分布条(红黄绿百分比)
- DashboardPage: 闭环健康度增加RadialBarChart仪表盘
- DashboardPage: 预警卡片增加AlertTriangle图标和左侧彩色竖条
- StatusBanner: 各指标增加title tooltip取数说明
|
2026-08-02 15:20:58 +08:00 |
|
freedakgmail
|
271ad8041d
|
feat: 全页面增加营业收入/优惠指标 + 修复趋势预测空数据 + 区域对比口径统一 + StorePage最新经营日概览
- 后端: 所有API的discount改为从bill_fact累计discount_total
- 后端: revenue/daily-summary增加consumption字段
- 后端: situational-awareness/forecast修复c175字符串比较为timestamp
- 后端: region/comparison去掉未知区域排除,统一口径
- 后端: daily-card增加营业收入/优惠指标,返回target_date/baseline_date
- 前端: BossPage/DashboardPage/BankPage/StorePage/ExpenseOverviewTab/RegionalPage/RegionComparisonPage/RevenuePage 均增加营业收入和优惠指标卡
- 前端: StorePage日均经营概览改为最新经营日概览,显示具体对比日期
- 前端: 日期格式统一截取YYYY-MM-DD显示
|
2026-08-02 14:56:00 +08:00 |
|
freedakgmail
|
a1a8b7ee5e
|
feat: 连锁餐饮数字本体与AI经营智脑 - 新增分析页面、ETL脚本、总结文档
|
2026-08-02 10:54:48 +08:00 |
|
freedakgmail
|
73f12f40d1
|
feat: 配送物化视图优化查询性能 + 饼图统一处理 + SKU长尾治理明细 + 地图初始聚焦北京
|
2026-08-02 08:53:21 +08:00 |
|
freedakgmail
|
ed7beb7e47
|
feat: 统一SearchSelect下拉组件 + 修复营销方案数据 + 平台经济性增强
- 创建SearchSelect搜索下拉组件,选项≤8自动隐藏搜索框
- 全站替换原生select为SearchSelect(13处下拉)
- 修复/revenue/store-ranking优惠率字段名不匹配(discount_rate_pct→avg_discount_rate_pct)
- RevenuePage门店营收明细改用FilterableTable支持筛选排序分页
- 修复/marketing/plans按门店分组改为按marketing_plan分组
- 营销方案分析补充消费额、优惠额列和Top5概览卡片
- PlatformPage门店平台经济性增加门店搜索、经济性优列(平台分色)
- 平台成本率算法说明显示在标题下方
|
2026-08-01 23:08:34 +08:00 |
|
freedakgmail
|
d724a565f5
|
风险与内控管理优化: 异常账单服务端分页/筛选/收银员搜索/合计, 收银员TOP15按异常账单数排序, 双击跳转明细, MonthPicker靠右, 侧边栏底部间距
|
2026-08-01 21:28:15 +08:00 |
|
freedakgmail
|
ac8e39e2f9
|
feat: 门店详情页添加健康度评分(标题旁分数+状态, 概览Tab雷达图+得分条)
|
2026-08-01 15:38:01 +08:00 |
|
freedakgmail
|
0f6ff59d7d
|
feat: 态势感知健康度评分明细弹窗(雷达图+8维度得分)
|
2026-08-01 15:14:13 +08:00 |
|
freedakgmail
|
d1f07a0e93
|
feat: 态势感知页面添加 MonthPicker 月份切换(4个API全部传month)
|
2026-08-01 15:09:35 +08:00 |
|
freedakgmail
|
4b3a48976d
|
feat: 全部页面添加 MonthPicker 月份切换
新增 MonthPicker 的页面(6个):
- CostPage: 成本与库存管理
- SKUPage: 商品SKU管理
- PlatformPage: 平台与优惠管理
- MemberPage: 会员与复购管理
- SiteSelectionPage: 门店选址分析
- DataQualityPage: 数据质量看板
容器+子组件添加 MonthPicker(2个页面, 11个子组件):
- StoreExpensePage: 门店营业费用分析(10个子组件全部传month)
- CostAnalysisPage/StoreTab: 门店成本tab
跳过(后端不支持month参数):
- RiskPage: 风险管理(全量视图, 不按月过滤)
- TimePage: 时间段分析(全量视图, 不按月过滤)
|
2026-08-01 14:58:12 +08:00 |
|
freedakgmail
|
122290e3b0
|
perf: Phase 12 — 物化剩余9个慢函数,全量API优化完成
新增物化视图:
- mv_store_action_priority_deep_monthly (10.7s→3ms)
- mv_inventory_cost_classified_monthly (37ms→3ms, 消除重复调用)
- mv_dish_pair_summary_monthly (171s→3ms)
- mv_store_area_efficiency_monthly (10.1s→3ms)
- mv_store_site_profile_monthly (9.3s→3ms)
- mv_site_segment_benchmark_monthly (12s→3ms)
- mv_store_site_replication_monthly (12.6s→3ms)
- mv_store_overlap_risk_monthly (88s→3ms)
- mv_district_site_benchmark_monthly (56s→3ms)
后端: 所有 fn_ 函数调用替换为物化视图查询
前端: BossPage 添加 MonthPicker 组件并传递 month 参数
修复: cost/category-benchmark 排序列名 store_code→sales_store_code
总计: 21个物化视图, 全部API响应<1.7秒
|
2026-08-01 14:51:24 +08:00 |
|
freedakgmail
|
dab06ba109
|
feat: 月度模式全面参数化 - 移除硬编码日期,前后端按月动态查询
|
2026-08-01 13:10:22 +08:00 |
|
freedakgmail
|
ab383006d6
|
fix: 银行评分规则调整为连锁餐饮行业适用阈值
|
2026-07-30 17:11:12 +08:00 |
|
freedakgmail
|
1a4aca28c0
|
feat: 新增银行授信数据报告页面 - 可配置评分规则+5大分析模块
|
2026-07-30 16:58:32 +08:00 |
|
freedakgmail
|
7d1eba43c0
|
fix: 小时维度图Y轴改用预计算固定最大值,正确显示24万+账单峰值
|
2026-07-30 15:17:15 +08:00 |
|
freedakgmail
|
19f122529b
|
fix: 小时维度图Y轴增加domain留15%余量,确保接近10万的数据点完整显示
|
2026-07-30 15:09:46 +08:00 |
|
freedakgmail
|
616e671966
|
fix: 时间分析小时/星期图右Y轴账单数增加万格式化,避免超10万显示不全
|
2026-07-30 15:06:37 +08:00 |
|
freedakgmail
|
1664247882
|
feat: 整合菜单7组 + 新增营收分析页面(渠道/时段/门店排名/日度趋势)
|
2026-07-30 15:01:49 +08:00 |
|
freedakgmail
|
188f607fbb
|
fix: 营收排名和费用结构饼图Tooltip中value改为中文标签
|
2026-07-30 14:48:06 +08:00 |
|
freedakgmail
|
6f4acbb9ca
|
fix: 用户退出登录区加bg-card不透明背景
|
2026-07-30 14:46:21 +08:00 |
|
freedakgmail
|
7e463c04ac
|
fix: 侧边栏菜单区支持上下滚动
|
2026-07-30 14:45:07 +08:00 |
|
freedakgmail
|
42e4287473
|
fix: 老板驾驶舱统一全口径数据源 - 实收/客单价/账单数/风险占比均取自store-expense/overview,与利润瀑布一致
|
2026-07-30 14:42:40 +08:00 |
|
freedakgmail
|
fca917dc13
|
fix: 利润结构Tooltip中value改为中文'金额'
|
2026-07-30 14:40:47 +08:00 |
|
freedakgmail
|
2df4f0799b
|
feat: 老板驾驶舱增加门店利润排名 - TOP5赚钱/BOTTOM5亏损,可点击跳转门店详情
|
2026-07-30 14:37:38 +08:00 |
|
freedakgmail
|
10c64a2ef2
|
fix: 瀑布图改用自定义shape渲染,不再用堆叠方式,柱子高度正确显示
|
2026-07-30 14:34:28 +08:00 |
|
freedakgmail
|
718101c58a
|
fix: 修复利润瀑布图柱子高度 - cost项base改为扣除后位置,value为减少量
|
2026-07-30 14:30:54 +08:00 |
|
freedakgmail
|
1f96897184
|
feat: 老板驾驶舱利润瀑布增加实收分配占比条 - 食材37%/人工25%/房租15%/水电5%/其他10%/利润6%
|
2026-07-30 14:28:32 +08:00 |
|
freedakgmail
|
22d711fb73
|
feat: 新增老板驾驶舱页面 - 利润瀑布/风险态势/成本异常/营收排名/日度趋势
|
2026-07-30 14:24:17 +08:00 |
|
freedakgmail
|
0509bb6431
|
feat: 利润与成本指标卡?提示增加计算公式
|
2026-07-30 10:14:21 +08:00 |
|
freedakgmail
|
1a00c7c170
|
feat: 利润与成本指标卡?提示增加建议值/行业基准
|
2026-07-30 10:13:13 +08:00 |
|
freedakgmail
|
47a9581500
|
feat: 利润与成本指标卡增加颜色标识 - 绿色正常/黄色关注/红色问题
|
2026-07-30 10:10:30 +08:00 |
|
freedakgmail
|
90be14a5d6
|
feat: 总部驾驶舱增加理论/实际净利润、净利率、食材成本率指标
|
2026-07-30 10:02:06 +08:00 |
|
freedakgmail
|
aecd06818d
|
feat: 总部驾驶舱增加利润与成本指标区 - 食材成本/经营费用/贡献利润/费用率
|
2026-07-30 09:59:30 +08:00 |
|
freedakgmail
|
f46d858f5e
|
fix: 门店详情页loading改用LoadingSpinner组件统一风格
|
2026-07-30 09:53:58 +08:00 |
|
freedakgmail
|
e7cadef6bd
|
feat: 门店详情风险/象限卡片增加偏差指标明细对比
|
2026-07-30 09:25:44 +08:00 |
|
freedakgmail
|
e946cdefef
|
feat: 门店详情增加风险等级和经营象限详细说明+修复后端不存在的视图引用
|
2026-07-30 09:16:42 +08:00 |
|
freedakgmail
|
3727cf8672
|
fix: 成本分析Tab改用FilterableTable带分页筛选排序,提取共享组件
|
2026-07-30 09:12:12 +08:00 |
|
freedakgmail
|
a6d83be0ad
|
fix: 门店成本分析Tab - 用v_inventory_cost_classified_april替代不存在的v_store_category_cost_benchmark_april
|
2026-07-30 09:09:34 +08:00 |
|
freedakgmail
|
efb27127e2
|
fix: 优化门店健康分评分公式 - 正态分布(均值63, 标准差9)
|
2026-07-30 09:07:16 +08:00 |
|
freedakgmail
|
268e085ffa
|
feat: 态势感知模块 - 实时监控面板+后端API
|
2026-07-30 09:01:01 +08:00 |
|
freedakgmail
|
6bab0ad84a
|
feat: 客流热力图增加在岗人员行+规则引擎面板+菜单名称调整
- 热力图每门店增加在岗人员行(前厅/后厨/管理/其他),从考勤打卡记录解析
- 新增traffic-heatmap-staffing API,解析考勤打卡时间计算每小时在岗人数
- 人员预测tab新增可折叠规则引擎面板,展示全部规则和触发条件
- 后端API返回ruleEngine字段(动态标准+优化规则+招聘规则+决策逻辑)
- R9/R11/R12/R13增加占比超配约束,过滤不合理招聘建议
- 菜单项'菜品成本分析'→'菜品成本','门店费用分析'→'门店费用'
- 热力图横向滚动条始终可见
|
2026-07-30 00:04:54 +08:00 |
|
freedakgmail
|
75a483bfdb
|
feat: 智能排班人员预测系统
- 新增人员预测tab,基于多维度产能指标生成招聘/优化建议
- 规则引擎:7条优化规则 + 7条招聘规则 + 4步决策逻辑
- 动态标准值:基于全部门店中位数计算,替代硬编码阈值
- 互斥逻辑:有优化信号时抑制所有招聘信号
- 占比超配时不触发招聘信号(R9/R11/R12/R13)
- 离职缺口需出勤不足才触发招聘(R10)
- 管理岗满编时不触发出勤不足招聘(R9)
- 前端可折叠规则引擎面板,展示全部规则和触发条件
- 产能指标对比展示实际值 vs 中位数标准
|
2026-07-29 23:41:56 +08:00 |
|