润致GEO · 运营平台端 PRD

版本 1.0 | 2026年6月 | 涵盖运营平台端全部功能模块的详细产品需求规格
一、文档概述与三端架构

润致GEO是一个企业GEO(搜索引擎优化)服务分销系统,包含三个终端:

终端形态用户核心功能
客户端微信小程序购买GEO服务的企业客户选购套餐、管理订单、申请发票
合伙人端微信小程序推广GEO服务的合伙人拓展客户、招募合伙人、查看分润
运营平台端PC Web 后台润致GEO运营管理人员数据管理、审核、分润核算、系统配置

账号体系:一个手机号对应一个用户。用户可拥有"客户"和"合伙人"双重身份。客户身份用户只能登录客户端;合伙人身份用户可以登录合伙人端并可切换至客户身份。客户身份可升级为合伙人,合伙人不可降级为客户。


本文档范围:本文档仅描述运营平台端(PC后台)的功能需求。客户端和合伙人端的功能请参见各自PRD文档。

二、分润规则详解

2.1 参与分润的账户层级

系统分润涉及四层账户,从上到下依次为:

层级账户类型所属终端分润来源
L1事业部运营平台端(内部)旗下所有订单的分润差额
L2高级合伙人运营平台端(内部)旗下所有订单的分润差额
L3城市合伙人合伙人端(外部)直推客户业务 + 招商奖励 + 团队培育
L4云创合伙人合伙人端(外部)直推客户业务 + 招商奖励 + 团队培育

差额累进模型:L1和L2的分润采用差额累进方式。即:高级合伙人分润 = 订单金额 × (高级合伙人配置比例 − 下级合伙人实际分润比例(不含平级业务奖励和间推业务奖励));事业部分润 = 订单金额 × (事业部配置比例 − 高级合伙人配置比例(不含平级业务奖励和间推业务奖励))。四个比例之和不作简单加法约束,而是通过差额模型自然分配。

2.2 分润基础规则

  1. 产品管理 → 套餐管理中,为每个套餐配置标准价格和四级账户的分润比例。
  2. 产品管理 → 合伙人政策中,配置两个等级的升级费用、招商分润比例和间推招商分润比例。
  3. 产品管理 → 合伙人政策中,配置平级直推业务奖励、间推业务奖励及承担方。平级业务奖励和间推业务奖励由高级合伙人/事业部承担。
  4. 当合伙人切换至客户身份并为自己创建业务订单时,视同该合伙人的直推客户订单参与分润。
  5. 产生分润的订单类型:合伙人升级订单客户业务订单

2.3 规则6 — 升级订单分润(招商奖励)

当合伙人A升级(或被招募的新合伙人B缴纳升级费),订单完成后系统生成以下分润记录:

场景6A 上级合伙人(直推招商分润)

若上级合伙人存在,且其等级 ≥ A升级后的等级,则生成"升级费-直推"记录:

分润金额 = A缴纳的升级费 × 对应招商直推比例

招商直推比例取决于招募方的等级与被招募方的等级组合:
云创招募云创 = 30% | 城市招募城市 = 30% | 城市招募云创 = 50% | 高级合伙人招募任意 = 60% | 事业部招募任意 = 80%

场景6B 上上级合伙人(间推招商分润)

若上上级合伙人存在,且其等级同时 ≥ 上级合伙人等级和A升级后的等级,则生成"升级费-间推"记录:

分润金额 = A缴纳的升级费 × 间推招商分润比例(固定5%)
场景6C 所属高级合伙人

生成"升级费分润"记录:

分润金额 = 升级费 × (高级合伙人招商比例 − 上级合伙人实得比例 − 上上级合伙人实得比例)

高级合伙人获取差额部分,扣除上级和上上级已分得的部分。

场景6D 所属事业部

生成"升级费分润"记录:

分润金额 = 升级费 × (事业部招商比例 − 高级合伙人招商比例)

