首页 OA办公自动化系统详细设计说明书

OA办公自动化系统详细设计说明书

举报
开通vip

OA办公自动化系统详细设计说明书OA办公自动化系统详细设计说明书1引言1.1编写目的OA办公自动化系统详细设计是设计的第三个阶段,这个阶段的主要任务是在OA办公自动化系统概要设计书基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。详细设计则要解决如何实现各个模块的部功能,即模块设计。具体的说,模块设计就是要为已经产生的OA办公自动化各子系统设计详细的算法。但这并不等同于系统实...

OA办公自动化系统详细设计说明书
OA办公自动化系统详细设计说明书1引言1.1编写目的OA办公自动化系统详细设计是设计的第三个阶段,这个阶段的主要任务是在OA办公自动化系统概要设计书基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。详细设计则要解决如何实现各个模块的部功能,即模块设计。具体的说,模块设计就是要为已经产生的OA办公自动化各子系统设计详细的算法。但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为用某种程序设计语言书写的程序。1.2背景为了能跟上现代社会社会生活中高效率的工作节奏,根据企业需求编写了OA办公自动化系统,以达到提高企业工作效率的目的。1.3定义SQLServer2005:数据库管理软件VsualStudio2005:开发工具OA是OFFICEAUTOMATION的缩写,本意为利用技术的手段提高办公的效率,进而实现办公的自动化处理。采用Internet/Intranet技术,基于工作流的概念,使企业部人员方便快捷地共享信息,高效地协同工作;改变过去复杂、低效的手工办公方式,实现迅速、全方位的信息采集、信息处理,为企业的管理和决策提供科学的依据。一个企业实现办公自动化的程度也是衡量其实现现代化管理的标准。OA从最初的以大规模采用复印机等办公设备为标志的初级阶段,发展到今天的以运用网络和计算机为标志的现阶段,对企业办公方式的改变和效率的提高起到了积极的促进作用。.专业.专注.1.4参考资料2程序系统的结构电子邮件代办事宜日程安排个人办公系统个人空间个人设置修改口令在线用户系统消息在线帮助O领导个人信息维护A办信息分类领导办公系统公领导主页信息维护自登录动领导主页浏览化管会议管理理督查督办系统行政办公系统值班管理接待管理信访管理专线办管理政务资源管理.专业.专注.文件中心机关名录大事记政务资源管理 规章制度 食品安全规章制度下载关于安全生产规章制度关于行政管理规章制度保证食品安全的规章制度范本关于公司规章制度 电子论坛信息报送电子刊物电子公告图1程序系统结构3程序1登录功能设计说明3.1程序描述改程序时OA办公自动化的入口,体现了程序的安全性(1)功能类型:查询数据(2)功能描述:提高系统的安全性(3)前提业务:无(4)后继业务:04(日程管理)(5)功能约束:权限约束(6)操作权限:系统管理员,登录用户。3.2功能(1)录入项检测使用javascript和后台代码实现(各项必须非空)(2)在Login.aspx.cs中只提交用户名和密码;数据处理:1.登录验证,2.记录登录用户信息.专业.专注.3.3性能确保系统能正确运行和进行高效访问。3.4输入项表1输入项字段名称长度录入方式是否非空项数据检验默认显示管理员ID小于12文本框YN管理员密码小于12PasswordYN3.5输出项页面能正确的跳转到日程管理模块下的个人便签页面下。3.6算法1.登录验证UserInfouser;LoginLoglog=newLoginLog();log.UserId=txtUserId.Value;log.LoginTime=DateTime.Now;log.LoginUserIp=Request.UserHostAddress.ToString();if(this.txtUserId.Value.Trim().Length==0){this.Page.ClientScript.RegisterStartupScript(this.GetType(),"","");txtUserId.Focus();return;}if(this.txtPassword.Value.Trim().Length==0){this.Page.ClientScript.RegisterStartupScript(this.GetType(),"","");txtPassword.Focus();return;}stringlogin=this.txtUserId.Value.ToString();boolyes=UserInfoManager.IsUserIdExist(login);.专业.专注.if(yes){log.LoginDesc="用户登录失败,用户名或密码不正确。";log.IfSuccess=0;LoginLogManager.AddLoginLog(log);this.Page.ClientScript.RegisterStartupScript(this.GetType(),"","");}else{this.Page.ClientScript.RegisterStartupScript(this.GetType(),"","");this.txtUserId.Value="";this.txtUserId.Focus();}2.记录登录用户信息UserInfouser;LoginLoglog=newLoginLog();//获取用户登录名log.UserId=txtUserId.Value;//获取登录时间log.LoginTime=DateTime.Now;log.LoginUserIp=Request.UserHostAddress.ToString();log.LoginDesc="用户登录成功";log.IfSuccess=1;//数据验证成功着将数据传入查询方法进行数据操作LoginLogManager.AddLoginLog(log);//获取当前登录用户Session["CurrentUser"]=user;//判断用户角色进行页面转换if(user.RoleInfo.RoleId==1){Response.Redirect("~/ManualSign/ManualSign.aspx");}else{Response.Redirect("~/ScheduleManage/PersonNote/PersonNote.aspx");}.专业.专注.3.7流程逻辑失败录入项校验成功登录数据处提交填写内登录登录成功失败成功主界面图2流程逻辑3.8接口本模块式系统的启动模块,他需要用户交互输入用户ID、密码;它调用系统的主控制模块。3.9存储分配表2用户信息数据表序号字段名类型长精度小数默认允许主键说明度位数值空1(UserId)管理员IDvarchar50√2(password)管理员varchar50密码4UserName(登录用varchar50户)4DepartId(部门ID)int105Gender(性别)int106RoleId(角色ID)int107UserStateId(状态int10ID).专业.专注.3.10注释设计模块首部的注释:用户验证程序。对调用函数的注释:调用加密函数MD5.3.11限制条件当系统第一次使用时,具有统一的用户ID和密码;管理员账号和*******。在三次验证错误后,系统将自动关闭。3.12测试计划初次安装该系统后,测试初始用户ID和密码能否正确登录到系统;正确登陆后,对用户名和密码进行更改;采用刚修改过的用户ID和密码登陆,应该能够正确登录。3.13尚未解决的问题暂时还没有发现。4.程序2主页设计说明4.1程序描述(1)功能类型:查询、添加、修改数据(2)功能描述:按照要求对数据进行查找、添加、修改(3)前提业务:登录用户为系统管理员(4)后继业务:密码修改、重新登录、(5)功能约束:权限约束(6)操作权限:登录用户4.2功能1.重新登录,回转到登录页面进行重新输入数据进行登录;2.修改密码,通过Session获取当前登录用户信息,根据用户信息进行密码修改;3个人便签盒添加便签在日程管理有讲解;.专业.专注.4.3性能能进行数据的高效访问4.4输入项表3重新登录和修改密码输入项字段名称长度录入方式是否非空项数据检验默认显示管理员ID小于12文本框YN管理员密码小于12passwordYN注:添加便签和修改便签输入项在日程管理中有说明4.5输出项个人日程信息4.6流程逻辑1.重新登录图3重新登录2.修改密码.专业.专注.图4修改密码注:添加和修改便签在日程管理中有说明;4.7接口图5接口4.8存储分配表4用户信息数据表序号字段名类型长精度小数默认允许主键说明度位数值空1(UserId)管理员IDvarchar50√2(password)管理员varchar50密码3UserName(登录用varchar50户)4DepartId(部门ID)int10.专业.专注.5Gender(性别)int106RoleId(角色ID)int107UserStateId(状态int10ID)4.9注释设计1.加在模块首部的注释;2.加在各分枝点处的注释;3.对各变量的功能、围、缺省条件等所加的注释;4.对使用的逻辑所加的注释4.10限制条件修改密码时,需先输入原始的密码,验证正确后方可进行重新设置密码的操作。4.11测试计划主要对主页设计的几个模块进行测试,用户界面测试:测试对象控件或访问入口正确,符合用户需求;界面风格统一,界面美观,直观。操作有好,人性化,易操作。4.12尚未解决的问题在文件中存储文档文件中,不能储存文件名相同,但类型不同的文档可以通过在文件名忠加入文件类型来解决。但因时间关系,尚未解决。5程序3日程管理设计说明5.1程序描述(1)功能类型:查看、添加、修改、删除数据(2)功能描述:按照要求对数据进行查查看、添加、修改并删除(3)前提业务:登录用户为系统管理员(4)后继业务:031(我的日程)032(部门日程)033(我的便签)(5)功能约束:权限约束(6)操作权限:系统管理员、一般登录用户,.专业.专注.5.2功能1.利用树形控件加载出功能页面的2.在我的日程子模块中添加日程是在时间列表控件中点击进行跳转5.3性能确保系统能高效的进行数据访问5.4输入项表5添加我的日程安排字段名称长度录入方式是否非空项数据检验默认显示我的日程主题文本框YN预约地点文本框YN开始时间文本框YN结束时间文本框YN日程容文本框YN预约对象树形控件N是否公开复选框N表6添加便签字段名称长度录入方式是否非空项数据检验默认显示便签标题文本框YN便签容文本框YN表7查询部门日程字段名称长度录入方式是否非空项数据检验默认显示机构名称下拉列表YN部门名称下拉列表YN文本框YN时间文本框YN5.5输出项查看:显示数据库中存在的数据删除:显示删除后数据库中存在的数据添加:将数据天津啊进入数据库在显示添加后的数据信息修改:对数据库中原本存在的某条数据进行修改后在进行展示.专业.专注.5.6算法HyperLinklink=newHyperLink();link.ImageUrl="~/images/add_Schedule.gif";link.ToolTip="新增个人日程";link.NavigateUrl="SaveMySchedule.aspx?userid="+user.UserId+"&today="+day.Date.ToShortDateString();tc.Controls.Add(link);5.7流程逻辑1.部门日程图6部门日程2.我的日程图7我的日程3.我的便签.专业.专注.图8我的便签5.8接口图9接口5.9存储分配.专业.专注.表8日程信息表序号字段名类型长度精度小数默认允许主键说明位数值空1ScheduleId(日程Int10Y√ID)2Title(标题)varchar50Y3Address(预约地varchar50Y点)4MeetingId(会议IntYID)5BeginTime(开始时datetimeN间)6EndTime(结束时datetimeN间)7SchContent(日程varchar500Y容)8CreateUser(创建varchar50Y用户)9CreateTime(创建datetimeN时间)10IfPrivate(是否公int是Y开)5.10注释设计1.加在模块首部的注释;2.加在各分枝点处的注释;3.对各变量的功能、围、缺省条件等所加的注释;4.对使用的逻辑所加的注释5.11限制条件在界面上控制输入输出,服务器端如果出错也会也会返回出错信息5.12测试计划对日程设计进行项目跟踪测试,对输入信息和输出信息进行对比,找出其中可能出现的异常,对此进行改善。.专业.专注.5.13尚未解决的问题暂时还没有发现6程序4系统管理设计说明6.1程序描述(1)功能类型:查看、添加、修改、删除数据(2)功能描述:按照要求对数据进行查查看、添加、修改并删除(3)前提业务:登录用户为系统管理员(4)后继业务:051角色管理052登陆日志053操作日志054菜单排序(5)功能约束:权限约束(6)操作权限:系统管理员6.2功能图10功能图.专业.专注.组织机构部门设置、用户管理、流程管理、表单管理、公文模版管理、角色管理、系统设置、系统日志、数据备份和恢复管理6.3性能系统能高效的进行数据访问和各项操作的更改6.4输入项表9输入功能图字段名称长度录入方式是否非空项数据检验默认显示角色名称文本框NN角色描述文本框YN人事管理复选框YN机构信息复选框YN部门信息复选框YN员工管理复选框YN日程管理复选框YN部门日程复选框YN我的日程复选框YN个人便签复选框YN消息传递复选框YN消息管理复选框YN信箱复选框YN系统管理复选框YN角色管理复选框NN登录日志复选框YN操作日志复选框YN菜单排序复选框YN6.5输出项角色管理:输出角色信息;登录日志:输出相应时间的登录日志操作日志:输出相应时间的操作日志菜单排序:输出通过上下移动后的树形菜单排序情况.专业.专注.6.6算法1.分配角色权限中关于复选框选择的问题,怎样处理好选择一个模块时选择其下的子模块而不选中其他模块的子模块,需要使用用户自定义控件来完成,在后台代码显示方法中这样写//得到所有父级点信息IListsysFuns=SysFunManager.GetAllParentNodeInfo();//根据父节点得到对应子节点生成用户控件,然后循环插入到PlaceHolder容器中foreach(SysFunsysFuninsysFuns){//得到父节点IdstringnodeId=sysFun.NodeId.ToString();//得到父节点名称stringdisplayName=sysFun.DisplayName;//实例化用户控件SysManage_RoleManage_WebUserControlroleCotrol=(SysManage_RoleManage_WebUserControl)LoadControl("RoleUserControl.ascx");//实例化隐藏区域,用以存父节点IdHtmlInputHiddenhidParentMeu=(HtmlInputHidden)roleCotrol.FindControl("hidParentMenu");hidParentMeu.Value=nodeId;//实例化隐藏区域,用以存储角色IdHtmlInputHiddenhidRoleId=(HtmlInputHidden)roleCotrol.FindControl("hidRoleId");hidRoleId.Value=roleId.ToString();//实例化用户控件中的CheckBoxCheckBoxchkParentMenu=(CheckBox)roleCotrol.FindControl("chkParentMenu");//显示父菜单名称chkParentMenu.Text=displayName;if(arrRoleParentNodes.Contains(nodeId)){chkParentMenu.Checked=true;}//把父节点生成的用户控件追加打破PlaceHolder容器中phRoleDistribute.Controls.Add(roleCotrol);}2.查看登录日志和操作日志时,开始时间和结束时间的获取使用javascript代码来实现functionfillstring(str){if(str.length==1){.专业.专注.str="0"+str;}return(str);}functionquickseldate(type){varbegintime,endtime;varoneminute=60*1000;varonehour=60*oneminute;varoneday=24*onehour;varoneweek=7*oneday;vartodayDate=newDate();vardate=todayDate.getDate();varmonth=todayDate.getMonth()+1;varyear=todayDate.getYear();varday=todayDate.getDay();if(navigator.appName=="Netscape"){year=1900+year;}//-->if(type=="day"){begintime=year.toString()+"-"+fillstring(month.toString())+"-"+fillstring(date.toString());endtime=begintime;}elseif(type=="week"){vardaytoMon=day-1;if(day==0)daytoMon=6;todayDate.setTime(todayDate.getTime()-daytoMon*oneday);date=todayDate.getDate();month=todayDate.getMonth()+1;year=todayDate.getYear();day=todayDate.getDay();begintime=year.toString()+"-"+fillstring(month.toString())+"-"+.专业.专注.fillstring(date.toString());todayDate.setTime(todayDate.getTime()+6*oneday);date=todayDate.getDate();month=todayDate.getMonth()+1;year=todayDate.getYear();endtime=year.toString()+"-"+fillstring(month.toString())+"-"+fillstring(date.toString());}elseif(type=="month"){vardateto1=date-1;todayDate.setTime(todayDate.getTime()-dateto1*oneday);date=todayDate.getDate();month=todayDate.getMonth()+1;year=todayDate.getYear();day=todayDate.getDay();begintime=year.toString()+"-"+fillstring(month.toString())+"-"+fillstring(date.toString());todayDate.setMonth(month);todayDate.setTime(todayDate.getTime()-oneday);date=todayDate.getDate();month=todayDate.getMonth()+1;year=todayDate.getYear();endtime=year.toString()+"-"+fillstring(month.toString())+"-"+fillstring(date.toString());}document.getElementById("<%=txtBeginTime.ClientID%>").value=begintime;document.getElementById("<%=txtEndTime.ClientID%>").value=endtime;.专业.专注.6.7流程逻辑1.角色管理图11角色管理图2.登录日志图12登录日志图3.操作日志.专业.专注.图13操作日志4.菜单排序图14菜单排序.专业.专注.6.8接口图15接口图形6.9存储分配表10登录日志信息表序号字段名类型长度精小数默认允许主键说明度位数值空1(LoginId)登录IDint10√2(UserId)用户IDvarchar503LoginTime(登录时datetime间)4IfSuccess(登录是int否成功)5LoginUserIp(登录varchar100用户IP)6LoginDesc(登录备varchar100注).专业.专注.表11操作日志信息表序号字段名类型长度精小数默认允许主键说明度位数值空1(OperateId)操作int10√ID2(UserId)用户IDvarchar503OperateName(操作varchar100名称)4ObjectId(操作对int象ID)5OperateDesc(操作varchar100描述)6OperateTime(操作datetime时间)表12角色信息表序号字段名类型长度精小数默认允许主键说明度位数值空1(RoleId)角色IDint10√2(RoleName)角色名varchar50称3RoleDesc(角色描varchar100述)4DisplayOrder(菜int10单显示顺序)5ParentNodeId(父int10节点id)6.10注释设计1.加在模块首部的注释;2.加在各分枝点处的注释;3.对各变量的功能、围、缺省条件等所加的注释;4.对使用的逻辑所加的注释6.11限制条件所有用户的权限都经过严格的设置,不能进行权限外的操作。用户组分为三组:管理员,用户,游客。.专业.专注.6.12测试计划系统集成测试,各个单元模块合并的接口测试,对整个产品进行全面的测试,要符合客户的需求,包括软件,硬件。6.13尚未解决的问题暂时还没有发现。.专业.专注.
本文档为【OA办公自动化系统详细设计说明书】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
花果山庄乐园
暂无简介~
格式:pdf
大小:920KB
软件:PDF阅读器
页数:24
分类:
上传时间:2023-04-16
浏览量:0