From b920c894b9dfa838d70100fb6e75fb1c16bc147f Mon Sep 17 00:00:00 2001 From: jacy <18049821889@163.com> Date: Tue, 28 Jul 2026 13:33:12 +0800 Subject: [PATCH] feat(admin): city delete with impact preview; optional partner fields Allow deleting open cities after listing partners/stores; company name, address, and districts optional on partner create. Co-authored-by: Cursor --- .../src/components/CityPartnersPanel.tsx | 7 +- apps/admin-web/src/pages/CitiesPage.tsx | 252 +++++++++++++++++- apps/admin-web/src/pages/PartnersPage.tsx | 7 +- packages/domain/src/city-partner.test.ts | 8 + packages/domain/src/city-partner.ts | 7 +- .../modules/ops/admin-cities.controller.ts | 25 +- .../src/modules/ops/admin-cities.service.ts | 238 +++++++++++++++++ .../src/modules/ops/admin-partners.service.ts | 4 +- .../src/modules/ops/dto/admin-mutate.dto.ts | 8 +- 9 files changed, 531 insertions(+), 25 deletions(-) diff --git a/apps/admin-web/src/components/CityPartnersPanel.tsx b/apps/admin-web/src/components/CityPartnersPanel.tsx index ceefe94..7deb989 100644 --- a/apps/admin-web/src/components/CityPartnersPanel.tsx +++ b/apps/admin-web/src/components/CityPartnersPanel.tsx @@ -383,10 +383,10 @@ export default function CityPartnersPanel({ } }}>
- + - + setConfirmName(e.target.value)} + disabled={deleteSubmitting} + /> + + ) : ( + 存在阻断项,无法删除。请先处理订单等关联数据。 + )} + + )} + ); } diff --git a/apps/admin-web/src/pages/PartnersPage.tsx b/apps/admin-web/src/pages/PartnersPage.tsx index 04aeea7..43cec8c 100644 --- a/apps/admin-web/src/pages/PartnersPage.tsx +++ b/apps/admin-web/src/pages/PartnersPage.tsx @@ -348,10 +348,10 @@ export default function PartnersPage() { }} /> - + - +