事业部获取其招商比例与高级合伙人招商比例之间的差额。

📌 升级订单分润示例:
假设城市合伙人A成功招募赵琳升级为城市合伙人(升级费¥9,800),A的上级王强(城市)存在,上上级无。所属高级合伙人为上海运营中心(比例60%),所属事业部为华东大区(比例80%)。

• A(直推):9,800 × 50% = ¥4,900(升级费-直推)
• 王强(间推-上上级):王强等级=城市,A等级=城市,同时≥两条件满足 → 9,800 × 5% = ¥490(升级费-间推)
• 上海运营中心:9,800 × (60%−50%−5%) = ¥490(升级费分润)
• 华东大区事业部:9,800 × (80%−60%) = ¥1,960(升级费分润)

2.4 规则7 — 业务订单分润

当合伙人A的直推客户B购买GEO套餐时,系统生成以下分润记录:

场景7A 合伙人A(直推业务分润 — 标准套餐价格)
直推业务分润 = 客户实付套餐价 × A的产品分润比例

示例:城市合伙人直推客户购买年度旗舰¥15,800,分润 = 15,800 × 50% = ¥7,900

场景7B 合伙人A(直推业务分润 — 专属套餐价格)
直推业务分润 = 客户专属套餐价 − 平台标准套餐价 × (1 − A的产品分润比例)

即:分润 = 专属价 − 结算底价。合伙人多收的钱归合伙人,少收的钱合伙人自己承担。
示例:标准价¥15,800,合伙人设专属价¥18,000,分润比例50% → 底价 = 15,800×0.5 = ¥7,900 → 分润 = 18,000−7,900 = ¥11,100

结算底价公式
结算底价 = 平台标准套餐价 × (1 − 该等级合伙人直推业务分润比例)

月套餐 ¥2,980 → 云创底价¥2,086 / 城市底价¥1,490
季套餐 ¥4,800 → 云创底价¥3,360 / 城市底价¥2,400
年标准 ¥9,800 → 云创底价¥6,860 / 城市底价¥4,900
年旗舰 ¥15,800 → 云创底价¥11,060 / 城市底价¥7,900

⚠️ 合伙人自定义价格不得低于其对应等级的结算底价。

场景7C A的上级合伙人 — 合伙人业务分润

若A的上级合伙人存在,且其等级 > A,则生成"合伙人业务分润":

分润金额 = 平台标准套餐价 × (上级合伙人等级对应的产品分润比例 − 合伙人A等级对应的产品分润比例)

若上级与A等级相同,则按平级业务奖励规则处理:平级业务奖励 = 合伙人A根据平台标准套餐价计算的直推业务分润金额 × 平级业务分润比例(10%)。

场景7D A的上上级合伙人 — 间推业务奖励

若上上级合伙人存在,且其等级 ≥ 上级合伙人和A,则生成"间推业务奖励":

分润金额 = A的直推业务分润(按标准价计算) × 间推业务分润比例(5%)
场景7E 高级合伙人 → 业务分润
分润金额 = 订单金额 × (高级合伙人的产品分润比例 − 合伙人A根据标准套餐价的产品分润比例 − 上级合伙人的合伙人业务分润比例)

若有平级奖励/间推奖励且配置为高级合伙人承担,产生对应负向记录。

场景7F 事业部 → 业务分润
分润金额 = 订单金额 × (事业部产品比例 − 高级合伙人产品比例)

类似处理负向承担记录。

📌 业务订单分润完整示例:
城市合伙人张伟的直推客户"长沙市润企信息技术有限公司"购买年度旗舰套餐¥15,800(标准套餐价格)。张伟上级王强(城市,同级),上上级无。所属高级合伙人上海运营中心(60%),所属事业部华东大区(80%)。平级奖励10%,高级合伙人承担。

