Files
luo d7c2c146fe
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 6m12s
feat: 角色默认信用与店铺实际额度管理
2026-07-23 14:10:48 +08:00

2.0 KiB

ADDED Requirements

Requirement: New Shop Credit Initialization From Customer Role

The shop creation flow SHALL initialize a newly created agent shop's actual credit from the selected customer role's default credit configuration.

Scenario: Create agent shop with enabled role default credit

  • GIVEN 选中的客户角色已启用默认信用
  • AND 该客户角色配置了默认信用额度
  • WHEN 用户创建新的代理店铺
  • THEN 新店铺的实际信用 MUST 初始化为启用状态
  • AND 新店铺的实际信用额度 MUST 使用该客户角色的默认信用额度

Scenario: Create agent shop with disabled role default credit

  • GIVEN 选中的客户角色未启用默认信用
  • WHEN 用户创建新的代理店铺
  • THEN 新店铺的实际信用 MUST 初始化为关闭状态
  • AND 新店铺的实际信用额度 MUST be 0

Scenario: Existing shop keeps actual credit after role default change

  • GIVEN 店铺已经完成创建
  • WHEN 用户修改该店铺所属客户角色的默认信用配置
  • THEN 该店铺的实际信用启用状态 MUST NOT change
  • AND 该店铺的实际信用额度 MUST NOT change

Requirement: Shop Actual Credit Limit Update API

The frontend SHALL update an existing shop's actual credit limit through PUT /api/admin/shops/{id}/credit-limit with optimistic concurrency versioning.

Scenario: Submit shop actual credit update

  • GIVEN 用户正在调整已有店铺实际信用额度
  • WHEN 用户提交调整
  • THEN 前端 MUST call PUT /api/admin/shops/{id}/credit-limit
  • AND 请求体 MUST include credit_enabled: bool
  • AND 请求体 MUST include credit_limit: int64
  • AND 请求体 MUST include version: int64

Scenario: Disable shop actual credit

  • GIVEN 用户正在调整已有店铺实际信用额度
  • WHEN 用户关闭信用开关
  • THEN 页面 MUST 将额度输入归零
  • AND 提交时请求体 MUST include credit_enabled=false
  • AND 提交时请求体 MUST include credit_limit=0