图书馆占座管理系统的设计与实现.docx

上传人:b****8 文档编号:9852571 上传时间:2023-02-07 格式:DOCX 页数:37 大小:672.44KB
下载 相关 举报
图书馆占座管理系统的设计与实现.docx_第1页
第1页 / 共37页
图书馆占座管理系统的设计与实现.docx_第2页
第2页 / 共37页
图书馆占座管理系统的设计与实现.docx_第3页
第3页 / 共37页
图书馆占座管理系统的设计与实现.docx_第4页
第4页 / 共37页
图书馆占座管理系统的设计与实现.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

图书馆占座管理系统的设计与实现.docx

《图书馆占座管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《图书馆占座管理系统的设计与实现.docx(37页珍藏版)》请在冰豆网上搜索。

图书馆占座管理系统的设计与实现.docx

图书馆占座管理系统的设计与实现

 

本科生毕业设计

 

图书馆占座管理系统的设计与实现

DANDIofthemanagementSystemofLibrary

学生姓名

所在专业

计算机科学与技术

所在班级

申请学位

工学学士学位

指导教师

职称

答辩时间

毕业设计原创性声明

本人郑重声明:

所呈交的毕业设计,是本人独立进行研究工作所取得的成果。

所有数据、图片资料均真实可靠。

除文中已经注明引用的内容外,本毕业设计不含任何其他个人或集体已经发表或撰写过的作品或成果。

对本毕业设计的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本毕业设计的知识产权归属于本人。

本声明的法律结果由本人承担。

毕业设计作者签名:

日期:

年月日

 

设计总说明

本文旨在实现一个适应我校新局势下的图书馆合理抢占座位系统。

实现了计算机网络技术与数据库技术的圆满联合。

系统的软件组织选用了B/S架构,效率地提升了学生使用座位效能与质量。

它的可扩充性强,顺应学校内部的各类发展需求。

在对本系统进行需求剖释的基本上,对系统进行总体设计,包罗框架设计和数据库表设计,对数据库各表及其属性以及表之间的关联进行阐述,并对系统做详细设计、公告功能以及查询功能接口的设计,以订座记录的创建、接收、查看等功能。

对系统进行测试,使系统最后达到了展望需求和成果。

关键词:

数据库;B/S架构;图书馆;合理;抢占;座位;

INTRODUCTION

Thisarticleaimstorealizeareasonablepreemptionseatingsystemforthelibraryinthenewsituationofourschool.Realizedasuccessfulcombinationofcomputernetworktechnologyanddatabasetechnology.

ThesoftwareorganizationofthesystemselectstheB/Sarchitecture,whicheffectivelyimprovestheefficiencyandqualityoftheseatsusedbystudents.Itishighlyextensibleandconformstovariousdevelopmentneedswithintheschool.Onthebasisoftherequirementanalysisofthesystem,theoveralldesignofthesystem,includingtheframedesignanddatabasetabledesign,thedatabasetablesandtheirattributesandtherelationshipbetweenthetablesareexplained,andthesystemisdesignedindetailandannouncedAndthedesignofthequeryfunctioninterfacetocreate,receive,viewandotherfunctionsofbookingrecords.Testthesystemsothatthesystemfinallymeetstheprospectiveneedsandresults.

Keywords:

DatabaseB/SArchitectureLibraryReasonablySeizeSeats

图书馆占座管理系统的设计与实现

 

1概述

1.1系统开发的背景

图书馆座位的载体以及需求的形式因为信息技术与网络技术的发展和更新变得越来越多和五花八门,当前以物占座,拖人代占是国内学生图书馆占座实现的主要形式,我校缺少完整成熟的图书馆管理体系,如何把学生管理,座位分配等各种管理抓手起来,让他们正常运转,为学生关系缓和,提高学生幸福指数提出了又一要求,图书馆管理技术提供了适应各种订座需求各处理,提供了应对海量数据的存储,多次订座和此时订座等功能,本系统在根本程序上提升了学生订座的管理的效率,使学校的管理更加流程化,有助于学校信息水平的提高,还能够产生一定的借鉴经验为我国的教育产业的信息化发展

1.2系统实现的目标

改善其他高校所拥的在线图书馆占座管理系统,利用Rj45接口的网卡,实现网络Internet系统的PersonalComputer端管理平台,运维管理平台。

通过WEB,MySQL,Redis数据缓存,在线云等相关技术实现图书馆占座平台。