• 张伟(直推业务):15,800 × 50% = ¥7,900
• 王强(平级奖励):张伟直推业务分润(按标准价) = 15,800×50% = 7,900 → 7,900 × 10% = ¥790(由高级合伙人承担)
• 上海运营中心:15,800 × (60%−50%−0%) − 790 = 1,580 − 790 = ¥790
• 华东大区:15,800 × (80%−60%) = ¥3,160

2.5 手续费与承担方

配置项当前示例值说明
佣金手续费费率4.5%每月结算时扣除,结算金额 = 分润金额 × (1−4.5%)
平级/间推分润承担方高级合伙人承担可选:高级合伙人承担 / 事业部承担
平级业务奖励比例10%上级与下级同级时,上级从下级直推业务中获取的奖励比例
间推业务奖励比例5%上上级从下级业务中获取的间推奖励
间推招商分润比例5%上上级从下级招募中获取的间推招商奖励
三、首页仪表盘
模块规格
业绩统计6项指标:企业总数、合伙人总数(含云创/城市分计)、订单总金额(累计已完成)、本月企业新增、本月合伙人新增、本月总订单金额。数据实时更新。
待办事项3项:① 企业产品开通审核(首次下单需审核,续费免审)② 企业开票处理 ③ 升级订单审核。每项显示待处理数量。
常用功能8个快捷入口:企业管理、用户管理、订单管理、分润管理、套餐管理、发票管理、分支机构、商学院。
订单趋势图展示近30天订单趋势(接入ECharts实现)。
最近动态实时展示最新5条业务动态(续费、升级、推送等)。
四、分支机构管理

4.1 事业部管理

字段类型规则
事业部编号自动生成格式 BD-YYYYNNNN,新增时自动生成,编辑时不可修改
事业部名称文本,必填事业部全称
事业部简称文本,必填用于列表展示
联系人姓名/手机号文本,必填事业部负责人信息
状态枚举正常 / 已冻结。冻结后该事业部账号无法登录。

4.2 高级合伙人管理

字段类型规则
高级合伙人名称文本,必填如"上海运营中心"
所属事业部下拉选择,必填一个事业部可管多个高级合伙人,编辑时不可修改
负责人姓名/手机号文本,必填-
状态枚举正常 / 已冻结。冻结后不可登录。

权限说明:事业部和高级合伙人均可登录PC端,但仅可查看自身业绩数据,不具有运营平台管理权限。高级合伙人登录后只能看到其管辖范围的合伙人和订单数据。

五、用户管理

5.1 用户列表

字段类型规则
用户编号自动生成格式 U+YYYY+序号,唯一标识
姓名 + 手机号必填一个手机号对应一个用户
用户身份枚举客户 / 云创合伙人 / 城市合伙人。新增时默认"客户"
到期日日期合伙人有效期为1年,到期后仅标记为已到期,不限制登录
上级合伙人关联显示姓名+手机号+等级
上上级合伙人关联间接推荐关系
所属高级合伙人关联必填,新增时指定
所属事业部关联必填,新增时指定
状态枚举正常 / 已冻结。冻结后不可登录。

新增用户规则:选择所属事业部(必填)→ 所属高级合伙人(必填)→ 上级合伙人(可选)→ 填写姓名/手机号/身份证号(必填)。身份默认为"客户"且不可在新增时修改。可选上传身份证正反面和结算账户信息。

编辑用户规则:仅支持编辑姓名、身份证号、结算账户名/账号、身份证正反面图片。身份和归属关系不可编辑。

升级操作:客户可升级为云创/城市合伙人,云创可升级为城市。支持:①扫码升级(移动端)②后台升级。后台升级需选择等级(自动显示升级费)、填写实付金额、选择是否参与系统分润、上传付款凭证/合同(可选)。提交后创建升级订单(状态:待审核)。

设置可见套餐:仅针对客户身份用户。规则同合伙人端客户管理中的设置——可为每个套餐单独设置可见性和专属价格。运营平台和合伙人均可设置,以最后一次修改为准。接口提交时需携带 updatedAt 时间戳做乐观锁校验,若数据在读取后被他人修改则拒绝写入,返回提示"数据已被他人修改,请刷新后重试"。。


