Files
junhong_cmp_fiber/.scratch/ur49-device-batch-allocation-csv/issues/03-csv-batch-assign-series.md
2026-07-23 13:03:30 +09:00

1.8 KiB
Raw Blame History

03 — 完成 CSV 批量分配套餐系列接口闭环

What to build: 平台员工或代理提交已上传的 CSV 与套餐系列后,系统创建并执行批量系列设置任务;后台重新验证实时授权和设备范围后安全更新系列、写入审计,并提供可供前端展示进度、汇总和失败详情的任务查询结果。

Blocked by: 01 — 建立设备 CSV 批量任务与受控上传基础设施。

Status: ready-for-agent

架构通道: 主通道为复杂写,辅助通道为 Query。

完整业务边界: 本票收口任务提交、执行时实时权限重验、唯一设备匹配、套餐系列条件更新、幂等/并发处理、实际变更审计和任务详情安全读取。复杂写必须遵循 Handler → Application UseCase → Domain → Repository/Infrastructure;授权、设备范围、并发与审计规则完整收口,不拆散到旧 Service。

明确不迁移: 不迁移既有同步系列绑定入口;不得修改设备归属、设备状态或绑定卡归属,也不实现清除套餐系列。

  • batch-assign-series 只接受 file_key 与正套餐系列 ID提交时校验操作者、目标系列及授权并返回前端轮询所需的任务创建结果。
  • 平台沿用既有系列范围代理仅能操作自己名下设备和当前有效授权系列Worker 执行时重新确认账号状态、店铺关系及授权。
  • 同目标系列按幂等成功处理;不同系列经 Application、Domain 和 Repository/Infrastructure 按既有规则条件更新,历史重复 IMEI 或跨字段多命中不会任取设备,并发变更不会被覆盖。
  • 任务详情由 Query 只读负责权限、批量加载和 DTO 投影;终态、部分成功及全行业务失败均以统一契约准确表达,且审计与失败明细不泄露其他店铺或底层错误信息。