## Why

Carrier（运营商）模块目前只有 Model 定义，缺少管理接口。系统需要一套完整的 CRUD + 状态管理接口来创建和管理上游运营商渠道。同时，现有的 IotCard 等表通过 carrier_id 引用 Carrier，每次查询都需要 JOIN，且 Carrier 删除后历史数据会缺失。需要通过冗余字段实现"赋予时刻快照"，让数据自包含。

## What Changes

- 新增 Carrier 管理 API（增删改查 + 启用/禁用）
- 简化 Carrier Model，移除未使用的 `channel_name`、`channel_code` 字段
- IotCard 新增冗余字段 `carrier_type`、`carrier_name`，导入时填充快照
- IotCardImportTask 新增冗余字段 `carrier_name`（已有 `carrier_type`）
- 优化查询逻辑，移除不必要的 JOIN 操作
- **BREAKING**: 移除 Carrier 表的 `channel_name`、`channel_code` 字段及相关索引

## Capabilities

### New Capabilities

- `carrier-management`: 运营商管理功能，包含 CRUD 接口、状态管理、列表筛选

### Modified Capabilities

- `iot-card-import`: 导入时填充 carrier_type、carrier_name 冗余字段
- `iot-card-query`: 查询响应直接使用冗余字段，无需 JOIN Carrier 表

## Impact

- **Model 层**: `carrier.go`（移除字段）、`iot_card.go`（新增字段）、`iot_card_import_task.go`（新增字段）
- **新增文件**: `carrier_dto.go`、`carrier_store.go`、`carrier/service.go`、`carrier.go`(handler)、`carrier.go`(routes)
- **修改文件**: `iot_card/service.go`、`iot_card_import/service.go`、`device/binding.go`（移除 JOIN 逻辑）
- **Bootstrap**: 注册新的 Store、Service、Handler
- **数据库**: 3 个迁移文件（Carrier 简化、IotCard 冗余、ImportTask 冗余）
- **API**: 新增 `/api/admin/carriers` 路由组