5.2 合伙人升级订单

字段说明
订单编号格式 UP+YYYYMMDD+序号
付款人、升级等级、升级费、实付金额订单基本信息
支付方式微信支付 / 银行转账
订单状态待付款 → 待审核 → 已完成 / 已拒绝 / 已取消
分润状态未分润 / 已分润(订单完成且系统分润开启时自动计算)
是否系统分润是/否。选"否"则订单不触发自动分润。
上级合伙人、上上级合伙人、所属高级合伙人、所属事业部分润计算依据

审核流程:运营管理员审核升级订单 → 通过则订单完成,身份变更生效,触发分润计算 → 拒绝则需上传退款凭证。

六、产品管理

6.1 产品服务机构

字段规则
所属产品类型当前仅"企业GEO套餐",预留扩展
服务机构名称必填
统一社会信用代码必填,唯一
机构类型当前仅"技术服务商"
开票类型多选:增值税专票6% / 增值税专票1% / 增值税普票
核心定位、核心服务、团队与技术介绍富文本,在客户端和合伙人端展示
交付流程可添加多个步骤(步骤名称+描述),展示5步交付流程
状态启用/停用。停用后不能创建新订单。

6.2 套餐管理

字段规则
产品类型当前"企业GEO套餐"
套餐名称必填,如"年度旗舰套餐"
序号控制客户端列表排序
有效期30天 / 90天 / 365天 三选一
套餐标准价必填,平台统一定价
服务机构下拉选择
核心服务项多个条目,客户端套餐卡片展示用
套餐服务明细名称+描述的多条目列表
套餐详情富文本编辑器
产品分润政策为该套餐配置四级分润比例(云创/城市/高级合伙人/事业部各自的比例)
推荐标记是/否。推荐套餐在客户端显示"推荐"标签。
状态启用/停用。停用后客户端和合伙人端不可见,不可创建新订单。
📌 标准价调整对自定义价格的影响:套餐标准价调整后,合伙人已设定的存量自定义价格不受影响,其自定义价格继续有效。标准价调整仅影响后续新设置的自定义价格的下限校验(结算底价 = 新标准价 × (1−分润比例))。

6.3 合伙人政策(全局配置)

以下为全局配置,修改后新订单按新规则执行,历史订单不受影响:

配置项配置值(示例)
云创合伙人升级费¥2,980 / 年
城市合伙人升级费¥9,800 / 年
云创→招募云创 分润比例30%
城市→招募城市 分润比例30%
城市→招募云创 分润比例50%
高级合伙人 招商分润比例60%
事业部 招商分润比例80%
间推招商分润比例5%
平级业务奖励比例10%
间推业务奖励比例5%
佣金手续费费率4.5%
平级/间推分润承担方高级合伙人承担 / 事业部承担 / 共同承担
七、业务与财务管理

7.1 企业管理

字段规则
企业名称、信用代码支持营业执照OCR识别,可手动修改
所属用户一个企业只能属于一个用户
当前套餐 / 剩余有效期显示已生效的套餐及剩余天数
待生效套餐当前套餐未到期时续费不同套餐,产生待生效套餐。一个企业最多一个待生效套餐。
上级合伙人、上级等级显示姓名+手机号+等级

约束规则:若企业有生效中套餐,不能被其他用户重复添加。存在待生效套餐时不允许再下新订单,代下单按钮置灰。

代客下单:支持自定义有效期、实付金额、是否参与系统分润、上传付款凭证。提交后进入"待审核"状态,需审核通过才能完成。


7.2 产品订单管理

字段规则
订单编号格式 PO+YYYYMMDD+序号
企业名称、套餐、有效期、付款金额、支付方式订单基本信息
订单状态待付款 → 待审核 → 已完成 / 已拒绝 / 已取消
分润状态未分润 / 已分润
上级合伙人、上上级合伙人、所属高级合伙人、所属事业部分润计算关联字段

