【办公自动化系统设计与实现7900字(论文)】_第1页
【办公自动化系统设计与实现7900字(论文)】_第2页
【办公自动化系统设计与实现7900字(论文)】_第3页
【办公自动化系统设计与实现7900字(论文)】_第4页
【办公自动化系统设计与实现7900字(论文)】_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I办公自动化系统设计与实现目录TOC\o"1-2"\h\u10584一、绪论 115328(一)研究背景及意义 130782(二)国内外发展情况 116180二、系统需求分析 211859(一)可行性分析 211368(二)需求分析 218815三、系统设计 332546(一)运行环境 332434(二)技术点总览 32314(三)系统功能模块图 320375(四)数据库设计 62333四、功能展示 1315162(一)登录模块 1313900(二)员工基本资料 1418565(三)薪资管理 188310(四)系统管理 1925090(五)个人中心 208631五、系统测试 2129759(一)项目测试的意义 2111167(二)系统测试的重要性 213274(三)主要功能测试 2222234六、总结 2326019参考文献 24一、绪论(一)研究背景及意义21世纪是知识经济时代,知识就是经济增长、社会发展以及企业成长最关键的资源,信息化建设的核心就是掌握和利用知识。在这种背景下,孕育着异常以工作流程为中心的第二代办公自动化提升到以知识管理为核心的第三代办公自动化系统。办公自动化,英文全称OfficeAutomation,简称OA,是办公信息处理自动化的意思。其目的是利用先进的技术,使得之前由人来办理的各种业务逐步由设备、高技术人员来协助完成,实现充分利用信息,提高工作效率和工作质量,最终达到提高生产率的目的。本系统是网络办公自动化办公系统,实现电子自动化办公。通过网络,公司员工可以实现跨时间、地点协同工作;降低行政成本,实现无纸化办公,规范公司办公流程,提高办公效率;在办公自动化系统的模式下,企业成为一个大办公室,企业的所有部门成为信息交流的单一环节,而不再是一个个信息孤岛,企业的组织结构能够得到简化,便于明确各部门甚至各员工的责任,而决策层能综合得到的信息,快速制作企业的战略决策;实现办公自动化可以解放大量的人力物力。(二)国内外发展情况1.国内发展进入二十一世纪以后,国内经济较二十世纪发展更为迅猛,引发市场竞争的日趋激烈,信息技术也进入一个土匪猛进的时代,每一个企业都必须紧跟时代的步伐,加强企业竞争力忙着一切导致企业对办公自动化的需求越来越大,但是企业办公自动化并不是什么“万金油”,其投资大、效果不明显、水平低、重复建设多、硬件投入多等缺点为办公自动化的快发发展产生一个障碍。我们国家的办公自动化较为老旧,办公自动化建设的本质是提高决策效率,但是我们国家的办公自动化还远远达不到这个要求,因此办公自动化应该实现数字化办公。2.国外发展由于计算机首先是在国外兴起,在国外的人用着快速网络时,国内可能大多数人都还不知道计算机是一个什么物种,我相信在自算计首先进入我国农村的时候,一定有人认为这是一个神奇的东西,但是在国外可能已经司空见惯了,所以总体上来说我们国家的计算机水平在与其他国家相比还是较为劣势。在国外二十世纪50代初,OA系统就已经在美国和日本兴起了,到八十年代时已经有很多著名的计算机软、硬件公司在使用。在国外九十年代,就有许多大公司投入大量的人力、物力,在人机交互相关方进行了深入细致的研究,并推出了许多现代化机械设备。OA系统同ERP、CRM等工具融合,成为国外OA产品的主要发展,其中以IBM为代表的国际大公司退出了一系列优势领域的解决方案。在技术上办公自动化系统的主要应用平台包括Domino/Lotus、.NET、J2EE等。二、系统需求分析(一)可行性分析本次需求分析主要分析三点:技术可行性、时间可行性、运行可行性。本文采用Vue来搭建前端,该技术在大学期间接触的并不多,但是在实习过程中已经能独立编写一个网站;后端采用的是springboot,综合分析,设计满足技术可行性。从论文定稿,到答辩时间,有长达四个月的时间,足够初学者掌握上述两门技术的实现,而对于用户并没有这一类的时间限制,因此设计满足时间可行性。现在大部分公司使用的前端技术都是vue,后端使用springboot的也不在少数。办公自动化系统满足许多公司的运行需求,满足运行可行性。通过对以上三点的需求分析,已具备操作可行性条件。(二)需求分析由于时代的飞速发展,生产力提高,市场对于办公自动化系统的需求日益增加。而为了办公自动化系统安全稳定的运行,就需要对每一个用户的工作范围以及级别经常恰当的权限管理。根据不同的用户权限将权限管理划分为系统管理员、公司管理层和普通用户。1.用户需求分析本系统需满足三种用户的需求,分别是系统管理员、公司管理层以及普通员工。系统管理员就是对系统进行维护与功能点的修改与增加。在这个技术飞速发展的时代,系统的功能并不能一成不变,需要及时进行更新以期跟上时代的脚步。公司管理层需要对员工的信息变更进行更改。员工的离职需要管理层同意以后在本系统上将其相关信息进行删除,包括员工的个人信息、员工的薪资信息;在管理层离职后还需要对其权限进行删除或者禁用,避免信息的流失。普通员工需要在管理层同意以后才能登入本系统,且登入以后权限并不高,避免信息的流失。2.其他需求分析性能需求是系统实用性的关键,该系统具备高可维护性,具备可读,可修改,可测试等等,满足大部分用户的需求。三、系统设计(一)运行环境Node.js(>=6.X,首选8.X)、Vue-cli、mybatis-plus、security(二)技术点总览1.前端技术点总览Vue:构件用户界面的框架,适用性较广,使用比较多。Vue-cli:脚手架降低使用webpack的难度。Vuex:管理该程序的状态。Vuerouter:vue提供的路由管理器。Axios:前后端分离项目中,向后台发起请求。ES6:JavaScript的下一版本的标准。s-file-download:vue提供的文件下载的方式。2.后端技术点总览Springboot:快速开发的框架。Mybatisplus:mybatis的增强版本,支持自定义SQL、存储过程和高级映射。Lombok:帮助我们编写getter和equals方法的工具。Swagger2:管理API的工具。Kaptcha:验证码测试。Redis:缓存数据。(三)系统功能模块图1.管理员登录模块图本系统针对当前使用办公自动化系统的群体,将其划分为三大登录用户,系统管理员,公司管理员,以及公司内部普通的员工。系统管理员拥有对系统进行日常维护与升级的操作,主要管理的就是对系统进行日常维护,避免有不法分子进入,窃取员工私人信息,在公司有功能点进行修改时能及时进行处理。公司管理员具有对公司员工及旗下部门得到管理,包括人员调动,以及薪资调整。普通用户需要在管理员的允许下才能进入本管理系统,避免公司信息流出,导致公司财产损失。如图3.1所示:图3.1管理员登录模块2.员工资料模块员工资料信息页面主要包含员工主要信息展示、员工的入职,员工的离职、员工信息的变更,员工信息的查看。员工的入职需要增加一个新的员工数据,员工离职需要删除之前存在的员工数据。此外,为能快速查找到员工的相关信息,设计一个快速搜索框也是必不可少的,能快速的对员工的数据进行更正。如图3.2所示:图3.2员工资料模块3.薪资管理模块部门工资账套管理需要对公司所有部门的支出做一个大概的统计,包括各部门人员之间的工资并不相同,轻松一些的部门的薪资可能就更少一点,而其他部门员工的基本工资就需要适当提高。且在公司内部有固定的支出需要明细,工资账套就是管理这些明细。如图3.3所示:图3.3薪资管理模块4.系统管理模块系统管理需要对公司部门变更的管理,此外就是公司管理层的管理,当然还有公司内部职称的管理。公司部门变更需要在公司部门发生变化时对公司部门进行及时更换。公司各部门设置总监、副总监等职位,这一类职位并不是固定的,需要对公司的管理层进行管理,在管理者身份更换时,进行维护。职称是评定一个员工能力的参考点之一,若与能力不符合需要及时进行更换。如图3.4所示:图3.4系统管理模块(四)数据库设计在数据库设计时由于考虑到需要的功能,因此借鉴于像类似的系统设计的数据库,设计时数据库设计较多。每一个表之间用用户ID进行关联,且用户ID和用户工号是自动增加的,不能再修改。1.管理员信息表表3.1管理员信息表t_admin序号字段名类型长度是否为空主键说明1idint4否是管理员id2namevarchar32是姓名3phonechar11是手机号码4telephonevarchar16是住宅电话5addressvarchar64是联系地址6enabletingyint1否是否启用7usernamevarchar255是用户名8passwordvarchar255是密码9userFacevarchar255是用户头像10remarkvarchar255是备注2.管理员权限表表3.2管理员权限表t_admin_role序号字段名类型长度是否为空主键说明1idint4否是id2adminIdint4是用户id3ridint4是权限id3.角色表表3.3角色表t_role序号字段名类型长度是否为空主键说明1idint4否是id2namevarchar64是名称3nameZhvarchar64是角色名称4.菜单表表3.4菜单表t_menu序号字段名类型长度是否为空主键说明1idint4否是id2urlvarchar64是url3pathvarchar64是path4componentvarchar64是组件5namevarchar64是菜单名6iconClsvarchar64是图标7keepAlivetinyint1是是否保持激活8requireAuthtinyint1是是否要求权限9parentIdint4是父id10enabletinyint1否是否启用5.菜单权限表表3.5菜单权限表t_menu_role序号字段名类型长度是否为空主键说明1idint4否是id2midint4是菜单id3ridint4是权限id6.操作日志表表3.6操作日志表t_oplog序号字段名类型长度是否为空主键说明1idint4否是id2addDatedate50是添加日期3operatevarchar255是操作内容4adminidint4是操作员id7.系统消息表表3.7系统消息表t_sys_msg序号字段名类型长度是否为空主键说明1idint4否是id2midint4是消息id3typeint4是0表示群发消息4adminidint4是这条消息是给谁的5stateint4是0未读1已读8.消息内容表表3.8操作日志表t_sys_msg_content序号字段名类型长度是否为空主键说明1idint4否是id2titlevarchar64是标题3messagevarchar255是内容4createDatetimestamp50否创建时间9.员工信息表表3.9员工信息表t_employee列名数据类型字段类型长度主键非空默认值备注idintintYY员工编号namevarchar(10)varchar10NN员工姓名genderchar(4)char4NN性别birthdaydatedateNN出生日期idCardchar(18)char18NN身份证号wedlockenum('已婚','未婚','离异')enum2NN婚姻状况nationIdintintNN民族nativePlacevarchar(20)varchar20NN籍贯politicIdintintNN政治面貌emailvarchar(64)varchar64NN邮箱phonevarchar(11)varchar11NN电话号码addressvarchar(64)varchar64NN联系地址departmentIdintintNN所属部门jobLevelIdintintNN职称IDposIdintintNN职位IDengageFormvarchar(8)varchar8NN聘用形式tiptopDegreeenum('博士','硕士','本科','大专','高中','初中','小学','其他')enum2NN最高学历specialtyvarchar(32)varchar32NN所属专业schoolvarchar(32)varchar32NN毕业院校beginDatedatedateNN入职日期workStateenum('在职','离职')enum2NN在职在职状态workIDchar(8)char8NN工号contractTermdoubledoubleNN合同期限conversionTimedatedateNN转正日期notWorkDatedatedateNN离职日期beginContractdatedateNN合同起始日期endContractdatedateNN合同终止日期workAgeintintNN工龄salaryIdintintNN工资账套ID10.员工账套表表3.10员工账套表t_salary列名数据类型字段类型长度主键非空默认值备注idintintYYidbasicSalaryintintNN基本工资bonusintintNN奖金lunchSalaryintintNN午餐补助trafficSalaryintintNN交通补助allSalaryintintNN应发工资pensionBaseintintNN养老金基数pensionPerfloatfloatNN养老金比率createDatetimestamptimestampNN启用时间medicalBaseintintNN医疗基数medicalPerfloatfloatNN医疗保险比率accumulationFundBaseintintNN公积金基数accumulationFundPerfloatfloatNN公积金比率namevarchar(32)varchar32NN名称11.员工调薪表表3.11员工调薪表t_salary_adjust列名数据类型字段类型长度主键非空默认值备注idintintYYideidintintNN员工IDasDatedatedateNN调薪日期beforeSalaryintintNN调前薪资afterSalaryintintNN调后薪资reasonvarchar(255)varchar255NN调薪原因remarkvarchar(255))varchar255NN备注12.员工民族表表3.12员工民族表t_nation列名数据类型字段类型长度主键非空默认值备注idintintYYidnamevarchar(32)varchar32NN民族13.员工职位表表3.13员工职位表t_position列名数据类型字段类型长度主键非空默认值备注idintintYYidnamevarchar(32)varchar32NN职位createDatetimestamptimestampNNCURRENT_TIMESTAMP创建时间enabledtinyint(1)tinyintNN1是否启用14.员工职称表表3.14员工职称表t_joblevel列名数据类型字段类型长度主键非空默认值备注idintintYYidnamevarchar(32)varchar32NN职称名称titleLevelenum('正高级','副高级','中级','初级','员级')enum3NN职称等级createDatetimestamptimestampNNCURRENT_TIMESTAMP创建时间enabledtinyint(1)tinyintNN1是否启用15.部门名称表表3.15部门名称表t_department列名数据类型字段类型长度主键非空默认值备注idintintYYidnamevarchar(32)varchar32NN部门名称parentIdintintNN父iddepPathvarchar(255)varchar255NN路径enabledtinyint(1)tinyintNN1是否启用isParenttinyint(1)tinyintNN0是否上级16.政治面貌表表3.16政治面貌表t_politics_status列名数据类型字段类型长度主键非空默认值备注idintintYYidnamevarchar(32)varchar32NN政治面貌17.员工调动表表3.17员工调动表t_employee_remove列名数据类型字段类型长度主键非空默认值备注idintintYYideidintintNN员工idafterDepIdintintNN调动后部门afterJobIdintintNN调动后职位removeDatedatedateNN调动日期reasonvarchar(255)varchar255NN调动原因remarkvarchar(255)varchar255NN备注四、功能展示(一)登录模块1.普通员工普通员工在首次进入时需要管理员的权限才能进入,否则的话会显示尚未登录,请先登录,以此来保证公司员工信息。2.公司管理者公司管理者在进入员工信息页面时需要管理员进行账号的开启,否则不能进入。3.管理员管理员使用账户登录进入页面时,如图4.1首先的是加载页面,其次显示一个弹窗,登录成功。登录进入后会显示一个欢迎页面,如图4.2所示:图4.1管理员输入正确的用户名和密码,验证码图4.2用户进入欢迎页面(二)员工基本资料1.员工基本资料员工资料包括姓名、工号、性别、身份证、所在部门等的显示,其中数据较多,因此采用分页显示,共100条数据,每十条数据做一页,分为十页,在数据显示下面有页码调节,可以快速进入相应的页面进行查找。如图4.3所示:图4.3员工资料查看2.搜索员工本次包括100条数据,在对数据进行更新维护时,查找相应员工较为困难,因此设计一个搜索框,以实现数据的快速维护。如图4.4所示:图4.4通过员工姓名查找3.模糊查找员工信息在实际应用中,某些时候需要模糊查询,即需要查找的数据过多或者需要查找的员工的姓名不清楚,就可以进行通过某些特定的条件查找。这样可以帮助我们快速查找员工,对数据进行维护。如图4.5所示:图4.5模糊查询员工信息4.导出数据存储在网络上的数据可能会丢失,或者被不法分子窃取,现在就可以将其下载下来存储成本地文件,此外导入到本地文件上的数据能提供一些网络上显示不了的内容,比如导入本地的数据可以进行薪资字段的加入与管理。如图4.6所示:图4.6导出数据5.导入数据在公司有大批员工入职或者离职时,修改的数据可能较多,在管理系统中进行维护就比较麻烦,此时就可以将数据导出,修改以后再将其导入,进行快速维护,图4.7、图4.8所示:图4.7导入数据6.修改员工信息在员工信息录入系统时录入出错,或者员工信息出现变化时需要进行及时修改。如图4.8表示:图4.8修改员工信息7.添加员工员工入职时,入职员工较少,则可以使用该方法,能快速办理员工的入职手续。如图4.9图4.9添加员工8.删除员工数据公司员工离职不多可以采用此方法进行。图4.10所示:图4.10员工信息删除(三)薪资管理1.员工工资账套管理各部门员工之间工资是不同的,需要设计一个统一的表进行对每个部门员工工资的管理,且还需要设计每个部门之间的补贴资金。图4.11所示:图4.11员工工资账套管理2.员工账套管理除进行部门工资管理之外还需要进行员工工资的管理,需要管理员工每一个月的薪资进提成。图4.12所示:图4.12员工账套管理(四)系统管理1.部门管理与添加公司部门出现变更时,需要及时进行修改,例如开辟一个新的市场使,需要增加一个部门,如图4.13所示.而公司撤销某个部门时,需要删除某个部门,图4.14所示:图4.13部门增加图4.14部门撤销2.操作员管理对操作员进行管理。操作员就是本公司的高级管理员,例如某一地区总负责人,这些人员需要更高权限的管理者才能对其进行管理。图4.15操作员显示图4.15操作员管理(五)个人中心显示已登录用户的个人信信息,包括电话号码,手机号码,居住地址以及用户标签,此外修改密码,及修改已登录用户的信息均在此页面。可以对已登录用户进行修改.图4.16.图4.16已登录用户的个人信息五、系统测试(一)项目测试的意义一个完整的项目需要进过需求分析、设计和编程三个阶段,并在设计和编程的时候尽可能提高软件的质量、尽可能避免产生错误。但是,在实际操作中避免不了出现各种各样的错误,可能代码是没有错误,但是在相应功能上显示就可能出现错误,只有经过严格的测试以后才能投入使用,测试的内容就包括功能测试,性能测试,可用性测试等,且在测试完成以后需提交测试报告,用于发现和解决问题,且对系统的维护和升级提供便利。(二)系统测试的重要性1.明确需要测试的功能首先进行业务功能测试,需要统计在正常和异常情况下会出现的效果;之后进行边界分析测试,需要分析业务边界规则、输入输出参数边界;下一步就是对参数组合的测试;一个好的程序,不仅仅是能正常运行,还需要在出现操作失误时能及时处理好出现的失误,因此就需要进行异常测试,也就是需要出现一些简单、常见的错误,例如重复提交、并发、事务、分布式、环境异常、大数量等,出现这一类错误时需要得到自己需要的结果,不然就是系统出现问题;性能往往决定了一个系统的优劣,进行性能测试就显得尤为重要,性能测试包括响应时间、吞吐量、并发数、服务器资源使用率,要以上数值均符合要求才算完成一个合格的系统;最终我们的系统是需要放在网络上,而网络是一个“大染缸”,在其中遍布各种各样的病毒,而不能有效的预防这些病毒会给我们以后的生活带来麻烦,因此在发布前需要做的就是安全测试,敏感信息在编程实现时需要进行加密,而在实际生活中我们可能会忘记加密,在发布前需要对其进行最后判断是否加密,这里的敏感信息就包括前后端数据传输以及日志信息需要加密。2.单元测试所谓单元测试就是在编写代码实现该功能时就对其各部分功能具体功能实现,在编写代码时没有出现问题并不代表在连接模块时不会出错,因此在组合前需要将各部分功能实现才能将其投入使用。3.组合测试将各部分功能组织起来避免出错,在使用时,才不会出现错误。4.整体测试答辩前需要将每一部分的功能实现整合起来形成一个完整、完好的系统,其中包括硬件运行是否正常、软件能否正常运行,其次还需要对程序中编写的出现各种问题的效果进行测试,而不仅仅是为了实现程序的功能,还需要验证出现问题时的解决办法。(三)主要功能测试表5.1关键功能测试测试用例ID场景预期结果测试结果1登录用户能正常登录进行系统通过2员工资料员工资料正常查看且增删改查无异常通过3员工资料从本地文件导入数据,将数据导入到本地通过4员工账套各部门薪资展示,员工薪资展示通过5系统管理公司部门、公司职位、公司人员职称实现增、删、改、查、通过6系统管理管理员禁用与开启的实现通过7个人信息实现个人信息的修改通过六、总结本系统是基于springboot和vue编写实现的网上办公系统。主要包括登录、职位管理、职称管理、部门管理、操作员管理、员工管理、工资账套管理、员工账套管理、个人中心九个功能模块,前端使用技术有:使用vue搭建前端页面,由elementUI组件搭建,vuex实现状态管理,vuerouter实现页面跳转,使用node.js处理前后端跨域问题,文件下载使用js-file-download实现;后端主要使用技术:搭建框架使用的是springboot、SpringMVC和mybatisplus,lombok简化get、set请求,在后端测试时使用swagger2搭建接口文档,方便测

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论