Files
MAcode/tcs-iptv
selfrelease 8db9d33694 feat(phase3): 备案对接/全国统计/号段管理/BFF安全化/链合约源码
- A.1 备案对接: BindFiling/QueryFiling 关联网标号+备案号
- A.2 监管上报: DailyRegulatoryReport 日报
- B.1 号段管理: ListSegments + /admin/segments
- C.1/C.2 全国统计按省聚合 + 跨省协同(单一可信源天然联动)
- F.2 全国监管大屏: NationalStats(按省/类目/状态)
- B(遗留) 监管大屏BFF: internal/bff + cmd/console-bff, 密钥仅存后端浏览器只用会话令牌
- G 真实链合约源码: contracts/tcs_registry/registry.go (ChainMaker Go)
- 新增9个API+BFF服务; 5项新测试; 端到端BFF验证
- D/E(压测/等保/HSM)/F.1(标准)/真实链部署 标注需外部环境
2026-06-14 17:53:12 +08:00
..

TCS-IPTV 内容可信锁定系统

MA码(监管身份)+ 哈希码(技术指纹)双锚定,在 CP / 审核和监管部门 / 运营商 三方系统之上建立"可信身份映射层"。

上游文档:../0-req-IPTV.md(需求)、../1-prd-IPTV.mdPRD)、../2-task-IPTV.md(任务)

技术栈

  • 后端 / 链交互 / 哈希SDKGo 1.23 + Gin
  • 智能合约:GoChainMaker 链原生)
  • 联盟链:长安链 ChainMaker 2.x(国密)
  • 数据库 / 缓存:PostgreSQL 16 / Redis 7.x
  • 监管大屏:React 18 + Ant Design 5 + ECharts

工程结构

tcs-iptv/
├── cmd/                  # 各服务入口
│   ├── api-svc/          # 业务后端(验真/签发/映射/下架/查询)
│   ├── chain-svc/        # 链交互服务(封装 ChainMaker SDK
│   └── hash-api/         # 哈希SDK 的 HTTP API
├── internal/             # 内部包
│   ├── hash/             # 哈希核心(SHA-256 / Merkle / 感知哈希)
│   ├── chain/            # 链客户端抽象(MVP 含 mock 实现)
│   ├── config/           # 配置加载
│   ├── httpx/            # 通用 HTTP / 鉴权中间件
│   └── model/            # 领域模型
├── contracts/            # ChainMaker Go 合约源码
│   └── tcs_registry/
├── deploy/               # 部署
│   ├── docker-compose.yml
│   └── migrations/       # 数据库迁移
├── web-console/          # 监管大屏(React
├── Makefile
└── go.mod

快速开始

本地直接使用已安装的 PostgreSQL / Redis,无需 Docker。

# 初始化数据库(数据库 tcs_iptv 需已创建)
make migrate

# 检查依赖
make db-check      # 列出已建表
make redis-check   # 应返回 PONG

# 构建全部服务
make build

# 运行测试
make test

# 启动哈希 API(示例)
make run-hash

环境变量(可选,缺省适配本地):

变量 默认值
TCS_POSTGRES_DSN postgres://postgres@localhost:5432/tcs_iptv?sslmode=disable
TCS_REDIS_ADDR localhost:6379
TCS_API_ADDR :8080
TCS_CHAIN_ADDR :8081
TCS_HASH_ADDR :8082

服务端口(默认)

服务 端口
api-svc 8080
chain-svc 8081
hash-api 8082
PostgreSQL 5432
Redis 6379