Files
one-pipe-system/openspec/changes/add-business-user-group-management/tasks.md
2026-09-17 12:16:20 +08:00

2.2 KiB
Raw Blame History

1. API Contract 层

  • 1.1 新增 src/types/api/businessUserGroup.ts:组项/分页/创建/更新/删除/成员设置与结果类型
  • 1.2 新增 src/api/modules/businessUserGroup.ts:封装 7 个组端点(DELETE 带 body,需请求层支持)
  • 1.3 扩展 src/types/api/shop.ts:列表筛选 business_user_group_id/business_line/ungrouped,响应只读组字段,批量交接与导入任务/行级结果类型
  • 1.4 扩展 src/api/modules/shop.ts:batchUpdateBusinessOwner、createBusinessOwnerImport、getBusinessOwnerImportDetail、getBusinessOwnerImportList
  • 1.5 扩展 src/api/modules/storage.ts:FilePurpose 增加 shop_import

2. 业务用户组页面

  • 2.1 新增 src/views/shop-management/business-user-groups/index.vue:列表(筛选/分页/启停/业务线)
  • 2.2 新建/编辑弹窗:code 创建后不可改、business_line 三态、名称/排序/备注/启停
  • 2.3 删除:二次确认(confirm=true),有成员时按后端提示处理
  • 2.4 成员管理(对话框/抽屉):成员选择器(复用 business-owner-candidates)+ 批量设置 + 批量清空;停用组保留成员并标记"已停用"

3. 店铺列表扩展

  • 3.1 列表搜索区新增业务用户组下拉与业务线筛选、ungrouped 勾选(数据源来自组列表接口)
  • 3.2 列表/详情展示组字段(停用组标记,不缓存不回写)
  • 3.3 批量交接弹窗:勾选店铺 + 选择业务员/清空(显式 null),整批失败统一 1005 文案
  • 3.4 导入入口:模板下载、文件校验/上传(purpose=shop_import)、创建任务、轮询并展示行级明细
  • 3.5 导入任务列表(状态筛选)

4. 路由/菜单/权限/i18n

  • 4.1 新增 /shop-management/business-user-groups 路由与菜单,roles ['R_SUPER', 'R_ADMIN']
  • 4.2 按钮权限编码落地(business_user_group*/shop:business_owner_batch/shop:business_owner_import)
  • 4.3 中英文案 menus.shopManagement.businessUserGroups 等

5. 验证

  • 5.1 运行 npm run build(含 vue-tsc --noEmit)
  • 5.2 运行 npm run check:encoding
  • 5.3 运行 openspec validate add-business-user-group-management --strict