APP下载

融合多种支付方式的校园网计费系统

2017-11-29赵丹中国人民大学信息技术中心北京100872

微型电脑应用 2017年11期
关键词:计费充值一卡通

赵丹(中国人民大学 信息技术中心,北京 100872)

融合多种支付方式的校园网计费系统

赵丹*
(中国人民大学 信息技术中心,北京 100872)

校园网计费系统中除了上网认证、流量和费用实时监控外,网费充值也是极为重要的功能模块。但是传统的网费充值方法存在用户需要到指定地点排队充值、处理速度慢、到账时间不及时等问题。针对这些问题,结合当前新兴支付手段的广泛应用,提出了一种融合充值卡、中行直充、微信、支付宝、一卡通圈存机圈存等多种支付方式的校园网计费系统,并详细介绍了各种支付方式在计费系统中的功能、实现方式、优势等。还介绍了该系统在本单位的实际部署情况,对系统中用户近一年来的支付行为及特点进行了统计、分析和比对,证实了新引入的中行直充、微信、支付宝等支付手段被用户大量使用,其使用量占总量的78.9%。

校园网; 计费系统; 充值; 支付

0 引言

当前,各高校一般以自建校园网的形式为师生提供互联网接入服务。根据国家互联网安全管理的相关法规,公安部、教育部的相关文件(《互联网安全保护技术措施规定》、《关于进一步加强高等学校校园网络管理工作的意见》),互联网使用单位必须实行实名制认证上网。为此,校园网用户需要进行实名认证之后方能上网。以笔者所在的高校为例,移动、联通、电信的出口带宽均未超过2G,教育网的出口带宽只有几百兆,总计出口带宽只有5.3G。而校园网用户包括:全日制在校本科生、研究生均一万多人,在编教职工四千余人,短期学生、暑期小学期学生、各类进修人员、聘用人员、访客等总计超过五万人。如何保证有限的资源更加合理、有效的被利用呢?目前采用按用户对网络流量进行计费[1]并合理收费的方式来引导用户更理智的使用校园网。这就是各高校引入校园网认证计费系统的主要目的。

校园网认证计费系统中,除上网认证、流量和费用实时监测外,网费充值也是极为重要的功能模块,并且是直接面向广大师生提供交互接口和支撑服务的主要模块。其便捷性、易用性及运行效率直接影响用户体验和网络使用情况。

传统网费充值即用户支付方式主要有:

1)用户到指定地点排队充值,然后由专门的工作人员在计费系统中为其手动充入网费。此方式耗费大量的人力物力,处理速度慢,易出错,且用户体验不好。

2)一卡通圈存机充值[2][3]。即把网费充值功能接入到一卡通的圈存机界面上,用户使用一卡通自助充值。此方式需在圈存机前排队,且网费到账时间有延迟,用户体验欠佳。

3)网上银行转账充值。即由学校设置专门的财务帐号,用户可通过网上银行转账到此帐号,到帐后由一卡通系统为相应的上网账户充值。此方式网费到账时间也有延时,并且需要依赖一卡通系统。

为解决上述传统网费充值存在的种种问题,本文提出了一种融合多种支付方式的校园网计费系统。在此系统中我们不仅提出了充值卡、流量卡这种创新的充值的方式,还引入了中行直充、微信、支付宝等流行的新型支付手段。实现了全网络进行充值,无现金支付,完全避免了人工服务的低效方式且不用为收费专设财务岗。实现了365天*24小时,用户可以随时进行充值,方便、快捷、省时。

1 系统概述

1.1 用户账户和计费规则

计费系统中每个用户均有两个账户,流量账户和资金账户。流量账户储存当前可用流量,一般来源于每月的赠送流量和通过充流量的方式对账户进行充值的流量。资金账户储存通过充值的方式对账户进行充值的资金。当流量账户余额为0后,开始使用资金账户的网费进行上网。若未提前充值,则需要采用一种适合自己的支付方式进行充值。消费保护用来设定每月使用资金账户里面资金的上限,超过设定值则不再使用,自动断网。

所有用户均采用预付费方式缴纳费用,用户可随时在系统中查询本人流量账户和资金账户余额,如图1所示。

图1 计费系统首页

用户上网过程中计费系统实时检查用户可用流量,可用流量为0时用户不能访问校外资源(校内资源不计流量,不收费)。

以笔者所在高校的网费资费标准为例,每月消费流量在20G以下1元/G,超出20G部分按照2元/G的费率计费。假设流量账户余额为A,资金帐户余额为B,可用流量为F,那么可用流量F是这样计算的:

未设定消费保护时:

当A+B≤20时,F=A+B

当A≤20且A+Bgt;20时,F=10+(A+B)/2