(1)线网络订座,实现对现有资源的充分利用;如我们的母校广东海洋大学寸金学院

的在校生可利用此平台在宿舍申请预订需要占哪个座位,还能对不需要的座位进行退订,达到诚信用座,合理用座。

(2)通过校园网,解决了信息不对等的限制,不仅是在思想上的开放,还是在缓解学生尖匀矛盾的重要阵地。

(3)可通过在首页引入各种广告,如毕业西装广告,外卖小食广告,收取违规占座罚款等赚取巨额利润。

1.3国内外研究现状

1.3.1国外研究现状

许多学校普遍开建设了人工管理的制度与规程,并在图书馆管理中重视了互联网技术的运用,学校借助自身学生的动手能力能够实现对图书馆做更多的综合管理,通过推特等公众平台发布信息,但美中不足的是信息的延迟与发布不均衡等,占座现象较为少见,究其原因,是外国人口比较少,且有一定较高的素质培养。

1.3.2国内研究现状

我国因为教育资源的区域化发展,必然有着许多不平衡不充分的表现,像许多地区扔采用传统的手工方式处理,命人监督学生占座,总体上来说我国缺少先进的图书馆管理工具和手段,更让人担忧的是,许多私校的思想品德教育还停留在马列课本上,虽然有一定的程序帮助学生树立正确的人生观和价值观,但已经滞后于时代的发展,与现代教学理念相差较远。

而发展得好的地区,很多管理软件都是从大软件公司购买的,价格较贵,因此这些信息管理系统的通用性较强,而专用性较弱。

由于不同学校图书馆管理体系与座位分布存在一定的差别,因此这类图书馆管理系统很难实现对学生占座的管理,图书馆占座系统仍然有很大的提升空间。

1.3.3研究内容与主要工作

本文以成熟的开源框架Django为基础,有效融合Nginx反向代理服务器,redis数据库,构建一种足够灵活。

高效,松散关联的整合开发框架,本文设计了公告时段表与当前时段表与平时的定座表整合进项目,深入使用了Django的体系结构与工作原理,严格遵循restful规范,并且结合图书馆占座系统的设计与实现,详细描述了如何应用整合开发Web应用后台系统

1.4系统功能的简述

(1)本系统包括index页,公告,滚播,选楼,占座,登陆,个人中心的改密,退订,登出等模块组成

(2)图书管理员可设置离座时间,分段式的开馆时间,设置日期等模块组成

1.5系统的开发环境

(1)操作系统:

Windows764位

(2)开发工具:

PyCharm8.4

(3)Python开发环境:

python3.6

(3)插件依赖

certifi==2019.11.28,cffi==1.13.2,chardet==3.0.4,coreapi==2.3.3,coreschema==0.0.4,cryptography==2.8,defusedxml==0.6.0,diff-match-patch==20181111,Django==2.0.6,django-allauth==0.38.0,django-appconf==1.0.3,django-cors-headers==2.3.0,django-filter==1.1.0,django-import-export==1.1.0,django-mysql==2.4.1,django-ranged-response==0.2.0,django-redis==4.11.0,django-rest-framework==0.1.0,django-rest-swagger==2.2.0,django-reversion==3.0.2,django-simple-captcha==0.5.9,django-user-accounts==2.1.0,djangorestframework==3.8.2,djangorestframework-jwt==1.11.0,et-xmlfile==1.0.1,idna==2.8,itypes==1.1.0,jdcal==1.4.1,Jinja2==2.10.3,MarkupPy==1.14,MarkupSafe==1.1.1,oauthlib==3.1.0,odfpy==1.4.0,openapi-codec==1.3.2,openpyxl==3.0.2,Pillow==7.0.0,pycparser==2.19,PyJWT==1.7.1PyMySQL==0.9.0,python3-openid==3.1.0,pytz==2019.3,PyYAML==5.2,redis==3.3.11,requests==2.22.0,requests-oauthlib==1.3.0,simplejson==3.17.0six==1.13.0,tablib==0.14.0,uritemplate==3.0.1,urllib3==1.25.7,xlrd==1.2.0,xlwt==1.3.0

(5)数据库:

MySQL5.6

(6)数据库连接工具Navicat

(7)Redis缓存数据库

(8)接口测试工具postman

(9)浏览器:

Chrome浏览器

2可行性的研究