审核规则:首次下单需运营平台审核(触发待办事项),续费订单无需审核自动生效。审核拒绝时需上传退款凭证。详情页可查看退款凭证(仅已拒绝订单)。


7.3 分润管理

完整状态流转:

① 系统生成
(待核对)
② 平台核对
(待推送)
③ 推送账单
(已推送)
④ 各方确认 ⑤ 财务结算
(已完成)

状态触发操作
待核对每月5号系统自动生成上月分润账单确认核对、查看账单、日志
待推送平台核对确认后立即推送(需二次确认,不可撤销)、查看账单、日志
已推送推送后,合伙人/事业部收到账单查看分润账单、导出结算单、批量结算确认、日志
已完成所有分润方均已结算查看账单、日志(只读)

分润汇总账单:按月度汇总。包含:总分润金额、手续费(4.5%)、应结算金额、分润人数、已确认人数、已结算人数。

分润账单(按分润方):每个分润方每月一张。合伙人在小程序端确认,高级合伙人和事业部在运营平台端确认。确认后状态变更为"待结算"。

分润明细:每笔分润的详细记录。包含:分润类型(直推业务/合伙人业务/间推业务/升级费-直推/升级费-间推/业务分润)、分润描述、关联订单、状态(待生成账单/已生成账单)。

调增/调减:在账单完成前,运营平台可对分润金额进行调整。调整需填写说明并二次确认,调整后更新汇总数据。

导出结算单:支持导出已推送记录的结算数据。财务线下结算后回填交易流水号,批量结算确认。


7.4 发票管理

客户在小程序端提交开票申请 → 运营平台审核 → 通过则上传发票文件 → 完成。拒绝需填写原因。

字段规则
申请编号、企业名称、开票金额、开票类型客户提交
关联产品订单编号支持搜索
所属用户(姓名+手机号)、用户身份关联显示
所属高级合伙人、所属事业部归属关系
状态待审核 → 审核拒绝 / 已开具

⚠️ V1 版本限制:发票功能为 MVP 版本,仅支持单次开具。已开具的发票不可在系统内修改、红冲或作废。如需修改开票信息,请线下联系运营团队处理。后续版本将完善发票全生命周期管理。

7.5 商学院与行业动态

内容管理模块,参照合伙人端对应功能。支持文章/资讯的增删改查、富文本编辑、分类管理、发布/草稿/下架状态切换。已下架内容可上架或删除。


7.6 系统管理

子模块规格
操作员管理新增/编辑/禁用操作员。角色支持多选,含备注字段。禁用后不可登录。
角色管理定义角色并分配权限(首页/用户/订单/企业/发票/分润/产品/内容/系统各模块的查看和操作权限)。
修改密码当前登录操作员修改自身登录密码。
八、统一枚举字典(全系统唯一权威参考)

以下枚举定义为全系统统一标准。所有终端(运营平台/合伙人端/客户端)的接口和显示均以此为准。英文Key供程序使用,中文Label供界面展示。

8.1 订单状态

英文Key中文Label数字编码适用终端说明
PENDING_PAYMENT待付款0三端订单创建,等待用户支付
PENDING_REVIEW待审核1三端已支付/已上传凭证,等待运营审核
COMPLETED已完成2三端审核通过,订单生效
REJECTED已拒绝3三端审核拒绝,需上传退款凭证
CANCELLED已取消4三端用户在待付款/待审核阶段主动取消

流转规则:待付款 → 待审核 → 已完成 / 已拒绝。待付款和待审核阶段可取消→已取消。首次下单需审核,续费自动通过。

退款说明:系统层面退款仅在审核拒绝时发生——运营人员在审核拒绝时上传退款凭证,表示线下已完成退款。已完成的订单系统暂时不支持退款操作。审核拒绝时订单尚未产生分润记录,故无需生成分润调减。

8.2 分润类型

