fetch(add): 账户管理

This commit is contained in:
sexygoat
2026-01-23 17:18:24 +08:00
parent 339abca4c0
commit b53fea43c6
93 changed files with 7094 additions and 3153 deletions

View File

@@ -0,0 +1,201 @@
# Commission Management Specification
## ADDED Requirements
### Requirement: Withdrawal Request List
The system SHALL provide a paginated list of all commission withdrawal requests with filtering capabilities.
#### Scenario: View all withdrawal requests
- **WHEN** administrator accesses the withdrawal approval page
- **THEN** the system displays all withdrawal requests with pagination
- **AND** shows withdrawal number, shop name, amount, status, and timestamps
#### Scenario: Filter by status
- **WHEN** administrator filters by withdrawal status (pending/approved/rejected/completed)
- **THEN** the system displays only matching withdrawal requests
#### Scenario: Search by withdrawal number or shop name
- **WHEN** administrator searches by withdrawal number or shop name
- **THEN** the system displays matching records
### Requirement: Withdrawal Request Approval
The system SHALL allow administrators to approve withdrawal requests.
#### Scenario: Approve withdrawal request
- **WHEN** administrator clicks approve on a pending withdrawal request
- **THEN** the system marks the request as approved
- **AND** updates the processor information and timestamp
### Requirement: Withdrawal Request Rejection
The system SHALL allow administrators to reject withdrawal requests with a reason.
#### Scenario: Reject withdrawal request
- **WHEN** administrator clicks reject and provides a rejection reason
- **THEN** the system marks the request as rejected
- **AND** stores the rejection reason and processor information
### Requirement: Withdrawal Settings Configuration
The system SHALL provide configuration for withdrawal rules including minimum amount, fee rate, daily limits, and arrival days.
#### Scenario: Create withdrawal settings
- **WHEN** administrator creates new withdrawal settings
- **THEN** the system stores the configuration with minimum amount, fee rate, daily limit, and arrival days
- **AND** records the creator information
#### Scenario: View current active settings
- **WHEN** administrator requests current withdrawal settings
- **THEN** the system displays the currently active withdrawal configuration
### Requirement: Withdrawal Settings List
The system SHALL display all withdrawal settings configurations with their status.
#### Scenario: View all settings
- **WHEN** administrator accesses withdrawal settings page
- **THEN** the system displays all configurations with active status indicator
### Requirement: My Commission Records
The system SHALL allow agents to view their detailed commission transaction records.
#### Scenario: View commission records
- **WHEN** agent accesses my commission page
- **THEN** the system displays all commission records with amount, type, status, and order information
- **AND** supports filtering by commission type and status
### Requirement: My Commission Summary
The system SHALL provide agents with an overview of their commission balances.
#### Scenario: View commission summary
- **WHEN** agent accesses commission overview
- **THEN** the system displays total commission, available balance, frozen amount, withdrawing amount, and withdrawn total
### Requirement: My Withdrawal Requests
The system SHALL allow agents to view their withdrawal request history.
#### Scenario: View my withdrawals
- **WHEN** agent accesses withdrawal history
- **THEN** the system displays all their withdrawal requests with status and amounts
### Requirement: Submit Withdrawal Request
The system SHALL allow agents to submit new withdrawal requests.
#### Scenario: Create withdrawal request
- **WHEN** agent submits a withdrawal request with amount and payment details
- **THEN** the system validates available balance
- **AND** creates a withdrawal request with status pending
- **AND** calculates fees based on current settings
#### Scenario: Insufficient balance
- **WHEN** agent requests withdrawal exceeding available balance
- **THEN** the system rejects the request with insufficient balance error
### Requirement: Agent Commission Records
The system SHALL allow administrators to view detailed commission records for any shop.
#### Scenario: View shop commission records
- **WHEN** administrator selects a shop and views commission records
- **THEN** the system displays all commission transactions for that shop
- **AND** includes order details, ICCID, device number, and balance information
### Requirement: Agent Commission Summary List
The system SHALL provide administrators with a summary view of all shops' commissions.
#### Scenario: View all shop commissions
- **WHEN** administrator accesses agent commission management
- **THEN** the system displays all shops with their commission summaries
- **AND** shows total, available, frozen, withdrawing, and withdrawn amounts per shop
### Requirement: Agent Withdrawal History
The system SHALL allow administrators to view withdrawal history for any shop.
#### Scenario: View shop withdrawals
- **WHEN** administrator selects a shop and views withdrawal history
- **THEN** the system displays all withdrawal requests for that shop
### Requirement: Customer Account Management
The system SHALL support creating and managing customer accounts for both agents and enterprises.
#### Scenario: Create agent account
- **WHEN** administrator creates a new agent account
- **THEN** the system creates the account with username, phone, associated shop, and initial password
- **AND** sets user type as agent (3)
#### Scenario: Create enterprise account
- **WHEN** administrator creates a new enterprise account
- **THEN** the system creates the account with username, phone, associated enterprise, and initial password
- **AND** sets user type as enterprise (4)
#### Scenario: Update account status
- **WHEN** administrator enables or disables an account
- **THEN** the system updates the account status (0=disabled, 1=enabled)
#### Scenario: Reset account password
- **WHEN** administrator resets an account password
- **THEN** the system updates the password and notifies the user
### Requirement: Enterprise Customer Management
The system SHALL support creating and managing enterprise customer records.
#### Scenario: Create enterprise
- **WHEN** administrator creates a new enterprise
- **THEN** the system stores enterprise details including business license, legal person, contact info, and address
- **AND** associates with an owner shop
#### Scenario: Update enterprise information
- **WHEN** administrator updates enterprise details
- **THEN** the system updates the enterprise record
#### Scenario: Update enterprise status
- **WHEN** administrator enables or disables an enterprise
- **THEN** the system updates the enterprise status
#### Scenario: Reset enterprise password
- **WHEN** administrator resets enterprise login password
- **THEN** the system updates the password for the associated login account
### Requirement: Commission Navigation Structure
The system SHALL provide a "Commission Management" section under "Account Management" with sub-menus for all commission features.
#### Scenario: Access commission menus
- **WHEN** user navigates to Account Management
- **THEN** the system displays "Commission Management" menu
- **AND** shows sub-menus: Withdrawal Approval, Withdrawal Settings, My Commission, Agent Commission