基于java会议管理系统设计
- 格式:docx
- 大小:887.31 KB
- 文档页数:19
目录摘要 (III)ABSTRACT (IV)第1章绪论 (1)§1.1 会议室管理系统的背景及意义 (1)§1.2 会议室管理系统的现状和存在的问题 (1)§1.2.1 研究现状 (1)§1.2.2 会议室管理系统的问题 (2)§1.2.3 会议室管理系统的难点 (2)§1.3 主要研究内容 (3)§1.4 本文组织结构 (3)第2章技术架构介绍 (4)§2.1 整体架构 (4)§2.1.1 B/S架构 (4)§2.1.2 前后端分离 (5)§2.1.3 Restful Api设计 (6)§2.2 前端技术介绍 (6)§2.2.1 React (6)§2.2.2 React Router (7)§2.2.3 Ant Design (7)§2.2.4 Webpack (8)§2.2.5 Less (9)§2.3 后端技术介绍 (9)§2.3.1 Nodejs (9)§2.3.2 Express (10)§2.3.3 Sequelize操作数据库 (12)§2.3.4 JWT鉴权 (12)§2.4 数据库技术介绍 (13)§2.4.1 MySQL (13)§2.4.2 Navicat (13)§2.5 本章小结 (13)第3章需求分析 (15)§3.1 系统功能和需求概述 (15)§3.2 系统需求分析 (16)§3.2.1 功能性需求分析 (16)§3.2.2 非功能性需求分析 (17)§3.3 可行性分析 (17)§3.3.1 经济可行性分析 (18)§3.3.2 技术可行性分析 (18)§3.4 本章小结 (18)第4章系统概要设计 (19)§4.1 总体流程设计 (19)§4.2 数据结构设计 (20)§4.3 功能架构设计 (22)§4.4 本章小结 (22)第5章系统实现 (24)§5.1 开发环境 (24)§5.2 系统功能实现 (24)§5.2.1 用户管理模块 (24)§5.2.2 会议室列表查询 (28)§5.2.3 会议室预订模块 (30)§5.2.4 与会人员交互模块 (33)§5.2.5 个人会议列表查询 (34)第6章总结与展望 (36)§6.1 本文总结 (36)§6.1.1 本文的主要工作 (36)§6.1.2 本文的主要创新点 (37)§6.2 展望 (37)致谢.................................................................................................. 错误!未定义书签。
类型:课程设计题目:基于JA V A的办公自动化系统系统设计与开发1 绪论随着经济的快速发展,世界经济进入整体化,企业的发展突飞猛进,随着企业的大规模发展,企业内部的各种事务也会日益的复杂,工作量也会加大。
因此利用先进现代科学技术和先进的管理理念来开发一个管理系统来管理企业的事物是非常必要的。
目前市面上办公自动化系统的特点是以办文处理、档案管理为核心的办公管理系统。
其主要的功能包括收文管理、发文管理、会议管理、档案管理等内容。
系统的高度集成,基于web,知识化和流程化将是办公自动化大发展方向。
1.1 办公自动化的基本定义和产生背景办公自动化(OA, Office Automation),是70年代中期发达国家为解决办公业务量急剧增加企业生产率产生巨大影响问题的背景下,发展起来的一门综合性技术。
他的基本任务是利用先进的科学技术,是人们借助各种解决对一部分办公业务的处理,达到提高生产效率、工作效率和质量,方便管理和决策的目的。
OA的知识领域覆盖了行为科学、管理科学、社会科学、系统工程学等学科,并且OA体现了多学科的相互交叉、相互渗透性,所以的OA的应用是企业管理现代化的标志之一。
1.2 办公自动化的处理范围OA的核心问题是如何提高日常的办公效率问题。
因此人们日常工作的所有内容可以归入OA处理的范围,如文字处理、文件眷写、传真、申请审批、办公用品、办文管理、会议管理、资料管理、档案管理、客户管理、订货销售、库存管理、生产计划、器材需求、技术管理、质量管理、成本、财务计算、劳资、人事管理等等,那么这些都是办公软件的处理范围。
OA的承载过多,以至无法定义和处理这么丰富的内涵的名词,由于他如此耳熟,更换一个名词的成本太高,人们现在还不得不和这个丰富内涵的变色龙一样的名词打交道,并且通过上下文来揣摩他的确切含义。
在这种情况下就迫切需要建立一个交流的基础。
在处理不同的名词的办法就是在OA 之前加上范围修饰和在之后加上附加名词来界定它们。
基于java的视频会议系统设计与实现重庆大学工程硕士论文学生姓名:***指导教师:***兼职导师:***工程领域:软件工程重庆大学软件学院年月Design and Implementation of Java-Based Video Conference SystemA Thesis Submitted to Chongqing Universityin Partial Fulfillment of the Requirement for theDegree of Master of EngineeringBy***Supervised by Prof. ***Supervised by Associate-Prof. ***Specialty: Software EngineeringCollege of Software Engineering of ChongqingUniversity, Chongqing, China摘要随着互联网的发展与进步,网络与计算机应用已经普及到社会的各个层面。
对于一个逐渐壮大的集团化企业来说,高效的管理模式和工作方式,直接影响着其在市场竞争中的地位。
某集团(全称:某集团有限公司)下辖18个分/子公司、污水处理厂及项目部,集团总部或在分支机构召开的各种办公会议,不仅花费了大量的时间和经费,也给公司管理带来很大的不便。
因此,必须有一种新的会议方式,解决某集团公司面临的,会议多、效率低的现实问题。
笔者作为某集团信息部员工,在深入调研后,提出开发视频会议系统的方案,并参与了系统需求分析、设计、实现、项目管理等全过程。
该方案详细论述了利用Java相关技术,开发基于SIP协议视频会议系统的详细过程。
本文的研究工作包括两大部分:(1)利用SIP协议完成信令的多点呼叫控制,从而实现对会议的管理。
(2)利用RTP协议和Java相关技术实现多媒体的通信。
通过本系统的研发取得了以下几个方面的成果:(1)视频会议服务器端,其实现的主要功能包括:主持会议、操控会议、结束会议;客户端,其主要功能是参加会议、参与文件管理等操作。
java新颖的毕设题目共100个1. 基于区块链的电子商务平台设计与实现2. 智能家居系统的开发:基于Java的物联网应用3. 社交媒体分析工具:从用户数据中提取有价值的信息4. 基于Java的医疗健康管理系统5. 智能推荐系统:利用机器学习算法提供个性化推荐6. 虚拟现实(VR)与Java的集成:开发一个沉浸式体验应用7. 智能交通系统:优化城市交通流8. 在线教育平台:支持视频教学、在线测验等功能9. 智能图像识别系统:用于人脸识别、物体识别等10. 金融数据分析工具:帮助投资者进行数据驱动的决策11. 音乐推荐系统:分析用户喜好,提供个性化的音乐推荐12. 电子健康档案管理系统:方便医生和患者的信息交流13. 基于Java的即时通讯应用14. 智能农业管理系统:用于农田监控、水资源管理等15. 在线旅游预订系统:酒店、机票、景点门票等的预订和管理16. 人工智能助手:集成自然语言处理和机器学习技术17. 校园社交平台:方便学生、教职员工之间的交流与合作18. 电子化考试系统:支持在线考试、防作弊等功能19. 区块链投票系统:确保投票的透明性和安全性20. Java实现的即时股票交易系统21. 在线美食订购与配送平台22. 智能停车系统:提供实时停车位信息和导航服务23. 基于Java的智能家居能源管理系统24. 移动健康监测应用:监测用户的运动、睡眠等数据25. 在线拍卖平台:支持用户拍卖二手商品26. 智能报警系统:通过感知设备检测异常事件27. Java实现的3D游戏开发28. 在线法律咨询平台:连接用户和专业律师29. 基于Java的个性化电商推荐引擎30. 人才招聘平台:帮助求职者和企业匹配合适的岗位31. Java实现的区块链存证系统32. 在线医疗问诊平台:远程医生咨询和处方服务33. 社交音乐平台:用户可以分享和发现新的音乐34. Java实现的智能语音助手35. 网络直播平台:支持用户实时分享视频内容36. 智能决策支持系统:用于业务决策的数据分析37. 基于Java的物流管理系统38. 智能家居安全监控系统:集成视频监控和入侵检测39. 在线问卷调查系统:用于收集用户反馈和调查数据40. Java实现的虚拟实验室系统41. 电子商务支付系统:支持多种支付方式的整合42. Java实现的在线新闻发布平台43. 人脸识别门禁系统:提高安全性和便利性44. 社交健身应用:用户可以记录运动数据并分享45. 基于Java的智能电子书阅读器46. 在线会议管理系统:支持远程会议和文件共享47. 智能校园卡系统:整合一卡通、图书馆借阅等功能48. Java实现的大数据分析平台49. 虚拟旅游体验应用:通过VR技术提供虚拟旅游体验50. 社交电商平台:购物与社交相结合的创新模式51. Java实现的在线投资理财平台52. 在线个性化教育平台:根据学生兴趣定制课程53. 虚拟医学诊断系统:模拟医学图像的分析和诊断54. Java实现的大学生就业信息管理系统55. 智能农业无人机控制系统56. 在线电影票预订系统:支持座位选择和在线支付57. 基于Java的实时天气预报应用58. Java实现的电子化合同签署系统59. 社交美食分享应用:用户可以分享自己的烹饪经验60. 在线智能匹配平台:连接求职者和企业61. Java实现的医学影像处理系统62. 虚拟实验室模拟:用于教学和科研63. 在线二手交易平台:用户可以出售和购买二手商品64. Java实现的智能问答系统65. 在线语言学习平台:提供多语言学习资源66. 基于Java的家庭财务管理应用67. 社交化学术研究平台:学术交流与合作68. Java实现的物联网智能城市管理系统69. 在线美妆试妆应用:用户可以虚拟试妆70. 虚拟实景导览应用:提供城市景点的虚拟导览服务71. Java实现的智能问卷分析系统72. 在线汽车租赁平台:支持用户租赁和发布车辆信息73. 基于Java的智能工业生产监控系统74. 社交化旅游规划应用:用户可以分享旅游路线和经验75. 在线艺术品拍卖平台:连接买家和卖家76. Java实现的大规模数据存储和检索系统77. 基于区块链的知识产权保护系统78. 在线健身教练平台:用户可以与健身教练进行在线交流79. Java实现的虚拟实验室设备控制系统80. 社交化学科学研究平台:学科领域专业人士的交流平台81. 在线家庭医生平台:用户可以远程咨询医生82. 基于Java的智能电子合同管理系统83. 虚拟实景购物应用:用户可以虚拟购物体验84. 在线投诉与建议管理系统:企业和用户的沟通平台85. Java实现的机器人控制与编程平台86. 社交化电影评论应用:用户可以分享对电影的看法87. 在线家教平台:学生可以找到合适的家教老师88. 基于Java的数字化音乐图书馆管理系统89. 虚拟实景美术馆:用户可以在线参观艺术作品90. Java实现的大规模文本数据分析系统91. 在线私人定制服装平台:用户可以定制个性化的服装92. 基于区块链的学历验证系统93. 社交化电子竞技平台:玩家可以分享游戏经验94. Java实现的在线新闻热点分析系统95. 虚拟实景动物园:用户可以在虚拟环境中观赏动物96. 在线房地产经纪平台:用户可以找到合适的房源97. 基于Java的工业生产质量监控系统98. 社交化瑜伽健身应用:用户可以分享瑜伽心得99. Java实现的电子合同智能审核系统100. 虚拟实景历史博物馆:用户可以在虚拟环境中了解历史文化。
目录目录...。
...。
.......。
.。
.。
...。
.。
.。
....。
.。
....。
...。
..。
.。
....。
1摘要 (3)Abstract (4)引言 (5)第一章概述 (6)1。
1 Java概述。
...。
........。
..。
.。
.。
..。
..。
.。
....。
.。
.。
.。
. (6)1.2 JBuilder基本描述。
.。
.。
.。
.。
..。
.。
..。
.。
..。
..。
......。
.。
.101.3 Access数据库简介...。
.。
.....。
..。
....。
..。
...。
....。
..。
.131。
4成绩管理系统的简述.。
.。
..。
.。
...。
...。
....。
...。
..。
.。
..。
.141.5 开发思路。
...。
..。
...。
.。
.。
.。
..。
...。
...。
..。
...。
....。
.。
151.5.1 开发背景 (15)1.5。
2 系统开发的方法 (15)第二章系统需求分析 (16)2.1 初步调查.。
.。
.。
.。
.。
.。
..。
....。
..。
...。
.。
..。
.。
.。
.。
.。
..。
162。
2 详细调查。
.。
..。
..。
.。
...。
......。
..。
.。
...。
..。
.。
.。
.。
.。
..17 2。
3 可行性分析。
.。
.。
.。
....。
.。
..。
.。
.。
..。
.。
.。
.。
.。
..。
.。
..18 2。
3.1 经济可行性 (18)2。
3。
2 技术可行性 (19)2.3。
3 操作可行性 (19)2。
4系统逻辑模型的提出。
.。
..。
..。
.。
..。
.。
.。
...。
.。
.。
..。
.。
.。
.。
. (19)2。
4。
1 数据流程图 (19)2。
4。
2 数据字典 (19)2.4.3 安全性问题 (20)第三章系统设计 (21)3.1 功能结构设计..。
.........。
..。
...。
.。
.。
.。
...。
.。
.。
....。
..。
..。
..。
213。
2 物理结构设计.。
.。
..。
.。
.。
.。
.。
..。
.。
第1篇一、引言随着我国经济的快速发展,工程建设领域也呈现出蓬勃发展的态势。
工程项目管理作为工程建设过程中的核心环节,其重要性不言而喻。
为了提高工程项目管理的效率和质量,降低成本,确保工程项目的顺利实施,本文提出一套工程项目管理系统方案,旨在为工程项目管理者提供全面、高效、智能的管理工具。
二、系统概述1. 系统目标本系统旨在实现工程项目管理的数字化、信息化、智能化,提高工程项目管理的效率和质量,降低成本,确保工程项目的顺利实施。
2. 系统功能(1)项目管理:包括项目立项、项目计划、项目执行、项目监控、项目验收等环节。
(2)资源管理:包括人力资源、物资资源、设备资源、资金资源等。
(3)进度管理:包括项目进度计划、实际进度跟踪、进度调整等。
(4)质量管理:包括质量计划、质量控制、质量验收等。
(5)安全管理:包括安全计划、安全监控、安全事故处理等。
(6)合同管理:包括合同签订、合同变更、合同履行等。
(7)成本管理:包括成本预算、成本核算、成本分析等。
(8)风险管理:包括风险识别、风险评估、风险应对等。
三、系统架构1. 系统架构设计原则(1)模块化设计:将系统功能划分为多个模块,便于维护和扩展。
(2)分层设计:将系统分为表现层、业务逻辑层、数据访问层,提高系统可扩展性。
(3)松耦合设计:各模块之间采用松耦合设计,降低模块之间的依赖性。
2. 系统架构(1)表现层:负责用户界面展示,包括网页、手机APP等。
(2)业务逻辑层:负责处理业务逻辑,包括项目管理、资源管理、进度管理、质量管理、安全管理、合同管理、成本管理、风险管理等。
(3)数据访问层:负责与数据库进行交互,包括数据存储、数据查询、数据更新等。
(4)数据库层:存储系统数据,包括项目信息、资源信息、进度信息、质量信息、安全信息、合同信息、成本信息、风险信息等。
四、系统功能模块设计1. 项目管理模块(1)项目立项:录入项目基本信息,包括项目名称、项目类型、项目规模、项目地点等。
doi:10 11920/xnmdzk 2022 03 011基于uni ̄app+SpringBoot的移动智能办公系统设计与实现李英玲1ꎬ2ꎬ牛美雅1ꎬ兰宏富1(1 西南民族大学计算机科学与工程学院ꎬ四川成都㊀610041ꎻ2 西南民族大学计算机系统国家民委重点实验室ꎬ四川成都㊀610041)摘㊀要:随着物联网㊁人工智能等信息技术的发展ꎬ企业对在线办公的使用便捷性㊁安全性等方面提出了更高的要求.为了解决现有办公软件安装和操作繁琐㊁人性化和安全性方面不足等问题ꎬ本研究设计并实现一个基于uni ̄app和SpringBoot框架的移动智能办公系统.该系统采用Shiro和JWT技术实现了用户身份认证和权限授权ꎻ使用Docker构建人脸识别运行环境ꎬ实现拍照签到ꎬ并采用GPS定位和本地宝技术ꎬ实现员工签到地疫情风险管理ꎻ采用轮询机制实现消息的自动接收和推送ꎬ并通过异步多线程向RabbitMQ发送公告以实现消息数据的缓存ꎬ从而减少数据库写入压力.经测试表明ꎬ本系统可有效地进行身份认证与授权㊁消息的自动推送与接收㊁视频会议的创建与编辑㊁拍照签到㊁签到地疫情风险管理㊁考勤统计等ꎬ数据传输稳定性好ꎬ人机操作界面稳定易用.因此ꎬ本系统能有效地提高团队间的沟通效率和在线办公质量ꎬ并提供更人性化和便捷的用户体验ꎬ对推进在线办公智能化㊁信息化建设具有重要意义.关键词:办公系统ꎻ微信平台ꎻuni ̄app框架ꎻSpringBoot框架ꎻShiro和JWT技术中图分类号:TP315㊀㊀㊀㊀㊀㊀㊀㊀文献标志码:A㊀㊀㊀㊀㊀㊀㊀㊀㊀文章编号:2095 ̄4271(2022)03 ̄0313 ̄09收稿日期:2021 ̄09 ̄09作者简介:李英玲(1984 ̄)ꎬ女ꎬ汉族ꎬ湖南衡阳人ꎬ讲师ꎬ博士ꎬ硕士生导师ꎬ研究方向:基于深度学习的多源信息融合㊁软件测试优化㊁智能软件工程.E ̄mail:80300053@swun.edu.cn通信作者:牛美雅(1997 ̄)ꎬ女ꎬ回族ꎬ陕西人ꎬ研究方向:智能家居㊁自动化办公.E ̄mail:1005864372@qq.com基金项目:四川省科技厅苗子工程重点项目(2021JDRC0066)ꎻ西南民族大学科研启动金资助项目(RQD2021096)ꎻ中央高校基本科研业务费专项资金优秀学生培养工程项目(2021NYYXS65)Designandimplementationofsmartmobileofficesystembasedonuni ̄appandSpringBootLIYing ̄ling1ꎬ2ꎬNIUMei ̄ya1ꎬLANHong ̄fu1(1 SchoolofComputerScienceandEngineeringꎬSouthwestMinzuUniversityꎬChengdu610041ꎬChinaꎻ2 TheKeyLaboratoryforComputerSystemsofStateEthnicAffairsCommissionꎬSouthwestMinzuUniversityꎬChengdu610041ꎬChina)Abstract:WiththedevelopmentofinformationtechnologysuchastheInternetofThingsandartificialintelligenceꎬhigherre ̄quirementshavebeenputforwardfortheconvenienceandsafetyofonlineoffices Inordertosolvetheissuesofcumbersomein ̄stallationandoperationꎬhumanizationandsecurityofexistingofficesoftwareꎬthispaperdesignedandimplementedasmartmo ̄bileofficesystembasedontheuni ̄appandSpringBootframework ItusedShiroandJWTforidentityauthenticationandpermis ̄sionauthorizationidentityauthenticationandauthorizationofusersꎻusedDockertobuildtheoperatingenvironmentoffacerecog ̄nitiontoachievesign ̄inbytakingphotosꎬusedGPSpositioningandlocaltreasuretechnologytotakeepidemicriskmanagementofsign ̄inlocationsofemployeesꎬandadoptedapollingmechanismtoreceivemessagesandautomaticallypushthem Toachievecachingmessagedataandreducingthepressureofdatabasewritingꎬasynchronousmulti ̄threadingwasusedtosendannounce ̄mentstoRabbitMQ Applicationtestsshowedthatthesystemcouldeffectivelyperformidentityauthenticationandauthorizationꎬautomaticpushingandreceptionofmessageꎬcreationandeditingofvideoconferenceꎬphotocheck ̄inꎬtheepidemicriskmanage ̄西南民族大学学报(自然科学版)第48卷mentofcheck ̄inareaꎬattendancestatisticsandsoon Thesystemshowedthatthestabledatatransmissionandhumaninterfacewerestableandeasytouse Thereforeꎬthissystemcaneffectivelyimprovethecommunicationefficiencybetweenteamsꎬthequalityofonlineofficeꎬandprovidemorehumanizedandconvenientuserexperienceꎬwhichisofgreatsignificancetothepromo ̄tionofintelligentandinformativeonlineofficesKeywords:officesystemꎻWeChatplatformꎻuni ̄appframeworkꎻSpringBootframeworkꎻShiroandJWT㊀㊀随着计算机技术在软件应用上逐渐成熟ꎬ办公软件已从无纸化办公发展到互联网远程办公ꎬ能满足人们基本的办公需求[1].各地方政府㊁大型企业等机构ꎬ都大力加强办公的自动化和信息化建设ꎬ协同办公模式逐步在企业以及政务办公中占据主体地位[2]ꎬ以提高员工工作效率和企业竞争力[3 ̄4].随着物联网㊁大数据㊁人工智能等技术的快速发展ꎬ给传统办公带来发展契机ꎬ在线移动办公成为继无纸化办公和互联网远程办公之后的新一代办公模式.新一代信息技术的应用ꎬ既可有效促进整个协同办公体系的发展ꎬ也为企业智能化转型提供内驱力[5].OA系统成长至第三代时ꎬ数据处理技术㊁数据库和信息管理技术的应用进一步提高了OA系统的办公质量和效率[6]ꎬ但是也存在技术过于陈旧[7]㊁审批效率低下[8]ꎬ并且安装和操作繁琐㊁系统安全[9]与数据安全等问题[10 ̄13].随着微信应用的普及以及微信公众平台二次开发接口的提供ꎬ微信小程序无需安装㊁卸载㊁随时打开等诸多优势[14].很大程度上满足了移动办公开发需求[15]ꎬ但是在操作流程㊁人性化㊁便捷服务和安全性等方面不足.基于上述背景ꎬ本系统实现了一个移动智能办公系统ꎬ以uni ̄app和Springboot为核心框架ꎬ将Shiro㊁JWT和人脸识别技术相结合ꎬ并采用本地宝和GPS定位技术ꎬ实现签到考勤㊁视频会议㊁消息通知㊁用户身份认证和授权ꎬ并对拍照签到地疫情风险进行管理.通过异步多线程向RabbitMQ发送公告实现对消息数据的缓存ꎬ最后采用RBAC权限控制技术实现了对用户权限的管理.该系统能较大程度上简化用户操作㊁增强系统安全性ꎬ提高办公的工作效率ꎬ并提升用户体验.1㊀系统架构㊀㊀基于uni ̄app和SpringBoot移动智能办公系统的架构如图1所示ꎬ包含5个逻辑元素ꎬ分别是使用uni ̄app框架开发系统的移动端㊁各个功能的基础模块㊁保证安全交互的数据库.图1㊀系统架构图Fig 1㊀Modelarchitectureofsmartmobileofficesystem㊀㊀1)前端采用uni ̄app框架进行开发ꎬuni ̄app是使用Vue语言来实现开发各种跨平台应用的前端框架ꎬ组件丰富.2)后端采用SpringBoot进行开发ꎬ其主要优点:快速地构建项目㊁对于主流开发框架无需配置集成㊁项目可独立运行㊁不需要外部依赖Servlet容器㊁提供在运行时的应用监控ꎬ因此极大地改善和提高了项目开发的工作效率.3)后端的权限验证使用Java领域非常知名的认证与授权框架Shiroꎬ该框架适用性广泛.系统可抵御跨站脚本XSS攻击ꎬ通过过滤器拦截所有请求ꎬ将请求中的内容转义ꎬ再存储到数据库中.4)人脸识别程序需要较多依赖库ꎬ环境配置繁琐ꎬ因此本系统把依赖环境和人脸识别程序环境封装成Docker镜像.只需要在本地Docker创建容器ꎬ并导入镜像ꎬ就可运行人脸识别程序.5)消息通知模块使用异步多线程向RabbitMQ发送公告消息缓存数据ꎬ以降低MongoDB数据库写入压力ꎬ提高系统健壮性.拍照签到功能通过调用人脸413第3期李英玲ꎬ等:基于uni ̄app+SpringBoot的移动智能办公系统设计与实现㊀识别程序ꎬ实现签到功能ꎬ最终将签到信息存储到Mysql中.1 1㊀uni ̄app框架uni ̄app被广泛认为是较好的小程序开发框架㊁App跨平台框架和方便的H5开发框架.当业务需要在不同的平台展示时ꎬ针对不同的平台编写独有的运行代码的成本显然非常高ꎬ而uni ̄app则可以实现一次编码多端编译ꎬ可将代码发布到iOSꎬ以及各种小程序(微信/支付宝/头条/QQ)㊁快应用等多个不同的平台ꎬ从而降低开发成本.因此ꎬ为了提高代码的效率ꎬ本系统使用uni ̄app框架开发前端应用ꎬ该框架遵循Vue语法规范ꎬ主要用到了CSS㊁LESS和JavaScript语言.1 2㊀Shiro和JWT技术Shiro是Java领域非常知名的认证(Authentica ̄tion)与授权(Authorization)框架ꎬ用以替代JavaEE中的JAAS功能.相较于其他认证与授权框架ꎬShiro设计得非常简单ꎬ适用性好ꎬ任意JavaWeb项目都可以使用Shiro框架ꎬ而SpringSecurity只能适用于Spring项目.例如ꎬJFinal和Nutz非Spring框架都可使用Shiroꎬ而SpringSecurity框架不适用.因此ꎬ本系统采用Shiro技术实现核验用户身份与授予用户权限的功能.JWT(JsonWebToken)被广泛用来在身份提供者和服务提供者间传递被认证的用户身份信息ꎬ以便于从资源服务器获取资源ꎬ也可用于增加一些额外的其他业务逻辑所必须的声明信息ꎬ该Token也可直接被用于身份认证ꎬ也可被用于进行数据加密.JWT技术实现用户认证ꎬ如图2所示ꎬ后端系统根据用户OpenID㊁微信账号以及过期时间生成Token字符串令牌ꎬToken字符串令牌返回给小程序端ꎬ用户发送任何请求都要附带Tokenꎬ通过每次验证Token字符串令牌的有效性ꎬ决定是否执行请求的业务逻辑.传统的HttpSession依靠浏览器的Cookie存放SessionIdꎬ要求客户端必须是浏览器.当前的JavaWeb系统ꎬ客户端可以是浏览器㊁APP㊁小程序以及物联网设备.为了让这些设备都能访问到JavaWeb项目ꎬ引入JWT技术.JWT的Token是纯字符串ꎬ至于客户端如何保存ꎬ没有具体要求.只要客户端发起请求的时候附带上Token即可.本系统使用Shiro和JWT技术实现用户身份认证功能.图2㊀基于JWT的用户认证Fig 2㊀UserauthenticationbasedonJWT1 3㊀RabbitMQ消息队列产品有很多ꎬ常见的包括RocketMQ㊁RabbitMQ㊁ActiveMQ和Kafka.其中Kafka性能最好ꎬ消息收发的速度较快ꎻ但是消息收发的可靠性不如RabbitMQ.RabbitMQ既支持消息异步收发ꎬ又支持同步收发.虽然系统当前大部分的场景对应的是消息异步收发ꎬ但是也有同步收发的需求ꎬRabbitMQ能适应各种业务场景的优点就得以体现.另外ꎬRabbitMQ支持五种队列模式ꎬ可以应用于更多的业务场景.基于Rab ̄bitMQ上述的优点ꎬ本项目选择RabbitMQ实现消息队列.1 4㊀Docker本系统采用Docker技术搭建人脸识别程序运行环境ꎬ主要基于以下两方面的考虑:首先ꎬDocker容器之间是相互隔离的ꎬ在容器中部署程序的同时ꎬ不用担心跟其他容器产生冲突.例如某公司几年前开发的Java程序用的是JDK1 6ꎬ而当前需要部署的Java项目基于JDK1 8开发ꎬ无法在服务器上面同时安装JDK1 6和JDK1 8环境.Docker技术通过创建两个人容器进行部署能解决这个问题ꎬ在两个容器中分别安装JDK1 6和JDK1 8ꎬ分别部署新旧程序.Docker可实现在一个服务器上部署若干程序ꎬ并且不产生冲突.513西南民族大学学报(自然科学版)第48卷其次ꎬDocker能提供快速化部署.把需要部署的程序和运行环境打成Docker镜像ꎬ分发给其他人ꎬ接收后创建容器就可以直接运行程序了.1 5㊀RBAC权限管理RBAC的基本思想是ꎬ对系统操作的各种权限不是直接授予具体的用户ꎬ而是在用户集合与权限集合之间建立一个角色集合.每一种角色对应一组相应的权限.一旦用户被分配适当的角色后ꎬ该用户就拥有此角色的所有操作权限.这样做的好处是ꎬ不必在每次创建用户时都进行分配权限的操作ꎬ只要分配用户相应的角色即可ꎬ而且角色的权限变更比用户的权限变更要少很多ꎬ这样将简化用户权限管理ꎬ减少系统开销.2㊀系统设计与实现2 1㊀软件功能设计基于uni ̄app和SpringBoot移动智能办公系统的总体功能设计如图3所示:包括签到考勤模块㊁视频会议模块㊁消息通知模块和系统管理模块.签到考勤模块包括拍照签到㊁签到地疫情风险管理㊁考勤统计功能.在职员工身份认证及授权成功后ꎬ通过人脸识别子系统进行拍照签到ꎻ系统获取员工签到地的疫情风险信息ꎬ针对高风险地区进行相应处理ꎻ最后统计签到信息:包括用户信息㊁签到时间㊁疫情风险等级㊁周考勤.视频会议管理模块包括创建\编辑会议㊁选择参会者和查看会议功能.具有会议相应权限的用户和超级管理员可创建会议ꎬ并可在会议详情页面可填写会议时间㊁会议参与人以及会议内容等信息.查看会议ꎬ是用户可通过滑动㊁分页等方式查看个人创建或者参与的会议列表ꎬ以及会议详情.消息通知管理模块包括定时轮询接收消息㊁消息的自动发送和异步写入功能.在小程序主页面设有定时器ꎬ每5分钟轮询接收新消息ꎬ并在主页面上显示未读消息提醒ꎻ消息的自动发送指系统自动向员工发送消息通知ꎬ并将消息写到消息队列.异步写入消息是用异步线程从消息队列中ꎬ接收该用户的系统消息ꎬ然后把系统消息存储在数据库中.系统管理模块包括用户管理㊁权限管理和部门管理功能.权限管理是采用RBAC权限模型ꎬ把权限映射成角色ꎬ再把角色关联到用户的功能ꎬ并且前后端项目都要验证用户的权限ꎬ才能实现登录.编辑个人信息是用户可以通过编辑按钮实现对个人信息的修改㊁删除功能.图3㊀基于uni ̄app和SpringBoot移动智能办公系统总体功能Fig 3㊀Overallrequirementofsmartmobileofficesystem2 2㊀数据库设计本系统使用Mysql数据库ꎬ根据软件功能列表ꎬ设计如下的数据表:1)系统常量表(sys_config)ꎬ记录移动办公系统的常量配置信息ꎬ包括主键㊁参数名㊁参数值㊁状态㊁备注等.2)用户表(tb_user)ꎬ记录用户信息ꎬ包括主键id㊁授权字符串㊁昵称㊁头像网址㊁姓名㊁性别㊁手机号码㊁邮箱㊁入职日期㊁角色㊁是否是超级管理员㊁部门编号㊁状态(1在职0离职)等.3)角色表(tb_role)ꎬ记录系统角色信息ꎬ包括主键id㊁角色名称㊁权限集合.4)权限表(tb_permission)ꎬ记录每个权限所能够访问的模块ꎬ包括权限名称㊁模块ID㊁行为ID.5)特殊工作日表(tb_workday)ꎬ记录特殊工作日信息ꎬ包括id和特殊工作日日期.6)特殊节假日表(tb_holidays)ꎬ记录特殊节假日信息ꎬ包括id和节假日日期.7)用户人脸模型表(tb_face_model)ꎬ记录用户人脸模型数据信613第3期李英玲ꎬ等:基于uni ̄app+SpringBoot的移动智能办公系统设计与实现㊀息ꎬ包括人脸模型id㊁用户id和用户人脸模型数据.8)部门表(tb_dept)ꎬ记录部门信息ꎬ包括部门id和部门名称.9)城市表(tb_city)ꎬ记录城市名称及对应的简称信息ꎬ包括id㊁城市名称和城市简称.10)用户签到表(tb_checkin)ꎬ用于存储用户签到的信息ꎬ主键㊁用户ID㊁签到地址㊁国家㊁省份㊁城市㊁区划㊁考勤结果㊁风险等级㊁签到日期㊁签到时间.11)会议表(tb_meeting)ꎬ记录会议信息ꎬ包括会议id㊁会议题目㊁创建人id㊁日期㊁开会地点㊁开始时间㊁结束时间㊁会议类型㊁参与者㊁会议内容和状态等.12)消息表ꎬ记录系统发出的或者其他用户发出的通知信息的主体ꎬ包括主键㊁UUID值(设置唯一索引ꎬ防止消息被重复发送)㊁发送者ID㊁发送者的头像URL㊁发送者名称㊁消息正文㊁发送时间.13)消息标记表(message_ref)ꎬ记录有关消息接收者的信息ꎬ包括主键㊁消息ID㊁接收者ID㊁是否已读㊁是否为新接收的消息.2 3㊀系统详细设计与实现2 3 1㊀签到考勤签到考勤模块的流程图如图4所示.图4㊀签到考勤流程图Fig 4㊀Flowchartofcheck ̄inattendance用户授权成功后进入在线考勤页面ꎬ访问服务器动态获取当天是否需要签到(非工作日或者调班日无需签到)ꎻ在工作日ꎬ用户点击拍照按钮进行拍照ꎬ同时后端检测是否存在该用户的人脸模型数据ꎬ如果没有ꎬ则弹出提示框ꎬ询问用户是否要录入人脸模型数据ꎻ如果数据库中存在人脸模型数据ꎬ则通过人脸识别子系统比对当前拍照的图像与系统人脸模型ꎬ比对成功就签到成功ꎬ否则签到失败.签到成功后ꎬ根据用户签到的地理位置ꎬ并通过本地宝获取该地区新冠疫情风险等级ꎬ如果员工在疫情高风险地区签到ꎬ系统立即向公司人事部门发送告警邮件.最后ꎬ后端系统对用户签到考勤信息进行统计ꎬ通过图表的方式展示当日签到信息和本周签到信息ꎬ并使用灰色图标表示节假日及用户入职前的考勤情况.实现签到考勤模块功能伪代码如下:功能:签到考勤功能输入:用户签到照片path和所在地信息集合param输出:无BEGIN验证认证与授权doGetAuthenticationInfo获取上班时间d2ꎬ考勤结束时间d3If签到时间d1<=上班时间d2Then㊀㊀正常考勤Elseif签到时间d1>上班时间d2&&签到时间d1<㊀㊀㊀㊀㊀㊀考勤结束时间d3Then㊀㊀迟到EndIf获取数据库中存储的该用户人脸模型数据faceModelIffaceModel==nullThen㊀㊀抛出异常:不存在人脸模型Else㊀㊀向人脸识别子系统发送请求㊀㊀㊀㊀㊀㊀HttpUtil createPost(checkinUrl)ꎻ㊀㊀请求体携带用户签到照片FileUtil file(path)与人㊀㊀㊀㊀㊀㊀脸模型数据faceModel㊀㊀If无法识别出人脸或照片中存在多张人脸Then㊀㊀㊀㊀抛出异常㊀㊀Elseif"False" equals(body)㊀㊀㊀㊀抛出异常㊀㊀Elseif"True" equals(body)㊀㊀㊀㊀获取用户签到地新冠疫情等级㊀㊀㊀㊀保存签到记录㊀㊀EndIfEndIfEND㊀㊀拍照签到:通过doGetAuthenticationInfo方法对用户认证授权成功后ꎬ如果是第一次签到ꎬcheckin方法检测数据库中没有该员工人脸模型ꎬ给出异常提示ꎬ根据当前签到照片创建人脸模型数据ꎻ否则ꎬ向人脸识别程序发送http请求ꎬ验证当前签到照片与系统人脸模型是否一致ꎬ验证成功ꎬ则签到成功ꎬ同时获取签713西南民族大学学报(自然科学版)第48卷到地疫情风险信息ꎻ否则签到失败.签到地疫情风险管理:通过GPS定位员工打卡位置ꎬ使用腾讯位置服务获取坐标转换成真实地址ꎬ然后采用本地宝查询所在地区风险等级ꎬ根据所在地区信息拼接成对应的本地宝访问地址urlꎬ然后解析本地宝HTML页面的标签ꎬ提取其风险疫情等级信息.如果员工的疫情风险等级是:高风险ꎬ后端就发送高风险疫情警告邮件给管理员.为了同时处理风险等级判断和告警邮件发送ꎬ提高系统的执行效率ꎬ故将发送告警邮件的功能提取出来ꎬ用异步多线程执行的.具体来讲ꎬ在主类上添加@EnableAsync以开启异步多线程ꎻ创建ThreadPoolCon ̄fig类ꎬ声明Java线程池ꎻ创建EmailTask类ꎬ定义线程任务ꎻ查询员工的姓名和部门名称ꎬ在 xml文件中声明查询语句ꎻ接口中定义抽象方法ꎬ定义值注入变量ꎬ用来接收用户签到地高风险告警邮件.2 3 2㊀视频会议创建/编辑会议功能包含创建会议和编辑会议两部分.通过点击创建会议㊁编辑会议按钮会进入到会议详情页面ꎬ该页面包括输入会议标题㊁编辑会议时间㊁地点和内容以及选择会议的参会者三部分.其中ꎬ当选择会议类型为:线下会议时ꎬ地点是必填项.用户填完信息后可以点击保存.选择会议参会者功能实现了用户在填写会议详情的时候ꎬ点击添加按钮ꎬ跳转到部门员工列表ꎬ在其中选择需要添加的员工.当用户点击添加参会者按钮时ꎬ需要验证当前用户是否具有查看部门员工的权限ꎬ如果有权限就会展示所有部门的员工.页面初始化时ꎬ会获取当前会议已选的参会者.查看会议功能主要是实现分页加载会议列表meeting_list.页面初始化时ꎬ小程序端向后端请求当前用户的会议列表ꎻ后端获取数据后ꎬ通过分页的形式ꎬ展示了用户参与或创建的会议ꎬ并且按日期进行分组展示.2 3 3㊀消息通知该功能模块包括定时轮询接收消息ꎬ消息自动发送以及异步写入消息.1)定时轮询接收消息首页的定时轮询活动如图5所示ꎬindex页面设有定时器ꎬ每5分钟发送一次轮询ꎬ消息任务Mes ̄sageTask利用异步线程接收MQ中的消息ꎬ并保存到消息集合message_ref中ꎬ并将新收到的消息的标志位设置为falseꎻ服务端程序Service把消息队列中当前用户的未读消息返回到微信小程序ꎬ显示给用户.图5㊀视频会议流程图Fig 5㊀Flowchartofvideoconferences2)消息的自动发送与用户相关的业务发生变化或者用户资料被修改后ꎬ系统会自动向员工发送消息通知ꎻ后端接收到消息后ꎬ调用messageTask类发送系统消息到MQ消息队列中ꎬ并不直接写入到MongoDBꎻ然后在首页轮询的时候提示用户有新的系统消息.3)异步写入异步写入是在用户登录时ꎬ消息任务类Mes ̄sageTask的异步线程ꎬ从消息队列MQ中接收该用户的系统消息ꎻ然后将系统消息存储到数据库ꎬ并从消息队列MQ中删除ꎬ从而实现了错峰写入.消息列表详情页面中ꎬ根据发送邮件者的不同ꎬ可以动态设置消息列表页面的名称ꎬ也可根据当前的消息类型ꎬ展示不同的消息列表.未读的消息底色为红色ꎬ用户单击未读消息ꎬ当用户点击后ꎬ后端通过消息ID将message_ref集合中的未读标志重置为已读.2 3 4㊀系统管理该功能模块包括用户管理㊁权限管理和部门管理.1)用户管理用户管理包括激活码注册㊁我的考勤㊁个人资料管理等功能.当管理员创建新员工后ꎬ系统会自动向新员工发送包含激活码的邮件.新员工在线办公系统的注册页面填写激活码后ꎬ系统将微信平台获取到用户的信息ꎬ更新到数据库ꎬ实现用户微信账号和系统账号进行绑定.在后续的登录时ꎬ只需点击登录按钮即可实现自动登录.813第3期李英玲ꎬ等:基于uni ̄app+SpringBoot的移动智能办公系统设计与实现㊀我的考勤功能ꎬ可在日历控件选择查询的年份和月份ꎬ得到个人的月考勤情况ꎻ个人资料功能ꎬ实现对个人信息的录入和修改.2)权限管理用户登录系统时ꎬShiro框架会对用户进行认证与授权ꎬ成功获取认证与授权对象后ꎬ跳转至首页ꎬ微信小程序端从本地读取用户的权限信息ꎬ进行权限控制管理.认证与授权:本系统通过使用RBAC权限管理结合Shiro(Java安全框架)技术ꎬ根据用户的状态(例如在职㊁离职)和令牌的有效性实现对用户的认证ꎬ确保平台权限访问的安全和正常运行.其认证与授权过程如图6所示:图6㊀基于Shiro认证与授权流程图Fig 6㊀Flowchartofcertificationandauthorization当微信小程序端发送ajax请求传递参数ꎬ后端Shiro的过滤器XssFilter拦截所有的请求ꎬ将传递的数据信息转义后存储到数据库中.转义后的请求会再次被OAuth2Filter类拦截ꎬ认证用户提交的令牌没有问题ꎬ就可以当作已经成功登录ꎬ因此需要OAuth2Realm类颁发认证对象ꎬ然后通过HTTP请求往下传递.接着让OAuth2Realm类中的授权方法返回一个授权对象ꎬ根据用户的userId将用户的权限列表查询出来ꎬ封装在授权对象中ꎬ传递给Web方法ꎬ最终返回给微信小程序端进行存储.权限控制:采用RBAC权限控制技术ꎬ实现了对用户权限的管理.采用模块和行为相结合的方式得到权限控制消息ꎬ并记录到权限表tb_permission中ꎬ同时采用JSON数据格式存储各角色的权限.本系统的微信小程序端和后端都需要权限验证ꎬ后端的权限验证通过Shiro框架实现ꎬ微信小程序端通过自定义封装函数来实现权限验证.用户的权限信息存储在权限表中ꎬ当用户登录时ꎬ从后端程序查询并得到当前用户的权限列表ꎬ并保存到本地Storage.然后每个页面在加载时ꎬ先判断用户的权限ꎬ再根据权限控制页面加载的内容.例如:用户登录成功后ꎬ点击 会议 ꎬ进入会议列表页面.具有创建会议权限的用户可以看到 创建会议 按钮ꎻ没有该权限的用户无法查看到 创建会议 按钮.3)部门管理部门管理是给拥有管理员权限和部门查看㊁修改权限的用户呈现部门信息㊁增删改功能.在新增和修改时ꎬ需要验证用户输入的部门名称ꎬ是否符合要求并且是否为已存在的部门ꎻ在删除部门时ꎬ给出删除的确认提示 是否删除某某部门? ꎬ以免误操作.基于上述对移动智能办公系统的设计ꎬ本系统前端采用微信小程序ꎬ后端使用SpringBoot技术开发接口ꎬ实现签到考勤管理㊁视频会议管理㊁消息通知管理㊁系统管理四个模块功能.开发过程使用的库和编程环境如下:①HBuilderXꎻ②微信开发者工具ꎻ③IntelliJIDEA2020 3 3ꎻ④NavicatPremium15ꎻ⑤OracleVMVirtualBoxꎻ⑥MobaXterm.3㊀系统测试㊀㊀本系统的测试通过真机运行ꎬ使用昵称为 王小美 的管理员账号登录ꎬ按照管理员的注册和登录㊁消息通知的接收和发送㊁拍照签到的验证㊁签到考勤统计的查看㊁视频会议的编辑㊁用户和部门的管理流程进行测试.1)登录注册首先管理员账号 王小美 在注册页面输入激活码:000000ꎬ若绑定过超级管理员则显示 无法注册成为超级管理员 ꎬ否则注册成功并跳转至首页.测试结果如图7所示.913西南民族大学学报(自然科学版)第48卷㊀图7㊀(a)管理员注册失败(b)管理员注册成功Fig 7㊀(a)Successfulregistrationofadministrators(b)Failedregistrationofadministrators2)消息通知当用户注册成功跳转至首页ꎬ通过下拉展示轮询接收到新信息ꎬ并且可在消息提醒中查看接收到的新系统消息.测试结果如图8所示.㊀图8㊀(a)定时轮询接收新消息(b)未读消息页面Fig 8㊀(a)Regularlyreceivingnewmessages(b)Thepagesofunreadmessages3)拍照签到用户点击 拍照 ꎬ获得摄像头权限后ꎬ进行人脸拍照.若用户是新员工第一次拍照签到ꎬ会提示用户 是否将当前照片作为人脸识别模型? ꎬ用户点击确定后ꎬ系统提示 人脸建模成功 ꎻ否则直接进行签到.测试结果如图9所示.4)签到考勤统计签到成功后ꎬ跳转至签到结果页面ꎬ显示用户今日的签到信息以及用户本周的考勤情况ꎮ系统检测到该用户签到地为高风险地区ꎬ给公司主管发送疫情告警邮件ꎮ测试结果如图10所示.㊀图9㊀(a)新用户首次拍照签到页面(b)签到成功Fig 9㊀(a)Firstcheck ̄inpages(b)Check ̄insuccessfully㊀图10㊀(a)签到地疫情风险告警邮件(b)签到记录Fig 10㊀(a)Warningemailsofepidemicrisk(b)Sign ̄inrecords5)视频会议用户点击 会议 ꎬ进入会议列表页面.具有创建会议权限的用户可以看到 创建会议 按钮.点击 创建会议 按钮ꎬ进入会议详情页面ꎬ填写会议的信息并选择会议参会者.测试结果如图11所示.6)用户管理管理员可以对员工进行管理ꎬ在我的页面点击 员工管理 ꎬ添加新员工的基本信息.保存成功后ꎬ发送系统注册码到新员工的邮箱.测试结果如图12所示.㊀㊀7)部门管理管理员点击 部门管理 ꎬ显示所有的部门信息ꎬ可进行新增㊁修改和删除操作.选中 市场部 ꎬ点击 修改 按钮ꎬ将 市场部 修改为 外联部 ꎬ测试结果如图13所示.023。
基于JAVA的会议管理系统组员:日期: 2013.12.251绪论●开发背景当今社会竞争日益激烈,公司单位内部会议也不断增多,会议信息量也逐渐增大。
公司内部需要经常通过会议沟通,问题解决以及决策的制定。
而现在公司的会议管理工作繁重且处于无系统流程状态。
手工作业效率很低,不便于管理,而且容易出错。
因此,提高会议效率,发挥会议功能,避免人力物力财力浪费,降低经营成本、达到人力资源效率化,是领导者们推动企业效率的重要课题,他们急切需要有效的“会议管理”。
本会议管理系统应运而生,公司会议室的合理分配,不仅有利于公司资源最大程度的利用,而且有利于提高会议质量。
解决了因资源竞争而产生的一系列问题,避免不同部门间冲突。
加强各部门合作,是企业得以长久生存的保证。
会议管理系统主要有用户管理,会议室管理,会议室查询,会议信息的发布和安排,会议管理,会议查询六大模块。
整个系统各操作界面清新、大方,操作方便,信息化处理是当今社会不可避免的趋势,单一的手工记录操作已不能满足规模日益增大的企业。
此时,该系统将是你最优的选择.●开发目的1.系统地研究会议管理系统的需求分析、总体设计和数据库设计过程。
2.系统地进行程序设计,重点研究应用JAVA和MySql数据库技术进行基于B/S系统的发。
●系统范围系统包括的范围:用户管理,会议查询,会议管理,会议显示,会议室查询,会议室管理。
2 可行性分析1.可行性研究的目的:是用最小的代价在尽可能的时间内确定问题是否能够解决。
由于本系统管理的对象单一,每个数据变化性频繁,计算并不难。
因此,容易采用数据库管理。
2.在运行上可行:本系统为局域网的C/S小型的系统,所耗费的资源非常的小,运行速度快,整体反应,更新等性能好。
在基于JAVA为基础的开发前台的基础上我选择了MySql数据库。
通过JDBC控件来实现JAVA和数据库之间的连接和编辑功能。
3.开发平台及运行环境:工具环境分析(1)体系架构:应用系统功能处理系统数据库(2)模式:C/S(3)总体构成:功能处理系统,数据库,功能处理系统分为前台,后台。
硬件平台(1)CPU:Inter Core(TM)*****************(2)内存:2.00GB(3)硬盘:160G软件平台(1)操作系统:Microsoft Windows XP Professional(2)数据库:MySql(3)开发工具:MyEclipse(4)开发语言: JAVA3 需求分析●系统设计目标分析针对现时拥有大量人力资源的公司,却常为会议室分配紧张而烦恼问题,本系统应运而生。
企业会议室的合理分配,不仅有利于公司资源最大程度的利用,而且有利于提高会议质量。
解决因公司资源竞争而产生的一系列问题,避免不同部门间冲突。
加强各部门合作,是企业得以长久生存的保证。
信息化处理是当今社会不可避免的趋势,单一的手工记录操作已不能满足规模日益增大的企业。
此时,该系统将是你最优的选择。
系统坚持标准化和可行性;保证系统的安全和稳定可靠;操作简便、。
系统从总体到部分,层次分明,会议管理,系统管理是主体,下属中各部门间互相协作则细化了管理规则,而添加,查询,删除,更新是所有用户惯于使用的基本功能。
●系统用例分析通过现实数据的研究,我们了解到会议系统存在着如下的信息交互,我们以用例图(活动图)来分析系统业务流程,而添加,查询,删除,更新是所有用户惯于使用的基本功能。
4 数据库设计数据库设计是指设计数据库的各个表以及它们之间的关系并建立数据库。
数据库设计的目标是为用户和各种应用系统提供一个信息基础设施和高效的运行环境。
在本章中,将会根据数据库的需求分析画出系统E-R图,根据E-R图得出关系模型,此时,表的结构已经非常清楚了,可以设计出所有表以及建立脚本,最后介绍数据库的连接访问。
●数据库需求分析根据本系统的需求,设计对应的数据表及功能如下:1.会议表:存放会议实例的基本信息2.会议室表:存放会议室的情况3.人员表:存放参加会议的人员表4.会议人员关系表:存放会议和人员的关系5.管理员表:存放会议系统的管理员6.用户表:存放普通用户的表7.注册码表:存放系统注册码8.人员组表:存放人员组根据以上分析,确定本系统的实体有:1.会议实体2.会议室实体3.会议人员实体4.管理员实体5.普通用户实体6.注册码实体7.人员组实例8.会议人员关系表:用于存储会议和人员的关系,会议和人员的关系为多对多.●系统E-R图概念模型是按用户的观点来对数据和信息建模,主要用于数据库设计,不涉及信息在计算机系统中的表示,只是用来描述特定组织所关心的信息结构。
这类模型强调其语义表达能力,概念应该简单、清晰,易于用户理解,是数据库设计人员和用户之间进行交流的工具。
最为著名和使用最为广泛的是E-R图法[8]。
●物理结构设计meeting (用户类)attendee (参会人员)user(普通用户信息)groupAttendee (人员组)administrator (管理员)MA (会议人员关系表)5 系统详细设计|●功能描述会议管理系统主要包含六个模块:会议室管理、会议管理、用户管理,会议查询,会议信息显示模块,会议查询模块。
会议室管理:主要实现会议室的增、删、该、查;会议室管理是该系统的基础。
会议管理:是该系统的核心和桥梁,它实现会议的增、删、改等功能。
用户管理:主要实现对使用该系统的人员的维护和查询。
人员管理:对参会人员进行管理。
人员组管理:对参会人员组进行管理。
●功能描述●部分功能模块的详细设计1.用户管理模块负责系统的登陆和用户的注册。
★相关的程序运行界面:可以看出系统中有两种不同类型的用户,即普通用户和管理员。
在该系统中普通用户为该系统的普通使用者,可以申请会议实例、添加会议人员和会议人员组。
管理员主要负责会议室的维护和普通用户的申请请求。
2.会议室管理该模块实现会议室的添加、删除和查询。
★相关的程序运行界面这里显示了需要预定会议室时需要遵循的准则。
添加会议室(在这里添加会议室)删除会议室、更改会议室状态(删除不需要的会议室也可以设置会议室的状态为不可用)会议室查询与预定(可以在这里实现按条件对会议室进行查新,如果有合适的会议室可以进行预定)★相关类MeetingRoom类该类主要负责与会议室相关的用例。
主要操作有分配会议室、修改会议室和删除会议室等。
字段:private int buildingCode; //会议室的楼号private int doorCode; //会议室的门号private String type; //会议室类型private int capacity; //容量private int status = 1; //状态主要方法:String assignMeetingInstance(MeetingInstance mi);//用于把该会议室分配给某个会议实例。
String setStatus() ; //该类负责设置会议室的状态String addMeetingRoom(); //把该会议室添加到数据库String deleteMeetingRoom();//删除该会议室3.人员管理模块该模块实现人员和人员组额添加和删除.★相关的程序运行界面在这里可以添加和删除会议人员.添加人员窗口,在这里输入要添加人员的基本信息。
在这里添加和实现人员组,并可以查看组的成员。
★相关的类Attendee类:主要字段:int id; //IDString name; //姓名int age; //年龄char sex; //性别String postAddress; //邮件地址String emailAddress; //电子邮件String title; //头衔String groupName; //组名String applicant; //主要方法:String addAttendee(); //添加人员String deleteAttendee(); //删除人员GroupAttendee类:主要字段:String groupName; //组名int memberNumber; //组内人员数String applicant; //boolean isExist(); //判断是否存在此组String addAttendee(Attendee a) //为该组添加组成员String deleteAttendee(Attendee a) //删除人员String newGroup(); //新增人员组String deleteGroup(); //删除人员组String rename(String name); //重新命名4.会议实例管理模块该模块主要完成会议实例的申请和撤销。
★相关窗口:这里是管理员用于查看已经定义的会议的窗口,管理员可以取消掉不符合规定的会议。
当用户根据自己的需求查找到合适的会议室后,选择【预定会议室】,系统会根据用户选定的会议类型生成一次会议实例,并保存到系统数据库中。
★相关类:Meeting类:该类标示了一个会议,主要有会议名称字段和会议类型,主要方法有添加会议召开实例和取消会议召开实例。
MeetingInstance类继承自该类,代表了一次会议的召开,即会议实例。
主要字段:String name; //会议名String type; //会议类型int size;主要方法:MeetingInstance addMeetingInstance(String d, String st, String et, int i,int an, String a) cancelMeetingInstance() //增加会议实例void cancelMeetingInstance(MeetingInstance mi)//取消会议实例MeetingInstance类:该类代表了一次会议召开实例,该类继承自Meeting类。
主要操作有向该会议召开实例添加人员、为该会议实例分配会议室、让该会议实例添加人员组等与会议召开有关的用例。
主要字段:int id; //ID标识String date; //会议持续时间String startTime; //会议开始时间String endTime; //会议结束时间int attendeeNumber = 0; //参会人数int roomID = 0; //为该会议室分配的会议室IDString applicant = null;主要方法:String addAttendee(Attendee a); //向该会议实例添加人员String attachMeetingRoom(); //为该会议分配会议室String addGroupAttendee(GroupAttendee ga) //向该会议添加人员组String deleteAttendee(Attendee a) //从该会议实例中删除参会人员String deleteGroupAttendee(GroupAttendee ga)//从该会议中删除参会组String cancel(); //取消该会议召开实例5.邮件发送模块该模块实现邮件的发送,比如通知相关人员会议的召开。