




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、0A办公自动化系统详细设计说明书1 引言1.1 编写目的OA 办公自动化系统详细设计是设计的第三个阶段, 这个阶段的主要任务是在 OA办公自 动化系统概要设计书基础上, 对概要设计中产生的功能模块进行过程描述, 设计功能模块的 部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、 模块功能和模块间的联系等。详细设计则要解决如何实现各个模块的部功能,即模块设计。具体的说,模块设计就是要为已经产生的 不等同于系统实现阶段用具体的语言编码, 就可以将详细设计中对功能实现的描述,OA办公自动化各子系统设计详细的算法。但
2、这并它只是对实现细节作精确的描述, 这样编码阶段 直接翻译、转化为用某种程序设计语言书写的程序。1.2 背景为了能跟上现代社会社会生活中高效率的工作节奏,根据企业需求编写了OA办公自动化系统,以达到提高企业工作效率的目的。1.3 定义SQL Server 2005: 数据库管理软件Vsual Studio 2005:开发工具OA是OFFICE AUTOMATIOI的缩写,本意为利用技术的手段提高办公的效率,进而实现 办公的自动化处理。 采用 Internet/Intranet 技术, 基于工作流的概念, 使企业部人员方便 快捷地共享信息,高效地协同工作;改变过去复杂、低效的手工办公方式,实现迅
3、速、全方 位的信息采集、 信息处理, 为企业的管理和决策提供科学的依据。 一个企业实现办公自动化 的程度也是衡量其实现现代化管理的标准。OA从最初的以大规模采用复印机等办公设备为标志的初级阶段, 发展到今天的以运用网络和计算机为标志的现阶段, 对企业办公方式的改 变和效率的提高起到了积极的促进作用。.专业 .专注 .1.4参考资料2程序系统的结构.专业.专注.图1程序系统结构3程序1登录功能设计说明3.1程序描述改程序时0A办公自动化的入口,体现了程序的安全性(1)功能类型:查询数据(2 )功能描述:提高系统的安全性(3)前提业务:无(4)后继业务:04(日程管理)(5)功能约束:权限约束(6
4、 )操作权限:系统管理员,登录用户。3.2功能(1 )录入项检测使用javascript和后台代码实现(各项必须非空)(2)在Login.aspx.cs 中只提交用户名和密码;数据处理:1.登录验证,2.记录登录用户信息3.3性能确保系统能正确运行和进行高效访问。3.4输入项表i输入项字段名称长度录入方式是否非空项数据检验默认显示管理员id小于12文本框YN管理员密码小于12PasswordYN3.5输出项页面能正确的跳转到日程管理模块下的个人便签页面下。3.6算法1. 登录验证Userinfo user;LoginLog log = new LoginLog();log.Userid = t
5、xtUserld.Value;log.LoginTime = DateTime.Now;log.LoginUserip = Request.UserHostAddress.ToString();if (this.txtUserld.Value.Trim().L ength = 0)this.Page.ClientScript.RegisterStartupScript(this.GetType(),"", "<script>alert(用户名不能为空!');</script>");txtUserld.Focus();ret
6、urn;if (this.txtPassword.Value.Trim ().L ength = 0)this.Page.ClientScript.RegisterStartupScript(this.GetType(),"", "<script>alert('密码不能为空!);</script>");txtPassword.Focus();return;string login = this.txtUserld.Value.ToString();bool yes = UserlnfoManager.lsUserldExi
7、st(login);if (yes)log.LoginDesc = "用户登录失败,用户名或密码不正确。 "log.IfSuccess = 0;LoginLogManager.AddLoginLog(log);this.Page.ClientScript.RegisterStartupScript(this.GetType(), "<script>alert(' 用户名或密码 不正确! ');</script>");else this.Page.ClientScript.RegisterStartupScript(
8、this.GetType(),"<script>alert(' 您输入的用户 名不存在,请重新输入! ');</script>"); this.txtUserId.Value = ""this.txtUserId.Focus();2. 记录登录用户信息UserInfo user;LoginLog log = new LoginLog();/ 获取用户登录名log.UserId = txtUserId.Value;/ 获取登录时间log.LoginTime = DateTime.Now; log.LoginUserI
9、p = Request.UserHostAddress.ToString();log.LoginDesc = "用户登录成功 "log.IfSuccess = 1;/ 数据验证成功着将数据传入查询方法进行数据操作 LoginLogManager.AddLoginLog(log);/ 获取当前登录用户 Session"CurrentUser" = user;/ 判断用户角色进行页面转换if (user.RoleInfo.RoleId = 1) Response.Redirect("/ManualSign/ManualSign.aspx"
10、);else Response.Redirect("/ScheduleManage/PersonNote/PersonNote.aspx");3.7流程逻辑图2流程逻辑3.8 接口ID、密码;它调用系统的主控制本模块式系统的启动模块,他需要用户交互输入用户 模块。3.9存储分配表2用户信息数据表序号字段名类型长度精度小数位数默认值允许空主键说明1(Userid)管理员 IDvarchar50V2(password)管理员密码varchar504UserName(登录用 户)varchar504DepartId(部门 ID)int105Gender(性别)int106Role
11、ld(角色 ID)int107UserStateld(状态ID)int103.10 注释设计模块首部的注释:用户验证程序。对调用函数的注释:调用加密函数 MD5.3.11 限制条件当系统第一次使用时,具有统一的用户 ID 和密码;管理员账号和 * 。在三次验 证错误后,系统将自动关闭。3.12 测试计划初次安装该系统后,测试初始用户 ID 和密码能否正确登录到系统;正确登陆后,对用 户名和密码进行更改;采用刚修改过的用户 ID 和密码登陆,应该能够正确登录。3.13 尚未解决的问题暂时还没有发现。4. 程序 2 主页设计说明4.1 程序描述(1)功能类型:查询、添加、修改数据(2)功能描述:按
12、照要求对数据进行查找、添加、修改(3)前提业务:登录用户为系统管理员(4)后继业务:密码修改、重新登录、(5)功能约束:权限约束(6)操作权限:登录用户4.2 功能1. 重新登录,回转到登录页面进行重新输入数据进行登录;2. 修改密码,通过 Session 获取当前登录用户信息,根据用户信息进行密码修改;3 个人便签盒添加便签在日程管理有讲解;4.3性能能进行数据的高效访问4.4输入项表3重新登录和修改密码输入项字段名称长度录入方式是否非空项数据检验默认显示管理员ID小于12文本框YN管理员密码小于12passwordYN注:添加便签和修改便签输入项在日程管理中有说明4.5输出项个人日程信息4
13、.6流程逻辑1. 重新登录图3重新登录垄r竺示2修改密码.专业 .专注 .图4修改密码注:添加和修改便签在日程管理中有说明;4.7 接口图5接口4.8存储分配表4用户信息数据表序号字段名类型长度精度小数位数默认值允许空主键说明1(Userid)管理员 IDvarchar50V2(password)管理员密码varchar503UserName(登录用 户)varchar504DepartId(部门 ID)int105Gender(性别)int106Roleld(角色 ID)int107UserStateld(状态ID)int104.9注释设计1. 加在模块首部的注释;2. 加在各分枝点处的注释
14、;3. 对各变量的功能、围、缺省条件等所加的注释;4. 对使用的逻辑所加的注释4.10限制条件修改密码时,需先输入原始的密码,验证正确后方可进行重新设置密码的操作。4.11测试计划主要对主页设计的几个模块进行测试,用户界面测试:测试对象控件或访问入口正确, 符合用户需求;界面风格统一,界面美观,直观。操作有好,人性化,易操作。4.12尚未解决的问题在文件中存储文档文件中, 不能储存文件名相同, 但类型不同的文档可以通过在文件名 忠加入文件类型来解决。但因时间关系,尚未解决。5程序3日程管理设计说明5.1程序描述(1)功能类型:查看、添加、修改、删除数据(2)功能描述:按照要求对数据进行查查看、
15、添加、修改并删除(3)前提业务:登录用户为系统管理员(4)后继业务:031 (我的日程)032 (部门日程)033 (我的便签)(5)功能约束:权限约束(6 )操作权限:系统管理员、一般登录用户,5.2功能1. 利用树形控件加载出功能页面的2. 在我的日程子模块中添加日程是在时间列表控件中点击进行跳转5.3性能确保系统能高效的进行数据访问5.4输入项字段名称长度录入方式是否非空项数据检验默认显示我的日程主题文本框YN预约地点文本框YN开始时间文本框YN乍吉束时间文本框YN日程容文本框YN预约对象树形控件N是否公开复选框N表6添加便签”字段名称长度录入方式是否非空项数据检验默认显示便签标题文本框
16、YN便签容文本框YN表7查询部门日程|字段名称长度录入方式是否非空项数据检验默认显示表5添加我的日程安排机构名称下拉列表YN下拉列表部门名称文本框时间文本框5.5输出项查看:显示数据库中存在的数据删除:显示删除后数据库中存在的数据添加:将数据天津啊进入数据库在显示添加后的数据信息 修改:对数据库中原本存在的某条数据进行修改后在进行展示5.6算法HyperLink link = new HyperLink();linkm ageUrl ="/images/add_Schedule.gif"link.ToolTip ="新增个人日程"link.Navigat
17、eUrl = "SaveMySchedule.aspx?userid=" + user.UserId + "&today=" + day.Date.ToShortDateString();tc.Controls.Add(link);5.7流程逻辑1. 咅部门日程-a Ja图6部门日程2. 我的日程于!总日亏唱菖图7我的日程3. 我的便签5.8 接口日齧理登录用户=戶* 匡壬部门日程我前日程时部门日理秦拌壬芦二匚空吾-r:-=我的便签图9接口5.9存储分配表8日程信息表序号字段名类型长度精度小数位数默认值允许空主键说明1Scheduleld(日程I
18、D)Int10YV2Title(标题)varchar50Y3Address(预约地 点)varchar50Y4Meetingld(会议ID)IntY5BeginTime(开始时 间)datetimeN6EndTime(结束时 间)datetimeN7SchContent(日程 容)varchar500Y8CreateUser(创建用户)varchar50Y9CreateTime(创建 时间)datetimeN10IfPrivate (是否公开)int是Y5.10注释设计1. 加在模块首部的注释;2. 加在各分枝点处的注释;3. 对各变量的功能、围、缺省条件等所加的注释;4. 对使用的逻辑所加的
19、注释5.11限制条件在界面上控制输入输出,服务器端如果出错也会也会返回出错信息5.12测试计划对日程设计进行项目跟踪测试,对输入信息和输出信息进行对比,找出其中可能出现的异常,对此进行改善。5.13尚未解决的问题暂时还没有发现6程序4系统管理设计说明6.1程序描述(1)功能类型:查看、添加、修改、删除数据(2)功能描述:按照要求对数据进行查查看、添加、修改并删除(3)前提业务:登录用户为系统管理员(4) 后继业务:051角色管理052登陆日志053操作日志054菜单排序5)功能约束:权限约束(6)操作权限:系统管理员6.2功能图10功能图组织机构部门设置、用户管理、流程管理、表单管理、公文模版
20、管理、角色管理、系统 设置、系统日志、数据备份和恢复管理6.3性能系统能高效的进行数据访问和各项操作的更改6.4输入项表9输入功能图字段名称长度录入方式是否非空项数据检验默认显示角色名称文本框NN角色描述文本框YN人事管理复选框YN机构信息复选框YN部门信息复选框YN员工管理复选框YN日程管理复选框YN部门日程复选框YN我的日程复选框YN个人便签复选框YN消息传递复选框YN消息管理复选框YN信箱复选框YN系统管理复选框YN角色管理复选框NN登录日志复选框YN操作日志复选框YN菜单排序复选框YN6.5输出项角色管理:输出角色信息;登录日志:输出相应时间的登录日志操作日志:输出相应时间的操作日志菜
21、单排序:输出通过上下移动后的树形菜单排序情况.专业.专注.6.6 算法1. 分配角色权限中关于复选框选择的问题, 怎样处理好选择一个模块时选择其下的子模块而 不选中其他模块的子模块, 需要使用用户自定义控件来完成, 在后台代码显示方法中这样写/ 得到所有父级点信息IList<SysFun> sysFuns = SysFunManager.GetAllParentNodeInfo();/ 根据父节点得到对应子节点生成用户控件,然后循环插入到 PlaceHolder 容器中foreach (SysFun sysFun in sysFuns)/ 得到父节点 Idstring nodeId
22、 = sysFun.NodeId.ToString();/得到父节点名称string displayName = sysFun.DisplayName;/实例化用户控件SysManage_RoleManage_WebUserControl roleCotrol =(SysManage_RoleManage_WebUserControl)LoadControl("RoleUserControl.ascx");/ 实例化隐藏区域,用以存父节点 IdHtmlInputHidden hidParentMeu(HtmlInputHidden)roleCotrol.FindContro
23、l("hidParentMenu");hidParentMeu.Value = nodeId;/ 实例化隐藏区域,用以存储角色 IdHtmlInputHidden hidRoleId = (HtmlInputHidden)roleCotrol.FindControl("hidRoleId"); hidRoleId.Value = roleId.ToString();/实例化用户控件中的 CheckBoxCheckBox chkParentMenu = (CheckBox)roleCotrol.FindControl("chkParentMenu
24、");/显示父菜单名称chkParentMenu.Text = displayName;if (arrRoleParentNodes.Contains(nodeId)chkParentMenu.Checked = true;/ 把父节点生成的用户控件追加打破 PlaceHolder 容器中 phRoleDistribute.Controls.Add(roleCotrol);2. 查看登录日志和操作日志时,开始时间和结束时间的获取使用javascript 代码来实现function fillstring(str)if(str.length=1)str = "0" +
25、 str; return(str);function quickseldate(type)var begintime,endtime;var oneminute = 60*1000;var onehour = 60*oneminute;var oneday = 24*onehour;var oneweek = 7*oneday;var todayDate = new Date();var date = todayDate.getDate();var month= todayDate.getMonth() +1;var year= todayDate.getYear();var day = to
26、dayDate.getDay(); if(navigator.appName = "Netscape") year = 1900 + year;/->if(type="day")begintime = year.toString() + "-" + fillstring(month.toString() + "-" +fillstring(date.toString();endtime = begintime;else if(type="week")var daytoMon = day-1
27、;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.t
28、oString();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();else if(type="month")var dateto
29、1 = 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();todayDat
30、e.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
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物流服务与客户满意度试题及答案
- 外出安全教育
- 塔吊维修维护培训课件
- 初中语文-第二单元《荷叶·母亲》散文诗冰心教学设计-2023-2024学年统编版语文七年级上册
- 临床科室科研成果的推广与应用计划
- 优化客户体验的具体措施计划
- 秋季课堂管理与纪律维护计划
- 投资咨询师发展路径试题及答案
- 持续改进在年度工作计划中的体现
- 从成功案例获取灵感的陪诊师试题及答案
- 土木工程毕业论文7篇
- 零星工程施工方案
- 2024年山东省青岛市中考地理试题卷(含答案及解析)
- 隶书完整版本
- 员工招聘、入职、转正、调动、离职管理制度
- 医学课件抗痉挛体位摆放
- 《第2课 搜索技巧及信息筛选》参考课件
- 拖车协议合同范本(2024版)
- 幼升小必练20以内加减法练习试题打印版
- DB32T 4787-2024城镇户外广告和店招标牌设施设置技术标准
- 财政投资评审咨询服务预算和结算评审项目投标方案(技术标)
评论
0/150
提交评论