feat: add benchmark-programs — 58 telecom COBOL test programs
作为子目录纳入系统,与核心测试管道协同 Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
# 36 - 金额计算程序 (TA-TELAMTCAL)
|
||||
|
||||
## 概要
|
||||
基于标准批处理框架架构的电信金额计算程序。
|
||||
读取 CDR 明细,按套餐费率计算通话费用,生成课金明细。
|
||||
|
||||
## 架构
|
||||
|
||||
```
|
||||
TA-TELAMTCAL-BEGIN (业务前处理)
|
||||
├── 0100-INIT-TARIFF — 费率表初始化
|
||||
├── INFO_PARAM — 参数读取(COMMIT-COUNT)
|
||||
└── INFO_CHKPT — Checkpoint信息取得
|
||||
|
||||
TA-TELAMTCAL-MAIN (业务主处理)
|
||||
├── 0100-INIT-TARIFF — 费率表加载
|
||||
├── TXN-CTRL — 事务管理(BEGIN/END)
|
||||
├── 1000-RATE-CALC — 金额计算
|
||||
│ ├── 1100-VOICE-CHARGE — 语音通话计费
|
||||
│ ├── 1200-SMS-CHARGE — SMS计费
|
||||
│ └── 1300-DATA-CHARGE — 数据通信计费
|
||||
├── 2000-DB-OPERATION — 课金明细登録
|
||||
│ └── 2100-DML-INSERT — INSERT (重複→UPDATE)
|
||||
└── CHKPT-SAVE — Checkpoint登録
|
||||
```
|
||||
|
||||
## 费率表
|
||||
|
||||
| プラン | 基本料金 | 秒単価 | 無料分(秒) | 超過単価 | ローミング | SMS | データ |
|
||||
|--------|---------|-------|-----------|---------|--------|-----|------|
|
||||
| P01 基本 | 3000 | 20 | 6000 | 20 | 50 | 10 | 30 |
|
||||
| P02 商用 | 8000 | 10 | 30000 | 15 | 30 | 5 | 20 |
|
||||
| P03 無制限 | 20000 | 5 | 120000 | 5 | 20 | 3 | 10 |
|
||||
| P04 データ専用 | 5000 | 0 | 0 | 0 | 0 | 0 | 20 |
|
||||
| P05 格安 | 1000 | 30 | 1800 | 30 | 150 | 100 | 50 |
|
||||
|
||||
## 测试数据(8件)
|
||||
|
||||
| CDR | 発信者 | 着信者 | 時間 | 秒 | 種別 | ローミング |
|
||||
|-----|--------|--------|------|-----|------|---------|
|
||||
| CDR0000001 | 8613800138001 | 8613900999001 | 20250601 083000 | 120 | 01音声 | N |
|
||||
| CDR0000002 | 8613800138001 | 8613700777001 | 20250601 084500 | 045 | 01音声 | N |
|
||||
| CDR0000003 | 8613800138001 | 8613600666001 | 20250601 090000 | 300 | 01音声 | N |
|
||||
| CDR0000004 | 8613900210033 | 8613800138001 | 20250601 100000 | 600 | 01音声 | N |
|
||||
| CDR0000005 | 8613900210033 | 8613800138001 | 20250601 110000 | 001 | 02SMS | N |
|
||||
| CDR0000006 | 8613700550066 | 8613900210033 | 20250601 120000 | 1200 | 01音声 | Y |
|
||||
| CDR0000007 | 8613800138001 | 8613600666001 | 20250601 130000 | 900 | 03データ | N |
|
||||
| CDR0000008 | 8613700550066 | 8613500555001 | 20250601 140000 | 1800 | 01音声 | N |
|
||||
|
||||
## 実行
|
||||
|
||||
```bash
|
||||
cd 36-billing-calc && bash run.sh
|
||||
```
|
||||
Reference in New Issue
Block a user