Skip to content

金刚系统数据与状态模型

本页说明金刚侧最重要的数据关系和状态来源。排查问题时不要只看页面展示,要沿着主表、流水、日志和任务记录一起查。

状态模型总览

状态对象主表状态字段/记录日志或流水备注
服务订单orderorder_statusorder_status_nameorder_logs云平台人工派单会写订单状态和日志。
订单支付store_payment_orderorder_paymentsstatuspayment_statusccuser_transaction、支付回调日志易宝回调需要幂等处理。
标准单派发standard_staff_dispatch_attempt尝试状态、员工确认状态standard_staff_dispatch_log失败、拒绝、超时都要看派发日志。
标准单配置standard_order_rule_config配置项键值standard_order_config_snapshot历史订单按快照复盘。
标准单通知standard_order_notification_outbox待发送、已发送、失败发送结果和错误信息员工没收到通知先查 outbox。
员工钱包staff_wallet_account可用、冻结、状态staff_wallet_ledger结算、提现都通过流水追踪。
门店积分store_score_account可用、冻结、派发状态store_score_transaction线索和日结影响积分。
门店钱包store_wallet_account可用、冻结、状态store_wallet_transaction月度品牌费、充值、扣费走这里。
合同contract合同状态、服务期、主体contract_paymentcontract_change_record变更和换人必须看操作记录。
保险insurance_record保单状态、退保状态insurance_operation_recordinsurance_order_log以本地记录和第三方回调共同确认。

生产数据快照

以下为 2026-07-19 只读查询 jingangdata 的规模快照,用于接手判断链路成熟度,不代表实时运营报表。

对象记录数判断
company662公司主体已经有明显历史沉淀。
store487门店主数据是门店端入口和资金归属核心。
internal_user739门店管理账号、角色和权限需要按数据范围排查。
service_staff2925员工端和服务人员管理是高频链路。
order1515订单状态已生产运行,修复前必须查日志和支付。
customer2198客户、地址、合同和订单强关联。
contract1434合同链路属于高风险生产模块。
insurance_record1652保险记录已有第三方状态沉淀。
store_wallet_account479门店钱包账户已基本覆盖门店。
store_score_account467门店积分账户已基本覆盖门店。
staff_wallet_account0员工钱包代码已具备,但真实账户尚未沉淀。
staff_wallet_ledger0员工钱包流水当前无沉淀。
staff_service_capability41员工服务能力已有少量生产配置。
staff_platform_product219643员工与平台产品绑定已有批量沉淀,排查候选时必须关注。
standard_staff_service_region97标准员工服务区域已有生产配置。
standard_staff_score_account41标准员工积分账户已有少量沉淀。
standard_staff_dispatch_attempt0标准单自动派发 attempt 当前无生产沉淀。
standard_order_settlement_task0标准单结算任务当前无生产沉淀。
standard_order_notification_outbox0标准单通知 outbox 当前无生产沉淀。

订单状态真实分布如下:

状态码/名称记录数
80/已完成826
99/已取消311
10/已接单135
90/已完成79
40/已派单59
20/派单待确认54
50/执行中20
60/开始服务20
30/拒绝接单9
20/已派单1
80/服务结束1

库里存在少量状态码和状态名不一致的历史记录,排查时以状态码、订单日志和服务调用链为准。

订单状态排查

现象排查顺序
页面显示未派单order.order_status,再查 order_logs 是否有派单操作,若是标准单再查 standard_staff_dispatch_attempt
员工已服务但订单未完成查员工服务记录是否提交,再查 order_logs 是否有完成状态写入失败。
订单被取消order_logs 的取消来源,再看支付是否需要退款或释放钱包/积分冻结。
补价后状态不变order_additional_payments 的支付状态和 payment_service.py 回调处理结果。
云平台人工派单未生效yunapi 人工派单接口是否写入 order,再查 storeapi 员工端是否按新员工字段回显。

状态码口径

