基于业务驱动的排队系统设计与实现
2021-07-05陈立平付艳梅张婷刘连浩
陈立平 付艳梅 张婷 刘连浩
(沙洲职业工学院 江苏省张家港市 215600)
随着信息技术的飞速发展,人为排队已经逐步被排队管理系统所替代,这不仅提升了办事的效率,也提高了窗口的服务质量。排队系统的应用产生了大量的数据,这些数据势必成为一种无形而宝贵的资产。通过对数据资产的保护和挖掘利用,可以实现客户情况及员工的工作状况作出各种统计,为管理层进一步决策提供依据,为业务流程的梳理和优化提供数据支撑。
针对业务大厅的排队特点,本排队管理系统通过自主取号、自主叫号、身份识别(身份证和市民卡)、与业务系统接口、动态数据实时监控和效率管理等功能,在前台,可以起到电子“一米线”的功能,做到井然有序;在后台,领导可通过控制电脑和移动端及时得知前台的各项情况,如:顾客情况、各部门的服务情况和各员工的工作状况等等,以便领导合理安排人员。
1 系统体系结构
本系统软件方面主要包括系统管理软件(用于排队叫号系统前台运行)、后台监控软件(用于排队叫号系统后台监控)。软件系统主要功能模块包括多队列排队管理、多功能号票打印、多种呼叫方式、嵌入业务系统等。多队列排队模块可支持多个不同服务类型的队列管理,多功能号票打印模块可打印服务类别、排队时间、等候人数、排队序号、机构名称等多种要求,多种呼叫方式模块对号码实行“回呼”、“顺呼”、“选呼”、“复呼”,并可跨队列进行呼叫,嵌入业务系统模块实现与业务系统的无缝对接,通过取号机的身份认证,自动在业务端提取客户基本信息,根据取得取号人员基本社保信息,并提供相应数据接口,供人社局业务系统调用。
本系统硬件方面主要由排队展示大屏幕、自动取号机、控制电脑、报表打印机、综合显示终端、窗口显示终端、物理呼叫器、语音系统、线缆连接部件及其他辅件等组成。
整个系统的结构示意图如图1所示。
图1:系统体系机构
取号机用于打印系统的排队信息。在接到客户服务请求,经过身份证或者市民卡认证后,取号机即自动打印一张印有服务名称、窗口序号、排队序号、等候人数等有关信息的号票。窗口服务人员通过呼叫终端对顾客号码实行“选呼”、“顺呼”、“回呼”、“复呼”,并可跨队列呼叫,同时还可对号码进行窗口间查看、储存、转移、分类、统计,并可自动查询等候人数,自动弃号处理等功能。
2 通信协议
本系统软件部分采用经典的C/S 结构,该结构部署方便、性能稳定以及响应速度快,很好的满足了业务大厅的需求。客户端和服务端通过Socket 方式进行通信。双方必须遵循一定的规程协议,才能进行有效的数据通信。在本系统中,客户端包括取号机软件系统和呼叫软件系统两部分,采用C#.Net 实现。服务端包括后台管理系统和通信监测管理系统,也是采用C#.Net 服务端,数据库采用Oracle。呼叫系统与通信监测系统之间数据收发过程实际上就是在Socket 发送缓冲区和接收缓冲区进行数据读写的过程。我们把这一过程中的数据交换单位称之为数据帧,数据帧格式如表1所示。
表1:数据帧格式
其中,本系统中数据帧开始标志设置为一个字符“#”,结束标志为一个字符“@”。包类型为5 个字符,不同的数据包类型实现不一样的功能。具体类型分类如表2所示。
表2:数据包类型
客户端和服务端的通信软件设计部分可以分为数据帧的定义、通信规则的制定、校验算法的实现和超时处理等。
服务端与客户端socket 连接过程如图2所示。
图2:socket 连接过程
3 服务端管理系统
服务端管理系统软件实现了用户对整个取号排队系统的管理和监控。软件通过Oracle 视图访问基础数据,可以快速的在海量数据中检索到所需的内容。服务端管理系统主要功能包括如下:
(1)基本参数的设置,如服务类型、窗口信息、座席设置、用户设置等。
(2)系统状态的监控,如排队状态、座席状态和服务器状态等。
(3)丰富的报表,如员工服务明细、员工服务状态和部门服务状况统计等,可以采用折线图或者饼图的方式进行展现。
(4)系统的备份和恢复,以及打印设置。
(5)用户管理。
在服务端,还采用H5+Echarts技术在大屏幕上进行数据的展示,实时显示各个业务的排队情况,窗口的办理情况等。
4 数据库设计
本系统采用Oracle 作为数据库,主要保存了顾客取号的队列、窗口队列、呼叫队列、办理日志等。其中顾客取号队列表如3所示。
表3:顾客取号队列
5 报表统计服务
本系统提供了丰富的报表功能,主要包括工作量分析报表、工作状况日报、工作状况时报、等待时间分析等。管理人员可以通过直观的图形方式查看到当前整个业务大厅的排队情况和员工的服务情况,同时可以根据客户的需要自行定制报表。海量的取号办理数据和直观的数据报表为管理层的决策提供数据支撑和快捷的工具。
6 系统安全加固
为了提高系统的健壮性、加强系统的防护能力,本系统采取了四个方面的安全策略。
(1)针对应用系统自身,代码编写更加严谨,对特殊字符和安全敏感字符进行过滤,对预知的错误进行逻辑处理,以访给攻击者提供蛛丝马迹。譬如可以执行的系统命令system()、exec()、shell_exec()、eval()、passthru(); 过滤sql 命令如select、insert、delete、from、count、update、drop table、truncate 等;为防止多语句执行,把半角分号替换成全角分号;将存储过程关键字和扩展过程关键字进行替换。
(2)将数据库服务器置于内网中,业务服务器在不同的网段,数据库服务器仅允许业务服务器的访问。
(3)针对操作系统的安全配置,启用操作系统的防火墙,定制严格的防火墙规则,禁用需要使用端口之外的其他一切端口,细化文件和目录的访问权限,清理不用的系统账户等。
(4)在网络出口处,部署Web 防火墙,检测和阻断外部网络对系统的恶意访问,净化内网业务系统的工作环境,确保系统安全可靠的持续运行。
7 结束语
本系统智慧的解决了业务大厅的窗口排队等待问题,在一定程度上方便了客户,提高了服务质量。技术上系统采用了经典的C/S架构和Socket 通信模式,达到了快速稳定、安全可靠的效果。后期将根据需要,融合评价系统,为用户提供更好的服务。