请假系统文档_请假系统

2020-02-28 其他范文 下载本文

请假系统文档由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“请假系统”。

《开源框架技术》

案例报告书

题 目 学生姓名 学 号 指导教师 系 部 专业班级 时 间

在线请假系统

1.需求分析

现在Internet上随处可见网上商城、网上等网站,让消费者足不出户就可购买到想到的商品,不仅方便了消费者,也让拥有电子商务网站的企业能及时向广大客户推销产品、构建企业形象、赢得利润。电子商务系统与传统的面对面的营销方式相比,具有不可比拟的优势,如销售成本与物流大大降低、信息传输及时等。为适应电子商务发展的要求,决定建设一个网上书店系统,实现在网上销售书藉。

1.1系统用户

使用在线请假系统的用户主要有两种:一种是学生,可以通过系统请假、修改未审批的请假单、查看已审批的请假单并打印请假单信息、查看请假记录;另一种是老师,可以通过请假系统审批学生请假、查看所有学生的请假记录。

1.2系统功能需求

用户即学生或老师登录在线请假系统之后,可以进行相应的操作。学生可以通过系统请假、修改未审批的请假单、查看已审批的请假单并打印请假单信息、查看请假记录。老师可以通过请假系统审批学生请假、查看所有学生的请假记录。

2.概要设计

2.1用户登录

用户登录时,系统会对用户的身份进行验证,以用户名和密码以及权限值为标准验证,当用户名和密码都匹配且权限值为0时,登录到老师登录主界面,当用户名和密码都匹配且权限值为1时,登录到学生登录主界面,2.2学生操作管理

当学生登录成功之后,将可以请假。首先,学生按照给出的格式填写好申请。然后系统会根据审批流程递交给老师惊醒审批,申请被存入数据库中,默认状态为“未审批”。此外,学生还可以在老师未审批之前对请假单进行修改。老师审批完请假但之后,学生可以查看请假单,并且打印请假单。2.3老师操作管理

对应着学生请假请求,老师应该完成对学生请假的审批,审批结果可以使同意或不同意。在审批时,是通过修改请假单的状态,由“未审批”修改为“同意”或“不同意”来完成的。此外,作为管理学生的人员,老师还可以查看学生的请假记录。

3.界面展示与知识点解析

登录页面:登录页面通过用户名、密码、权限的匹配来控制,当权限power值为1时,为老师登录;为1时,为学生登录。

当用户输入用户名密码之后,会从数据库里匹配,寻找用户名和密码一致的用户,之后再通过该用户的power值来判断用户的身份。

部分核心代码:

Action

UserDao userdao=new UserDao(con);User user=userdao.selectByUserNamePaWord(username, paword);if(user.getUsername().equals(username)&&user.getPaword().equals(paword)&&user.getPower().equals(“1”)){ return “studentsucce”;}elseif(user.getUsername().equals(username)&&user.getPaword().equals(paword)&&user.getPower().equals(“0”)){

return “teachersucce”;}else{ return “fail”;} Dao:

public User selectByUserNamePaWord(String username,String paword)throws Exception{ Connection con = DBConn.getConnection();String sql=“select * from userinfo where username=? and

paword=?”;

pstmt = con.prepareStatement(sql);pstmt.setString(1, username);pstmt.setString(2, paword);rs= pstmt.executeQuery();User user=new User();if(rs.next()){

}

} DBConn.closeAll(pstmt, rs);return user;user.setUsername(rs.getString(“username”).trim());user.setPaword(rs.getString(“paword”).trim());user.setClamate(rs.getString(“clamate”).trim());user.setPower(rs.getString(“power”).trim());

学生登录主页面:左侧为选择栏,右侧填写请假单,其中姓名为只读的,即:学生请假时,姓名不用自己填写,避免了填错姓名,造成为别人请假的情况,请假日期,用的是javascript。

部分代码如下:

请假时间:

点击左侧全部请假单信息,右侧会显示该学生的全部请假信息,请假单信息可以是审批通过的、审批为通过的和未审批的。

部分代码如下:

Action public String mylist()throws Exception{

Connection con = DBConn.getConnection();MyListDao mylistDao = new MyListDao(con);list =(List)mylistDao.selectMyList(username);HttpServletRequest request = ServletActionContext.getRequest();

} request.setAttribute(“list”, list);return “succe”;

