门店总数
{{ dashboard.total_shops || 0 }}
{{ dashboard.shop_active || 0 }} 家在营
今日营业额
¥ {{ dashboard.today_revenue || '0.00' }}
真钱营业额: ¥ {{ dashboard.today_cash_income || '0.00' }}
今日收入
¥ {{ dashboard.today_income || '0.00' }}
今日会员储值: ¥ {{ dashboard.today_stored || '0.00' }}
今日收衣件数
{{ dashboard.pickup_items || 0 }}
收衣单数: {{ dashboard.pickup_batches || 0 }} 单
今日取衣件数
{{ dashboard.pickup_done_items || 0 }}
今日新会员
{{ dashboard.today_members || 0 }}
其中正式会员: {{ dashboard.today_members_vip || 0 }} 人
系统健康总览
整体状态
{{ healthLabel(health.status) }}
最后检查: {{ lastCheckTime || '--' }}
{{ checkName(name) }}
{{ healthLabel(check.status) }}
{{ checkDetailSummary(name, check) }}
快速操作
经营概览
{{ ps.label }}
{{ k.label }}
{{ k.value }}
{{ k.delta.tag }} {{ k.delta.arrow }} {{ k.delta.pct }}
{{ k.yoy.tag }} {{ k.yoy.arrow }} {{ k.yoy.pct }}
{{ k.sub }}
—
{{ ovRangeLabel }}
洗护在制监控
收衣后未完结的全部衣物 · 超期口径与门店端一致 (加工天数 + 延迟容差)
{{ ov.backlog.wip_total }}
在制总量 (件)
收衣后未发衣的全部衣物
{{ ov.backlog.washing_total }}
送洗中 (件)
正常 {{ ov.backlog.washing_normal }}
即将超期 {{ ov.backlog.washing_due_soon }}
已超期 {{ ov.backlog.washing_overdue }}
最长超期 {{ ov.backlog.max_overdue_days }} 天
{{ ov.backlog.items }}
待取衣 (件)
已回店未取 · 涉及 {{ formatMoney(ov.backlog.amount_yuan) }} 元
最早回店 {{ ov.backlog.oldest_date || '—' }}
{{ ov.backlog.oldest_days }}
最长积压天数
最早回店未取距今
门店对比
{{ ovRangeLabel }} · 每列独立名次 · 点列头排序 · 周转周期越短越好 · 新会员 = 期内新办折扣卡 (正式会员)
收入 / 收衣 / 取衣趋势
日
周
月
图表组件加载失败
支付方式分布 (实付)
逐笔支付流水 · 含卡耗折算
图表组件加载失败
{{ p.label }}
{{ formatMoney(p.revenue_yuan) }} 元 · {{ p.count }} 笔 · {{ p.pct }}%
卡务汇总
{{ ov.cards.grant_count }}笔
期内开卡
{{ formatMoney(ov.cards.grant_amount_yuan) }} 元
{{ ov.cards.recharge_count }}笔
期内充值
{{ formatMoney(ov.cards.recharge_amount_yuan) }} 元
{{ formatMoney(ov.cards.stored_recharge_yuan) }}元
期内储值合计
开卡 + 充值实收
{{ formatMoney(ov.cards.balance_yuan) }}元
储值余额 (全量)
{{ ov.cards.balance_members }}人
持储会员
{{ ov.cards.count_card_remaining }}次
次数卡剩余次数
会员增长
新增 {{ ov.members.total_new || 0 }} · 累计 {{ ov.members.total_members || 0 }}
图表组件加载失败
大品类占比
按实付 · 期内全部品类
图表组件加载失败
洗护方式 (实付)
图表组件加载失败
细分品类帕累托 (实付 TOP15)
蓝柱 = 前80%头部 · 灰柱 = 长尾 · 虚线 = 80% 参考线
图表组件加载失败
订单状态分布
图表组件加载失败
换绑申请
{{ pendingRebinds.length }} 条待审核
确认通过门店
{{ rebindApproveDlg.row?.shop_name || '' }}
的接管申请?请先电话核实门店经营者本人意愿,确认后批准。
批准后无需转告任何信息:接管机(申请时的机器)将在轮询周期内自动领取密钥(4
小时内有效),本机数据自动备份后清空、从云端 1:1 重建。批准不动密钥不动指纹;
领取瞬间旧机即时作废;机器未领取 4 小时后自然过期回滚,旧机不受影响。
门店「{{ rebindResultDlg.shopName }}」的接管申请已批准。
门店ID
复制
{{ rebindResultDlg.shopId }}
接管机将在轮询周期内自动领取密钥并完成接管(4 小时内有效),无需门店做任何操作。
若机器 4 小时内未领取,申请自然过期回滚,可让门店重新提交。
若机器 4 小时内未领取,申请自然过期回滚,可让门店重新提交。
门店列表
会员查询
{{ (md.info.name || '会')[0] }}
{{ md.info.name || '—' }}
{{ md.info.is_vip ? '正式会员' : '到店顾客' }}
{{ md.profile.rfm.member_type }}
{{ md.info.phone || '—' }} · {{ md.info.shop_name || '—' }} · 注册 {{ fmtDT(md.info.created_at) }}
{{ md.info.points || 0 }}
积分
¥ {{ fmtCents(md.cards.balance_cents) }}
储值余额(元)
¥ {{ fmtCents(md.cards.coupon_balance_cents) }}
券余额(元)
{{ md.cards.count_card_count || 0 }} 张 / {{ md.cards.count_remaining_total || 0 }} 次
次卡
¥ {{ fmtCents(md.cons.total_spent_cents) }}
累计消费(元)
{{ md.profile.visit_count }}
到店次数
¥ {{ fmtCents(md.profile.avg_order_value_cents) }}
客单价(元)
RFM 价值评分 (100分制)
{{ b.label }}
{{ b.score }} 分
{{ b.detail }}
综合 {{ md.profile.rfm.rfm_total }} 分 · {{ md.profile.rfm.member_type || '—' }}
消费偏好
偏好洗法
{{ p.name }} × {{ p.count }}
暂无数据
常送品名
{{ p.name }} × {{ p.count }}
暂无数据
在洗状态 (本店)
在洗 {{ md.profile.state.washing }} 件
待取 {{ md.profile.state.returned }} 件
返洗中 {{ md.profile.state.rewashing }} 件
当前无在洗衣物
消费统计 (本店, 排除作废)
折扣卡 ({{ md.cards.discount_count || 0 }})
暂无折扣卡
储值
{{ c.is_active ? '使用中' : '停用' }}
{{ c.discount_name }}
{{ c.card_number || '—' }}
¥ {{ fmtCents(c.balance_cents) }}
余额
次数卡 ({{ md.cards.count_card_count || 0 }})
暂无次数卡
次卡
{{ c.is_active ? '使用中' : '停用' }}
{{ c.discount_name }}
{{ c.card_number || '—' }}
{{ c.remaining_count }}/{{ c.total_count }}
剩余/总次
优惠券 ({{ md.cards.coupon_count || 0 }})
暂无优惠券
券
{{ c.is_active ? '使用中' : '停用' }}
{{ c.coupon_name }}
{{ c.card_number || '—' }}
¥ {{ fmtCents(c.balance_cents) }}
剩余 {{ c.remaining_count }} 张 · 面额 ¥ {{ fmtCents(c.amount_cents) }}
团购核销 (最近10笔)
基本信息
触达与风险
赔付记录 (最近10笔)
对账中心 (E2 跨店结算对账 · E3 团购渠道对账)
对账笔数
{{ crSummary.record_count }}
已结 {{ crSummary.settled_count }} · 待结 {{ crSummary.pending_count }} · 草稿 {{ crSummary.draft_count }} · 争议 {{ crSummary.disputed_count }}
应付合计(元)
{{ fmtCents(crSummary.total_payable_cents) }}
应收合计(元)
{{ fmtCents(crSummary.total_receivable_cents) }}
净额(应收-应付)
{{ fmtCents(crSummary.net_cents) }}
账单数
{{ grSummary.bill_count }}
已确认 {{ grSummary.confirmed_count }} · 待确认 {{ grSummary.draft_count }} · 争议 {{ grSummary.disputed_count }}
平台预期(元)
{{ fmtCents(grSummary.expected_total_cents) }}
实际到账(元)
{{ fmtCents(grSummary.actual_total_cents) }}
差异(元)
{{ fmtCents(grSummary.diff_total_cents) }}
对账率
{{ (grSummary.recon_rate * 100).toFixed(1) }}%
支付方式分摊
未匹配明细 ({{ drUnmatchedItems.length }} 条)
备注: {{ drDetail.data.remark }}
客群运营 (B1 会员标签/RFM 概览 · B2 客群分群)
客户画像 (B3 单客 360°: 消费/卡券/团购/订单/赔付/标签)
卡券 (储值余额 {{ fmtCents(cpDetail.data.cards.balance_cents) }} 元 · 次卡 {{ cpDetail.data.cards.count_card_count }} 张 · 优惠券 {{ cpDetail.data.cards.coupon_count || 0 }} 张)
无卡券
团购券 (最近 10 笔核销)
无团购券记录
最近订单 (10 单)
无订单
赔付记录 (最近 10 笔)
无赔付记录
留存分析 (B4 新客队列漏斗: 复购/会员/核心/流失 转化率)
{{ st.label }}
{{ st.rate }}%
队列新客 {{ rtData.total }} 人{{ rtData.date_from ? ' · 首单区间 ' + rtData.date_from + ' 至 ' + rtData.date_to : '' }}; 流失 = 末次下单距今 > 90 天
员工绩效 (B5 按收衣员聚合: 件数/单数/营业额/提成)
提成比例
%
员工数
{{ spSummary.staff_count }}
收衣件数
{{ spSummary.total_items }}
收衣单数
{{ spSummary.total_orders }}
总营业额
{{ fmtCents(spSummary.total_revenue_cents) }} 元
总提成 ({{ spSummary.commission_rate_pct }}%)
{{ fmtCents(spSummary.total_commission_cents) }} 元
营业额 Top 榜 ({{ spSearch.shop_id ? '区域' : '全国' }} · 前 {{ spTopn.length }} 名)
{{ t.rank }}
{{ t.staff_name }}
{{ fmtCents(t.revenue_cents) }} 元
ROI 追踪 (B7 运营动作投入 vs 产出, 综合ROI)
记录数
{{ roiSummary.record_count }}
总投入
{{ fmtCents(roiSummary.total_cost_cents) }} 元
总产出
{{ fmtCents(roiSummary.total_revenue_cents) }} 元
净收益
{{ fmtCents(roiSummary.profit_cents) }} 元
综合 ROI
{{ roiSummary.roi }}%
月度计划 PDCA (B8 Plan 计划 → Do 执行 → Check 检查 → Act 改进)
P · 计划 创建时锁定
{{ i + 1 }}. {{ g }}
未设定目标
{{ pdDetail.data.plan_strategy }}
D · 执行
C · 检查
A · 改进
门店目标 (B9 月度现金流/营收/件数/新客目标与完成率)
{{ m.label }}
{{ m.money ? (fmtCents(glProg.data.actuals[m.actual]) + ' / ' + fmtCents(glProg.data.goals[m.goal]) + ' 元') : (glProg.data.actuals[m.actual] + ' / ' + glProg.data.goals[m.goal]) }}
{{ glProg.data.rates[m.rate] }}%
跨店分析 (B10 跨店消费贡献 · 错件统计 · 对账差额)
跨店会员数
{{ caSummary.member_count }}
跨店订单数
{{ caSummary.order_count }}
跨店金额
{{ fmtCents(caSummary.amount_cents) }} 元
Top 流向
价格带分析 (B12 客单价分段分布 · 品类价格带)
分段数
订单数
{{ pbSummary.order_count }}
总金额
{{ fmtCents(pbSummary.total_amount_cents) }} 元
平均客单价
{{ fmtCents(pbSummary.avg_amount_cents) }} 元
中位数
{{ fmtCents(pbSummary.median_cents) }} 元
众数
{{ fmtCents(pbSummary.mode_cents) }} 元
{{ b.band_label }}
{{ (b.percentage * 100).toFixed(1) }}%
品类价格带 (按单件价格 price_solid 分段)
{{ bd.band_label }} {{ bd.item_count }}
无品类数据
会员服务台 (D3 代客查询: 订单进度 / 储值余额 / 衣物照片)
该会员暂无订单
匹配会员
{{ mpBalance.matched_members }}
储值总余额
{{ fmtCents(mpBalance.total_balance_cents) }} 元
次数卡剩余
{{ mpBalance.total_remaining_count }} 次
暂无卡券
暂无云端图片
{{ img.shop_name }} · {{ img.created_at }}
当班与提成 (开门/打烊/替班交接 + 提成配置/每日汇总)
当前当班
{{ shiftCur.on_duty_staff_name || shiftCur.on_duty_staff_id }}
开始时间
{{ (shiftCur.start_time || '').slice(0, 19) }}
备用金
{{ fmtCents(shiftCur.open_cash_float_cents || 0) }} 元
当前无人当班
开门签到
替班交接
暂无交接记录
计算模式
营收提成比例 (%)
单件提成 (元)
归属方式
操作人分成 (%)
当班人分成 (%)
混合·单件提成 (元)
混合·营收门槛 (元)
混合·超门槛比例 (%)
替班提成系数 (%)
替班默认费用 (元)
备注
当日无提成数据
员工管理 (C1 后台账号: 登录管理台的员工/店长账号)
暂无账号
门店配置 (C3 业务配置: 提成规则/赔付上限/营业时间 · 预警阈值类随预警模块暂缓)
{{ scValidate.valid ? '校验通过' : '校验发现 ' + scValidate.errors.length + ' 处错误' }}
· {{ scKeyLabel(e.key) }}: {{ e.msg }}
· {{ scKeyLabel(w.key) }}: {{ w.msg }}
0 = 不限; 存储单位为分, 自动换算
订单图片 (A2 图片云存储: 已上云图片可查看, 未上云仅存桌面端本地)
{{ img.upload_status === 'success' ? '无云端链接' : '未上云' }}
{{ bizShopName(img.shop_id) }} · {{ (img.captured_at || img.created_at || '').slice(0, 16) }}
团购券核销汇总
核销件数
{{ gbSummary.total_verified || 0 }}
平台实付合计
{{ fmtCents(gbSummary.total_paid_cents || 0) }}
唯一券数
{{ gbSummary.total_unique_coupons || 0 }}
重复核销预警
{{ gbSummary.repeat_coupon_count || 0 }}
暂无核销数据
核销明细 (核销在门店收银端完成, 此处为对账视图; 平台拉取暂未开放)
暂无核销记录
发票管理 (A4: 登记 → 开具 → 作废)
暂无发票记录
存储单位为分, 自动换算
盘点管理 (A5: 盘点执行在门店桌面端, 此处查看结果与差异)
暂无盘点单
件级明细 ({{ (skDetail.items || []).length }})
暂无明细
上门取送 (A6: 取送执行在门店桌面端, 此处监控进度与 SLA 超时)
暂无取送单
按四条 SLA 规则自动判定: 联系确认超时 / 到达偏离预约 / 取件回店超时 / 出发签收超时
无 SLA 超时取送单
订单列表 (订单维度 · 点击行查看衣物明细)
{{ row.batch_number }}
短号 {{ row.pickup_short_code }}
{{ row.member_name || '-' }}
{{ row.member_phone }}
本页合计: {{ orders.length }} 单
件数: {{ orderPageSum.items }}
实收: {{ fmtCents(orderPageSum.solid) }} 元
欠款: {{ fmtCents(orderPageSum.owe) }} 元
收衣: {{ orderDrawer.batch.created_at }}
门店: {{ orderDrawer.batch.shop_name || orderDrawer.batch.shop_id }}
会员: {{ orderDrawer.batch.member_name || '散客' }} {{ orderDrawer.batch.member_phone || '' }}
件数: {{ orderDrawer.batch.item_count }}
支付: {{ orderDrawer.batch.pay_display || '-' }}
收银员: {{ orderDrawer.batch.operator || '-' }}
实收: {{ fmtCents(orderDrawer.batch.price_solid_cents) }} 元
欠款: {{ fmtCents(orderDrawer.batch.price_owe_cents) }} 元
{{ row.cloth_name }}
{{ row.color }}
运营日报表 (口径 1:1 对齐门店端)
{{ g }}
钱柜实时余额(元)
¥ {{ fmtCents(cashBalance.balance_cents) }}
{{ cashBalance.base_date === '—' ? '无手动核对 · 全量累计' : `核对锚点 ${cashBalance.base_date} 实点 ¥${fmtCents(cashBalance.base_cash_cents)}` }}
核对后现金收入(元)
¥ {{ fmtCents(cashBalance.cash_income_cents) }}
结算/补缴现金 + 退款红字抵减
核对后净支取(元)
¥ {{ fmtCents(cashBalance.cash_out_cents) }}
卡务入柜/修正净额 ¥ {{ fmtCents(cashBalance.box_extra_cents) }}
现金支取记录 (仅查看 · 手工支取 + 系统现金收支合并流水)
{{ it.label }}
{{ it.sign }}¥ {{ fmtCents(Math.abs(it.cents)) }}
门店设置 (编辑后自动下发至门店端)
跨店协调 (全店数据检索 — 定位他店订单/会员/赔付, 图片隐私脱敏)
{{ row.member_name || '-' }}
{{ row.member_phone }}
{{ row.member_name || '-' }}
{{ row.member_phone }}
{{ img.image_type || '图片' }} 他店 · 本地路径已隐藏
{{ img.shop_name }} · {{ img.captured_at || '' }}
健康检查明细
{{ checkName(name) }}
{{ healthLabel(check.status) }}
{{ checkDetailSummary(name, check, true) }}
告警时间线
{{ alert.rule_name }}
{{ alert.message }}
{{ stringifyShort(alert.detail) }}
短信模块状态
{{ smsOverview.account ? ('账号: ' + smsOverview.account) : '账号未配置 (ihuyi_account)' }}
剩余条数 (余额)
{{ smsOverview.balance.num }}
查询失败 / 未配置
预警阈值: {{ smsOverview.balance_threshold }} 条
今日发送 (全部门店)
{{ smsOverview.today_total }}
条
成功 {{ smsOverview.today_success }} / 失败 {{ smsOverview.today_fail }}
· 单店日配额 {{ smsOverview.quota_default }} 条
近 24 小时预警
{{ smsOverview.alerts_24h }}
余额不足 / 查询失败预警次数
模块配置 (凭证 / 开关 / 配额 / 预警)
配置保存后立即生效 (热更新, 无需重启服务); 凭证加密存储, 页面只显示尾 4 位。
场景模板配置 (互亿无线备案)
{{ row.scenario }}
{{ row.template_id || '-' }}
未备案场景发送时返回「模板ID未配置」并记录发送日志; 在互亿无线后台备案模板后,
点击本表「配置模板ID」填入 template_id 即可生效, 保存后可点「测试」验证通道。
发送记录
预警记录 (余额不足 / 查询失败)
{{ tmplDialog.scenario }}
清空后保存 = 清除该场景的自定义配置 (恢复默认/未配置状态)。
{{ testDialog.scenario }}
走真实发送链路 (配额/模板/凭证校验 + 发送日志), 计入配额。
限流策略
版本信息
产品版本
{{ version ? 'v' + version : '未知' }}允许同步构建
{{ c }}
以上 hash 的 desktop 包可正常同步,其余旧包将被 426 拒绝
—
DataHub 构建
{{ deployCommit || '—' }}{{ deployTime || '' }}部署环境
数据库
PostgreSQL (rui_yue_datahub)
数据库用户
postgres (owner) / datahub_ro (只读)数据库备份
通知中心 (预警 9 规则统扫 · 强制任务闭环 · 公告扇出已读 · 规则阈值配置)
待处理
{{ ncTaskSummary.issued }}
进行中
{{ ncTaskSummary.in_progress }}
已完成
{{ ncTaskSummary.done }}
已驳回
{{ ncTaskSummary.rejected }}
已超时
{{ ncTaskSummary.overdue }}
密码要求: ≥10位, 必须含大写字母、小写字母和数字, 不能与用户名相同, 不可使用常见弱密码。
{{ shopDetail.shop_id }}
{{ shopDetail.shop_id }}
{{ shopSecretVisible ? shopDetail.app_secret : '••••••••••••••••' }}