可行性研究是为了确定是否可以很快地以最低的成本就解决问题。

而在从过程中的各种系统,大部分是同一个程序由于缺乏资金和原因的另一端,并且该系统无法在议会结束的时候完成它不断变化的资源约束,它导致不必要的困难,通过系统的分析了一遍又一遍,因为它不是。

该系统的假设和信念的报告是必要为企业的开发成本,因此有必要认真评估可行性描述系统的研究课题,尽快以防止系统发展的过程。

他发现,开发系统或完整的系统不能满足大规模投资的经济效益。

可行性分析包括以下四个要素:

操作可行性,经济可行性,技术可行性和法律上的可行性。

2.1操作可行性

MTV架构的图书馆占座管理平台的用户界面简洁,充分考虑操作上的简便,对用户很细心;对于使用者的设备性能要求几乎没有,市面上常见的个人电脑,智能移动手机都可以使用,综上,本系统的操作可行且可靠。

2.2经济可行性

本系统的开发环境需要一台配置有开发环境的笔记本即可,系统生产环境需要另一台装有生产环境的笔记本来依托。

如若并入公网,需要花生壳软件来内网穿透,实现网络连通,笔记本完全可架设本系统。

公司完全可以满足。

另一方面,系统可以常年不更新,学生用户群体是一年过一年的进入流出,非常稳定,割完一波韭菜又一波,建设加大罚款金额,实现利润最大化。

综上分析其经济是可行的。

2.3技术可行性

运用自学的各种相关技术,能实现图书馆占座管理系统,系统后期加入各广告位增大利润时,python的开发速度快,成本低,使用Nginx实现静态资源反向代理可充分提高稳定性和ubuntu的3年不关机的超高稳定性来支持系统的稳定运行,综上分析,技术是满足的

2.4法律可行性

收取广告费是合法的,使用的框架是开源的BSD协议,自由开发收费,法律是可行的。

个人认为图书馆占座管理系统是可以开发实现的

2.5结论

综上四点分析,分别分析了法律可靠性·技术可靠性·经济可靠性·操作可行性,我认为图书馆占座管理系统可以开发。

3需求分析

本章主要对图书馆占座管理系统进行需求分析和总体设计,详细论述图书馆占座管理系统的功能性需求,对每个模块要实现的功能做详细的说明,对图书馆占座管理系统三层架构进行详细论述,并对系统类图设计和状态转化进行说明,详细阐述了图书馆管理系统的数据库表设计,通过运行Mysql数据库完成地数据库表的设计,并且介绍了事务交互数据的关系和公告交互数据的关系

3.1用户对系统的要求

图书馆管理员:

能对图书馆进行日常的开馆,闭馆操作,并对时段进行定制管理

在校学生:

通过手机或PC进行图书馆占座与退座

运维:

能对图书馆进行数据库的操作查看等基本管理

3.2图书馆占座系统需求分析

图书馆占座系统通过搭建一个先进的信息化网络station,实现infomation的流转,knowledge的流转,working的整合Mege,达到整合学校资源,illusrate学校信息流通,规范化定座流程,提高学生体验,降低学校管理的成本的目的。

通过对多家中小型图书馆,特别是广东海洋大学寸金学院进行调查,调研他们的相同点与不同点和他们的图书馆占座管理系统的使用情况,并进行细致的组图,进而通过数据的收集与分析,发现大多数图书馆的占座管理系统是在结全自身的实际流程的前提,考虑自身情况设计与开发。

就此,各个学校图书馆占座管理系统的侧重点是不同的,例如,有的学校的图书馆占座管理系统之中包含了留言管理模块,但是有的学校图书馆占座管理系统是没将此模块纳入系统之中的,再比如有的学校图书馆占座管理系统是将系统使用者信息公示的,而有的学校图书馆占座管理系统是将使用者信息等密码进行MD5摘要算法进行计算存入数据库中的。

对于寸金学院图书馆占座管理系统贴进实际的现代化的占座管理系统,其service是为了满足学生中更好学的人对于高quality的学校图书馆服务的requirement,在这样的幕后下,学校要想能够体量学生,为学生构建优质,高效的服务,只追求先进的图书馆占座调试和优秀的管理人员是不够的,与其寄希望于学生素质提高,不如打造一个好的学校图书馆占座管理系统发挥助作用,这样才能更好的让学校服务于学生。

3.3对座位的授予进行需求分析:

座位授予要的转让不能让客户自己决定,如某学生占了一个座位,使用了两日,其关系者需要此座位,就把座位资源转手他人,其他人不得享用。

要想转移座位所有权,座位标识符与特别简短的个人信息码相结合,个人信息码是随机生成的,每一天都唯一,每一次都唯一,座位授予方无从查这个帐户是谁,也不需要知道。

3.4对座位的需求分析:

座位有一个唯一的标识符,由数据库收录,座位状态,黑,白,举报过渡态(即长时间被占却处于非使用状态,或者说这是黑白转换态),一次查询会将座位标记为离开状态10分钟:

10分钟后,如果被另一个人(或前一个人)再次查了,这个座位的状态,那么,这个座位直接被收回。

15分钟后,没人去查这个座位的状态,要把座位设置回占坑状态:

因为说明,占座的人只是去上了个厕所,或是去打了个电话,临时离开而已

3.5数据库需求分析:

已经有全部客户信息,能够进登陆页面的全部是合法人员,不存在不合法的人员申请座位,二次占座才加入延时名单

3.6座位申请方的需求分析:

不需要知道座位被何人占了,不需要知道太过详细的信息,带了手机的(占座有效时间短,少个7到8分钟就行了,这个时间是被人查看状态时,转成过渡态的时间),没带手机的(本身从条件上是劣势的,但应该鼓励这种行为,要从政策上加以帮助.,有点小帮助,可以相比有带手机的多个7到8分钟)多次霸座的并不能被加入黑名单。

占一次,下一次订座位成功需要延时5分钟,二次就延时10分钟,以此类推),座位处于空状态,被人看见了,这个人想要这个座位,这个人就会去查,也应该去查这个座位的状态,也不能无限查所有座位,这会给人造成困扰(限制:

一人,一天能查占有座位3次吧,查三次是指占座成功后三次呢?

还是10分钟内能查看三次呢?

我认为这种方案比较可靠)当然,本人也能自己点结束占座,不需要加暂时离开,这会变相鼓励带手机去图书馆,这并不是初衷,订座位就三个时间段按钮,旱,中,晚,给客户造成一种紧迫不适感,开发系统的初衷是合理使用资源,不是激起客户反感,临近闭馆10分钟,不需要点结束占座,(由后台来统一标识,统一处理)可以查看图书馆近期开闭馆状态

3.7座位授予方需求分析:

在座位授予时,不需要太过详细的信息,对每一个客户需要一个唯一的标识符,此后只有这个标识符,只能看到这个标识符,不能一直让客户独占座位(座位授予方还是需要一个定时的时间段重启所有的座位的空闲态,我是去学习的,还是去盯着手机的?

,有时间段统一收回,统一发放)鼓励客户加入举报队列(待定,有必要打小报告吗?

),鼓励客户查座位的状态这种行为(如何鼓励?

我认为,清清楚楚写明白的才是好的,如:

我们鼓励合理使用座位资源,如有空位,我又想占风扇下的座位,长时间处理占座却无人使用,请申请填坑),如何区分带手机的和不带手机的?

可以在图书馆的一台电脑上连条网线,开个网页,在那为没带手机的客户服务,可以定义开馆时间与闭馆时间,也不会有人想操作这个系统的,可以自定义有效开闭馆时间,使用简易软件来设置数据库数据,可以发布开闭馆时间公告

3.8系统非功能性需求

显示界面是否能更好看,更易使用,界面友好化是一项消磨时间的活,未登陆前允许的操作:

可以进到登陆页面,可以进到首页,可以刷新首页,可以查看公告,可以看到剩余座位,可以跳转到楼层页面选择楼层,登陆后允许的操作:

拥有所有未登陆前允许的操作,可以进到个人中心,可以修改密码,可以进到订座情况页面,退订占座,可以退出登陆,可以进到开始选座界面,可以选座,可以选楼层,可以选时段,有订座的可以在首页点击千里赴约,赴约之后可以在首页点击结束占座,管理用户操作:

登陆后允许的操作,设置时段,设置离座时间,退出登陆

3.9本章小结

使用软件工程中的需求分析的思想,做到了有头有尾,对本系统的分析与设计,对各种需求的分析,比对,较为详实。

其中包括了对座位的授予的分析,对座位的分析,对数据库的分析,对座位申请方的分析,对座位授予方的分析,非功能性的分析。

有理有据,令人信服。