状态码常见名称主要来源
10已接单历史/兼容数据。
20派单待确认门店派单或自动派发给员工后等待确认。
30拒绝接单员工拒单;标准单会继续顺延候选。
40已派单员工已确认接单。
50执行中员工进入执行过程。
60开始服务员工上传服务前凭证并开始服务。
70服务结束兼容旧流程。
80已完成员工完成服务,后续可进入结算或评价。
90已评价/已完成历史完成态。
99已取消取消后不可继续履约。

员工端状态机允许 20 -> 30/40 -> 50 -> 60 -> 8070 -> 80 只为旧流程兼容。门店端老统计中还会出现 4/5/6 的历史完成/取消/拼团口径,接手时必须先看订单 business_mode 和具体接口,不要把老统计字段当标准单状态机。

全国标准单关键数据

text
platform_product / platform_product_sku
  -> staff_platform_product / staff_service_capability
  -> standard_staff_service_region
  -> standard_staff_dispatch_pool
  -> standard_staff_dispatch_attempt
  -> standard_staff_dispatch_log
  -> order / order_logs
  -> standard_order_settlement_task
  -> staff_wallet_ledger
环节数据要求失败表现
产品可承接平台产品上架,工种有效,SKU 映射正确。下单后没有进入员工池或没有候选。
员工可接员工有效,能力覆盖产品,区域覆盖地址,档期可用。派发日志显示候选为空或被过滤。
派发可确认员工有 openid/通知能力,任务能发送 outbox。订单待确认但员工无提醒。
超时可顺延超时任务正常运行,候选游标可推进。一直卡在同一员工待确认。
结算可入账订单完成,结算任务未重复,员工钱包有效。服务完成但员工钱包没有收入。

标准单派发规则要点

规则说明
总开关先读 standard_order_rule_config.config_code = NATIONAL_STANDARD_ORDER_ENABLED,无配置再读环境变量 STANDARD_STAFF_AUTO_DISPATCH_ENABLED;当前生效值为 true
允许城市先读 config_code = ALLOWED_CITY_CODES,支持 *;否则读环境变量 STANDARD_STAFF_AUTO_DISPATCH_CITY_CODES;当前生效值为 ["*"]
允许来源默认 CLIENTSTORE_QR,配置 config_code = ALLOWED_SOURCES 可覆盖;当前生效值为 ["CLIENT","STORE_QR"]
城市范围当前生效配置 ALLOWED_CITY_CODES = ["*"],表示全国城市可进入自动派发候选。代码中有厦门判断函数,但当前派发主流程没有内置厦门排除分支。
候选排序当前生效值 SCORE_WAITING,按积分加等待天数,再按积分、排名、优先级、员工 ID 排序。
超时当前 DISPATCH_ACCEPT_MINUTES = 15,代码环境变量 STANDARD_STAFF_DISPATCH_ACCEPT_TIMEOUT_MINUTES 用于兜底或任务参数。
服务奖金比例当前 SERVICE_BONUS_RATE = 0.70,历史订单以支付时快照为准。
结算等待当前 SETTLEMENT_GRACE_MINUTES = 240,即服务完成后默认等待 4 小时。
开发奖金员工和门店开发奖金当前均为 0.05,开发奖金冻结期为 1 个自然月。
平台收款YEEPAY_ORDER_MERCHANT_NO 已配置,正式文档不写商户号明文;排查时在受控环境查配置表或云平台配置中心。
候选轮发standard_staff_dispatch_cursor 记录同范围游标;员工拒绝或超时后顺延。
内部派发范围金刚下单端内部派发只按区县和城市匹配,不自动扩大到省或全国。

员工能力和区域

数据判断
service_staff.statusis_delete员工是否有效。
staff_service_capability员工是否具备服务产品或工种能力。
standard_staff_service_region标准单员工池服务区域。
employee_schedule*staff_rest_date员工是否有档期冲突或休息。
standard_staff_schedule_lock是否被并发订单锁定。
staff_platform_product是否绑定平台标准产品。

钱包、积分和结算

员工钱包

员工钱包用于员工服务奖金、提现和收入记录。排查时看:

作用
staff_wallet_account员工账户余额、冻结金额、状态。
staff_wallet_ledger每一笔收入、支出、冻结、解冻、提现流水。
staff_withdrawal_application提现申请、审核、打款状态。

关键原则:

  1. 结算任务必须幂等,不能重复给同一订单生成收入。
  2. 提现前必须确认可用余额足够。
  3. 打款失败要保留失败原因和可补偿入口。

当前员工钱包页面会聚合标准单结算任务、开发奖金任务、员工钱包流水、历史只读收入和易宝入网状态。staff_wallet_account 为空时,不代表员工收入页面一定为空;历史收入可能来自 order_waiter,只读展示,不进入可提现余额。

员工提现状态:

状态含义
PENDING已申请,等待审核或处理。
APPROVED已审核通过,等待打款。
PROCESSING打款处理中。
COMPLETED已完成。
FAILED / REJECTED失败或驳回,需要看失败原因和回退流水。

同一员工存在 PENDINGAPPROVEDPROCESSING 中任一提现时,不能再次提交提现。

门店积分

门店积分用于线索、排名、扣分、日结和派发开关判断。

作用
store_score_account门店当前积分和派发状态。
store_score_transaction积分变动流水。
store_score_categorystore_score_item积分规则。
store_score_settlement_batch日结批次结果。

dispatch_status = ACTIVE 才表示门店可以进入线索派发;PAUSED 通常说明余额、品牌费、人工暂停或规则限制导致暂停。

门店钱包

门店钱包用于门店资金余额、月度品牌费、充值、扣款和功能开关。

作用
store_wallet_account门店钱包余额和冻结金额。
store_wallet_transaction钱包流水,要求幂等键。
store_wallet_feature_config功能开关。
store_wallet_suspense悬挂或异常资金。

月度品牌费扣款会同时影响钱包流水和门店派发状态;余额不足时可能暂停门店派发,补足后需要恢复。

门店钱包写入动作必须走服务层:

动作结果
credit可用余额增加,写收入流水。
debit可用余额减少,余额不足直接拒绝。
freeze可用余额减少、冻结增加。
unfreeze冻结减少、可用增加。
confirm_frozen_expense冻结减少,确认扣费。

每个动作都要求 idempotency_key,资金修复不能直接改余额字段。

合同和保险状态

环节主表排查重点
合同主流程contract合同状态、客户、门店、阿姨、服务期。
合同支付contract_paymentstore_payment_order支付订单号、金额、回调状态。
合同补充contract_supply补充协议、离职日期、导出状态。
换人/续签contract_change_recordcontract_resign_log谁发起、何时生效、是否同步保险。
合同保险contract_insurance合同和保险记录是否一致。
保险投保insurance_record保单号、状态、起止日期、产品。
保险退保insurance_surrender_document材料状态、文档地址、提交状态。

保险状态不能只看页面提示。第三方处理结果、回调、操作记录和本地保单状态必须一起确认。

第三方依赖

依赖用途本地证据
微信小程序登录、订阅消息、员工端入口。openid、模板消息、员工登录记录。
易宝商户入网、支付、分账、提现相关能力。yeepay_*store_payment_order、支付回调日志。
支付宝安心生活订单抓取、同步和状态回调。alipay_anxin_*、安心生活自动抓单任务。
大地保险家政责任险、退保材料和接口。insurance_recordinsurance_operation_record、退保文档。
人保人保投保能力。picc_insurance_service.py 和对应保险记录。
OBS/远程文档服务合同、退保 Word/PDF、图片资源。文件表、文档地址、上传结果。

写文档和改代码时的约束

  1. 状态类文档必须写清主表和日志表。
  2. 钱包、积分、支付、合同、保险不能只写页面操作,必须说明资金和状态来源。
  3. 小程序端发布受微信审核节奏影响,后端上线要兼容旧小程序。
  4. 需要后台补偿的逻辑统一落到任务或脚本,不依赖云函数响应结束后的后台任务。
  5. 小羽佳订单协同旧链路不继续扩展文档。

用于金刚项目内部协作、运营培训和客户说明。