版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 PAGE 1 页 共 NUMPAGES 90 页第 PAGE 90 页 共 NUMPAGES 90 页PAGE OA协同办公系统详细设计说明书书 TOC o 1-3 h z u HYPERLINK l _Toc171820633 1引言 PAGEREF _Toc171820633 h 4 HYPERLINK l _Toc171820634 1.1编写目的 PAGEREF _Toc171820634 h 4 HYPERLINK l _Toc171820635 1.2背景 PAGEREF _Toc171820635 h 4 HYPERLINK l _Toc171820636 1.3基线 PAG
2、EREF _Toc171820636 h 4 HYPERLINK l _Toc171820637 1.4范围 PAGEREF _Toc171820637 h 4 HYPERLINK l _Toc171820638 1.5定义 PAGEREF _Toc171820638 h 4 HYPERLINK l _Toc171820639 1.6参考资料 PAGEREF _Toc171820639 h 4 HYPERLINK l _Toc171820640 2总体设计 PAGEREF _Toc171820640 h 5 HYPERLINK l _Toc171820641 2.1概述 PAGEREF _To
3、c171820641 h 5 HYPERLINK l _Toc171820642 2.1.1功能描述 PAGEREF _Toc171820642 h 5 HYPERLINK l _Toc171820643 2.2运行环境 PAGEREF _Toc171820643 h 5 HYPERLINK l _Toc171820644 2.2.1软件环境 PAGEREF _Toc171820644 h 5 HYPERLINK l _Toc171820645 2.2.2硬件环境 PAGEREF _Toc171820645 h 5 HYPERLINK l _Toc171820646 2.3开发环境 PAGER
4、EF _Toc171820646 h 6 HYPERLINK l _Toc171820647 2.3.1服务器软件环境 PAGEREF _Toc171820647 h 6 HYPERLINK l _Toc171820648 2.3.2服务器硬件环境 PAGEREF _Toc171820648 h 6 HYPERLINK l _Toc171820649 2.3.3开发机器软件环境 PAGEREF _Toc171820649 h 6 HYPERLINK l _Toc171820650 2.3.4开发机器硬件环境 PAGEREF _Toc171820650 h 6 HYPERLINK l _Toc1
5、71820651 2.4设计思想 PAGEREF _Toc171820651 h 7 HYPERLINK l _Toc171820652 2.4.1系统构思 PAGEREF _Toc171820652 h 7 HYPERLINK l _Toc171820653 2.4.2关键技术与算法 PAGEREF _Toc171820653 h 7 HYPERLINK l _Toc171820654 2.4.3关键数据结构 PAGEREF _Toc171820654 h 8 HYPERLINK l _Toc171820655 2.4.4人工处理过程 PAGEREF _Toc171820655 h 9 HY
6、PERLINK l _Toc171820656 3子系统模块设计 PAGEREF _Toc171820656 h 9 HYPERLINK l _Toc171820657 3.1工作管理模块 PAGEREF _Toc171820657 h 9 HYPERLINK l _Toc171820658 3.2在线信息子系统 PAGEREF _Toc171820658 h 19 HYPERLINK l _Toc171820659 3.2.1模块1 PAGEREF _Toc171820659 h 20 HYPERLINK l _Toc171820660 3.2.2模块2 PAGEREF _Toc171820
7、660 h 20 HYPERLINK l _Toc171820661 3.2.3模块3 PAGEREF _Toc171820661 h 21 HYPERLINK l _Toc171820662 3.2.4模块4 PAGEREF _Toc171820662 h 21 HYPERLINK l _Toc171820663 3.2.5模块5 PAGEREF _Toc171820663 h 21 HYPERLINK l _Toc171820664 3.2.6模块6 PAGEREF _Toc171820664 h 22 HYPERLINK l _Toc171820665 3.2.7模块7 PAGEREF
8、_Toc171820665 h 22 HYPERLINK l _Toc171820666 3.3公司通讯录子功能 PAGEREF _Toc171820666 h 26 HYPERLINK l _Toc171820667 3.4扩展功能模块 PAGEREF _Toc171820667 h 30 HYPERLINK l _Toc171820668 3.5系统管理模块 PAGEREF _Toc171820668 h 39 HYPERLINK l _Toc171820669 3.6名片夹管理模块 PAGEREF _Toc171820669 h 45 HYPERLINK l _Toc171820670
9、3.7个人信息管理模块 PAGEREF _Toc171820670 h 51 HYPERLINK l _Toc171820671 3.8会议室管理模块 PAGEREF _Toc171820671 h 57 HYPERLINK l _Toc171820672 3.9会议管理 PAGEREF _Toc171820672 h 67引言编写目的本说明书目的在于明确说明协同办公系统各功能的实现方式,指导开发员进行编码。本说明书的预期读者为:项目组内成员、其他开发项目组成员、指导老师背景待开发软件系统的名称:协同办公系统此软件系统任务提出者:卢宝波此软件系统任务开发者:程之兴、姬广钊、钟晨、俞斐、施会华此
10、软件系统任务用户:OA协同工作系统的用户基线OA协同办公系统需求说明范围系统包括的范围:个人办公、会议管理,系统管理。定义读者设置:指将读者权限授予别人,拥有读者权限的用户可以看到自己工作安排。代办工作:指将代办权限授予别人,拥有代办权限的用户除可以看到自己的工作外还可以给自己安排工作。 待办工作:指等待员工自己去完成的工作。参考资料需求分析说明书、概要设计说明书_v1.4.doc、Oracle数据库使用教程、Ora9iSQLRef.chm、Oracle数据库使用帮助文档、CSS中文教程、HTML 开发手册、JAVA高级编程指南、JSP应用开发详解、功能结构图。总体设计概述功能描述 本系统分为
11、三个主要流程:1、个人办公 2、会议管理 3、系统管理 个人办公:普通职员登陆到系统后,通过点击个人办公连接,进入个人办公页面。之后可以选择个人信息、日程安排、名片夹、公司通讯录、待办事项、在线信息、个人文件夹进行办公。会议管理:部门领导登陆到系统后选择会议管理,进入会议管理页面。在会议管理页面中可以增、删、改、查会议。其中发起会议需首先预约会议室,然后将输入与会人名单,开会议信息通过邮件发送到每个与会人的信箱里。系统管理:系统管理员登陆到系统后,点击系统管理,进入系统管理页面。可以选择部门管理、角色管理、职员管理、文件夹管理进行系统维护。运行环境软件环境分类名称版本语种操作系统Microso
12、ft windows 2003中文操作系统的附加功能无数据库平台Oracle9.2i/10g中文数据库平台补丁无应用平台tomcat6.0英语应用平台补丁无客户端软件无硬件环境服务器最低配置推荐配置应用和数据库服务器Tomcat6.0JBoss5 weblogic10开发环境服务器软件环境分类名称版本语种操作系统Microsoft windows 中文操作系统的附加功能无数据库平台Oracle9.2i/10g中文数据库平台补丁无应用平台应用平台补丁无版本控制系统SVN英文客户端软件无服务器硬件环境服务器最低配置推荐配置应用服务器、数据库服务器、邮件服务器、目录服务器Tomcat6.0JBoss
13、 5/weblgic10AccessOracle 9.2i/10g开发机器软件环境分类名称版本语种操作系统Microsoft windowsXp/win7中文操作系统的附加功能无数据库平台Oracle9.2i/10g中文应用平台开发平台客户端软件开发机器硬件环境分类最低配置推荐配置开发机器设计思想系统构思系统功能结构图 见 系统功能结构图.doc系统实现结构图 关键技术与算法预约会议室冲突检查会议室预约中需要对新预约的会议室与原有预约安排比对,在时间上进行冲突检测,如果有冲突提示日程安排冲突,预约失败。日程管理类冲突检测算法:算法首先查找设定的预约时间内由那些会议室可以被预约。算法步骤:判断用
14、户输入的预约时间,比较输入的预约开始时间与预约表中会议的结束时间,将预约开始时间后于愉悦表中结束时间的会议室ID号选出,放入一个ArrayList中,然后在会议室表中选择会议室ID在ArrayList中的会议室,显示给用户。人工处理过程人工处理过程原因输入输出处理过程数据库数据备份保障数据安全数据库操作命令关键数据、当日数据库的运行日志数据库使用率最低时备份可恢复数据,存档数据库数据维护维护数据库性能数据库操作命令数据库相关参数状态日志在规定的日期内完成对数据库的状态检测子系统模块设计工作管理模块模块名称权限管理功能描述为员工提供工作安排维护和查询功能,系统根据设定时间将提示内容发布到该员工的
15、工作安排中。员工可以设置自己的工作安排的读者,以便别人知道自己的安排;也可以将自己的工作安排权限开放给指定的人,以便别人替自己安排工作。此模块包含的功能有:读者设置、代办设置、日历查看。接口与属性用户与接口ManageWork交互进行相关的操作。ManageWork接口中包含的操作有:代办管理功能:CommissionAdd():添加代办功能。该函数通过与Commission对象类关联得到操作所需要的数据。其中Commission类中的属性有:private String sender_id; /将要设置代办的系统用户idprivate String use_id; /将要被设置为代办的系统用
16、户idprivate String department; /将要被设置为代办的系统用户的部门 private String position; /将要被设置为代办的系统用户的职位Commission类中包含的主要方法有:上述各属性的get()、set()方法ManageWork类中的CommissionAdd()方法将通过Commission类的实例调用相应的get()、set()方法得到或传入数据CommissionAdd()方法中将实例化数据库的对象,完成添加代办的工作。在添加代办之前方法将优先进行加入人员id的检测,若用户已在代办列表中则将提示用户并拒绝重复加入代办。如果欲加入的代办不
17、在该用户的代办列表中则加入该代办,并进行相应的页面跳转,显示该用户所有的代办列表。CommissionDelete():删除代办功能。该函数通过与Commission对象类关联得到操作所需要的数据。其中Commission类中的属性有:private String sender_id; /将要设置代办的系统用户id private String user_id; /将要被设置为代办的系统用户idCommission类中包含的主要方法有:上述各属性的get()、set()方法ManageWork类中的CommissionDelete()方法将通过Commission类的实例调用相应的get()、
18、set()方法得到或传入数据ManageWork类中的CommissionDelete()方法将通过Commission类的实例调用相应的get()、set()方法得到或传入数据CommissionDelete()方法中将实例化数据库的对象,完成删除代办的工作。在删除代办之前系统将给出相应删除提示,在用户确认删除后对数据库进行删除操作,并进行相应的页面跳转,显示该用户删除该代办后的所有的代办列表。读者管理功能:ReaderAdd():添加读者功能。该函数通过与Reader对象类关联得到操作所需要的数据。其中Reader类中的属性有:private String icus_user_id; /将
19、要设置读者的系统用户id private String iaro_role_id; /将要被设置为读者的系统用户id private String icus_user_name; /将要被设置为读者的系统用户的姓名private String department_name;/将要被设置为读者的系统用户所在的部门private String position_name;/将要被设置为读者的系统用户的职位Reader类中包含的主要方法有:上述各属性的get()、set()方法CommissionManage类中的ReaderAdd()方法将通过Reader类的实例调用相应的get()、set()
20、方法得到或传入数据ReaderAdd ()方法中将实例化数据库的对象,完成添加读者的工作。在添加读者之前方法将优先进行加入人员id的检测,若用户已在读者列表中则将提示用户并拒绝重复加入读者。由于根据系统规格说明的相关说明,代办的权限大于读者的权限,即代办自动拥有读者的全部权利,因此如果欲加入读者是当前用户的代办则系统同样拒绝加入该读者。如果欲加入的代办不在该用户的读者列表中则加入该读者,并进行相应的页面跳转,显示该用户所有的读者列表。ReaderDelete():删除读者功能。该函数通过与Reader对象类关联得到操作所需要的数据。其中Reader类中的属性有:private String i
21、cus_user_id; /将要设置读者的系统用户id private String iaro_role_id; /将要被设置为读者的系统用户id private String icus_user_name; /将要被设置为读者的系统用户的姓名private String icde_department_name;/将要被设置为读者的系统用户所在的部门private String user_position_name;/将要被设置为读者的系统用户的职位Reader类中包含的主要方法有:上述各属性的get()、set()方法CommissionManage类中的ReaderDelete()方法将
22、通过Reader类的实例调用相应的get()、set()方法得到或传入数据ReaderDelete()方法中将实例化数据库的对象,完成删除读者的工作。在删除读者之前系统将给出相应删除提示,在用户确认删除后对数据库进行删除操作,并进行相应的页面跳转,显示该用户删除该读者后的所有的读者列表。采用日历控件输入时间功能:根据需求规格说明书的要求,系统将提供给用户日历查询功能,以方便其对于工作的管理。在此通过javascript语言实现日历的显示与查询功能。用户可以通过在textbox中输入所需的年份,在下拉列表中选择相应的月份,提交察看所需日期的具体情况。数据结构与算法判断欲加入代办的存在性:判断欲加
23、入代办是否已在用户的代办列表中主要通过session中存储的登陆用户信息及数据库中表间外键联系,构造sql语句得到相应的结果集。若该查询的结果集为空则说明欲加入代办不在用户的代办列表中,进行加入操作。否则系统给出提示信息。通过页面加入代办的主要数据结构:根据需求规格说明书的相应要求,用户提出相应的代办操作申请后,系统将给出组织结构图,只有通过组织结构图用户才能进行相应的操作。组织结构图的每个系统用户名的前部都将设有复选框。用户通过勾取所需的用户进行相关的增加或删除操作。系统采用struts架构,页面的复选框属性将作为String型的数组传入系统后台的功能模块层。通过相应的函数确定是否选重的属性
24、。根据该属性关联的icus_user_id系统用户id对相关的数据库表格进行操作。利用javascript实现日历功能的设计因素:在工作管理的多个模块的需求描述中都明确提到了需要日历的查询和使用功能。但从系统的整体出发,日历的使用范围基本局限于工作管理部分,因此考虑使用javascript减轻系统负担,方便用户使用。模块名称工作维护功能描述为员工提供工作安排维护和查询功能,系统根据设定时间将提示内容发布到该员工的工作安排中。此模块包含的功能有:工作安排、综合查询。接口与属性所有的的操作基于Work实体类完成。Work类中的属性包括: Private Integer worked ,/系统为工作
25、自动分配的ID号 Private userID;/工作执行人的ID号 Private FromID;/工作安排人的 ID号 private String start_date; /工作开始日期 private String end_date; /工作结束日期 private String work_content; /工作内容 private String work_title; /工作标题Work类中包含的主要方法有:上述各属性的get()、set()方法 eq oac(,1)工作维护功能:Add_Work():添加工作功能。该函数通过与对象类关联得到操作所需要的数据。Work类中包含的主要
26、方法有:上述各属性的get()、set()方法WorkManage类中的WorkAdd()方法将通过work类的实例调用相应的get()、set()方法得到或传入数据WorkAdd()方法中将实例化数据库的对象,完成添加工作的工作。在添加工作之前进行申请加入操作人员id的检测,若工作执行人为登陆用户本身,或者登陆用户的被执行代办人,则在该用户提交申请后系统自动进行工作冲突的检测。若工作检测后系统返回值为非冲突,则加入该工作,否则系统提示用户相关的信息并拒绝加入工作。WorkDelete():删除工作功能。该函数通过与Work对象类关联得到操作所需要的数据。WorkManage类中的WorkDe
27、lete()方法将通过Work类的实例调用相应的get()、set()方法得到或传入数据Workdelete()方法中将实例化数据库的对象,完成删除工作的工作。在删除工作之前方法将优先进行申请删除操作人员id的检测,若工作执行人为登陆用户本身,或者工作的安排人,则系统将给出相应删除提示,在用户确认删除后对数据库进行删除操作,并进行相应的页面跳转,显示该用户删除该工作后的所有的工作列表。WorkSearch():包括综合查询的日历查询 查询工作功能。该函数通过与Work对象类关联得到操作所需要的数据。WorkManage类中的WorkSearch()方法将通过Work类的实例调用相应的get()
28、、set()方法得到或传入数据WorkSearch()方法中将实例化数据库的对象,完成查询工作的工作。根据需求规格说明书的要求:可以通过:1,工作执行人,执行人所在部门,执行人职位或者2,工作安排的时间字段查找相应的工作。从在系统进行工作查询后将通过页面显示工作列表。在用户输入多条查询条件的情况下,采用部分匹配策略,即数据库中有部分符合输入条件的数据而非全部符合条件的记录。WorkEdit():修改工作功能。该函数通过与Work对象类关联得到操作所需要的数据。WorkManage类中WorkEdit()方法将通过Work类的实例调用相应的get()、set()方法得到或传入数据WorkEdit
29、()方法中将实例化数据库的对象,完成修改工作的工作。在修改工作之前方法将优先进行申请加入操作人员id的检测,若工作执行人为登陆用户本身,或者原工作的安排人且依然则在该用户提交申请后系统自动进行工作冲突的检测。若工作检测后系统返回值为非冲突,则修改该工作,否则系统提示用户相关的信息并拒绝加入工作。数据结构与算法检测工作冲突功能:根据需求规格说明书的要求,系统将提供给用户工作冲突检测功能,以方便其对于工作的管理。检测工作冲突主要侧略为:优先检测工作执行人欲安排的工作与其已有的工作安排的冲突。检测过程中需要三步判断:欲安排工作起始日期之间是否有其它的工作安排欲安排工作起始日期是否在其它已安排工作之间
30、欲安排工作结束日期是否在其他已安排工作之间若有没有冲突则安排工作否则系统给出错误信息。检测人员权限功能:根据系统规格说明书的相关说明,不同权限的用户对于工作安排的操作的权限是不同的,检测的策略为:根据session中的信息判断登陆用户是否工作管理相关操作的责任人根据读者&代办表中的相关记录判断工作管理相关操作责任人是否具有代办的权限。补充说明 bb模块名称待办事项模块功能描述此模块实现了对待办事项的增加、删除、显示以及所有日程安排清单的按日期排序显示功能。接口与属性抽象类BaseOperate:抽象方法sortAccordToTime:输入参数:要排序的对象列表 List obj输出参数:无返
31、回值:排序好的对象列表: List objaddWork:输入参数:要插入的待办事项对象的引用 Work bus输出参数:无返回值:bool类型,插入成功与否deleteWork:输入参数:要删除的待办事项的ID int workID输出参数:无返回值:bool类型,删除成功与否display():输入参数:无输出参数:要显示的对象列表返回值:bool类型,显示成功与否displayAll():输入参数:无输出参数:要显示的对象列表返回值:bool类型,显示成功与否PendingWorkOperate:sortAccordToTime:输入参数:要排序的Work(PendingWork)对象列
32、表 List pbu输出参数:无返回值:排序好的对象列表: List pbuaddWork:输入参数:要插入的待办事项对象的引用 Work bus输出参数:无返回值:bool类型,插入成功与否deleteWork:输入参数:要删除的待办事项的ID int id输出参数:无返回值:bool类型,删除成功与否display():输入参数:无输出参数:要显示的对象列表返回值:bool类型,显示成功与否displayAll():输入参数:无输出参数:要显示的对象列表返回值:bool类型,显示成功与否数据结构与算法对象类Work:与数据库中的Work表的各个字段相对应序列号 ID Integer名称 n
33、ame String负责人 person String起始时间 start_Date time结束时间 end_Date time事项内容 workContent String事项标题 workTitle String是否完成 done bool补充说明工作安排类图:权限设置类图序列图:工作安排维护序列图:工作安排维护扩展序列图:他人工作安排查询序列图:他人工作安排查询扩展序列图:读者权限维护序列图:读者权限维护扩展序列图:代办权限维护序列图:代办权限维护扩展序列图:在线信息子系统模块名称在线信息模块功能描述本子系统主要为用户提供留言交流的平台,用户可以发送留言,接收留言,查看留言以及对留言进
34、行查询,回复,删除等操作接口与属性主要由MessageManage类通过操纵Message类实现对留言的管理、接收、发送等。1其中Message类主要属性包括:Int fromID /留言发送者员工号String fromName /留言发送者姓名Int toID /留言接收者员工号String toName /留言接收者姓名String title /留言主题String content /留言内容Date date /留言日期Int messageNumber /留言编号int issent /判断留言是否已经发送int isReaded /判断留言是否已经被阅读int from_dele
35、te /判断发送者是否将留言删除int to_delete /判断接收者是否将留言删除主要接口与方法有:对类中每个属性的get()与set()方法2MessageManage属性包括:Boolen isOK /判断对留言的操作是否成功接口与方法包括:saveMessage() /保存留言editMessage() /编辑留言see Message() /查看留言send Message() /发送 留言search Message() /查询留言add Message() / 添加留言delete Message() /删除留言replay Message() /回复留言数据结构与算法数据库语
36、句实现功能。补充说明模块1模块名称发送留言功能描述指利用系统发送短消息。用户点击“发送”后,系统将留言写进数据库,并将int issent改为1。接口与属性MessageManage类通过Message类的get()与set()方法实现对留言的管理。sendMessage()函数实现发送留言功能。输入参数有int toID, String toName ,String title String content, Date data。返回值为Boolean isOK.sendMessage()方法将实例化Message对象,通过调用该对象的方法,来获取留言的基本信息,然后实习留言的发送功能。数据
37、结构与算法数据库语句实现功能。补充说明模块2模块名称保存留言功能描述指利用系统保存短消息。用户点击“保存”后,系统将留言写进数据库,并将int issent改为0。接口与属性MessageManage类通过Message类的get()与set()方法实现对留言的管理。saveMessage()函数实现保存留言功能。输入参数有int toID, String toName, int toID, int toName , Date date, String title, String content 。返回值为Boolean ok.saveMessage()方法将实例化数据库对象,然后对留言信息进
38、行验证,验证通过后将其保存在数据库中,返回保存成功的信息。数据结构与算法数据库语句实现功能。补充说明模块3模块名称查找留言功能描述指利用系统查找短消息。用户输入查询条件,点击“查找”后,系统将从数据库中查找,并将结果返回。接口与属性MessageManage类通过Message类的get()与set()方法实现对留言的管理。searchMessage()函数实现查询留言功能。输入参数有String name, int fromID,int toID searchMessage()将实例化数据库对象,通过查询条件对数据库进行查询操作,然后将查询结果以列表的实行返回给用户。数据结构与算法数据库语句
39、实现功能。补充说明模块4模块名称查看留言功能描述指利用系统查看短消息。用户点击某条留言后,系统将具体内容返回,并将boolean isreaded改为true。接口与属性MessageManage类通过Message类的get()与set()方法实现对留言的管理。seeMessage()函数实现查看留言。输入的参数有int messageNumberseeMessage()将实例华数据库对象,通过int messageNumber在数据库中查找信息,将结果返回给用户,进行查看数据结构与算法数据库语句实现功能。补充说明模块5模块名称删除留言功能描述指利用系统删除短消息。用户选定留言后,系统将bo
40、olean from_delete或to_delete改为true。接口与属性MessageManage类通过Message类的get()与set()方法实现对留言的管理。deleteMessag()函数实现删除留言功能。输入参数有int messageNumber。返回值为Boolean isOK. deleteMessag()将实例化数据库对象,在验证完用户要删除的留言之后回返回一个确认信息,如果用户确定删除,将删除留言在数据库中的记录。数据结构与算法数据库语句实现功能。补充说明模块6模块名称更改留言功能描述指利用系统更改未发送的短消息。用户选择某条未发送留言,点击详“细信息”后,系统将从
41、数据库取出。再点击“编辑”,对该留言进行编辑接口与属性MessageManage类通过Message类的get()与set()方法实现对留言的管理。editMessage()函数实现编辑留言功能。输入的参数有int toID, String toName, String title, String content editMessage()将实例化数据库对象,在获取用户的更改信息之后,返回确认信息,待用户确认更改后,进行数据库的更新操作。数据结构与算法数据库语句实现功能。补充说明模块7模块名称回复留言功能描述指利用系统回复短消息。用户查看某条留言,点击“回复”后,系统将留言引入到写留言中,并将
42、留言的fromID付给新建留言的toID。fromName付给新建留言的toName。接口与属性MessageManage类通过Message类的get()与set()方法实现对留言的管理。replyMessage()函数实现回复留言功能。输入的参数有int toID, String toName replyMessage()将实例化Message类对象,将收到的信息的发送人ID,Name 作为新的参数写入新的回复留言,之后调用sendMessage()方法发送留言。数据结构与算法数据库语句实现功能。补充说明类图:1.查询留言时序图2.查询留言扩展时序图:3.维护留言时序图4.维护留言扩展时序
43、图5.发送留言时序图6.公司通讯录子功能模块名称公司通讯录功能描述为职员提供查询公司所有员工通讯录的功能,系统根据设定的查询条件将查询结果显示给用户中。职员可以将查询的结果导出为excel保存到自己本机选定的地址。此模块包含的功能有:查询通讯录 导出位excel。接口与属性用户与接口UserMange交互进行查询的操作。在本子功能中只用到UserManage接口中包含的查询操作。该子功能包含的功能有:查询公司通讯录getAttribute():获得查询条件。该函数接受从页面传过来的参数作为查询条件,查询所需要的数据。getAttribute()调用UserManage接口的searchUser
44、方法,查找用户要查询的用户通讯录,以列表的方式显示给用户。导出为Excel用户查询出通讯录之后可以点击“导出为Excel”,弹出导出为Excel,用户指定文件导出路径,将表格导出。本功能用到jxl.jar包,具体实现方法为:public boolean export(String sql,String name,OutputStream os) targetFile+=/abc+.xls; System.out.println(!); content=getContent(sql);/以向量的形式存放所有的记录 /String path=context.getRealPath(targetFi
45、le); try Vector inner=null; String value=;/存放在cell中的文本值 int num=0;/存放在cell中的数字值 /OutputStream os=new FileOutputStream(path); WritableWorkbook workbook=Workbook.createWorkbook(os);/创建工作薄 WritableSheet worksheet=workbook.createSheet(record,0);/创建第一个工作表,name:工作表名称 Label label=null;/用于写入文本内容到工作表中去 jxl.w
46、rite.Number nmb=null;/用于写入数值到工作表中去 /开始写入第一行,即标题栏 for(int i=0;ititle.length;i+) label=new Label(i,0,titlei);/参数依次代表列数、行数、内容 worksheet.addCell(label);/写入单元格 /开始写入内容 for(int i=0;icontent.size();i+) inner=(Vector)content.get(i);/获取一条记录 for(int j=0;jinner.size();j+) /一个一个字段的放入excel中去 if(j=1|j=3)/插入的数值 In
47、teger num_=(Integer)inner.get(j); num=num_.intValue(); nmb=new jxl.write.Number(j,i+1,num); worksheet.addCell(nmb); else value=(String)inner.get(j); label=new Label(j,i+1,value); worksheet.addCell(label); workbook.write(); workbook.close(); catch(Exception e) e.printStackTrace(); return false; retur
48、n true; public Vector getContent(String sql) rs=dbase.executeQuery(sql); Vector outter=new Vector(); try while(rs.next() Vector inner=new Vector();/用于存放一条记录 String name=rs.getString(NAME);/得到学生姓名 int studId=rs.getInt(ID);/得到学号 String burseType=rs.getString(SEX);/得到奖学金类型 int colleage=rs.getInt(AGE);/
49、得到所在院系 inner.add(name); inner.add(studId); inner.add(burseType); inner.add(colleage); outter.add(inner); catch(Exception e) e.printStackTrace(); /rs.close(); return null; return outter; 数据结构与算法使用Vector inner来存放表格的每一行记录。使用Vector outter来存放所有的inner。并使用jxl.jar包所带的Label来保存文本内容写入到Excel表格,用Integer来保存数字内容。补
50、充说明类图导出Excel导出Excel扩展系统管理模块模块名称系统管理模块:用户管理功能描述指管理员登陆后,进入用户管理分模块,对用户进行添加,删除,修改,查找四个功能添加用户时,包括用户帐号及用户密码(初始密码默认为111111)的添加,以及用户所在部门和职位的添加用户所属部门的添加通过addDepartment()方法实现。接口与属性User类中的属性有:private int userID;/用户IDprivate int roleID;/用户角色private String password;/用户密码private String username;/用户姓名private Strin
51、g sex;/用户性别private String age;/用户年龄private String department;/用户所属部门private String positon;/用户职位private String introduction;/用户自我介绍private String interests;/用户爱好private String phone;/用户固定电话private String mobilephone;/用户移动电话private String email;/用户emailprivate String address;/用户住址User类中的方法主要有:上述各属性的g
52、et(),set()方法 。UserManagement类实现对用户的管理。addUser()实现对用户的添加功能。用户选择新建用户,输入新建用户的信息,后台首先查找数据库中用户的最大ID,select max(ID) from User, 使max(ID)+1为新用户的ID号。系统验证新建信息完整且正确,addUser()方法将通过User类的实例调用相应的get()、set()方法得到或传入数据,并由系统管理员确认。DeleteUser ()实现对用户的删除功能。用户选择删除用户,统获得要删除的用户的ID号,给出删除用户的提示,DeleteUser()方法将通过User类的实例调用相应的g
53、et()、set()方法得到或传入数据,并由系统管理员确认。用户确认后在数据库中删除信息。searchUser()实现列出用户信息的功能。用户选择查询用户,统获得要查询的用户的条件, searchUser()方法将通过User类的实例调用相应的get()、set()方法得到或传入数据,并由系统管理员确认。用户确认后在数据库中查找信息。editUser ()实现编辑用户信息的功能。用户选择编辑用户,统获得要编辑的用户的ID号, editUser()方法将通过User类的实例调用相应的get()、set()方法得到或传入数据,并由系统管理员确认。用户确认后在数据库中修改信息。接口与其他对数据库实现
54、的增删改查使用统一的接口数据结构与算法数据库语句实现功能。补充说明模块名称系统管理模块:部门管理功能描述指管理员登陆后,对部门进行管理,进行部门的添加,删除,修改,查找。部门为树型结构展示接口与属性Department类中的属性有:private int departmentID;/部门IDprivate String departmentName;/部门名称private String departmentDuty;/部门职能private String departmentPhone;/部门电话Department类中的方法主要有:上述各属性的get(),set()方法 。Departme
55、ntManagement类实现对用户的管理。addDepartment ()实现对部门的添加功能。用户选择新建部门,输入新建部门的信息,后台首先查找数据库中部门的最大ID,select max(ID) from Department, 使max(ID)+1为新用户的ID号。系统验证新建信息完整且正确,addDepartment ()方法将通过Department类的实例调用相应的get()、set()方法得到或传入数据,并由系统管理员确认。DeleteDepartment ()实现对部门的删除功能。用户选择删除部门,统获得要删除的部门的ID号,给出删除部门的提示,DeleteDepartmen
56、t ()方法将通过Department类的实例调用相应的get()、set()方法得到或传入数据,并由系统管理员确认。用户确认后在数据库中删除信息。searchDepartment ()实现列出部门信息的功能。用户选择查询部门,统获得要查询的部门的条件, searchDepartment ()方法将通过Department类的实例调用相应的get()、set()方法得到或传入数据,并由系统管理员确认。用户确认后在数据库中查找信息。editDepartment ()实现编辑部门信息的功能。用户选择编辑部门,统获得要编辑的部门的ID号, editDepartment ()方法将通过Departme
57、nt类的实例调用相应的get()、set()方法得到或传入数据,并由系统管理员确认。用户确认后在数据库中修改信息。接口与其他对数据库实现的增删改查使用统一的接口数据结构与算法数据库语句实现功能。树型结构实现:每个部门有自己的部门Id和部门的Name,fatherId为当前部门的上一级部门Id,通过数据库查找,找出当前部门的上一级部门。查询数据库获得部门id,遍历部门并插入当前的ArrayList。同时采用迭代,相关联的都会被调用补充说明模块名称系统管理模块:角色管理功能描述指管理员登陆后,对系统角色进行分配接口与属性Role类中的属性有:private int roleID;/角色IDpriv
58、ate String roleName;/角色名称Department类中的方法主要有:上述各属性的get(),set()方法 。RoleManagement类实现对角色的管理。assignRole ()实现对系统角色的分配。用户选择分配角色,系统统获得要编辑的职员的ID号,系统列出相关角色以及用户信息,管理员进行修改,调整用户的角色,系统验证修改后信息完整且正确,assignRole ()方法将通过Role类的实例调用相应的get()、set()方法得到或传入数据。用户确认后在数据库中修改信息。接口与其他对数据库实现的增删改查使用统一的接口数据结构与算法数据库语句实现功能。补充说明系统管理类
59、图维护部门信息维护部门信息扩展维护职员信息维护职员信息扩展分配角色分配角色扩展名片夹管理模块模块名称名片夹管理模块功能描述在本系统中为员工日常办公常用功能,包括名片夹分类操作:添加,删除修改;名片的添加,删除,修改,查询,移动,发送。接口与属性private String username = null;/用户名 private String sex = null;/性别 private Integer departmentID = null;/部门编号 private String position = null;/职位 private Integer roleID = null;/角色编号
60、 private String password = null;/密码 private String introduction= null;/自我介绍 private String interests= null;/兴趣爱好 private String phone = null;/固定电话 private String mobilephone = null;/移动电话 private String Email = null;/电子邮件 private Integer age = null;/年龄 private String mobile = null;/移动电话 public String
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年挂靠公司汽车租赁协议3篇
- 无固定期限临时工聘用合同(3篇)
- 设备维护与施工合同
- 设计富有创造性的小学数学作业
- 诚意满满改进态度书
- 语文大专考试点题卷
- 语文要素教学法的实施要点
- 豪华住宅装修协议
- 质量保证质量书
- 购房合同完美版范文
- 成语故事-狐假虎威
- 五年级语文上册阅读题13篇(附答案)
- 库恩塔克条件证明
- 服装供货配送方案(完整版)
- 精品专题资料(2022-2023年收藏)杭州业主大会和业主委员会工作指导规则杭州住房保障和房产
- 重庆大学作业封面
- 浆砌块(料)石挡土墙
- 浙江大学经济学院博士生博弈论课程习题及答案
- 箱变配套施工组织设计(共12页)
- 六年级语文上册第二单元整本书阅读《小游击队员》
- 市政工程水池满水试验记录
评论
0/150
提交评论