4总体设计

这是图书馆占座系统的总体设计,从树根往下有首页和个人中心功能结构。

核心是选座模块,包括了日期选择,座位选择,订座确认。

在首页功能结构下有轮播图模块和公告模块和楼层选择模块。

在个人中心下有退出登陆模块有选座详情模块与修改密码模块。

图4-1运营系统功能结构图

4.1系统功能模块设计

公告模块:

用来由管理员发布图书馆公告,可以使用同一公告接口,由不同权限的人员从公告接口中获取和设置公告详情

订座模块:

不同帐号的使用人员来使用订座接口向后台发送必要的数据来使用订座模块,这个模块是必要需要登陆后的用户才能操作的,要带着token来向后台服务器来请求响应,订座也会有订座失败的情况,返回的都是json数据

修改密码模块:

带着token来的用户并不都能随便更改密码,后期要将密码摘要后再比对来更改密码,不能一个数据库管理员来管理一段时间,将密码拷走就能任意登陆帐号

退订模块:

这个模块是用来退出此时刻的订座和未来时段的接口,直接比对的是timezone模块中的now中的时间函数来操作比对的,与公告表中的数据库中的数据联动使用

退出登陆模块:

使用这个模块,会将缓存中的token删除,以达到让token失效的效果,效果就是再带着token来请求接口中的数据,一般会被接口的拒绝,很多接口利用了django中的节流控制和权限控制

座位模块:

请求显示的模块,面向的是用户体验,与前端关联过多,不做过多展示

4.2系统数据库设计

最基本的表,学生表,用来标识学生,有学生信息,学生ID,学生姓名,学生所在的系,学生的专业(profession),学生的性别(gender),学生的密码(password)

学生个人标识表personal_info_table(个人标识表)包括学生ID,学生个人馆码,每个时段最多可查询座位有人的次数(防止恶意查询)查一次就递减,为0就不可查,并且这个表是一直存在的,但有些字段是一直动态更改的,将来可以用这个表生成身份标识,比如连续签到15天荣耀之类的.从student_info生成library_code(个人馆码)与student_info是1对1的关系,但增加了几个字段

用来针对黑名单用户的表,warning_table(首次机会表),library_code(个人馆码),二次直接加入延迟表.与student_info是1对1的关系,这个表是长期存在的,只在二次时才删除数据,delay_table(延迟处理表)有library_codedelay_default_time(默认延迟时间)默认5分钟有delay_factor(延迟因子)且默认为1,delay_table与student_info是1对1的关系

图书馆管理员发布信息的表

-library_time_table(图书馆时间表)这他妈是给学生看的,数据库中不能这么存

-AM_start_time(上午开始时间)8:

30

-AM_end_time(上午结束时间)11:

45

-PM_start_time(下午开始时间)14:

30

-PM_end_time(下午结束时间)17:

30

-EV_start_time(晚上开始时间)17:

30

-EV_end_time(晚上结束时间)21:

45

-announce_table(公告信息表)text(info)

-leave_time(默认离座时间)10分钟~30分钟

这个表的数据是学生登陆时生成的

temp_table

-library_code

-advantageous_factor(有利因子)

-有手机的是1*leave_time

-没手机的是leave_time*1.5

-这个有得因子是用来区分有带手机和没带手机的

-这个表的数据是学生登陆时生成的

##关于座位的表

-current_order_table(本时段内已经被订的座位)本时段表

-seat_identification(座位位置标识)

-library_code(个人馆码)

-开馆时就将本时段的所有订座信息取过来,有订了多个时段的需要修改正确

-如a订了旱下,在旱上开馆时,就设置为订了下的表

-只订了旱的座位,在下午开馆时就删除订座信息

-could_select

-防止在宿舍就胡乱查询

-为了抢座位的恶性竟争

-因为隔了一定时间就能将别人的座位抢过来了

-开馆了就设置为true

-否则是false,一false,下面的字段就没用了

-advantageous_factor(有利因子)

-return_time(回归时间)

-30分钟

-规定时间内再无二次查询者查询,座位回归回始占位方

-first_select_time(首次被查询时间)清零

-recent_select_time(最近被查询时间)清零

-select_number(总查询人数)清零

-select_number(总查询人数)

-初始为0

-first_select_time(首次被查询时间)

-recent_select_time(最近被查询时间)

-座位回归始占人时要清空

-5分钟

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1