基于javaweb+SSM医院人事管理系统员工考勤管理系统
开发工具:eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
/** Creates a non-strict filter of this $coll.
*
* Note: the difference between `c filter p` and `c withFilter p` is that
* the former creates a new collection, whereas the latter only
* restricts the domain of subsequent `map`, `flatMap`, `foreach`,
* and `withFilter` operations.
* $orderDependent
*
* @param p the predicate used to test elements.
* @return an object of class `WithFilter`, which supports
* `map`, `flatMap`, `foreach`, and `withFilter` operations.
* All these operations apply to those elements of this $coll which
* satisfy the predicate `p`.
*/
def withFilter(p: A => Boolean): FilterMonadic[A, Repr] = new WithFilter(p)
/** A class supporting filtered operations. Instances of this class are
$("#commentForm").validate();
});
$.validator.setDefaults({
submitHandler: function() {
parent.layer.msg('修改成功!',{icon: 1});
form.submit();
}
});
</script>
</body>
</html>
<%@page import="com.demo.entity.Employee"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<% String path = request.getContextPath(); %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="renderer" content="webkit">
<title>HR医院人事管理系统 - 主页</title>
var scanned = List(z)
var acc = z
for (x <- reversed) {
acc = op(x, acc)
scanned ::= acc
}
val b = bf(repr)
for (elem <- scanned) b += elem
b.result
}
/** Selects the first element of this $coll.
* $orderDependent
* @return the first element of this $coll.
* @throws `NoSuchElementException` if the $coll is empty.
*/
</li>
</ul></li>
<li class="hidden-folded padder m-t m-b-sm text-muted text-xs">
<span class="ng-scope">部门</span>
</li>
<li><a href="#">
<i class="fa fa-sitemap"></i>
<span class="nav-label">部门管理</span><span class="fa arrow"></span>
</a>
<ul class="nav nav-second-level">
<li><a class="J_menuItem" href="<%=path %>/department/listPage.do?pageNo=1">部门管理</a>
</li>
<li><a class="J_menuItem" href="<%=path %>/position/listPage.do?pageNo=1">职称管理</a>
</li>
<meta http-equiv="refresh" content="0;ie.html" />
<![endif]-->
<link rel="shortcut icon" href="favicon.ico">
<link href="<%=path %>/css/bootstrap.min.css?v=3.3.6" rel="stylesheet">
<link href="<%=path %>/css/font-awesome.min.css?v=4.4.0" rel="stylesheet">
<link href="<%=path %>/css/animate.css" rel="stylesheet">
<link href="<%=path %>/css/style.css?v=4.1.0" rel="stylesheet">
</head>
<body class="fixed-sidebar full-height-layout gray-bg" style="overflow: hidden">
<div id="wrapper">
<!--左侧导航开始-->
<nav class="navbar-default navbar-static-side" role="navigation">
<div class="nav-close">
<i class="fa fa-times-circle"></i>
</div>
<div class="sidebar-collapse">
<ul class="nav" id="side-menu">
<li class="nav-header">
<div class="dropdown profile-element">
define method simplify-locator
(locator :: <directory-locator>)
=> (simplified-locator :: <directory-locator>)
let path = locator.locator-path;
let relative? = locator.locator-relative?;
let resolve-parent? = ~locator.locator-might-have-links?;
let simplified-path
= simplify-path(path,
resolve-parent?: resolve-parent?,
relative?: relative?);
if (path ~= simplified-path)
make(object-class(locator),
@RequestMapping("/{id}/update.do")
public String updateById(@PathVariable Integer id, History history, String date){
history.setId(id);
history.setBirthday(MTimeUtil.stringParse(date));
historyService.updateById(history);
return "redirect:/history/retireListPage.do?pageNo=1";
}
@RequestMapping("/list.do")
public String list(Model model){
List<History> hList = historyService.selectList();
model.addAttribute("hList", hList);
return "admin/history_list";
}
}
package com.demo.entity;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
/**
* 请假表
</li>
<li><a class="J_menuItem" href="<%=path %>/overtime/<%=employee.getEmployeeNumber() %>/oneself.do?pageNo=1">查看加班信息</a>
</li>
<li><a class="J_menuItem" href="<%=path %>/leave/toAdd.do">申请请假</a>
</li>
<li><a class="J_menuItem" href="<%=path %>/leave/oneself.do?pageNo=1">查看请假记录</a>
</li>
</ul></li>
<li class="hidden-folded padder m-t m-b-sm text-muted text-xs">
<span class="ng-scope">员工</span>
</li>
<li><a href="graph_metrics.html">
<i class="fa fa fa-user-md"></i>
<span class="nav-label">员工管理</span>
<span class="fa arrow"></span>
</a>
<ul class="nav nav-second-level">
<li><a class="J_menuItem" href="<%=path %>/employee/listPage.do?pageNo=1">在职员工管理</a>
</li>
<li><a class="J_menuItem" href="<%=path %>/history/retireListPage.do?pageNo=1">离休员工管理</a>
</li>
<li><a class="J_menuItem" href="<%=path %>/history/list.do">员工档案管理</a>
</li>
<li><a class="J_menuItem" href="<%=path %>/move/list.do">员工调动记录</a>
</li>
if chain then _(obj).chain() else obj
# A method to easily add functions to the OOP wrapper.
addToWrapper = (name, func) ->
wrapper.prototype[name] = ->
args = _.toArray arguments
unshift.call args, this._wrapped
result func.apply(_, args), this._chain
# Add all ofthe Underscore functions to the wrapper object.
_.mixin _
# Add all mutator Array functions to the wrapper.
locator.locator-relative?
& locator.locator-path = #[#"self"]
end method current-directory-locator?;
define method locator-directory
(locator :: <directory-locator>) => (parent :: false-or(<directory-locator>))
let path = locator.locator-path;
unless (empty?(path))
make(object-class(locator),
server: locator.locator-server,
path: copy-sequence(path, end: path.size - 1),
relative?: locator.locator-relative?)
end
end method locator-directory;
/// Simplify locator
define open generic simplify-locator
public void deleteEmployee(Integer id) {
//先查询再删除,否则NullPointerException
Employee employee = baseMapper.selectById(id);
//删除在职员工记录
baseMapper.deleteById(id);
//将员工档案表中的状态改为离职
History history = historyMapper.selectByNumber(employee.getEmployeeNumber());
history.setStatus("离职");
historyMapper.updateById(history);
}
@Override
public Page<Employee> search(String input, int pageNo) {
Page<Employee> page = new Page<Employee>(pageNo, 10, "id");
运行环境
Java≥8、Tomcat≥7.0、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
技术框架
JavaBean MVC JSP SSM(Spring SpringMVC MyBatis) MySQL Bootstrap……
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
人事员工考勤管理,登录用户分为:
人事部主任(超级管理员)
人事部员工(管理员)
部门主任(部门管理)
部门员工(普通员工)
个人信息维护、员工管理、请假、签到打卡、审批、部门管理、职位管理等……