Dao public List selectMyList(String username){ String sql=“select * from content where username='”+username+“'”;

List list =null;try{

pstmt = con.prepareStatement(sql);rs = pstmt.executeQuery();list = new ArrayList();while(rs.next()){

Ask ask = new Ask();

ask.setId(rs.getInt(“id”));

ask.setUsername(rs.getString(“username”));ask.setClamate(rs.getString(“clamate”));ask.setStartdate(rs.getString(“startdate”));

}

}

ask.setEnddate(rs.getString(“enddate”));ask.setReason(rs.getString(“reason”));ask.setState(rs.getString(“state”));list.add(ask);

}catch(Exception e){ e.printStackTrace();

}return list;Jsp页面

姓名

开始日期

结束日期

原因

审批状态

点击左侧待审批请假单,右侧会显示该学生的未被审批的请假信息,学生可以在老师未审批之前删除请假单。删除请假单之前,会弹出确认框,点击确定时该记录会被删除,取消时,不会删除。

点击左侧已审批请假单,右侧会显示该学生的被审批的请假信息,学生可以通过查看detail来查看请假单信息,并打印。

部分代码如下:

value=“id”/>“>

打印请假单页面:

关键代码如下:

请假单

姓名:

” readonly=“readonly”/>

请假时间:

value=“” size=“20” maxlength=“10” readonly=“readonly”>

value=“” size=“20” maxlength=“10” readonly=“readonly”>

请假理由:

老师意见:

value=“” readonly=“readonly”/>

onclick=“window.focus();window.print()”> 老师登录成功主页面:左侧为选择项:分别有全部请假单、未审批请假单、已审批的请假单。右侧为全部请假单信息。在操作栏里,老师可以执行同意或不同意操作。

Jsp页面:

value=“id”/>“>

”>

Action public String list()throws Exception{ Connection con = DBConn.getConnection();ListDao listDao=new ListDao(con);

list =(List)listDao.selectList();HttpServletRequest request = ServletActionContext.getRequest();

} request.setAttribute(“list”, list);return “succe”;Dao String sql=“select * from content”;

List list =null;try{

pstmt = con.prepareStatement(sql);rs = pstmt.executeQuery();list = new ArrayList();while(rs.next()){

Ask ask = new Ask();

ask.setId(rs.getInt(“id”));

ask.setUsername(rs.getString(“username”));ask.setClamate(rs.getString(“clamate”));ask.setStartdate(rs.getString(“startdate”));ask.setEnddate(rs.getString(“enddate”));ask.setReason(rs.getString(“reason”));ask.setState(rs.getString(“state”));list.add(ask);

未审批请假单页面:左侧为选择项:分别有全部请假单、未审批请假单、已审批的请假单。右侧为未审批请假单信息。在操作栏里,老师可以执行同意或不同意操作,此操作可以减轻老师的审批负担。

代码如下:

public List selectUnList(){

} String sql=“select * from content where state='未审批'”;List list =null;try{

pstmt = con.prepareStatement(sql);rs = pstmt.executeQuery();list = new ArrayList();while(rs.next()){

}

Ask ask = new Ask();

ask.setId(rs.getInt(“id”));

ask.setUsername(rs.getString(“username”));ask.setClamate(rs.getString(“clamate”));ask.setStartdate(rs.getString(“startdate”));ask.setEnddate(rs.getString(“enddate”));ask.setReason(rs.getString(“reason”));ask.setState(rs.getString(“state”));list.add(ask);

}catch(Exception e){ } e.printStackTrace();

return list;已审批请假单页面:左侧为选择项:分别有全部请假单、未审批请假单、已审批的请假单。右侧为已审批请假单信息,在这一栏目,老师可以查看全部学生的请假历史记录。

退出:通过javascript控制,当用户点击退出时,弹出确认框,当用户选择确定时,退出系统;当用户选择取消时,不退出系统。

部分代码如下:

“安全退出”

4.心得体会 本次的设计是基于struts2开发的在线请假系统,与以往设计不同的是,这次我在程序源代码是实现了模块化,使得每一个功能既能相互独立又能相互关联,方便日后的维护以及修改。本在线请假系统整体来说并不是很完善,实现主要功能,但还有些功能未能实现,课下在时间的允许下我会继续完善相关的功能。

在本次做实践设计的过程中,使我深深的了解到自己的不足,有很多东西还有待去了解和学习。刚开始做设计时,我深受以前做课程设计的想法干扰,无从下手,后来慢慢摸索,参考老师带着做的部分,上网查找诸多资料,最终把设计完成了。

在制作设计期间,虽然花了诸多功夫在上边,但还有诸多的功能还不够完善,只是实现了一些基本的功能。虽然此次的网站设计有诸多坎坷,但我并没有被吓到。碰到问题我都百度查找资料,通过此次的课程设计,使我受益匪浅。

《请假系统文档.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
请假系统文档
点击下载文档
相关专题 请假系统 文档 系统 请假系统 文档 系统
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文