📄 readme.txt
字号:
CREATE TABLE R_TelRate
(
T_TypeID VARCHAR(2) NOT NULL,
T_Code VARCHAR(10) NULL,
T_TypeName VARCHAR(10) NULL,
T_Place VARCHAR(10) NULL,
T_StaySec VARCHAR(4) NULL,
T_FirstSec VARCHAR(4) NULL,
T_FirstPrice VARCHAR(10) NULL,
T_EverySec VARCHAR(4) NULL,
T_EveryPrice VARCHAR(10) NULL,
T_Adrate1 VARCHAR(4) NULL,
T_Adrate2 VARCHAR(4) NULL,
T_Poundage1 VARCHAR(4) NULL,
T_Poundage2 VARCHAR(4) NULL,
T_IsCheapen VARCHAR(2) NULL,
Reserver1 VARCHAR(255) NULL,
Reserver2 VARCHAR(255) NULL,
Reserver3 VARCHAR(255) NULL,
Reserver4 VARCHAR(255) NULL,
Reserver5 VARCHAR(255) NULL,
CONSTRAINT R_TelRate_PK PRIMARY KEY (T_TypeID)
)
7、表名:R_TelCheapen 折扣表
PK 字段名 注释 类型 长度 NULL 说明
★ T_CheapenID 序号 Char 2
T_TypeID 类型编号 Char 2
T_BeginTime 起始时间 Char 10
T_StopTime 结束时间 Char 10
T_SpecTime 特殊时段 Char 20 W1,2,3 或d 或NULL
T_Cheapen 折扣率 Char 4
T_IsCheapen 是否折扣 Char 2
Reserver1 保留字段 Char 255
Reserver2 保留字段 Char 255
Reserver3 保留字段 Char 255
Reserver4 保留字段 Char 255
Reserver5 保留字段 Char 255
CREATE TABLE R_TelCheapen
(
T_CheapenID VARCHAR(2) NOT NULL,
T_TypeID VARCHAR(2) NULL,
T_BeginTime VARCHAR(10) NULL,
T_StopTime VARCHAR(10) NULL,
T_SpecTime VARCHAR(20) NULL,
T_Cheapen VARCHAR(4) NULL,
T_IsCheapen VARCHAR(2) NULL,
Reserver1 VARCHAR(255) NULL,
Reserver2 VARCHAR(255) NULL,
Reserver3 VARCHAR(255) NULL,
Reserver4 VARCHAR(255) NULL,
Reserver5 VARCHAR(255) NULL,
CONSTRAINT R_TelCheapen_PK PRIMARY KEY (T_CheapenID)
)
8、表名:R_TelCallList 通话名细表
PK 字段名 注释 类型 长度 NULL 说明
★ T_ID 记录号 varchar 20 0
T_Number 分机号 varchar 20 1
T_CalledNum 被叫号码 varchar 20 1
T_TypeID 通话类型编号varchar 10 1
T_TypeName 通话类型 varchar 20 1
T_CallTime 接通时间 varchar 20 1
T_Times 通话时长 varchar 10 1
T_Time 次数 varchar 10 1
T_Basic 基本费 varchar 255 1
T_Adrate 附加费 varchar 255 1
T_Poundage 手续费 varchar 255 1
T_Money 总费用 varchar 255 1
T_RelayLevel 中继层号 varchar 255 1
T_Remark 备注 varchar 255 1
T_BillCode 账号 varchar 255 1
T_IsAccount 是否入账 varchar 255 1
T_Auto 自动入账 varchar 255 1
T_BedNo 床号 varchar 10 1
T_ParlorCode 大厅号 varchar 10 1
T_TableCode 房间号 varchar 10 1
Reserver1 保留字段 Char
Reserver2 保留字段 Char
Reserver3 保留字段 Char
Reserver4 保留字段 Char
Reserver5 保留字段 Char
CREATE TABLE R_TelCallList
(
T_ID VARCHAR(2) NOT NULL,
T_Number VARCHAR(2) NULL,
T_CalledNum VARCHAR(10) NULL,
T_TypeID VARCHAR(10) NULL,
T_TypeName VARCHAR(20) NULL,
T_CallTime VARCHAR(20) NULL,
T_Times VARCHAR(4) NULL,
T_Time VARCHAR(2) NULL,
T_Basic VARCHAR(255) NULL,
T_Adrate VARCHAR(255) NULL,
T_Poundage VARCHAR(255) NULL,
T_Money VARCHAR(255) NULL,
T_RelayLevel VARCHAR(255) NULL,
T_RelayMove VARCHAR(255) NULL,
T_AccountNo VARCHAR(255) NULL,
T_IsAccount VARCHAR(255) NULL,
T_Auto VARCHAR(255) NULL,
Reserver1 VARCHAR(255) NULL,
Reserver2 VARCHAR(255) NULL,
Reserver3 VARCHAR(255) NULL,
Reserver4 VARCHAR(255) NULL,
Reserver5 VARCHAR(255) NULL,
CONSTRAINT R_TelCallList_PK PRIMARY KEY (T_ID)
)
9、表名:R_TelSpec 特殊号码表
PK 字段名 注释 类型 长度 NULL 说明
★ T_Number 号码 Char 15
T_IsNoPay 是否免费 Char 2
T_IsNoCall 是否限拨 Char 2
Reserver1 保留字段 Char
Reserver2 保留字段 Char
Reserver3 保留字段 Char
Reserver4 保留字段 Char
Reserver5 保留字段 Char
CREATE TABLE R_TelSpec
(
T_Number VARCHAR(15) NOT NULL,
T_IsNoPay VARCHAR(2) NULL,
T_IsNoCall VARCHAR(2) NULL,
Reserver1 VARCHAR(255) NULL,
Reserver2 VARCHAR(255) NULL,
Reserver3 VARCHAR(255) NULL,
Reserver4 VARCHAR(255) NULL,
Reserver5 VARCHAR(255) NULL,
CONSTRAINT R_TelSpec_PK PRIMARY KEY (T_Number)
)
10、表名:R_TelBaseData 原始数据表
PK 字段名 注释 类型 长度 NULL 说明
★ T_No 编号 Char 15
T_Data 数据 Char 50
T_Deal 分析并处理过Char 2
Reserver1 保留字段 Char
Reserver2 保留字段 Char
Reserver3 保留字段 Char
Reserver4 保留字段 Char
Reserver5 保留字段 Char
CREATE TABLE R_TelBaseData
(
T_No VARCHAR(15) NOT NULL,
T_Data VARCHAR(20) NULL,
T_Deal VARCHAR(2) NULL,
Reserver1 VARCHAR(255) NULL,
Reserver2 VARCHAR(255) NULL,
Reserver3 VARCHAR(255) NULL,
Reserver4 VARCHAR(255) NULL,
Reserver5 VARCHAR(255) NULL,
CONSTRAINT R_TelBaseData_PK PRIMARY KEY (T_No)
)
4 配置文件格式
[DataBase]
SvrName 服务器名 Developer-ly
[Room]
TelIsReceive 是否计费 1 True 0 False
TelIsControl 是否控制 1 True 0 False
TelRecCom 计费串口号 1 ~ 8
TelRecBaud 计费串口波特率 1200 ~ 38400
TelConCom 控制串口号 1 ~ 8
TelConBaud 控制串口波特率 1200 ~ 38400
/////////////////////////////
6 备注
//////////////////////////////
***************************************************
话单格式
***************************************************
收到的数据
00000000h: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 30 20 ; 0
00000010h: 20 30 30 30 20 20 42 20 20 38 30 30 30 20 20 20 ; 000 B 8000
00000020h: 20 20 20 20 20 20 30 31 20 20 20 4E 20 20 20 4E ; 01 N N
00000030h: 20 20 31 33 39 39 38 31 36 38 30 35 32 20 20 20 ; 13998168052
00000040h: 20 20 20 20 20 20 20 20 20 30 36 30 31 30 35 20 ; 060105
00000050h: 31 34 31 30 20 30 30 30 30 34 33 20 30 30 30 30 ; 1410 000043 0000
00000060h: 30 30 20 30 30 39 2E 31 30 30 31 0D 0A ; 00 009.1001..
***************************************************
2002 电信计费方式
***************************************************
国际电话 0.80元/ 6秒
港澳台电话 0.20元/ 6秒
国内长途电话 0.07元/ 6秒
1 国内长途电话现优惠时段:19:00-7:00 不分工作日和节假日;
2 国内长途电话优惠幅度:6折;
3 国际电话现优惠时段:0:00-7:00 不分工作日和节假日。
4 国际电话优惠幅度:6折。
市话不优惠。
15个国家
日本 美国 新加坡 澳大利亚 新西兰 法国 英国 意大利 泰国 马来西亚
德国 加拿大 菲律宾 印尼 韩国
***************************************************
需要交换机配合
***************************************************
1 需要知道自己和交换机已经连接。
2 需要知道第一次吐话单前收到的数据。
3 需要知道话单具体格式样式及具体含义。
4 交换机吐出的头为交换机内部翻页,可以省略掉。
5 长途区号有0
***************************************************
号码匹配
***************************************************
长途区号除了0不过只有两种情况:2为或者3位,而且不管2位还是3位,
前两位是不会重复的,所以你只要建立一个全国长途区号表,然后做两次查询:
select * from 区号表 where 区号 = XX
select * from 区号表 where 区号 = XXX
这里的X表示待查号码前几位。
这样做肯定没有问题
号码匹配
给定一个前提:所有的电话号码都有区号。
AccessAreaNumTable是你保存所有区号的表,AreaNum是区号字段,TmpStr是要分解的电话号码。
那么,select AreaNum from AccessAreaNumTable where TmpStr like AreaNum+'%'
如果你的区号表正确而且完整的话,你应该得到唯一的一条记录,就是这个电话号码的区号了。
原因:区号的编排是有原则的。比如说,深圳的区号是755,
那么就一定不会再有以755开头的区号。也就是说,所有以755打头的电话,一定是深圳的。
同样,北京区号是10,那就一定不会再有101、1029之类的区号存在。
***************************************************
其他
***************************************************
根据通话时间计算单位
临时
按折扣后的费用收取附加费2
话费计算= 首次价格*(折价率+附加费2+手续费2)+
每次价格*(折价率+附加费2+手续费2)*
(总次数-1)+(附加费1+附加费2*折价率)*
手续费2+附加费1*总次数+手续费1
其中
当总时长<=首次时长时 总次数=1
当总是长>首次时长时 总次数 = (总时长-首次时长)/每次时长+1
若计算的值有小数 则将小数部分去掉后+1 = 总次数
长途话费=(通话时间×费率)+附加费(通话时间×费率×百分比)+手续费
折扣管理细节
等级细节管理
最小记费时间、基本费率、组别费率等的修改,节假日定义,夜间计费时段设定,国际长话优惠时段设定,免费电话种类设定,转帐表定义等。
算钱
费率表
序号 通话类型编号 标志号码 通话类型 起算秒数 首次时长 首次价格
01 01 0 国内长途 6 6 0.07元
每次时长 每次价格 附1元/次 附2 % /次 手1 元 手2 % 是否折价
6 0.07元 0 0 0 0 1
折扣表
序号 通话类型编号 起始时间 结束时间 特殊时段 折扣率 是否折
01 01 19:00 24:00 d 6 1
02 01 19:00 24:00 w1,2,3,4,5,6,7, 6 1
01 01 00:00 07:00 d 6 1
02 01 00:00 07:00 w1,2,3,4,5,6,7, 6 1
假日表
假日日期 假日名称
01/01 元旦
select * from R_TelCallList,R_telPhone
where R_TelCallList.T_Number = R_TelPhone.T_Number and R_TelPhone.T_DeptID = '02'
Update R_TelPhone set T_DeptID = '00'
select * from R_TelCallList where ((T_number = '8000') or (T_number = '8401'))
GlobalAlloc
UPDATE F_Tables SET PhoneCode = '0000'
SELECT * FROM F_Tables , s_parlor WHERE (f_tables.ParlorCode = s_parlor.parlorCode)and s_parlor.parlortype = '05'
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -