fix: 套餐
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
# Device Management Specification
|
||||
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Device Switch Mode Submission
|
||||
|
||||
The system SHALL require a bound IoT card when configuring device switch mode and MUST submit both `iot_card_id` and `switch_mode` to the switch mode API.
|
||||
|
||||
#### Scenario: Submit switch mode with selected bound card
|
||||
|
||||
- **GIVEN** 用户从设备列表页或资产信息页打开“设置切卡模式”弹窗
|
||||
- **AND** 目标设备已经配置 IMEI
|
||||
- **AND** 目标设备至少绑定了一张卡
|
||||
- **WHEN** 用户选择一张绑定卡并选择切卡模式后确认提交
|
||||
- **THEN** 系统 MUST 调用 `POST /api/admin/devices/by-identifier/{identifier}/switch-mode`
|
||||
- **AND** 请求体 MUST 包含 `iot_card_id`
|
||||
- **AND** 请求体 MUST 包含 `switch_mode`
|
||||
- **AND** 成功后系统 MUST 给出成功反馈并刷新相关设备数据
|
||||
|
||||
#### Scenario: Device without IMEI cannot submit switch mode
|
||||
|
||||
- **GIVEN** 用户尝试为一个未配置 IMEI 的设备设置切卡模式
|
||||
- **WHEN** 用户打开弹窗或尝试提交
|
||||
- **THEN** 系统 MUST 阻止提交
|
||||
- **AND** 系统 MUST 明确提示设备需要先配置 IMEI
|
||||
|
||||
#### Scenario: Device without bound card cannot submit switch mode
|
||||
|
||||
- **GIVEN** 目标设备没有任何绑定卡
|
||||
- **WHEN** 用户打开弹窗或尝试提交
|
||||
- **THEN** 系统 MUST 阻止提交
|
||||
- **AND** 系统 MUST 明确提示必须先选择或绑定一张卡
|
||||
|
||||
### Requirement: Device Realtime Information Visibility
|
||||
|
||||
The system SHALL hide the generic `IP 地址` field in device realtime information while preserving other required realtime network information.
|
||||
|
||||
#### Scenario: Device realtime information does not show the IP address field
|
||||
|
||||
- **GIVEN** 页面正在展示设备实时信息
|
||||
- **WHEN** 实时信息卡片完成渲染
|
||||
- **THEN** 界面 MUST NOT 显示标签为 `IP 地址` 的字段
|
||||
- **AND** `WAN IP` 与 `LAN IP` 等其他实时网络字段在有数据时 MUST 继续显示
|
||||
@@ -0,0 +1,31 @@
|
||||
# Order Management Specification
|
||||
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Order Voucher Upload Feedback
|
||||
|
||||
The system SHALL make the payment voucher upload state explicit during order creation and MUST prevent submission until the upload finishes.
|
||||
|
||||
#### Scenario: Submit button reflects voucher upload in progress
|
||||
|
||||
- **GIVEN** 用户正在创建线下支付订单
|
||||
- **AND** 用户已经选择支付凭证图片
|
||||
- **WHEN** 前端正在获取上传地址或正在上传图片文件
|
||||
- **THEN** 提交按钮 MUST 显示 `图片上传中...`
|
||||
- **AND** 提交按钮 MUST 被禁用,或以其他方式阻止创建订单请求发出
|
||||
|
||||
#### Scenario: Submit button returns to normal after upload completes
|
||||
|
||||
- **GIVEN** 用户正在创建线下支付订单
|
||||
- **WHEN** 支付凭证上传成功完成
|
||||
- **THEN** 系统 MUST 保存返回的 `payment_voucher_key`
|
||||
- **AND** 提交按钮 MUST 恢复为 `提交`
|
||||
- **AND** 用户 MAY 继续提交订单
|
||||
|
||||
#### Scenario: Upload failure or removal clears pending submit state
|
||||
|
||||
- **GIVEN** 用户正在创建线下支付订单
|
||||
- **WHEN** 支付凭证上传失败,或用户移除了已选择的支付凭证
|
||||
- **THEN** 系统 MUST 清理失效的凭证状态
|
||||
- **AND** 上传中状态 MUST 结束
|
||||
- **AND** 系统 MUST 保持订单未提交
|
||||
Reference in New Issue
Block a user