当A≥20时,F=A+B/2

设定消费保护金额为X时:

当A+X≤20时,F=A+X

当A≤20且A+Xgt;20时,F=10+(A+X)/2

当A≥20时,F=A+X/2

1.2 系统总体架构

如图2所示。

从图2中可以看出,整个系统架构被划分为3个层面:

接口实现层

接口实现层用来定义接口,实现接口报文规范的接口实现等,与业务逻辑没有耦合。可以用来定义各种业务指令编码、数据报文格式、业务受理调用规范等。

业务组合层

业务组合层主要实现业务的封装,是基于底层最小单位的功能点而进行的业务逻辑组合与重用,从而实现不同的业务。例如,充值用到了用户资料包的更新资料处理,将充值金额写入用户的资金账户包。充流量比较复杂,赠送流量时用到了融合流量包的系统赠送流量,流量卡充流量时用到了充值流量,资金账户里资金兑换流量时用到了换购流量。

图2 系统总体架构

业务逻辑层

业务逻辑层,主要是底层的实现,基于具体的小颗粒度的功能进行划分。是最底层最小单位的功能点的实现,不关注业务,但是对其进行组合与重用则可实现不同的业务。例如“更新资料处理”与别的功能点进行组合,可以实现用户的开通、复通等业务功能。

1.3 计费系统的主要流程及数据流走向

计费系统的主要功能是流量计费与控制,其主要流程和数据流走向,如图3所示。

从图3中可以看出,系统实时监测流量并基于账户的可用流量信息进行访问控制。可用流量信息取决于其流量账户的流量余额与资金账户的可用资金。而可用资金信息在很大程度上则取决于用户的消费行为即网费支付行为。本系统中,提供多种支付方式尤其是在线支付方式,避免了线下支付的拥挤、排队及到账不及时等弊端。下章中将重点介绍多种支付方式的实现。

2 多种支付方式的实现

在此系统中支付方式主要分为充流量与充值两大类。其中充值包括中行直充、支付中心、充值卡这3种方式。在支付中心进行支付时,可采用微信支付或支付宝支付。此外,我们依然保留了传统的一卡通圈存机充值。下面我们将一一介绍这些支付方式,并分析其优势。

图3 系统流程与数据流走向

2.1 充流量

如图4所示。

图4 充流量

点击图1中的“充流量”,跳转到图4所示页面。在此输入流量卡的卡密经计费系统核验成功后即将相应的流量金额直接充入用户流量账户。若卡密连续输错3次及以上,将增加验证码环节。

流量卡是非售卖卡,主要用于解决校内各单位因教学科研而产生的特殊流量需求,例如因科研要求需长期下载大量研究资料等。有特殊需求的单位在电子校务的网上服务中心提交申请,经所在单位领导、信息技术中心两个部门审批通过之后,直接在服务窗口领取实物流量卡。实物流量卡与充值卡的信息由计费系统生成,含卡号、密码、有效期、面值等。然后委托厂商制作成为类似手机充值卡的实体卡。

流量卡的功能在于保证了特殊的教学科研需求,且不涉及财务。

2.2 中行直充

如图5所示。

点击图1中的“充值”,跳转到图5所示页面。拥有校园卡且在一卡通系统中绑定了银行卡的用户可点击“中行直充”,选定充值金额或在空白文本框内输入充值金额,点击“前往支付”计费系统即直接将相应金额充入用户资金账户。

图5 充值页面

中行直充采用动态链接库的方式。计费系统调用一卡通接口,将用户学工号、转账金额等信息传给校园卡系统,校园卡系统将相关信息传给用户校园卡绑定银行卡的银行系统,成功扣减费用之后校园卡系统告知计费系统,计费系统进行实时充值。

接口函数为:

int QuanCunPciS**(String Ip, int PortNo, String SalaryNo, String Code, int Money, int WaitSecond, char RetMsg)

传入参数如表1所示。

表1 一卡通接口参数

返回信息,分别用不同的数值代表:无法连接对接服务器、接收数据超时、圈存成功、银行卡号不存在无法圈存、非法报文、后台资源不足等。

无需登录网银,操作非常简便!因不涉及校外流量,用户无任何可用流量时依然可以充值。以笔者所在高校为例,校园一卡通绑定银行卡的有效在用用户高达3万多人,对于这部分人而言,中行直充具有绝对性的优势!

2.3 微信支付

如图6、图7所示。

图6 支付订单

在图5所示页面点击“支付中心”,跳转到图6所示支付订单页面,输入支付金额,点击“确定”,跳转到图7所示订单详情页面,默认微信支付,直接用微信扫码即可支付。支付成功之后,充值金额即刻进入用户的资金账户。

图7 订单详情页面

