1、2023.7电脑编程技巧与维护作者简介:徐赛花(1986),女,硕士,研究方向为软件设计开发;张希(1984),男,硕士,研究方向为系统集成开发。1概述图书馆的功能不再局限于借还书,而是向着以人为中心的方向转型发展。其目标是提升品质阅读服务、打造城市客厅、创客空间类交流中心、建立地方文化传承中心、建设智慧图书馆等多种功能。为了适应图书馆的功能转型,开发适合图书馆的预约管理系统,可以充分利用图书馆的空间与资源,更好地为读者提供服务。2预约需求分析不同的图书馆有不同的预约需求。以某图书馆为例,当前需要提供预约服务的主要有数字体验馆和音乐图书馆。数字体验馆提供在线预约和现场预约两种方式,一次预约可体
2、验所有项目,但两种方式需要有独立的名额限制。数字体验馆每周二至周日开放,每天分为3个时段,每个时段又以20 min为单位划分成多个预约时段。此外,冬季和夏季的开放时间也有所不同。音乐图书馆的主馆、HIFI体验室和录播室要求分别预约。音乐图书馆主馆提供在线预约和现场预约,每周二至周日开放,周末的开放时间较工作日有所延长;HIFI体验室和录播室只能提前在线预约,HIFI体验室仅接受36人团体预约,且工作日仅对专业团体开放,周末只对读者团体开放;录播室一次最多可供3人团体使用,同样工作日仅对专业团体开放,周末只对读者团体开放。HIFI体验室和录播室需要提前15 min到馆登记。根据分析,该图书馆的预
3、约要求需要将预约时段的差异细分到每个项目的每天,且预约时段的设置、各时段之间不同的间隔时间等也无法统一。3系统设计3.1系统架构系统采用浏览器/服务器(B/S)架构,主要分为展示 层、业 务 层 和 数 据 层。展 示 层 使 用FineUI+CSS+JavaScript实现前端UI;业务层分为管理端和用户端。数据层使用SQLSugar组件对数据库进行读写操作。用户端包括网站预约、微信预约和现场预约3个模块,提供多渠道预约方式,以满足读者不同的需求。管理端分为普通管理员和系统管理员两种权限,普通管理员可操作现场管理模块,用于预约查询、预约登记和现场预约。系统管理员除现场管理模块外,还可以操作基
4、础设置模块,用于管理预约项目和黑名单。系统采用NLog组件进行日志记录。系统架构如图1所示。3.2数据库根据对预约场馆的要求分析可知,每个场馆的可预约日期、可预约时段,以及时段之间的间隔时间都不相一种图书馆预约管理系统设计与实现徐赛花,张希(苏州图书馆,江苏 苏州215000)摘要:介绍了一种图书馆预约管理系统的设计与实现,并重点阐述了预约项目、预约日历、预约班次、预约时段 4 级联动的管理模式。系统具有良好的用户界面和操作体验,能够有效地管理图书馆的入馆预约流程,提高图书馆的管理效率和服务质量。该系统可以为各类图书馆提供一个可靠、高效的预约管理解决方案,具有很好的实用性和推广价值。关键词:预
5、约;预约管理;图书馆预约图1系统架构访问层电视大屏移动设备PC展示层FineUICSSJavaScript管理端用户端黑名单统计基础设置网站预约日志记录业务层微信预约现场管理现场预约数据层session控制SQLSugar读写数据库预约项目表预约日历表预约班次表数据库预约时段表预约记录表107DOI:10.16184/prg.2023.07.0392023.7电脑编程技巧与维护同。即使是同一个场馆,不同的预约日期也需要有不同的可预约时段。如何让所有场馆在一个系统内完成符合要求的设置,成了设计之初最大的难点。最初的方案是对每个场馆设置以下参数,可提前几天预约、每周哪几天可预约、可预约日提供预约的
6、开始时间和结束时间、每个预约时段的时长,以及预约时段之间的间隔时长等。但无论如何调整这个方案,都无法满足不同日期设置不同预约时段的要求,而且各预约时段之间的间隔时间也只能固定。经过多次研究、讨论和方案修改,最终确定了预约项目预约日历预约班次预约时段4级联动的设置方案。系统使用MySQL数据库进行数据存储,具体设计如下:(1)预约项目表,包括预约项目的名称和介绍、所属部门、可提前预约的天数、每周哪几天可预约、提前登记时间(以min为单位)、提前取消时间、每个时间段可接受的预约数量(包括线上预约和现场预约)、每个预约单可接受的最少人数和最多人数(主要用于HI-FI体验室和录播室),以及预约人员年龄
7、限制等字段。此外,可以设置项目是否可预约。在场馆维护等特殊情况下,可以一键关闭该场馆的预约功能。预约项目表设计如图2所示。(2)预约日历表,旨在为预约项目设置提供明确的预约日历,以便读者一目了然。该日历表格包括以下字段:预约项目ID、预约日期、预约班次ID、是否可预约及不可预约的原因。(3)预约班次表,其作用是灵活地为预约日历中的每个日期设置不同的可预约时段。例如,数字体验馆每年510月,每天开放时间至19:30,其余月份每天开放时间至18:30。因此,可以设置两个预约班次,分别对应不同日期,以便在预约日历中为每个日期选择相应的预约班次。(4)预约时段表,其作用是存储可供预约班次选择的预约时段
8、。该表格的字段主要包括具体时段及时段间隔时长。在设置预约班次时,读者可以根据所需的间隔时长选择可供预约的时段。(5)预约记录表,其作用是存储读者的预约记录。该表格的字段包括预约项目ID、预约日期、预约时段、预约状态(预约中、已登记、已取消、过时未登记)、预约码(用于登记核销)、预约时间、核销时间、预约渠道(网站、微信、现场)、读者姓名、身份证号、手机号等基本信息。(6)黑名单表,其作用是通过数据库添加定时任务,将一个月内连续3次爽约的读者加入黑名单。一旦读者进入黑名单,7天内不得再次进行预约。此方案允许每个预约项目独立地设置预约日期,同时每个预约日期也可以完全独立地设置预约时段,没有任何限制。
9、工作人员可以随时修改这些设置,从而使预约系统具有高度的灵活性。今后,如果需要为新的场馆添加预约功能,只需工作人员添加相关项目并进行设置即可。4系统功能实现4.1管理端管理端采用ASP.NET+FineUI进行开发和实现。管理端分为现场管理和基础设置两个主要模块,并为管理员用户提供了两种不同的权限,即普通管理员和系统管理员。普通管理员登录后,只能访问现场管理模块,而系统管理员可以访问所有模块。4.1.1现场管理(1)预约查询。为方便各场馆掌握每日的预约情况,添加了预约查询功能。工作人员可以根据预约日期和预约时段获取详细的预约情况列表,并将其导出为Excel文件,以便日常工作统计。此外,读者也可以
10、根据自己的姓名或手机号查询个人的预约情况。如果读者不慎丢失了预约码,则可以凭有效证件向工作人员请求帮助查询,并提供取消预约的服务。(2)预约登记。读者在预约后会获得一个预约码,并需要在规定时间内前往场馆登记体验。由于音乐图书馆的HIFI体验室和录播室只接待团体体验,为了更好地服务读者,可采用分批登记的方式,使团体能够在不同的时间进行登记。登记完成后,预约码失效。(3)现场预约。针对一些没有电子设备或不会使用预约功能的读者,管理员也可以为其进行现场预约。4.1.2基础设置(1)预约项目管理。管理员可以添加新的预约项目,并根据场馆的实际需求对参数进行设置。管理员可以使用富文本编辑器对预约项目进行介
11、绍,使其在读者预约端呈现所见即所得的效果。管理员也可以根据需求修改或删除预约项目。预约项目设置界面如图3所示。图2预约项目表设计1082023.7电脑编程技巧与维护(2)预约班次管理。管理员可以添加、修改或删除不同的预约班次,以满足不同预约项目的开放时段要求。在此之前,预约时段表已生成一个可配时段库,以提供给管理员选择。如果需要的时段不在库中,则管理员也可以自定义时段并添加到库中。预约班次管理界面如图4所示。(3)预约日历管理。管理员可以为选定的预约项目设置日历开始的日期、生成日历的天数及这些日期所属的班次。单击“添加日期”按钮后,系统会自动为该项目添加日历列表,并根据项目管理中设置的“每周哪
12、几天可预约”将日历列表中的具体日期设置为可约或不可约。管理员也可以根据实际需求修改或删除日历列表中的具体日期。项目管理中设置的“可提前预约天数”会限制读者在预约时所能看到的日期。读者在预约时选择日期后,会显示该日期所属班次的预约时段。预约日历管理界面如图5所示。至此,一个预约项目的完整设置已经结束。设置流程如图6所示。(4)黑名单管理。管理员可以在此查看所有黑名单列表。如果读者能提供合理的说明,则管理员可以为其解除黑名单,体现“以人为本”的人性化服务。4.2用户端用户端为读者提供了多种预约方式,以适应不同群体的使用习惯。4.2.1网站预约读者可以在网站上进行预约,具体流程如下。(1)读者使用手
13、机号和手机验证码登录预约网站。(2)选择所需的预约项目、日期和时段。(3)填写预约人信息。如果所预约的项目有人数限制,如HIFI体验室只接受36人团体预约,则填写的预约人员信息必须符合要求才能进行预约。预约成功后,读者将收到一条包含预约项目、预约日期、预约时段和预约码的短信。读者可以在线查询近30天内的预约记录,也可以在规定时间内取消预约。4.2.2微信预约随着智能设备的普及,微信预约越来越受到读者的青睐。微信预约采用ASP.NET MVC+CSS完成设计开发。读者可以通过关注微信公众号进行预约,登录后选择预约项目、预约日期和预约时段即可完成预约。预约成功后,读者将收到一条公众号推送信息,信息
14、包含预约项目、预约日期、预约时段和预约码。读者可以通过单击推送信息来查看近30天内的预约记录,也可以在图3预约项目设置界面图4预约班次管理界面图5预约日历管理界面图6预约管理系统的设置流程添加预约项目并完成设置是否有合适的班次否添加班次是否有合适的时段自定义时段选择班次选择时段生成预约日历继续添加日历否完成该项目的设置是否是是1092023.7电脑编程技巧与维护规定的时间内取消预约。微信预约的重点在于微信的授权登录,授权流程1如下。(1)用户同意授权,获取code。(2)通过code换取网页授权access_token。(3)通过access_token和openid拉取用户信息。预约成功后,
15、读者会收到公众号推送的模板消息。预约成功后读者收到的模板消息如图7所示。4.2.3现场预约读者如果没有提前预约,也可以在场馆外的可触摸大屏上进行现场预约。现场预约仅限开放当日时段。读者需要携带有效身份证件和手机号,选择有效时段进行预约。此举可以限制场馆内的访客人数,从而为入场读者带来更好的体验。5系统特点与优势系统为工作人员提供了一个方便的管理平台,并且为读者提供了多种易于操作的预约方式,其具有以下特点和优势:(1)系统设置高度灵活。该系统采用预约项目预约日历预约班次预约时段4级联动的管理模式。预约项目的设置完全由场馆工作人员自定义,工作人员可自主选择读者预约端的显示方式。各预约项目的可预约日
16、期和每个日期的可预约时段可以完全独立设置,不受程序约束。此外,该系统支持随时增加预约项目,具有较强的可扩展性。(2)读者可以选择多种预约方式。习惯计算机操作的读者可以使用网站预约;大部分读者的手机都安装了微信,也可以关注微信公众号进行预约;读者还可以在现场自助预约。因此,该系统适用于大多数的读者。(3)选择微信预约的读者需要先关注图书馆的微信公众号,这在一定程度上可以增加公众号的粉丝数量。微信公众号是图书馆与读者之间进行沟通的重要纽带,图书馆可以通过微信公众号向读者提供更加优质的服务和资源。6结语系统在设计初期进行了多次讨论和研究,最终确定了数据库结构。在开发过程中,系统功能进行了多次的优化和
17、改进,以确保能够满足不同场馆的要求。系统上线以来一直稳定运行,读者可以更好地利用场馆资源,而场馆也能够根据人流量统计适时地更新和优化服务方式,使图书馆管理工作更加高效。参考文献1李伟超,张柳琪,焦启航,等.基于移动互联网的图书馆共享空间预约系统分析J.图书馆理论与实践,2018(6):101-104.2陈斌,雒虹.基于旧馆的高校图书馆空间再造实践与思考:以西安交通大学图书馆为例J.当代图书馆,2018,135(3):50-53.3席新亮.微信公众平台网页开发实战:HTML5+JSSDK混合开发解密M.北京:电子工业出版社,2017.4张松慧,鲁立.ASP.NET MVC程序设计开发教程M.北京
18、:中国铁道出版社,2018.图7预约成功后读者收到的模板消息(1)提出了这种层次化的AD识别的集成框架,可有效应对数据不完整及与病理改变无关的特征数量过多的情况,显著提高了多类分类的分类效果。(2)在此提出的框架是对常用的特征及分类器进行一定的组合,全面地分析了AD识别方面的性能。该框架适用于多种特征提取方法及多种类型分类器,使得该框架更具灵活性和通用性。参考文献1徐勇,王军,王虹峥,等.2022年中国阿尔茨海默病知晓与需求现状调查J.阿尔茨海默病及相关病杂志,2022,5(4):265-277.2龙晓秘.基于MR图像的阿尔茨海默症识别方法研究D.武汉:华中科技大学,2021.3李梅梅,胡春海,周影,等.基于改进注意力机制的认知障碍病程分类J.计量学报,2023,44(2):8.4曾安,贾龙飞,潘丹,等.基于卷积神经网络和集成学习的阿尔茨海默症早期诊断J.生物医学工程学杂志,2019,36(5):711-719.(上接第55页)110