基于javaweb+mysql的springbootoa人事管理系统(java+springboot+layui+html+mysql)
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SpringBootoa人事管理系统(java+springboot+layui+html+mysql)
项目介绍:
员工管理、部门管理、职位管理、薪资管理、考勤管理、请假管理、奖惩管理、日志管理、文件下载、文件上传、图表展示
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本; 6.是否Maven项目:是;
技术栈
JSP +SpringBoot + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中springmvc-servlet.xml配置文件中的数据库配置改为自己的配置; 4. 运行项目
@RequestMapping(value = "/uploadFile", method = RequestMethod.POST)
public Map<String, Object> uploadFile(HttpServletRequest servletRequest, @RequestParam("file") MultipartFile file, HttpSession session, String emp, String date)
throws IOException {
// 如果文件内容不为空,则写入上传路径
if (!file.isEmpty()) {
// 上传文件路径
String UploadPath = FileUtil.projectRootDir + "\\src\\main\\resources\\static\\health";
//取得原文件名字
String fileName = file.getOriginalFilename();
//取得文件扩展名
String suffix = fileName.substring(fileName.lastIndexOf("."));
//提取系统时间作为新文件名
String prefix = date.replaceAll("-", "");
System.out.println(prefix);
//保存路径
// 上传文件名
String filename = emp + prefix + "jk" + UUID.randomUUID() + suffix;
File filepath = new File(UploadPath, filename);
// 判断路径是否存在,没有创建
if (!filepath.getParentFile().exists()) {
filepath.getParentFile().mkdirs();
}
// 将上传文件保存到一个目标文档中
File file1 = new File(UploadPath + File.separator + filename);
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file1));
out.write(file.getBytes());
out.flush();
out.close();
// file.transferTo(file1);
Map<String, Object> res = new HashMap<>();
// 返回的是一个url对象,图片名称
res.put("url", filename);
return res;
} else {
return null;
}
}
@ResponseBody
@RequestMapping(value = "/uploadFile2", method = RequestMethod.POST)
public Map<String, Object> uploadFile2(HttpServletRequest servletRequest, @RequestParam("file") MultipartFile file, HttpSession session, String emp, String date)
throws IOException {
// 如果文件内容不为空,则写入上传路径
if (!file.isEmpty()) {
// 上传文件路径
/**
* 日志控制层
*/
@Controller
@RequestMapping("/log")
public class LogController {
//常量定义
private static final String LOG_QUERY_SUCCESS = "查询完毕";
private static final String LOG_INSERT_SUCCESS = "插入成功";
private static final String LOG_DELETE_SUCCESS = "删除成功";
@Autowired
LogService logService;
@RequestMapping("")
public String toLogUi(){
return "log/loglist";
}
/**
* queryLogList 查询所有日志信息
* @param logExample
* @return
*/
@RequestMapping("/list")
@ResponseBody
public Result queryLogList(LogExample logExample) {
LogExample.Criteria criteria = logExample.createCriteria();
criteria.andCreatedByIsNotNull();
List<Log> logsList = logService.queryLogList(logExample);
return Result.success(LOG_QUERY_SUCCESS, logsList);
}
/**
* @param msg
* @return ApiResult
* @throws UnknownHostException 插入日志 insertLog
*/
@RequestMapping("/add")
@ResponseBody
public Result insertLog(Employee employee, String msg) throws UnknownHostException {
Log log = new Log();
InetAddress addr = InetAddress.getLocalHost();
log.setLoginIp(addr.getHostAddress());
log.setLoginName(employee.getUsername());
log.setLoginMsg(msg);
//添加部门页面跳转
@RequestMapping("/leaveAdd")
public String toAttendanceAdd(Model model) {
return "leave/leaveadd";
}
@PostMapping("/add")
@ResponseBody
public Result<Object> addaAttendance(Leave leave,HttpSession session) throws ParseException {
SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = time.parse(time.format(new Date()));
Employee loginUser = (Employee) session.getAttribute("loginUser");
leave.setEmployee_name(loginUser.getName());
leave.setStatus(0);
leave.setSubtime(date);
System.out.println(leave);
leaveService.addLeave(leave);
// Date starttime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(start);
// Date endtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(end);
return Result.success("提交申请成功");
}
}
package com.xlk.emp.controller;
@RequestMapping("/empreward")
@Controller
public class RewardController2 {
@Autowired
DepartmentService departmentService;
@Autowired
RewardService rewardService;
@Autowired
EmployeeService employeeService;
@RequestMapping("")
public String toRewardUi(Model model){
model.addAttribute("deptList",departmentService.queryAll());
return "reward/rewardList2";
}
//添加部门页面跳转
@RequestMapping("/AttendanceAdd")
public String toAttendanceAdd(Model model) {
model.addAttribute("empList", employeeService.queryAll());
return "attendance/attendanceadd";
}
@PostMapping("/add")
@ResponseBody
public Result<Object> addaAttendance(Attendance attendance, String start, String end) throws ParseException {
Date starttime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(start);
Date endtime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(end);
Long time = endtime.getTime() - starttime.getTime();
Double worktime = time / 1000.0 / 60.0 / 60.0;
attendance.setWorktime(DoubleFX.getDoubleToString(worktime, 2));
attendance.setStarttime(starttime);
attendance.setEndtime(endtime);
attendanceService.addAttendance(attendance);
return Result.success("考勤补录成功");
}
@RequestMapping("/empadd")
@ResponseBody
public Result<Object> EmpAddaAttendance(HttpSession session) throws ParseException {
SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Employee employee = (Employee) session.getAttribute("loginUser");
boolean flag = attendanceService.queryByEmpAndDate(employee.getName(), new java.sql.Date(new Date().getTime())) == null;
if (!flag) {
return Result.fail("你今日已打过卡了");
} else {
Attendance attendance = new Attendance();
attendance.setStatus(2);
attendance.setEmployee_name(employee.getName());
attendance.setStartDate(new java.sql.Date(new Date().getTime()));
attendance.setStarttime(time.parse(time.format(new Date())));
attendanceService.addAttendance(attendance);
return Result.success(employee.getName() + "打卡成功");
}
}
@GetMapping("/{id}")
public String queryAttendanceById(@PathVariable("id") Integer id, Model model) {
}
@RequestMapping("/rewardAdd")
public String toRewardAdd(Model model){
model.addAttribute("deptList",departmentService.queryAll());
return "reward/rewardadd";
}
@PostMapping("/add")
@ResponseBody
public Result<Object> addReward(Reward reward)
{
reward.setDepartment_name(departmentService.queryById(reward.getDepartment_name()).getName());
reward.setEmployee_name(employeeService.queryEmpById(Integer.valueOf(reward.getEmployee_name())).getName());
rewardService.addReward(reward);
return Result.success("添加奖惩成功");
}
//获取单个员工信息
@GetMapping("/{id}")
public String queryRewardById(@PathVariable("id") Integer id, Model model){
model.addAttribute("reward",rewardService.queryById(id));
return "reward/rewardedit";
}
@RequestMapping("/update")
@ResponseBody
public Result<Object> updateReward(Reward reward)
{
Reward rewardold=rewardService.queryById(reward.getId());
rewardold.setMessage(reward.getMessage());
rewardold.setPrice(reward.getPrice());
rewardold.setStatus(reward.getStatus());
rewardold.setTheme(reward.getTheme());
rewardService.updateReward(reward);
return Result.success("修改成功");
}
@PostMapping("/delete/{ids}")
@ResponseBody
@RequestMapping("/dept")
@Controller
public class DeptController {
@Autowired
DepartmentService departmentService;
@GetMapping("")
public String toDeptListUI(){
return "dept/deptList";
}
@GetMapping("/list")
@ResponseBody//返回Json
public Result<Object> getDeptList(DeptQuery param){
List<Employee> list=departmentService.getDeptList(param);
Long count=departmentService.countDeptList(param);
return Result.success("success",list,count);
}
//添加部门
@PostMapping("/add")
@ResponseBody
public Result<Object> addDept(Department department)
{
System.out.println(department);
departmentService.addDept(department);
return Result.success("添加部门成功");
}
//添加部门页面跳转
@RequestMapping("/deptAdd")
public String toDeptAdd(){
return "dept/deptadd";
}
//删除部门
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteDeptById(@PathVariable("ids") String ids)
{
departmentService.deleteDeptById(ids);
return Result.success("删除部门成功");
}
//获取单个部门信息
@GetMapping("/{id}")
@RequestMapping("/loginout")
@ResponseBody
public Result<Object> loginout(HttpSession session){
session.removeAttribute("loginUser");
return Result.success("退出成功");
}
@RequestMapping("/updatePassword")
public Result<Object> updatePassword(HttpSession session,String old_password,String new_password,String again_password){
User loginUser = (User) session.getAttribute("loginUser");
//验证密码
BCryptPasswordEncoder passwordEncoder=new BCryptPasswordEncoder();//新建springSecurity验证
boolean matches = passwordEncoder.matches(old_password, loginUser.getPassword());//验证密码
System.out.println(matches);
if(matches)
{
if(new_password.equals(again_password))
{
loginUser.setPassword(passwordEncoder.encode(new_password));
userService.updatePassword(loginUser);
return Result.success("修改密码成功");
}
else
{
return Result.fail("二次重复密码不一致");
}
}
return Result.success("老密码错误");
}
}
package com.xlk.controller;
public class FileDownloadController {
@Autowired
xlkFileService xlkFileService;
//跳转下载路径
@RequestMapping("")
public String toFileDownloadUi()
{
return "file/fileList";
}
//遍历返回File
@GetMapping("/list")
@ResponseBody
public Result<Object> getDeptList(FileQuery param){
List<xlkFile> list=xlkFileService.getFileList(param);
Long count=xlkFileService.countFileList(param);
return Result.success("success",list,count);
}
//删除文件
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteFileById(@PathVariable("ids") String ids)
{
List<xlkFile> files=xlkFileService.queryFileByIds(ids);
if(files!=null)
{
for (xlkFile file : files) {
File filedelete=new File(file.getFilesrc());
if(filedelete.exists()&&filedelete.isFile())
{
// filedelete.delete();
xlkFileService.deleteFileById(ids);
}
}
return Result.success("删除文件成功");
}
else
{
String UploadPath = FileUtil.projectRootDir + "\\src\\main\\resources\\static\\health";
//取得原文件名字
String fileName = file.getOriginalFilename();
//取得文件扩展名
String suffix = fileName.substring(fileName.lastIndexOf("."));
//提取系统时间作为新文件名
String prefix = date.replaceAll("-", "");
System.out.println(prefix);
//保存路径
// 上传文件名
String filename = emp + prefix + "jk" + UUID.randomUUID() + suffix;
File filepath = new File(UploadPath, filename);
// 判断路径是否存在,没有创建
if (!filepath.getParentFile().exists()) {
filepath.getParentFile().mkdirs();
}
// 将上传文件保存到一个目标文档中
File file1 = new File(UploadPath + File.separator + filename);
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file1));
out.write(file.getBytes());
out.flush();
out.close();
// file.transferTo(file1);
Map<String, Object> res = new HashMap<>();
// 返回的是一个url对象,图片名称
res.put("url", filename);
return res;
} else {
return null;
}
}
@ResponseBody
@RequestMapping(value = "/uploadFile2", method = RequestMethod.POST)
public Map<String, Object> uploadFile2(HttpServletRequest servletRequest, @RequestParam("file") MultipartFile file, HttpSession session, String emp, String date)
throws IOException {
// 如果文件内容不为空,则写入上传路径
if (!file.isEmpty()) {
// 上传文件路径
String UploadPath = FileUtil.projectRootDir + "\\src\\main\\resources\\static\\health";
//取得原文件名字
String fileName = file.getOriginalFilename();
//取得文件扩展名
String suffix = fileName.substring(fileName.lastIndexOf("."));
//提取系统时间作为新文件名
String prefix = date.replaceAll("-", "");
System.out.println(prefix);
public Result<Object> EmpupdateAttendance(HttpSession session) throws ParseException {
SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Employee employee = (Employee) session.getAttribute("loginUser");
Attendance attendance = attendanceService.queryByEmpAndDate(employee.getName(), new java.sql.Date(new Date().getTime()));
Date date = time.parse(time.format(new Date()));
if (attendance == null) {
return Result.fail("你今日还未打卡");
} else {
Long time1 = date.getTime() - attendance.getStarttime().getTime();
Double worktime = time1 / 1000.0 / 60.0 / 60.0;
if (worktime <= 0) {
return Result.fail("工作时长不能为0或小于0");
} else {
if (attendance.getStatus() == 2) {
attendance.setStatus(1);
attendance.setWorktime(DoubleFX.getDoubleToString(worktime, 2));
attendance.setEndtime(date);
attendanceService.updateAttendance(attendance);
return Result.success("下班成功");
} else {
return Result.fail("您今日已打卡下班,如打卡有误,请联系管理员修改");
}
}
}
}
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteAttendance(@PathVariable("ids") String ids) {
attendanceService.deleteAttendanceById(ids);
return Result.success("删除考勤成功");
}
}
package com.xlk.controller;
sqlfile.setFilesize(file.getSize());
sqlfile.setFilesrc(UPLOAD_FILE_PATH+"\\"+file.getOriginalFilename());
sqlfile.setFiletype(fileTyle[suffixIndex]);
System.out.println(sqlfile);
xlkFileService.addXlkFile(sqlfile);
if (!file.isEmpty()) {
Map<String, String> resObj = new HashMap<>(MAP_SIZE);
try {
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(new File(UPLOAD_FILE_PATH, file.getOriginalFilename())));
out.write(file.getBytes());
out.flush();
out.close();
} catch (IOException e) {
return Result.fail("上传失败");
}
return Result.success("上传成功");
} else {
return null;
}
}
}
package com.xlk.controller;
@Controller
@RequestMapping("/filedDownload")
public class FileDownloadController {
@Autowired
xlkFileService xlkFileService;
//跳转下载路径
@RequestMapping("")
public String toFileDownloadUi()
{
Employee loginUser = (Employee) session.getAttribute("loginUser");
//验证密码
boolean matches =old_password.equals(loginUser.getPassword());
if(matches)
{
if(new_password.equals(again_password))
{
loginUser.setPassword(new_password);
employeeService.updatePassword(loginUser);
return Result.success("修改密码成功");
}
else
{
return Result.fail("二次重复密码不一致");
}
}
return Result.success("老密码错误");
}
}
package com.xlk.controller;
@Controller
@RequestMapping("/salary")
public class SalaryController {
@Autowired
EmployeeService employeeService;
@Autowired
SalaryService salaryService;
@Autowired
DepartmentService departmentService;
@RequestMapping("")
public String toSalaryUi(Model model){
return "salary/salarylist";
}
// 上传文件路径
String UploadPath = FileUtil.projectRootDir + "\\src\\main\\resources\\static\\health";
//取得原文件名字
String fileName = file.getOriginalFilename();
//取得文件扩展名
String suffix = fileName.substring(fileName.lastIndexOf("."));
//提取系统时间作为新文件名
String prefix = date.replaceAll("-", "");
System.out.println(prefix);
//保存路径
// 上传文件名
String filename = emp + prefix + "xc" + UUID.randomUUID() + suffix;
File filepath = new File(UploadPath, filename);
// 判断路径是否存在,没有创建
if (!filepath.getParentFile().exists()) {
filepath.getParentFile().mkdirs();
}
// 将上传文件保存到一个目标文档中
File file1 = new File(UploadPath + File.separator + filename);
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file1));
out.write(file.getBytes());
out.flush();
out.close();
// file.transferTo(file1);
Map<String, Object> res = new HashMap<>();
// 返回的是一个url对象,图片名称
res.put("url", filename);
return res;
} else {
return null;
}
}
@RequestMapping("/update")
@ResponseBody
public Result<Object> updateHealth(String id, String employee_name, String temperature, String pic,String pic2) throws ParseException {
System.out.println(pic2);
Health health = healthService.queryById(Integer.valueOf(id));
if (health.getEmployee_name().equals(employee_name)) {
health.setTemperature(Double.valueOf(temperature));
health.setImage("image\\" + pic);
health.setImage2("image\\" + pic2);
healthService.updateHealth(health);
return Result.success("修改成功");
public Result<Object> addReward(Reward reward)
{
reward.setDepartment_name(departmentService.queryById(reward.getDepartment_name()).getName());
reward.setEmployee_name(employeeService.queryEmpById(Integer.valueOf(reward.getEmployee_name())).getName());
rewardService.addReward(reward);
return Result.success("添加奖惩成功");
}
//获取单个员工信息
@GetMapping("/{id}")
public String queryRewardById(@PathVariable("id") Integer id, Model model){
model.addAttribute("reward",rewardService.queryById(id));
return "reward/rewardedit";
}
@RequestMapping("/update")
@ResponseBody
public Result<Object> updateReward(Reward reward)
{
Reward rewardold=rewardService.queryById(reward.getId());
rewardold.setMessage(reward.getMessage());
rewardold.setPrice(reward.getPrice());
rewardold.setStatus(reward.getStatus());
rewardold.setTheme(reward.getTheme());
rewardService.updateReward(reward);
return Result.success("修改成功");
}
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteRewardById(@PathVariable("ids") String ids)
{
rewardService.deleteRewardById(ids);
return Result.success("删除成功");
}
}
package com.xlk.emp.controller;
}
package com.xlk.controller;
@Controller
@RequestMapping("/salary")
public class SalaryController {
@Autowired
EmployeeService employeeService;
@Autowired
SalaryService salaryService;
@Autowired
DepartmentService departmentService;
@RequestMapping("")
public String toSalaryUi(Model model){
return "salary/salarylist";
}
@GetMapping("/list")
@ResponseBody//返回Json
public Result<Object> getSalaryList(SalaryQuery param) {
List<Salary> list = salaryService.getSalaryList(param);
System.out.println(list);
Long count = salaryService.countSalaryList(param);
System.out.println(count);
return Result.success("success", list, count);
}
//添加部门页面跳转
@RequestMapping("/salaryAdd")
public String toSalaryAdd(Model model) {
model.addAttribute("deptList",departmentService.queryAll());
return "salary/salaryadd";
@Controller
@RequestMapping("/filedDownload")
public class FileDownloadController {
@Autowired
xlkFileService xlkFileService;
//跳转下载路径
@RequestMapping("")
public String toFileDownloadUi()
{
return "file/fileList";
}
//遍历返回File
@GetMapping("/list")
@ResponseBody
public Result<Object> getDeptList(FileQuery param){
List<xlkFile> list=xlkFileService.getFileList(param);
Long count=xlkFileService.countFileList(param);
return Result.success("success",list,count);
}
//删除文件
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteFileById(@PathVariable("ids") String ids)
{
List<xlkFile> files=xlkFileService.queryFileByIds(ids);
if(files!=null)
{
for (xlkFile file : files) {
File filedelete=new File(file.getFilesrc());
if(filedelete.exists()&&filedelete.isFile())
{
// filedelete.delete();
xlkFileService.deleteFileById(ids);
}
}
return Result.success("删除文件成功");
}
else
{
return Result.fail("未查询到文件数据,请刷新重试");
List<Employee> list=employeeService.getEmpList(param);
Long count=employeeService.countEmpList(param);
return Result.success("success",list,count);
}
//添加员工
@PostMapping("/add")
@ResponseBody
public Result<Object> addEmp(Employee employee,String dept_id,String level_id)
{
employee.setEmployee_id(EmpUid.getID());
employee.setDepartment(departmentService.queryById(dept_id));
employee.setLevel(levelService.queryById(level_id));
employeeService.addEmployee(employee);
return Result.success("添加员工成功");
}
//删除员工
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteEmpById(@PathVariable("ids") String ids)
{
employeeService.deleteEmpById(ids);
return Result.success("删除员工成功");
}
//获取单个员工信息
@GetMapping("/{id}")
public String queryEmpById(@PathVariable("id") Integer id,Model model){
//获取部门信息和级别信息
List<Department> deptList=departmentService.queryAll();
List<Level> levelList=levelService.queryAll();
model.addAttribute("levelList",levelList);
model.addAttribute("deptList",deptList);
//获取员工信息
Employee employee = employeeService.queryEmpById(id);
model.addAttribute("emp",employee);
return "emp/empedit";
}
//更新员工
@RequestMapping("/update")
@ResponseBody
public Result<Object> updateEmp(Employee employee,@Param("department.id") String dept_id,String level_id)
{
employee.setDepartment(departmentService.queryById(dept_id));
employee.setLevel(levelService.queryById(level_id));
employeeService.updateEmp(employee);
Employee loginUser = (Employee) session.getAttribute("loginUser");
Health health=new Health();
health.setEmployee_name(loginUser.getName());
health.setCreatedate(new Date());
health.setTemperature(Double.valueOf(temperature));
health.setImage("image\\" + pic);
health.setImage2("image\\" + pic2);
healthService.addHealth(health);
return Result.success("日报上传成功");
}
//添加部门页面跳转
@RequestMapping("/HealthAdd")
public String toAttendanceAdd(Model model,HttpSession session) {
Employee loginUser = (Employee) session.getAttribute("loginUser");
model.addAttribute("user",loginUser);
String startDate1 = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
model.addAttribute("date",startDate1);
return "health/healthadd";
}
}
package com.xlk.emp.controller;
package com.xlk.controller;
@Controller
@RequestMapping("/filedDownload")
public class FileDownloadController {
@Autowired
xlkFileService xlkFileService;
//跳转下载路径
@RequestMapping("")
public String toFileDownloadUi()
{
return "file/fileList";
}
//遍历返回File
@GetMapping("/list")
@ResponseBody
public Result<Object> getDeptList(FileQuery param){
List<xlkFile> list=xlkFileService.getFileList(param);
Long count=xlkFileService.countFileList(param);
return Result.success("success",list,count);
}
//删除文件
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteFileById(@PathVariable("ids") String ids)
{
List<xlkFile> files=xlkFileService.queryFileByIds(ids);
if(files!=null)
{
for (xlkFile file : files) {
@Controller
@RequestMapping("/emp")
public class EmpController {
@Autowired
private EmployeeService employeeService;
@Autowired
DepartmentService departmentService;
@Autowired
LevelService levelService;
//员工UI显示
@GetMapping("")
public String toEmpListUI(){
return "emp/emptable";
}
//添加员工页面跳转
@RequestMapping("/empAdd")
public String toEmpAdd(Model model){
List<Department> deptList=departmentService.queryAll();
List<Level> levelList=levelService.queryAll();
model.addAttribute("levelList",levelList);
model.addAttribute("deptList",deptList);
return "emp/empadd";
}
//查询员工
@GetMapping("/list")
@ResponseBody//返回Json
public Result<Object> getEmpList(EmpQuery param){
List<Employee> list=employeeService.getEmpList(param);
Long count=employeeService.countEmpList(param);
return Result.success("success",list,count);
}
//添加员工
@PostMapping("/add")
@ResponseBody
public Result<Object> addEmp(Employee employee,String dept_id,String level_id)
{
employee.setEmployee_id(EmpUid.getID());
employee.setDepartment(departmentService.queryById(dept_id));
employee.setLevel(levelService.queryById(level_id));
employeeService.addEmployee(employee);
//添加部门页面跳转
@RequestMapping("/salaryAdd")
public String toSalaryAdd(Model model) {
model.addAttribute("deptList",departmentService.queryAll());
return "salary/salaryadd";
}
@PostMapping("/add")
@ResponseBody
public Result<Object> addSalary(Salary salary)
{
if(!salary.getAd_salary().isEmpty())
{
String[] a=salary.getAd_salary().split("/");
salary.setAd_salary(a[0]);
if(a[1].equals("1"))
{
salary.setEnd_salary(salary.getBase_salary()+Double.valueOf(a[0]));
}
else
{
salary.setEnd_salary(salary.getBase_salary()-Double.valueOf(a[0]));
}
}
else
{
salary.setAd_salary(String.valueOf(0));
salary.setEnd_salary(salary.getBase_salary());
}
salary.setDept_name(departmentService.queryById(salary.getDept_name()).getName());
salary.setEmployee_name(employeeService.queryEmpById(Integer.valueOf(salary.getEmployee_name())).getName());
System.out.println(salary);
salaryService.addSalary(salary);
return Result.success("添加薪资成功");
}
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteSalaryById(@PathVariable("ids") String ids)
{
salaryService.deleteSalaryById(ids);
return Result.success("删除成功");
}
}
}
}
package com.xlk.controller;
/**
* 日志控制层
*/
@Controller
@RequestMapping("/log")
public class LogController {
//常量定义
private static final String LOG_QUERY_SUCCESS = "查询完毕";
private static final String LOG_INSERT_SUCCESS = "插入成功";
private static final String LOG_DELETE_SUCCESS = "删除成功";
@Autowired
LogService logService;
@RequestMapping("")
public String toLogUi(){
return "log/loglist";
}
/**
* queryLogList 查询所有日志信息
@Controller
@RequestMapping("/empleave")
public class LeaveController2 {
@Autowired
LeaveService leaveService;
@GetMapping("")
public String toLeaveListUI() {
return "leave/leaveList2";
}
@GetMapping("/list")
@ResponseBody//返回Json
public Result<Object> getLeaveList(LeaveQuery param, HttpSession session) {
Employee loginUser = (Employee) session.getAttribute("loginUser");
param.setEmployee_name(loginUser.getName());
List<Attendance> list = leaveService.getLeaveList(param);
Long count = leaveService.countLeaveList(param);
return Result.success("success", list, count);
}
@GetMapping("/{id}")
public String queryLeaveById(@PathVariable("id") Integer id, Model model){
model.addAttribute("leave",leaveService.queryLeaveById(id));
return "leave/leaveedit";
}
@RequestMapping("/update")
@ResponseBody
public Result<Object> updateLeave(String id,String status,String endmessage) throws ParseException {
SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = time.parse(time.format(new Date()));
@Controller
@RequestMapping("/level")
public class LevelController {
@Autowired
LevelService levelService;
@Autowired
DepartmentService departmentService;
@GetMapping("")
public String toLevelListUI(Model model){
model.addAttribute("deptList",departmentService.queryAll());
return "level/levelList";
}
@GetMapping("/list")
@ResponseBody
public Result<Object> getLevelList(LevelQuery param){
List<Level> list=levelService.getLevelList(param);
Long count=levelService.countLevelList(param);
return Result.success("success",list,count);
}
//添加职位
@PostMapping("/add")
@ResponseBody
public Result<Object> addLevel(Level level)
{
levelService.addLevel(level);
return Result.success("添加职位成功");
}
//添加职位页面跳转
@RequestMapping("/levelAdd")
out.close();
} catch (IOException e) {
return Result.fail("上传失败");
}
return Result.success("上传成功");
} else {
return null;
}
}
}
package com.xlk.controller;
@Controller
@RequestMapping("/filedDownload")
public class FileDownloadController {
@Autowired
xlkFileService xlkFileService;
//跳转下载路径
@RequestMapping("")
public String toFileDownloadUi()
{
return "file/fileList";
}
//遍历返回File
@GetMapping("/list")
@ResponseBody
public Result<Object> getDeptList(FileQuery param){
List<xlkFile> list=xlkFileService.getFileList(param);
Long count=xlkFileService.countFileList(param);
return Result.success("success",list,count);
}
//删除文件
@PostMapping("/delete/{ids}")
//获取单个员工信息
@GetMapping("/{id}")
public String queryRewardById(@PathVariable("id") Integer id, Model model){
model.addAttribute("reward",rewardService.queryById(id));
return "reward/rewardedit";
}
@RequestMapping("/update")
@ResponseBody
public Result<Object> updateReward(Reward reward)
{
Reward rewardold=rewardService.queryById(reward.getId());
rewardold.setMessage(reward.getMessage());
rewardold.setPrice(reward.getPrice());
rewardold.setStatus(reward.getStatus());
rewardold.setTheme(reward.getTheme());
rewardService.updateReward(reward);
return Result.success("修改成功");
}
@PostMapping("/delete/{ids}")
@ResponseBody
public Result<Object> deleteRewardById(@PathVariable("ids") String ids)
{
rewardService.deleteRewardById(ids);
return Result.success("删除成功");
}
}
package com.xlk.emp.controller;