英文Key中文Label数字编码适用终端触发场景
DIRECT_BIZ_PROFIT直推业务分润10运营+合伙人直推客户购买套餐,按分润比例计算
PARTNER_BIZ_PROFIT合伙人业务分润11运营+合伙人下级合伙人直推客户购买套餐的差额
INDIRECT_BIZ_REWARD间推业务奖励12运营+合伙人上上级从下级业务中获取的间推奖励(5%)
SAME_LEVEL_REWARD平级业务奖励13运营+合伙人同级上级从下级直推业务中获取的奖励(10%)
UPGRADE_DIRECT升级费-直推20运营+合伙人直推合伙人升级,按招商直推比例
UPGRADE_INDIRECT升级费-间推21运营+合伙人间推合伙人升级的间推招商奖励(5%)
UPGRADE_SENIOR升级费分润22运营高级合伙人/事业部从升级费中的差额分润
BIZ_SENIOR业务分润30运营高级合伙人/事业部从业务订单中的差额分润
ADJUST_ADD分润调增90运营手动调增分润金额(补遗漏等)
ADJUST_SUB分润调减91运营手动调减分润金额

说明:同一订单可产生多笔分润明细。如一个升级费订单可能产生"升级费-直推"、"升级费-间推"、"升级费分润"三笔记录。

8.3 分润账单状态

汇总账单(运营端内部):

英文Key中文Label数字编码说明
CHECKING待核对0系统生成,运营人员核对确认
PENDING_PUSH待推送1已核对,可推送账单
PUSHED已推送2已推送至各分润方,等待确认
COMPLETED已完成3全部分润方均已结算完成

个人账单(运营端+合伙人端):

英文Key中文Label数字编码可见终端说明
PENDING_PUSH待推送0仅运营端合伙人端不可见此状态
PENDING_CONFIRM待确认1运营+合伙人等待分润方确认账单
CONFIRMED已确认待结算2运营+合伙人分润方已确认,等待财务结算
SETTLED已结算3运营+合伙人财务已完成打款

流转:待推送 → 待确认 → 已确认待结算 → 已结算。待推送状态下仅运营端可见,推送后合伙人端方可见。

8.4 用户身份

英文Key中文Label数字编码适用终端说明
CUSTOMER客户0三端购买GEO服务的企业客户
CLOUD_PARTNER云创合伙人1三端初级合伙人,升级费¥2,980/年
CITY_PARTNER城市合伙人2三端高级合伙人,升级费¥9,800/年
SENIOR_PARTNER高级合伙人3运营运营组织架构身份,非对外
DIVISION事业部4运营运营组织架构身份,最高级

多身份规则:一个用户可同时拥有"客户"身份和一种"合伙人"身份(云创或城市,不可兼得)。升级为合伙人后原客户身份保留。高级合伙人和事业部为运营组织架构身份,不与客户/合伙人身份共存于同一账号。

8.5 其他枚举

枚举类别英文Key中文Label数字编码
发票状态PENDING_REVIEW待审核0
ISSUED已开具1
REJECTED审核拒绝2
套餐状态ENABLED启用1
DISABLED停用0
用户状态NORMAL正常1
FROZEN已冻结0
内容状态DRAFT草稿0
PUBLISHED已发布1
ARCHIVED已下架2

8.6 金额精度约定

约定项规格
存储精度数据库用整数存分(int,单位:分),避免浮点精度问题
分润计算中间结果保留4位小数
最终入账舍入四舍五入到分
手续费计算顺序先对每笔分润四舍五入到分 → 汇总 → 汇总乘以4.5% → 四舍五入到分
前端展示后端返回元(字符串,含两位小数);前端仅做千分位格式化
并发控制涉及金额/价格的修改操作必须携带 updatedAtversion 字段做乐观锁校验,冲突时返回 HTTP 409 及提示"数据已被他人修改,请刷新后重试"

8.7 数据脱敏规则

