feat(admin,shop-admin): content/brand management + merchant shop profile (add-content-admin-ui)
This commit is contained in:
@@ -64,3 +64,22 @@ Shop-admin SHALL expose the shared accent preset control (`red`, `blue`, `teal`,
|
||||
- **WHEN** an authenticated shop user opens shop-admin
|
||||
- **THEN** they can select an accent preset without leaving the current page
|
||||
|
||||
### Requirement: Merchant shop profile editing
|
||||
Shop users SHALL edit their own shop's profile from a shop-admin page reachable from the shop-scoped navigation, through the shared API adapter's shop-scoped profile update. The form SHALL prefill from the shop's current profile and cover the merchant-writable fields only: logo and banner URLs, company, region, and `{ en, zh }` bilingual address, notice and after-sale copy. Bilingual fields SHALL be validated with non-empty `en` and `zh` text before any request is sent, every write SHALL target the caller's own shop, and profile scores SHALL NOT be editable — they remain platform-set and saving never changes them. Saves SHALL give clear success feedback; a refused save SHALL keep the form values and show a visible failure message.
|
||||
|
||||
#### Scenario: merchant updates their own profile
|
||||
- **WHEN** a shop owner edits their notice, saves, and the mall store page reloads
|
||||
- **THEN** only that shop shows the new notice and no other shop's profile changes
|
||||
|
||||
#### Scenario: incomplete bilingual text is blocked before submit
|
||||
- **WHEN** a shop owner leaves the `zh` after-sale text empty and saves
|
||||
- **THEN** the field shows an inline error and no update request is sent
|
||||
|
||||
#### Scenario: scores are not editable
|
||||
- **WHEN** the profile page loads and is saved
|
||||
- **THEN** no score fields are offered and the platform-set scores remain unchanged
|
||||
|
||||
#### Scenario: refused save keeps the form
|
||||
- **WHEN** the API refuses an update
|
||||
- **THEN** the page keeps the entered values and shows a failure message
|
||||
|
||||
|
||||
Reference in New Issue
Block a user