资源描述
目 录
第一章 引言 3
1.1 编写目标 3
1.2 术语说明 3
1.3 参考文件 3
第二章 系统概述 4
2.1 系统说明 4
2.2 系统任务 4
2.3 需求要求 5
第三章 系统总体结构设计 6
3.1 系统物理结构 6
3.1.1 系统物理结构示意图: 6
3.1.2 设备清单 6
3.2 系统软件结构 7
3.2.1 系统软件结构示意图 7
3.2.2 模块清单 7
第四章 模块功效描述 8
4.1 预付款用户前台开户(ForUserAdd)功效描述 8
4.2 预付款用户前台停机(ForUserStop)功效描述 8
4.3 预付款用户前台复机(ForUserResume)功效描述 8
4.4 预付款用户前台销户(ForUserDel)功效描述 9
4.5 预付款用户前台改密码(ForChangePwd)功效描述 9
4.6 预付款用户费率设定(FeeRadeDef)功效描述 9
4.7 预付款用户详单查询(DialDetailsQuery)功效描述 9
4.8 预付款用户后台开户(BeUserAdd)功效描述 9
4.9 预付款用户后台停机(BeUserStop)功效描述 10
4.10 预付款用户后台复机(BeUserResume)功效描述 10
4.11 预付款用户后台销户(BeUserDel)功效描述 10
4.12 预付款用户后台改密码(BeChangePwd)功效描述 11
4.13 用户上网时长日统计(DialDayStat)功效描述 11
4.14 用户帐号剩下时长结算(DIalLeavesStat)功效描述 11
第五章 程序接口设计 12
5.1 用户界面 12
5.2 硬件接口 12
5.3 软件接口 12
5.4通信接口 12
第六章 数据结构设计 13
6.1、用户基础信息表(PN_ForUserInfo) 13
6.2、用户基础信息历史表(PN_ForUserInfoH) 13
6.3、用户状态表(PN_ForUserstate) 13
6.4、用户当日上网统计表(PN_ForCollect) 13
6.5、用户上网统计历史表(PN_ForCollecthis) 14
6.6、用户上网结算时长表(PN_ForCountTime) 14
第一章 引言
1.1 编写目标
说明对程序系统设计考虑,包含程序系统基础处理步骤图、程序系统组织结构、模块划分、功效分配、接口设计、数据结构设计和安全设计等。为程序具体设计奠定基础。
1.2 术语说明
1、
1.3 参考文件
1.oracle数据库操作使用说明
2.VB程序设计手册
3.
第二章 系统概述
2.1 系统说明
本系统是对163预付款拨号用户进行管理,依据预付卡对用户进行开户,天天对全部预付款用户进行上网时长统计,再从其总时长里减去其当日上网时长,假如剩下时长小于或等于0,则把该帐号停机,如用户在七天内未续复机,则对该用户进行销户处理。为了确保现在系统正常运作,本系统全部功效实现和现有系统功效分开,拨号数据在采集统计时进行分开。其关键功效有:
(一) 预付款用户开户
(二) 预付款用户停机
(三) 预付款用户复机
(四) 预付款用户销户
(五) 预付款用户改密码
(六) 预付款用户费率设定
(七) 预付款用户天天上网总时长及剩下时长统计
(八) 预付款用户上网详单查询
(九) 预付款用户状态查询
2.2 系统任务
依据要求,系统能够依据预付卡帐号及密码进行开户,天天统计预付卡用户上网总时长及剩下时长,并能自动依据用户上网情况对用户进行停机,销户。
(一) 预付款用户开户。
关键内容包含:依据预付卡对用户进行开户,只开上网帐号,不开邮件帐号,开户用户信息包含用户帐号,用户密码,金额,开通日期
(二) 预付款用户停机
关键内容包含:对预付卡用户进行停机操作,使用户不能再上网,直到对其进行复机,此任务包含两种方法,一个是自动停机,即依据用户上网时长大于或等于其对应预付卡所计算时长时,对用户进行停机,另一个是手工停机,管理员在图形界面上选择用户进行停机。
(三) 预付款用户复机
关键内容包含:对预付卡用户进行复机操作,使已停机用户能够再上网。此项任务只能手工进行操作,只是对那些停机用户重新交了预付款用户进行复机。
(四) 预付款用户销户
关键内容包含:预付款用户销户也包含两个方面,一是管理员在前台对选择用户强行销户,二是因为用户上网时长大于或等于其所交预付款折算时长时,且用户在7于内未续复机,则由系统自动对此用户进行销户。
(五)预付款用户改密码
关键内容包含:机房职员能够经过前台对预付款用户强制改密码
(五) 预付款用户费率设定
关键内容包含:因为预付款用户上网费率跟通常用户不一样,所以对这类用户要单独设定一个费率,即上网每分钟多少钱或每小时多少钱。
(六) 预付款用户天天上网总时长及剩下时长统计
关键内容包含:天天晚上零时对全部上网预付款用户上一天上网总时长进行统计,并算出其帐号上剩下上网时长,对那些剩下时长小于或等于0用户进行停机,对停机达七天之久用户进行销户。
(七) 预付款用户上网详单查询
关键内容包含:经过前台图形界面,机房职员能够查询全部预付款用户天天上网详单,剩下时长。
(八) 预付款用户状态查询
关键内容包含:经过前台图形界面,机房职员能够查询全部预付款用户目前状态,看它是处于停机状态还是正常状态或是已销户。
2.3 需求要求
1. 预付款用户不向计费中心提供上网详单,
2. 不在网上向预付款用户提供查询其详单。
3. 不在网上向预付款用户提供改密码功效。
第三章 系统总体结构设计
3.1 系统物理结构
3.1.1 系统物理结构示意图:
前台
前台
后台处理服务器
认证服务器
数据库服务器
3.1.2 设备清单
设备编号
设备名称
数量
型号规格
1
主认证服务器
1
Sun Enterprise 3500
2
从认证服务器
1
Sun Netra 2
5
计费(数据库)服务器1
1
Sun Enterprise 3500
6
计费(数据库)服务器2
1
Sun Enterprise 3500
7
控制终端
1-3
一般pc
3.2 系统软件结构
3.2.1 系统软件结构示意图
长沙163预付款计费系统
前台用户及计费管理
后台计费处理
后台用户处理
预付款用户
改密码
用户
上网时长日统计
用户
帐号剩下时长结算
预付款用户
改密码
预付款用户
复机
预付款用户
销户
预付款用户
复机
预付款用户
停机
预付款用户
开户
预付款用户
详单查询
预付款用户
费率设定
预付款用户
销户
预付款用户
停机
预付款用户
开户
3.2.2 模块清单
模块编号
模块名称
模块标识
1
预付款用户前台开户
ForUserAdd
2
预付款用户前台停机
ForUserStop
3
预付款用户前台复机
ForUserResume
4
预付款用户前台销户
ForUserDel
5
预付款用户前台改密码
ForChangePwd
6
预付款用户费率设定
FeeRadeDef
7
预付款用户详单查询
DialDetailsQuery
8
预付款用户后台开户
BeUserAdd
9
预付款用户后台停机
BeUserStop
10
预付款用户后台复机
BeUserResume
11
预付款用户后台销户
BeUserDel
12
预付款用户后台改密码
BeChangePwd
13
用户上网时长日统计
DialDayStat
14
用户帐号剩下时长结算
DialLeavesStat
第四章 模块功效描述
4.1 预付款用户前台开户(ForUserAdd)功效描述
输入
处理
输出
用户帐号
用户密码
经过固定端口向后台程序发送用户开户信息,接收后台发回是否开户成功信息,假如成功,则把其金额经过费率换算成时长,放到结算表里
用户开户是否成功信息
4.2 预付款用户前台停机(ForUserStop)功效描述
输入
处理
输出
用户帐号
经过固定端口向后台程序发送停机用户帐号,接收后台发回是否停机成功信息
用户停机是否成功信息
4.3 预付款用户前台复机(ForUserResume)功效描述
输入
处理
输出
用户帐号
经过固定端口向后台程序发送复机用户帐号,接收后台发回是否复机成功信息
用户复机是否成功信息
4.4 预付款用户前台销户(ForUserDel)功效描述
输入
处理
输出
用户帐号
经过固定端口向后台程序发送销户用户帐号,接收后台发回是否销户成功信息
用户销户是否成功信息
4.5 预付款用户前台改密码(ForChangePwd)功效描述
输入
处理
输出
用户帐号
经过固定端口向后台程序发送改密码用户帐号,接收后台发回是否改密码成功信息
用户改密码是否成功信息
4.6 预付款用户费率设定(FeeRadeDef)功效描述
输入
处理
输出
费率值
进行入库
是否入库成功
4.7 预付款用户详单查询(DialDetailsQuery)功效描述
输入
处理
输出
用户帐号
查询时间
从数据库中查询满足条件统计
显示满足条件统计数据
4.8 预付款用户后台开户(BeUserAdd)功效描述
输入
处理
输出
经过固定端口接收前台送过来开户信息:用户帐号,用户密码
判定用户是否存在,假如存在,返回用户已存在错误代码,假如不存在,则在radius上进行开户,在数据库用户信息表中统计用户开户信息,在用户状态表里增加用户状态为正常状态,并返回开户成功信息
开户是否成功信息
4.9 预付款用户后台停机(BeUserStop)功效描述
输入
处理
输出
经过固定端口接收前台送过来停机信息:用户帐号
判定用户是否存在,假如不存在,返回用户不存在错误代码,假如存在,则在radius进行停机操作,在用户状态表时把用户状态修改为停机状态,并返回停机成功信息
停机是否成功信息
4.10 预付款用户后台复机(BeUserResume)功效描述
输入
处理
输出
经过固定端口接收前台送过来用户复机信息:用户帐号
判定用户是否存在,假如不存在,返回用户不存在错误代码,假如存在,则在radius上对用户进行复机操作,在用户状态表里把用户状态改为正常状态,并返回复机成功信息
复机是否成功信息
4.11 预付款用户后台销户(BeUserDel)功效描述
输入
处理
输出
经过固定端口接收前台送过来销户用户信息:用户帐号
判定用户是否存在,假如不存在,返回用户不存在错误代码,假如存在,则在radius上对用户进行销户操作,在用户信息表里删除用户基础信息,并把它统计到历史统计表里,在状态表里把用户状态修改为销户状态,在要求时间以后把销户用户历史统计信息,上网统计,结算信息等全部从数据中清除。并返回销户成功信息
销户是否成功信息
4.12 预付款用户后台改密码(BeChangePwd)功效描述
输入
处理
输出
经过固定端口接收前台送过来改密码用户信息:用户帐号
判定用户是否存在,假如不存在,返回用户不存在错误代码,假如存在,则在radius上对用户进行改密码操作,并返回改密码成功信息
改密码是否成功信息
4.13 用户上网时长日统计(DialDayStat)功效描述
输入
处理
输出
天天对全部预付款用户上网总时长进行统计
统计结果输出到统计表里
4.14 用户帐号剩下时长结算(DIalLeavesStat)功效描述
输入
处理
输出
天天对全部预付款用户上网剩下时长进行结算;
对剩下时长小于或等于0用户对其向后台用户管理程序请求停机;
对全部已停机达七天用户则向后台用户管理程序请求销户。
结算结果输出到结算表里
第五章 程序接口设计
5.1 用户界面
(略)
5.2 硬件接口
5.3 软件接口
5.4通信接口
前台用户管理界面和后台用户管理程序或后台计费程序跟后台用户管理程序通信接口
协议:TCP/IP
端口:6520
通信数据结构:请求类型(int)、用户帐号(char(20)),用户密码(char(15))。(没有密码置为空)
1――开户
2――停机
3――复机
4――销户
5――改密码
/*传送参数*/
typedef struct
{
int Type;
char UserID[20];
char UserPwd[15];
}User;
第六章 数据结构设计
6.1、用户基础信息表(PN_ForUserInfo)
字段名
字段汉字名
字段类型
备注
UserID
用户帐号
Varchar2(20)
主键
UserPwd
用户口令
Varchar2(40)
加密
EnteTime
开通时间
Date
Yyyy-mm-dd hh24:mi:ss
6.2、用户基础信息历史表(PN_ForUserInfoH)
字段名
字段汉字名
字段类型
备注
UserID
用户帐号
Varchar2(20)
主键
UserPwd
用户口令
Varchar2(40)
加密
EnteTime
开通时间
Date
Yyyy-mm-dd hh24:mi:ss
DelTime
销户时间
Date
Yyyy-mm-dd hh24:mi:ss
6.3、用户状态表(PN_ForUserstate)
字段名
字段汉字名
字段类型
备注
UserID
用户帐号
Varchar2(20)
主键
UserState
用户状态
Number(3)
1— 正常状态
2— 停机状态
3— 销户状态
UpTime
更改时间
Date
Yyyy-mm-dd hh24:mi:ss
6.4、用户当日上网统计表(PN_ForCollect)
字段名
字段汉字名
字段类型
备注
UserID
用户帐号
Varchar2(20)
Not null
Caller
主叫号
Varchar2(20)
AssignedIP
分配IP
Varchar2(25)
DialType
拨号类型
Number(3)
SessionID
Session ID
Char(20)
LoginTime
开绐时间
Date
Yyyy-mm-dd hh24:mi:ss
LeaveTime
结束时间
Date
Yyyy-mm-dd hh24:mi:ss
SessionTime
会话时长
Number(30)
以秒为单位
DisCountTime
优惠时长
Number(30)
以秒为单位
InputOctets
流入字节
Number(30)
以字节为单位
OutputOctets
流出字节
Number(30)
以字节为单位
DisFlag
是否优惠处理标志
Number(1)
0-未优惠处理
1-已优惠处理
6.5、用户上网统计历史表(PN_ForCollecthis)
字段名
字段汉字名
字段类型
备注
UserID
用户帐号
Varchar2(20)
Not null
Caller
主叫号
Varchar2(20)
AssignedIP
分配IP
Varchar2(25)
DialType
拨号类型
Number(3)
SessionID
Session ID
Char(20)
LoginTime
开绐时间
Date
Yyyy-mm-dd hh24:mi:ss
LeaveTime
结束时间
Date
Yyyy-mm-dd hh24:mi:ss
SessionTime
会话时长
Number(30)
以秒为单位
DisCountTime
优惠时长
Number(30)
以秒为单位
InputOctets
流入字节
Number(30)
以字节为单位
OutputOctets
流出字节
Number(30)
以字节为单位
DisFlag
是否优惠处理标志
Number(1)
0-未优惠处理
1-已优惠处理
6.6、用户上网结算时长表(PN_ForCountTime)
字段名
字段汉字名
字段类型
备注
UserID
用户帐号
Varchar2(20)
Not null
Money
金额
Number(10)
TotalTime
总时长
Number(30)
按要求以秒或分钟或小时为单位
DialTime
拨号总时长
Number(30)
按要求以秒或分钟为单位
LeftTime
剩下时长
Number(30)
按要求以秒或分钟为单位
展开阅读全文