微信支付由支付中心调用微信的标准接口进行支付,具体支付流程,如图8所示。

图8 微信支付

校园网用户提交充值网费订单,选择微信支付之后,计费系统支付中心生成支付订单,然后调用微信支付统一下单接口。接口链接URL地址为:https://api.mch.weixin.qq.com/pay/unifiedorder 。在微信中生成预付单,返回prepay_id,按签名规范重新生成签名后,返回信息prepay_id、sign等。参与签名的字段名为appId,partnerId,prepayId,nonceStr,timeStamp等。接着支付中心调起微信支付。微信验证支付参数等,完成交易。将支付状态通过回调接口执行回调。支付中心接收到支付结果,将其展示给用户。

微信支付作为一种新兴的支付方式,因其便利性而得到了众多新潮用户的青睐。我们引入以后,采用此种方式支付的用户逐月攀升。

2.4 支付宝支付

页面选择“支付宝支付”,图7所示。即跳转到支付宝收银平台,如图9所示。

在此可选择扫码支付或登录支付宝账户支付。支付成功后,充值金额即刻进入用户的资金账户。

支付宝支付需要先建立支付宝请求表单,然后分别计算通知、验证结果,再处理订单。主要代码如下:

支付宝服务函数主要内容

private config = array(...);

图9 支付宝支付

/** 构造函数 */

public function __construct(){…}

/** 获取配置 */

public function getConfig(payid){...}

/**

* alipay 建立请求,以表单HTML形式构造

* @param int payid payid common 中定义

* @param array order 订单详情:包含订单号、标题、金额,回传参数等

* @return [type] 支付宝请求表单

*/

public function buildRequestForm(payid, order, method = 'post', button_name = '确认', schoolid = SCHOOL_ID){

order['out_trade_no'] = payid.'-'.order['order_no'];

alipay_config = this-gt;getConfig(payid);

alipaySubmit = new AlipaySubmit(alipay_config);

exter_invoke_ip = get_client_ip();

anti_phishing_key = 10;

parameter = array(

"service" =gt; "create_direct_pay_by_user",

"partner" =gt; trim(alipay_config['partner']),

"seller_email" =gt; trim(alipay_config['seller_email']),

"payment_type" =gt; 1,

"notify_url" =gt; 'http://'.COMMON_HOST.'/reg/Pay/alipaynotify',

"return_url" =gt; 'http://'.COMMON_HOST.'/reg/Pay/alipayreturn',

"out_trade_no" =gt; order['out_trade_no'],

"subject" =gt; order['subject'],

"total_fee" =gt; order['total_fee'],

"body" =gt; order['body'],

"show_url" =gt; order['show_url'],

"it_b_pay" =gt; order['it_b_pay'],

"anti_phishing_key" =gt; anti_phishing_key,

"exter_invoke_ip" =gt; exter_invoke_ip,

"_input_charset" =gt; trim(strtolower(alipay_config['input_charset']))

);

this-gt;addOrder(order['uid'], payid, order['order_no'], order['total_fee'], schoolid);

header("Content-type:text/html;charset=utf-8");

html_text = alipaySubmit-gt;buildRequestForm(parameter,"get", "确认");

return html_text;

}

//计算得出通知验证结果

public function handleReturn(para){...}

//计算得出通知验证结果

public function handleNotify(para){...}

/**

* 处理订单

* @param string out_trade_no 交易号

* @param string trade_status 交易状态

*/

public function handleOrder(para){

list(payid, order_no) = explode('-', para['out_trade_no']);

status = this-gt;getStatus(para['trade_status']);

return service('reg://Pay')-gt;handleOrder(payid, order_no, para['total_fee'], status);

}

private function addOrder(uid, payid, order_no, money, schoolid){...}private function updateOrder(para, isback){...}

2.5 充值卡充值

在图5所示页面选定“充值卡”,输入充值卡卡密后点击“前往支付”实现充值。成功后,充值金额即刻进入用户资金账户。卡密连续输错3次及以上,将增加验证码环节。

充值卡由信息技术中心与校内商户例如各大报亭、超市等签订代售协议委托代售。各商户通过向校内财务部门缴纳充值卡费用,然后凭缴费票据到信息技术中心服务窗口领取充值卡的方式批量购买充值卡。校园网用户可以自行用现金在商户处灵活购买。

此种方式的优势在于不仅解决了我中心不收取现金,而部分用户尤其是访客、暑假小学期的外籍师生需要现金缴纳网费的矛盾,并且为用户提供了一种更为灵活的充值方式。充值卡的充值过程不涉及校外流量,对无任何可用流量的用户不失为一种好的充值方式。

2.6 一卡通圈存机充值

