```mermaid
---
title: 7.佣金产生细节说明
---
flowchart TD
    开始((开始))
    --> 订单完成[订单完成并进入佣金核算]

    订单完成 --> 来源判断{订单来源}
    来源判断 -->|后台订单| 后台类型判断{后台订单类型}
    来源判断 -->|客户端订单| 客户端订单口径[客户端订单进入佣金计算]

    后台类型判断 -->|平台代购| 平台代购口径[参与跨级差价链式分配]
    后台类型判断 -->|代理自购或代理代购| 后台一次性跳过[后台订单不触发一次性佣金]

    平台代购口径 --> 差价链路入口[进入差价链式分配]
    客户端订单口径 --> 差价链路入口
    后台一次性跳过 --> 差价口径判断{是否需要差价链式分配?}
    差价口径判断 -->|否| 进入核查
    差价口径判断 -->|是| 差价链路入口

    subgraph 差价链式分配
        差价链路入口 --> 差价链式说明[跨级差价链式说明<br/>1 以销售店铺为起点逐级向上分配<br/>2 每一级只拿自己与下一级的成本价差<br/>3 直到链路顶层或无上级为止]
        差价链式说明 --> 差价逐级计算[按店铺层级逐级计算差价收益]
        差价逐级计算 --> 差价入账[差价收益入账]
    end

    客户端订单口径 --> 一次性入口{是否满足一次性佣金前提?}
    一次性入口 -->|否| 一次性跳过[本单不产生一次性佣金]
    一次性入口 -->|是| 一次性规则判断[判断首充或累计触发条件]

    subgraph 一次性链式分配
        一次性规则判断 --> 一次性触发判断{是否达到触发要求?}
        一次性触发判断 -->|否| 一次性跳过
        一次性触发判断 -->|是| 一次性链式说明[一次性链式说明<br/>1 下级先拿配置给下级的金额<br/>2 上级拿本级可得金额与下级金额的差额<br/>3 逐级向上分配直至顶层]
        一次性链式说明 --> 一次性逐级分配[按上下级配置逐级分配]
        一次性逐级分配 --> 一次性入账[一次性佣金入账]
    end

    差价入账 --> 进入核查[进入佣金验收核查]
    一次性跳过 --> 进入核查
    一次性入账 --> 进入核查

    subgraph 验收核查
        进入核查 --> 金额核查[核查各级店铺佣金金额]
        金额核查 --> 归属核查[核查各级店铺佣金归属]
        归属核查 --> 人工核查判断{是否命中人工核查条件?}
        人工核查判断 -->|是| 人工复核[进入人工复核并给出处理结论]
        人工复核 --> 核查结果
        人工核查判断 -->|否| 核查结果{核查是否通过?}
        核查结果 -->|否| 修正处理[修正配置或补充记录后重算]
        修正处理 --> 订单完成
        核查结果 -->|是| 结束([流程结束])
    end

    %% ==================== 样式美化 ====================
    style 开始 fill:#90EE90,stroke:#2E7D32,stroke-width:2px
    style 结束 fill:#FF9999,stroke:#C62828,stroke-width:2px
    style 修正处理 fill:#FFCCBC,stroke:#E64A19
    style 人工复核 fill:#FFCCBC,stroke:#E64A19

    classDef decision fill:#FFF3E0,stroke:#F57C00,stroke-width:2px
    class 来源判断,后台类型判断,差价口径判断,一次性入口,一次性触发判断,人工核查判断,核查结果 decision
```
