2.5 KiB
2.5 KiB
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/前端对接说明与企微模板配置说明