Files

2.5 KiB
Raw Permalink Blame History

1. 数据模型

  • 1.1 迁移:批次表加 detail_file_key、skipped_items(jsonb)、skipped_count;延期明细加 source_silence_status(默认 expired),含 down
  • 1.2 model、常量:审批字段 detail_file_keys、明细上限、跳过原因编码

2. 资产展开与预检

  • 2.1 资产号解析与去重:ICCID→卡(绑定设备则换设备)、虚拟号/IMEI→设备;查询 expired / waiting 套餐
  • 2.2 抽取 checkSpecialUsage(支持 allowWaiting),旧 validateSpecialItems 改为调用它且行为不变
  • 2.3 预检接口 DTO、handler、路由(package_silence:extend_batch),返回逐资产逐套餐结果
  • 2.4 表驱动测试:设备去重、多套餐、无沉默期套餐、免费次数用完、已有进行中申请

3. 提交与执行

  • 3.1 提交接口:服务端重跑预检,只写可延期明细,跳过明细入批次;0 条拒绝
  • 3.2 复用批次创建、免审批判定与审批创建;审批字段 ≤5 列全部资产号、>5 写首个 + 条数并附注批次号
  • 3.3 >5 时事务前生成 xlsx 明细并上传对象存储,记录 detail_file_key,作为 detail_file_keys 审批字段;失败拒绝提交
  • 3.4 executeExtensionInTx 支持来源 waiting 的明细:仍 waiting 只延截止日,expired 走原流程,ended/失效/退款记失败
  • 3.5 企微场景字段登记"延期明细"(FileList,非必须映射)
  • 3.6 测试:部分跳过、全部跳过、waiting 延期、审批期间已实名失败、旧单资产特殊延期回归

4. 批次查询

  • 4.1 批次列表筛选(批次号、路径、延期类型、审批状态、时间)与详情返回跳过明细、计数
  • 4.2 明细下载接口:有 detail_file_key 签名下载,否则即时生成

5. 管理端前端(admin iteration/8-11)

  • 5.1 批量延期弹窗:统一天数/类型/原因/依据/附件,导入一列资产号(xlsx/csv,≤1000),预检结果表,确认提交
  • 5.2 延期批次列表与详情页,下载明细;菜单与权限
  • 5.3 移除单资产弹窗中的旧 CSV 批量入口

6. 验证与部署

  • 6.1 go build ./...、go vet、相关测试通过;前端构建与测试通过
  • 6.2 部署测试环境,用 6 个以上过期 / 待实名设备验证预检、提交、xlsx 附件生成(企微场景配置后验证审批单附件)
  • 6.3 更新 docs/ 前端对接说明与企微模板配置说明