feat: 实现物联网卡独立管理和批量导入功能
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 4m42s
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 4m42s
新增物联网卡独立管理模块,支持单卡查询、批量导入和状态管理。主要变更包括: 功能特性: - 新增物联网卡 CRUD 接口(查询、分页列表、删除) - 支持 CSV/Excel 批量导入物联网卡 - 实现异步导入任务处理和进度跟踪 - 新增 ICCID 号码格式校验器(支持 Luhn 算法) - 新增 CSV 文件解析工具(支持编码检测和错误处理) 数据库变更: - 移除 iot_card 和 device 表的 owner_id/owner_type 字段 - 新增 iot_card_import_task 导入任务表 - 为导入任务添加运营商类型字段 测试覆盖: - 新增 IoT 卡 Store 层单元测试 - 新增 IoT 卡导入任务单元测试 - 新增 IoT 卡集成测试(包含导入流程测试) - 新增 CSV 工具和 ICCID 校验器测试 文档更新: - 更新 OpenAPI 文档(新增 7 个 IoT 卡接口) - 归档 OpenSpec 变更提案 - 更新 API 文档规范和生成器指南 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -38,6 +38,8 @@ func generateOpenAPIDocs(outputPath string, logger *zap.Logger) {
|
||||
EnterpriseCard: admin.NewEnterpriseCardHandler(nil),
|
||||
CustomerAccount: admin.NewCustomerAccountHandler(nil),
|
||||
MyCommission: admin.NewMyCommissionHandler(nil),
|
||||
IotCard: admin.NewIotCardHandler(nil),
|
||||
IotCardImport: admin.NewIotCardImportHandler(nil),
|
||||
}
|
||||
|
||||
// 4. 注册所有路由到文档生成器
|
||||
|
||||
@@ -61,6 +61,7 @@ func main() {
|
||||
JWTManager: jwtManager,
|
||||
TokenManager: tokenManager,
|
||||
VerificationService: verificationSvc,
|
||||
QueueClient: queueClient,
|
||||
})
|
||||
if err != nil {
|
||||
appLogger.Fatal("初始化业务组件失败", zap.Error(err))
|
||||
|
||||
@@ -32,22 +32,23 @@ func generateAdminDocs(outputPath string) error {
|
||||
app := fiber.New()
|
||||
|
||||
// 3. 创建 Handler(使用 nil 依赖,因为只需要路由结构)
|
||||
accHandler := admin.NewAccountHandler(nil)
|
||||
roleHandler := admin.NewRoleHandler(nil)
|
||||
permHandler := admin.NewPermissionHandler(nil)
|
||||
adminAuthHandler := admin.NewAuthHandler(nil, nil)
|
||||
h5AuthHandler := h5.NewAuthHandler(nil, nil)
|
||||
shopHandler := admin.NewShopHandler(nil)
|
||||
shopAccHandler := admin.NewShopAccountHandler(nil)
|
||||
|
||||
handlers := &bootstrap.Handlers{
|
||||
Account: accHandler,
|
||||
Role: roleHandler,
|
||||
Permission: permHandler,
|
||||
AdminAuth: adminAuthHandler,
|
||||
H5Auth: h5AuthHandler,
|
||||
Shop: shopHandler,
|
||||
ShopAccount: shopAccHandler,
|
||||
AdminAuth: admin.NewAuthHandler(nil, nil),
|
||||
H5Auth: h5.NewAuthHandler(nil, nil),
|
||||
Account: admin.NewAccountHandler(nil),
|
||||
Role: admin.NewRoleHandler(nil),
|
||||
Permission: admin.NewPermissionHandler(nil),
|
||||
Shop: admin.NewShopHandler(nil),
|
||||
ShopAccount: admin.NewShopAccountHandler(nil),
|
||||
ShopCommission: admin.NewShopCommissionHandler(nil),
|
||||
CommissionWithdrawal: admin.NewCommissionWithdrawalHandler(nil),
|
||||
CommissionWithdrawalSetting: admin.NewCommissionWithdrawalSettingHandler(nil),
|
||||
Enterprise: admin.NewEnterpriseHandler(nil),
|
||||
EnterpriseCard: admin.NewEnterpriseCardHandler(nil),
|
||||
CustomerAccount: admin.NewCustomerAccountHandler(nil),
|
||||
MyCommission: admin.NewMyCommissionHandler(nil),
|
||||
IotCard: admin.NewIotCardHandler(nil),
|
||||
IotCardImport: admin.NewIotCardImportHandler(nil),
|
||||
}
|
||||
|
||||
// 4. 注册所有路由到文档生成器
|
||||
|
||||
Reference in New Issue
Block a user