一卡通圈存机充值是一种传统的网费充值方式,利用了一卡通的第三方接入功能。用户需到放有一卡通实体机资讯通的地方,在资讯通上面进行充值操作,通常需要排队。

这种充值方式采用中间库进行数据交换[4]。用户在资讯通上成功缴纳网费后,校园卡系统将缴费信息写入中间库的充值记录表中,并做写入和时间标记。计费系统定时(间隔30s)扫描中间库发现缴费信息之后,读取数据,并做读取和时间标记。然后实现用户的网费充值处理,用户的资金账户收到这笔充值。中间数据库充值记录表,如表2所示。

表2 中间数据库充值记录表

当时间标记MARSAUTOIMPORT的值为‘0’时,OPDATE记录的是系统写入时间,当MARSAUTOIMPORT的值为‘1’时,OPDATE记录的是系统读取时间。

总之,对用户而言较为麻烦,不仅时常需要现场排队,资金到账较慢,且受银行对账限制只能在每日的7:00-19:30时间段进行充值。

3 系统运行情况分析

结合系统投入使用情况,分别统计某自然年各种支付方式按月支付金额和支付笔数(微信、支付宝支付从4月开始正式上线)的使用比例如图11、图12所示。

图11 各种支付方式按月支付金额统计

图12 各种支付方式按月支付笔数统计

可以看出,传统的支付方式:一卡通圈存占比越来越小。

引入的新兴支付方式:中行直充、微信、支付宝支付全年支付金额大概占比78.9 %,且占比越来越大。其中中行直充由于其支付的便利性比传统网银、甚至新兴的微信、支付宝都强,而受到了绝大部分师生的认可。而微信支付、支付宝支付作为新兴的支付手段,也吸引了越来越多的用户。

4 总结

网费充值是校园网认证计费系统中重要的功能模块。针对校园网用户的各种需求,结合新兴支付手段,我们设计了一种融合多种支付方式的校园网计费系统。我们摒弃了排队现金充值的传统方式,保留了一卡通圈存,设计了充值卡用以满足部分现金支付用户,流量卡用以满足特殊教学科研需求,引入了中行直充用以满足广大师生的充值需求,同时接入微信、支付宝支付满足了新潮用户的需求,最终为校园网用户网费充值提供了丰富多彩、灵活多变的支付渠道。最后对系统近一年来各种网费支付方式的支付金额、笔数进行了统计、分析,表明各种方式都有一定的客户群,新引入的中行直充、微信支付、支付宝支付得到了越来越多用户的青睐。

[1] 岑贤道,李伟华, 李学农.校园网安全计费方案探讨[J].计算机工程与应用,1999,4:96-97.

[2] 贺欢,韩博,李一鸣,邸德海. 基于一卡通圈存机的外挂式缴费系统的设计与实现[J].实验技术与管理,2011,5:229-231.

[3] 江迎春,陈娟.校园卡与校园网计费系统集成研究[J].网络安全技术与应用,2014,1:80-81.

[4] 赵丹,杨颖,王向东.数字校园中数据交换与信息共享的常见方式与应用研究[J].微型电脑应用,2016,12:8-11.

MultiplePaymentMethodsofAccountingSysteminCampusNetwork

Dan Zhao*
(Information Technology Center, Renmin University of China, Beijing 100872)

In addition to network authentication, data flow and cost of real-time monitoring, network fee recharging consist of another important functional module in campus network accounting system. However, the traditional recharging method has several drawbacks. For example, users have to queue up to recharge at specific places; it usually takes long time to process and fund into account. To address these problems, this paper proposes an integrated campus network accounting system, which utilizes multiple emerging payment methods including recharge card, One-Card loading in air, WeChat, AliPay and One-Card deposit machine. This paper compares the functionality, implementation and pros/cons of various payment methods in detail. Furthermore, we have deployed the new integrated accounting system in our campus and analyzed the user behaviors and characteristics in the past year. We conclude that among all the payment methods, One-Card loading in air, WeChat and AliPay have been widely used, they take up about 78.9% of the total.

Campus network; Accounting system; Recharge; Payment

赵丹(1982-),女,襄阳人,工程师,硕士,研究方向:教育信息化、人机交互。

1007-757X(2017)11-0046-05

TP319.0

A

2017.03.27)

猜你喜欢

计费充值一卡通
5G网络独立组网中融合计费方案的研究
基于云计算和微服务架构的高速公路计费系统
生活中的分段计费
奇妙的智商充值店
充值
基于“一卡通”开发的员工信息识别系统
基于NFC的ETC卡空中充值服务应用系统实现
公共交通一卡通TSM平台研究
基于AM3354的电动汽车充电监控计费系统电表通信的实现
向心加速度学习一卡通