(此文档为word格式,下载后您可任意编辑修改!)科技申报系统设计说明书1引言 (1)1.1编写目的 (1)1.2项目背景 (1)1.3定义、缩写词、略语 (1)1.4参考资料 (1)2系统总体设计 (2)2.1.1软件结构 (2)2.1.2程序系统结构 (2)3系统功能设计说明 (9)3.1系统管理 (9)3.1.1管理员登录 (9)3.1.2登录用户管理 (11)3.1.3专家用户管理 (16)3.1.4单位用户管理 (20)3.1.5项目管理 (23)3.2专家用户功能 (28)3.2.1专家用户登录 (28)3.2.2专家信息更新 (31)3.2.3修改密码 (33)3.2.4项目审批 (36)3.3单位用户功能 (41)3.3.1单位用户登录 (41)3.3.2单位用户更新 (43)3.3.3修改密码 (45)3.3.4项目申报管理 (47)3.3.5信息查询 (50)1引言1.1 编写目的此设计说明书对项目的功能设计进行说明,确保对需求的理解一致。
预期的读者有(甲方)的需求提供者、项目负责人、相关技术人员等,北京亚思晟商务科技有限公司(乙方)的项目组成员,包括项目经理、客户经理、分析设计开发测试等人员。
1.2 项目背景科技申报系统是基于互联网的应用软件,通过它能了解到已公开发布的项目,对项目的申报和评审进行控制和管理。
1.3 定义、缩写词、略语无1.4 参考资料科技申报需求规格说明书2系统总体设计2.1.1软件总体结构2.1.2程序系统结构本项目中使用了基于三大框架的MVC(Model-View-Controller)框架项目申报系统。
系统用例图如下:系统类图如下:ActionSupportAdminMangerAllUnitActionAdminMangerAllUsersActionAdminMangerExpertsAdminMangerProjectCategoryActionExpertMangerInfoActionExpertMangerProjectActionAdminServiceUserDaoImpExpertDaoImpUnitDaoImpUserGroupImpUserAdminDaoImpProjectCategoryDaoImpExpertServiceProjectDaoImpUnitMangerInfoAction类1UnitProjectDeclareActionUnitSearchProjectActionUnitServiceUserAction UserServiceUserDaoImpMyInterceptorHibernateTemplate2.1.2.1 Web应用程序设计Web应用程序的组织结构可以分为以下部分。
Web应用根目录下放置用于前端展现的JSP文件。
com.zqd.model放置处理的javabean。
com.zqd.action放置处理请求相应的类。
com.zqd.service放置处理业务逻辑相应的类。
com.zqd.dao.impl放置处理数据持久化类。
com. zqd.aop放置权限检查帮助类com. zqd.temp放置数据临时传送vo类另外,在src下放置了配置文件beans.xml和struts.xml2.1.2.2 下面对组织结构中的几个部分分别进行介绍。
1、JSP文件,表3-1列出了每个JSP文件实现的功能。
3-1 JSP文件列表文件名称功能index.jsp 首页jieshao.jsp 科技项目介绍页面login.jsp 科技申报登录页面zhinan.jsp 科技项目指南页面lianxi.jsp 科技申报联系我们页面admin_index.jsp 管理员管理页面expert_index.jsp 专家用户管理页面unit_index.jsp 单位用户管理页面top.jsp 头页面addprojectcategory.jsp 管理员添加项目类别页面adduser 管理员添加用户页面adminundateshowprojects.jsp 修改项目类别页面adminviewexpertinfo.jsp 修改专家信息页面adminviewunitinfo.jsp 修改单位信息页面showexperts.jsp 专家信息列表页面shwoprojectCategory.jsp 项目分类列表页面showprojects.jsp 项目列表页面showunit.jsp 单位信息列表页面showusers.jsp 用户信息页面viewprojectinfo.jsp 项目详细展示页面reworkpassword.jsp 专家密码修改页面showprojectCategory.jsp 专家审批项目类别列表页面showprojects.jsp 项目列表页面viewexperinfo.jsp 专家信息修改页面viewprojictinfo.jsp 项目信息页面Applyproject.jsp 申请项目页面hignquery 高级查询页面reworkpoasswird 单位修改密码页面searchangedit.jsp 修改项目信息页面showprojectCategorys.jsp 单位项目分类列表页面simpleSerach.jsp 查询页面viewprojectinfo.jsp 项目详细页面viewnunitinfo.jsp 修改单位用户信息top.jsp 科技项目被嵌套页面(头)footer.jsp 科技项目被嵌套页面(尾)admin_top.jsp 科技项目管理员用户页面被嵌套页面(头)unit_top.jsp 科技项目单位用户页面被嵌套页面(头)expert_top 科技项目专家用户页面被嵌套页面(头)2、Action中包括的控制器,如表3-2所示。
3-2 Action列表文件名称功能AdminMangerAllUnitAction.java 管理员管理所有单位控制器AdminMangerAllUsersAction.java 管理员管理所有用户控制器AdminMangerExperts.java 管理员管理所有专家控制器AdminMangerProjectCategoryActi管理员管理所有项目目录控制器on.javaExpertMangerInfoAction.java 专家管理自己信息ExpertMangerProjectAction.java 专家管理属于自己的项目UnitMangerInfoAction.java 单位管理自己信息UnitProjectDeclareAction.java 单位申报项目UnitSearchProjectAction.java 单位查找项目UserAction.java 管理登入登出3、po包括4个逻辑类,如表3-3所示。
3-3 JavaBean列表文件名称功能UserGroup.java 用户组类UserAdmin.java 管理员类User.java 用户类Expert.java 专家类Unit.java 单位类ProjectCategory.java 项目类别类Project.java 项目类5、dao数据层方法类如图3-5所示3-5 dao列表文件名称功能UserGroupDao.java 用户组别的CRUD UserAdminDao.java 管理员的CRUD UserDao.java 登陆用户的CRUD ExpertDao.java 专家用户的CRUD UnitDao.java 单位用户的CRUD ProjectCategoryDao.java 项目类别的CRUD ProjectDao.java 项目类别的CRUD5、sevice层方法类如图3-5所示3-6 service列表文件名称功能AdminService.java 管理员业务逻辑实现ExpertService.java 专家业务逻辑实现UnitService.java 登单位用户业务逻辑实现UserService.java 登陆登出业务逻辑实现3-6Vo层列表文件名称功能CategoryTemp.java ProjectCategory和Project数据的合并传递UserLoginModel.java 登陆数据传递3-6工具类文件名称功能MyInterceptor.java 过滤器,实现权限的检查3系统功能设计说明3.1 系统管理3.1.1管理员登录3.1.1.1 功能实现管理员登陆3.1.1.2 输入项登录页面输入用户名和密码3.1.1.3 输出项显示管理员管理界面信息3.1.1.4 算法管理员输入用户名和密码登陆进入管理平台。
3.1.1.5 流程逻辑1:UserAction:UserService:UserDaoImp 管理员loginchickLogin()searchUserByNameAndPassword()User3.1.1.6 接口无3.1.1.7用户界面设计登录页面login.jsp管理员登陆后的管理界面index.jsp3.1.1.8 数据库设计用户表表结构(user)序号列名PK FK 属性长度备注1 uidY Integer 11 该表的主键,唯一标示,自动增长2 gid Y Integer 11 用户权限表的id3 username Varchar 15 用户名4 password Varchar 15 用户密码3.1.1.9 注释设计无3.1.1.10 限制条件无3.1.1.11 测试计划无3.1.1.12 尚未解决的问题无3.1.2登录用户管理无3.1.2.1 功能实现注册用户的添加和删除,设定注册用户权限和所隶属的组3.1.2.2 输入项点击管理员管理界面的登录用户管理,进入管理界面1添加用户:输入用户名选择角色2删除用户:在用户所在行点击删除链接3.1.2.3 输出项显示到登录用户管理界面3.1.2.4 算法点击登录用户管理,展现所有登录用户的数据添加用户,添加新的用户数据删除用户,销毁用户数据3.1.2.5 流程逻辑用户添加:2用户删除:3:AdminMangerAllUsersAction:AdminService:UserAdminDaoImp 管理员deleteUserdeleteUser()deleteUserAdmin()success3.1.2.6接口无3.1.2.7用户界面设计登录用户管理页面showusers.jsp:添加用户页面:adduser.jsp3.1.2.8 测试要点无3.1.2.9 数据库设计用户表表结构(user)序号列名PK FK 属性长度备注1 uidY Integer 11 该表的主键,唯一标示,自动增长2 gid Y Integer 11 用户权限表的id3 username Varchar 15 用户名4 password Varchar 15 用户密码管理员表结构(useradmin)序号列名PK FK 属性长度备注1 aidY Integer 11 该表的主键,唯一标示,自动增长2 uid Y Integer 11 用户表的id3 aname Varchar 15 管理员名称4 deptname Varchar 15 所属单位名称项目类别_单位中间表结构(category_unit)序号列名PK FK 属性长度备注1 categoryid Y Integer 11 项目标识2 unitid Y Integer 20 单位标识项目类别表结构(project_category)序号列名PK FK 属性长度备注1 categoryidY Integer 11 该表的主键,唯一标示,自动增长2 expertid Y Integer 11 专家信息表ID3 categoryname Varchar 50 项目名称4 rep_start_time date 单位申报开始时间5 rep_stop_time date 单位申报结束时间6 exp_start_time date 专家审批开始时间7 exp_stop_time date 专家审批结束时间专家表结构(expert)序号列名PK FK 属性长度备注1 expertidY Integer 11 该表的主键,唯一标示,自动增长2 uid Y Integer 11 用户表的id3 name Varchar 20 专家名称4 nation Varchar 20 名词5 sex Varchar 2 性别6 unitname Varchar 50 所在单位7 title Varchar 50 职称8 tel Varchar 15 电话9 introduction text 研究介绍10 temp1 Varchar 100 预留字段111 temp2 Varchar 100 预留字段212 temp3 Varchar 100 预留字段313 temp4 Varchar 100 预留字段4单位用户表结构(unit)序号列名PK FK 属性长度备注1 unitidY Integer 11 该表的主键,唯一标示,自动增长2 uid Y Integer 20 用户组名称3 unitname Varchar 50 单位名称4 address Varchar 50 单位地址5 corporation Varchar 20 单位法人6 investment Varchar 10 单位资产7 type Varchar 20 单位性质8 tel Varchar 15 单位电话9 email Varchar 30 单位邮箱10 fax Varchar 15 单位传真11 zipcode Varchar 6 单位邮编12 introduction text 单位介绍13 temp1 Varchar 100 预留字段114 temp2 Varchar 100 预留字段215 temp3 Varchar 100 预留字段316 temp4 Varchar 100 预留字段4项目表结构(project)序号列名PK FK 属性长度备注1 project_idY Integer 11 该表的主键,唯一标示,自动增长2 categoryid Y Integer 11 项目ID',3 unitid Y Integer 11 单位ID4 applicant Varchar 15 申请人5 grade Varchar 20 职称6 education Varchar 20 学历7 fill_date date 填报时间8 status varchar 1000 现状9 future varchar 1000 应用前景10 analysis varchar 500 重点难点分析11 way varchar 500 研究方法12 result varchar 500 预期研究成果13 projectname varchar 100 申请项目名称14 capital varchar 20 申请资金15 expert_opinio varchar 500 专家评审意见n16 score Decimal 11 专家评分17 ispass Integer 14 是否通过审批18 temp1 varchar 100 预留字段119 temp2 varchar 100 预留字段220 temp3 varchar 100 预留字段321 temp4 varchar 100 预留字段43.1.2.10 注释设计无3.1.2.11 限制条件无3.1.2.12 测试计划无3.1.3专家用户管理3.1.3.1 功能实现专家用户的修改和删除3.1.3.2 输入项点击管理员管理界面的专家用户管理,进入管理界面1修改用户:点击专家用户的修改链接,更改名称、单位、国籍等基本信息。