数据类型小程序端(客户端/合伙人端)运营平台端(PC后台)
手机号中间4位星号(138****8888)不脱敏
身份证号中间脱敏(430***********1234)不脱敏
银行卡号前4后4中间星号(6222****1234)不脱敏
信用代码后5位X(91430100MA4L2XXXXX)不脱敏
企业名称不脱敏不脱敏
用户编号不脱敏不脱敏
金额不脱敏不脱敏

脱敏职责:后端存储原始值。接口返回时对小程序端请求返回脱敏数据,运营端请求返回原始值。

8.9 关键字段校验标准

字段适用标准校验规则错误提示参考
统一社会信用代码GB 32100-201518位(数字+大写字母),第1位为登记管理机关代码(1-9,A-Y),第2位为机构类别代码(1-9),第3-8位为登记管理机关行政区划码(6位数字),第9-17位为主体标识码(组织机构代码),第18位为校验码(由加权因子计算)"请输入18位统一社会信用代码" / "统一社会信用代码校验不通过"
身份证号ISO 7064:1983 MOD 11-218位:前17位为数字,第18位为校验位(0-9或X);兼容15位旧号(全数字);校验位通过MOD 11-2算法验证"请输入18位身份证号" / "身份证号校验不通过"
手机号工信部号码规划11位数字,以1开头,第2位为3-9;建议支持未来新号段(如16等)"请输入11位手机号" / "手机号格式不正确"
银行卡号Luhn算法 (ISO/IEC 7812)16-19位数字,通过Luhn校验算法验证;不同银行长度不同(16/17/18/19位)"请输入正确的银行卡号"
金额-后端校验:正整数(单位:分),最大值 ≤ 999,999,999分(约1000万);前端输入:正实数(单位:元),最多两位小数"请输入正确的金额" / "金额超出限制"

校验职责分工:后端必须执行全部校验规则并返回明确错误信息;前端作为辅助校验,可提前拦截明显格式错误以提升用户体验。以上校验标准为最低要求,不可在前端省略关键校验(如信用代码校验位)。

8.10 分页与接口基础约定

约定项规格
列表分页请求{ page: int (从1开始), pageSize: int (默认20, 最大100) }
列表分页响应{ data: [], total: int, page: int, pageSize: int }
排序默认按创建时间倒序。支持指定排序字段和方向 (sortField, sortOrder)
九、微信支付流程规范

9.1 订单与支付的关系

  • 先创建订单,再调起支付:用户点击"立即支付"时,后端先创建订单(状态:待付款),返回订单ID;前端携带订单ID调起微信支付
  • 支付成功:微信回调通知后端,后端更新订单状态为"待审核";后端通知前端(轮询或WebSocket)展示支付成功页
  • 支付失败:订单保持"待付款"状态,用户可在"我的订单"中点击"继续支付"重试
  • 支付取消:用户主动取消支付,订单保持"待付款"状态

9.2 超时处理

  • 超时起算:从订单创建时间开始计算,30分钟后自动取消
  • 超时取消:后端定时任务扫描超过30分钟且状态为"待付款"的订单,自动变更为"已取消"
  • 超时前提醒:支付页展示倒计时(如"支付剩余 05:23"),剩余5分钟时变色提醒

9.3 重复支付防护

  • 后端基于订单ID做幂等:同一订单的重复支付请求返回"该订单已支付"
  • 前端在支付回调中检查订单状态,若已为"待审核"或更高,直接跳转支付成功页

9.4 客户端异常状态展示

场景订单状态客户端展示用户操作
支付超时待付款→已取消订单列表中显示"已取消",标注原因"支付超时"可重新下单
支付失败待付款订单详情显示支付失败原因,"继续支付"按钮可用重新支付或取消订单
重复支付已有有效支付提示"该订单已完成支付,请勿重复操作"跳转订单详情
微信侧已扣款但回调未到达待付款(暂时)显示"支付处理中,请稍候..."(轮询订单状态)等待或联系客服