Java如何实现员工绩效管理系统(java,开发技术)

时间:2024-04-28 01:36:51 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

基于SSM+Mysql+Maven+HTML实现的员工绩效管理系统。该系统只有后台页面,后台前端框架使用的是layui官网推荐后台界面。

角色分为管理员和员工

管理员功能有:员工管理、职位管理、部门管理、岗位管理、工资管理、工龄管理、考勤管理、工资项管理等。

员工功能有:考勤管理、工资管理、个人信息。

运行环境:jdk1.8、tomcat7.0\8.5、maven3.5\3.6、eclipse、mysql5.x。

Java如何实现员工绩效管理系统

Java如何实现员工绩效管理系统

Java如何实现员工绩效管理系统

Java如何实现员工绩效管理系统

Java如何实现员工绩效管理系统

Java如何实现员工绩效管理系统

后台员工管理控制器代码:

/***后台员工管理控制器*@authorAdministrator**/@RequestMapping("/admin/staff")@ControllerpublicclassStaffController{ @Autowired privateStaffServicestaffService; @Autowired privateJobTitleServicejobTitleService; @Autowired privateRoleServiceroleService; @Autowired privatePositionServicepositionService; @Autowired privateDepartmentServicedepartmentService; @Autowired privateOperaterLogServiceoperaterLogService; @Autowired privateAttendanceServiceattendanceService; /** *员工列表页面 *@parammodel *@paramstaff *@parampageBean *@return */ @RequestMapping(value="/list") publicStringlist(Modelmodel,Staffstaff,PageBean<Staff>pageBean){model.addAttribute("title","员工列表"); model.addAttribute("jobNumber",staff.getJobNumber()==null?"":staff.getJobNumber()); model.addAttribute("pageBean",staffService.findList(staff,pageBean)); return"admin/staff/list"; } /** *新增员工页面 *@parammodel *@return */ @RequestMapping(value="/add",method=RequestMethod.GET) publicStringadd(Modelmodel){ model.addAttribute("roles",roleService.findAll()); model.addAttribute("educationEnum",EducationEnum.values()); model.addAttribute("jobTitleList",jobTitleService.findAll()); model.addAttribute("positionList",positionService.findAll()); model.addAttribute("departmentList",departmentService.findAll()); return"admin/staff/add"; } /** *员工添加表单提交处理 *@paramstaff *@return */ @RequestMapping(value="/add",method=RequestMethod.POST) @ResponseBody publicResult<Boolean>add(Staffstaff){ //用统一验证实体方法验证是否合法 CodeMsgvalidate=ValidateEntityUtil.validate(staff); if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){ returnResult.error(validate); } if(staff.getRole()==null||staff.getRole().getId()==null){ returnResult.error(CodeMsg.ADMIN_STAFF_ROLE_ERROR); } if(!StringUtil.isMobile(staff.getMobile())){ returnResult.error(CodeMsg.ADMIN_STAFF_MOBILE_ERROR); } if(!StringUtil.isMobile(staff.getEmergencyMobile())){ returnResult.error(CodeMsg.ADMIN_STAFF_EMERGENCY_MOBILE_ERROR); } //自动生成工号intmaxId=staffService.findMaxId()+1;StringjobNumber=DateUtil.getCurrentDateTime("yyyyMMdd"); if(maxId<10){jobNumber=jobNumber+"0"+maxId;}else{jobNumber=jobNumber+maxId;}staff.setJobNumber(jobNumber);//到这说明一切符合条件,进行数据库新增 if(staffService.save(staff)==null){ returnResult.error(CodeMsg.ADMIN_STAFF_ADD_ERROR); } operaterLogService.add("添加员工,员工名:"+staff.getName()); returnResult.success(true); } @RequestMapping(value="/edit_self",method=RequestMethod.POST) @ResponseBody publicResult<Boolean>edit_self(Staffstaff,HttpServletRequestrequest){ //用统一验证实体方法验证是否合法 CodeMsgvalidate=ValidateEntityUtil.validate(staff); if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){ returnResult.error(validate); } if(!StringUtil.isMobile(staff.getMobile())){ returnResult.error(CodeMsg.ADMIN_STAFF_MOBILE_ERROR); } if(!StringUtil.isMobile(staff.getEmergencyMobile())){ returnResult.error(CodeMsg.ADMIN_STAFF_EMERGENCY_MOBILE_ERROR); } if(staff.getId()==null||staff.getId().longValue()<=0){ returnResult.error(CodeMsg.ADMIN_STAFF_NOT_EXIST_ERROR); } //到这说明一切符合条件,进行数据库保存 StafffindById=staffService.find(staff.getId()); //讲提交的员工信息指定字段复制到已存在的staff对象中,该方法会覆盖新字段内容 BeanUtils.copyProperties(staff,findById,"id","createTime","updateTime","jobNumber", "role","educationEnum","jobTitle", "position","department","entryTime"); StaffsaveStaff=staffService.save(findById); if(saveStaff==null){ returnResult.error(CodeMsg.ADMIN_STAFF_EDIT_ERROR); } StaffloginedStaff=SessionUtil.getLoginedStaff(); if(loginedStaff!=null){ if(loginedStaff.getId().longValue()==findById.getId().longValue()){ loginedStaff.setHeadPic(saveStaff.getHeadPic()); loginedStaff.setName(saveStaff.getName()); loginedStaff.setMobile(saveStaff.getMobile()); loginedStaff.setEmergencyContact(saveStaff.getEmergencyContact()); loginedStaff.setEmergencyMobile(saveStaff.getEmergencyMobile()); loginedStaff.setAge(saveStaff.getAge()); loginedStaff.setSex(saveStaff.getSex()); SessionUtil.set(SessionConstant.SESSION_STAFF_LOGIN_KEY,loginedStaff); } } operaterLogService.add("编辑员工,员工名:"+staff.getName()); returnResult.success(true); } /** *员工编辑页面 *@parammodel *@return */ @RequestMapping(value="/edit",method=RequestMethod.GET) publicStringedit(Modelmodel,@RequestParam(name="id",required=true)Longid){ model.addAttribute("staff",staffService.find(id)); model.addAttribute("roles",roleService.findAll()); model.addAttribute("educationEnum",EducationEnum.values()); model.addAttribute("jobTitleList",jobTitleService.findAll()); model.addAttribute("positionList",positionService.findAll()); model.addAttribute("departmentList",departmentService.findAll()); return"admin/staff/edit"; } /** *编辑员工信息表单提交处理 *@paramstaff *@return */ @RequestMapping(value="/edit",method=RequestMethod.POST) @ResponseBody publicResult<Boolean>edit(Staffstaff,HttpServletRequestrequest){ //用统一验证实体方法验证是否合法 CodeMsgvalidate=ValidateEntityUtil.validate(staff); if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){ returnResult.error(validate); } if(staff.getRole()==null||staff.getRole().getId()==null){ returnResult.error(CodeMsg.ADMIN_STAFF_ROLE_ERROR); } if(!StringUtil.isMobile(staff.getMobile())){ returnResult.error(CodeMsg.ADMIN_STAFF_MOBILE_ERROR); } if(!StringUtil.isMobile(staff.getEmergencyMobile())){ returnResult.error(CodeMsg.ADMIN_STAFF_EMERGENCY_MOBILE_ERROR); } if(staff.getId()==null||staff.getId().longValue()<=0){ returnResult.error(CodeMsg.ADMIN_STAFF_NOT_EXIST_ERROR); } //到这说明一切符合条件,进行数据库保存 StafffindById=staffService.find(staff.getId()); //讲提交的员工信息指定字段复制到已存在的staff对象中,该方法会覆盖新字段内容 BeanUtils.copyProperties(staff,findById,"id","createTime","updateTime","jobNumber"); StaffsaveStaff=staffService.save(findById); if(saveStaff==null){ returnResult.error(CodeMsg.ADMIN_STAFF_EDIT_ERROR); } StaffloginedStaff=SessionUtil.getLoginedStaff(); if(loginedStaff!=null){ if(loginedStaff.getId().longValue()==findById.getId().longValue()){ loginedStaff.setHeadPic(saveStaff.getHeadPic()); loginedStaff.setName(saveStaff.getName()); loginedStaff.setMobile(saveStaff.getMobile()); loginedStaff.setEmergencyContact(saveStaff.getEmergencyContact()); loginedStaff.setEmergencyMobile(saveStaff.getEmergencyMobile()); loginedStaff.setAge(saveStaff.getAge()); loginedStaff.setSex(saveStaff.getSex()); SessionUtil.set(SessionConstant.SESSION_STAFF_LOGIN_KEY,loginedStaff); } } operaterLogService.add("编辑员工,员工名:"+staff.getName()); returnResult.success(true); } /** *离职员工 *@paramid *@return */ @RequestMapping(value="/delete",method=RequestMethod.POST) @ResponseBody publicResult<Boolean>delete(@RequestParam(name="id",required=true)Longid){ if(staffService.updateStatus(StaffStatus.QUIT.getCode(),id)<=0){ returnResult.error(CodeMsg.ADMIN_STAFF_STATUS_ERROR); } operaterLogService.add("员工离职,员工ID:"+id); returnResult.success(true); } /** *修改个人信息 *@parammodel *@return */ @RequestMapping("/self") publicStringself(Modelmodel){ StaffloginedStaff=SessionUtil.getLoginedStaff(); Staffstaff=staffService.find(loginedStaff.getId()); model.addAttribute("roles",roleService.findAll()); model.addAttribute("educationEnum",EducationEnum.values()); model.addAttribute("jobTitleList",jobTitleService.findAll()); model.addAttribute("positionList",positionService.findAll()); model.addAttribute("departmentList",departmentService.findAll()); model.addAttribute("staff",staff); return"admin/staff/self"; }}

后台角色管理控制器:

/***后台角色管理控制器*@authoryy**/@RequestMapping("/admin/role")@ControllerpublicclassRoleController{ privateLoggerlog=LoggerFactory.getLogger(RoleController.class); @Autowired privateMenuServicemenuService; @Autowired privateOperaterLogServiceoperaterLogService; @Autowired privateRoleServiceroleService; /** *分页搜索角色列表 *@parammodel *@paramrole *@parampageBean *@return */ @RequestMapping(value="/list") publicStringlist(Modelmodel,Rolerole,PageBean<Role>pageBean){ model.addAttribute("title","角色列表"); model.addAttribute("name",role.getName()); model.addAttribute("pageBean",roleService.findByName(role,pageBean)); return"admin/role/list"; } /** *角色添加页面 *@parammodel *@return */ @RequestMapping(value="/add",method=RequestMethod.GET) publicStringadd(Modelmodel){ List<Menu>findAll=menuService.findAll(); model.addAttribute("topMenus",MenuUtil.getTopMenus(findAll)); model.addAttribute("secondMenus",MenuUtil.getSecondMenus(findAll)); model.addAttribute("thirdMenus",MenuUtil.getThirdMenus(findAll)); return"admin/role/add"; } /** *角色添加表单提交处理 *@paramrole *@return */ @RequestMapping(value="/add",method=RequestMethod.POST) @ResponseBody publicResult<Boolean>add(Rolerole){ //用统一验证实体方法验证是否合法 CodeMsgvalidate=ValidateEntityUtil.validate(role); if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){ returnResult.error(validate); } if(roleService.save(role)==null){ returnResult.error(CodeMsg.ADMIN_ROLE_ADD_ERROR); } log.info("添加角色【"+role+"】"); operaterLogService.add("添加角色【"+role.getName()+"】"); returnResult.success(true); } /** *角色编辑页面 *@paramid *@parammodel *@return */ @RequestMapping(value="/edit",method=RequestMethod.GET) publicStringedit(@RequestParam(name="id",required=true)Longid,Modelmodel){ List<Menu>findAll=menuService.findAll(); model.addAttribute("topMenus",MenuUtil.getTopMenus(findAll)); model.addAttribute("secondMenus",MenuUtil.getSecondMenus(findAll)); model.addAttribute("thirdMenus",MenuUtil.getThirdMenus(findAll)); Rolerole=roleService.find(id); model.addAttribute("role",role); model.addAttribute("authorities",JSONArray.toJSON(role.getAuthorities()).toString()); return"admin/role/edit"; } /** *角色修改表单提交处理 *@paramrequest *@paramrole *@return */ @RequestMapping(value="/edit",method=RequestMethod.POST) @ResponseBody publicResult<Boolean>edit(Rolerole){ //用统一验证实体方法验证是否合法 CodeMsgvalidate=ValidateEntityUtil.validate(role); if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){ returnResult.error(validate); } RoleexistRole=roleService.find(role.getId()); if(existRole==null){ returnResult.error(CodeMsg.ADMIN_ROLE_NO_EXIST); } existRole.setName(role.getName()); existRole.setRemark(role.getRemark()); existRole.setStatus(role.getStatus()); existRole.setAuthorities(role.getAuthorities()); if(roleService.save(existRole)==null){ returnResult.error(CodeMsg.ADMIN_ROLE_EDIT_ERROR); } log.info("编辑角色【"+role+"】"); operaterLogService.add("编辑角色【"+role.getName()+"】"); returnResult.success(true); } /** *删除角色 *@paramrequest *@paramid *@return */ @RequestMapping(value="delete",method=RequestMethod.POST) @ResponseBody publicResult<Boolean>delete(@RequestParam(name="id",required=true)Longid){ try{ roleService.delete(id); }catch(Exceptione){ //TODO:handleexception returnResult.error(CodeMsg.ADMIN_ROLE_DELETE_ERROR); } log.info("编辑角色ID【"+id+"】"); operaterLogService.add("删除角色ID【"+id+"】"); returnResult.success(true); }}

后台工龄管理Controller:

/***后台工龄管理Controller*/@Controller@RequestMapping("/admin/work_years")publicclassWorkingYearsController{@AutowiredprivateWorkingYearsServiceworkingYearsService;@AutowiredprivateOperaterLogServiceoperaterLogService;/***分页查询工龄列表*@parammodel*@parampageBean*@paramworkingYears*@return*/@RequestMapping("/list")publicStringlist(Modelmodel,PageBean<WorkingYears>pageBean,WorkingYearsworkingYears){model.addAttribute("title","工龄列表");model.addAttribute("years",workingYears.getYears());model.addAttribute("pageBean",workingYearsService.findList(workingYears,pageBean));return"/admin/working_years/list";}/***添加页面*@return*/@RequestMapping("/add")publicStringadd(){return"/admin/working_years/add";}/***工龄添加提交处理*@paramworkingYears*@return*/@RequestMapping(value="/add",method=RequestMethod.POST)@ResponseBodypublicResult<Boolean>add(WorkingYearsworkingYears){//用统一验证实体方法验证是否合法CodeMsgvalidate=ValidateEntityUtil.validate(workingYears);if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){returnResult.error(validate);}if(workingYearsService.findByYears(workingYears.getYears())!=null){returnResult.error(CodeMsg.ADMIN_WORKING_YEARS_EXIST_ERROR);}if(workingYearsService.save(workingYears)==null){returnResult.error(CodeMsg.ADMIN_WORKING_YEARS_ADD_ERROR);}operaterLogService.add("添加工龄,工龄补贴为:"+workingYears.getSubsidy());returnResult.success(true);}/***编辑页面*@parammodel*@paramid*@return*/@RequestMapping("/edit")publicStringedit(Modelmodel,@RequestParam(name="id",required=true)Longid){model.addAttribute("workYears",workingYearsService.find(id));return"/admin/working_years/edit";}/***编辑表单提交处理*@paramworkingYears*@return*/@RequestMapping(value="/edit",method=RequestMethod.POST)@ResponseBodypublicResult<Boolean>edit(WorkingYearsworkingYears){//用统一验证实体方法验证是否合法CodeMsgvalidate=ValidateEntityUtil.validate(workingYears);if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){returnResult.error(validate);}if(workingYearsService.isExistYear(workingYears.getYears(),workingYears.getId())){returnResult.error(CodeMsg.ADMIN_WORKING_YEARS_EXIST_ERROR);}//到这说明一切符合条件,进行数据库保存WorkingYearsfindById=workingYearsService.find(workingYears.getId());//讲提交的用户信息指定字段复制到已存在的department对象中,该方法会覆盖新字段内容BeanUtils.copyProperties(workingYears,findById,"id","createTime","updateTime");if(workingYearsService.save(findById)==null){returnResult.error(CodeMsg.ADMIN_WORKING_YEARS_EDIT_ERROR);}operaterLogService.add("编辑工龄,工龄补贴为:"+workingYears.getSubsidy());returnResult.success(true);}/***工龄删除操作*@paramid*@return*/@RequestMapping(value="delete",method=RequestMethod.POST)@ResponseBodypublicResult<Boolean>delete(@RequestParam(name="id",required=true)Longid){try{workingYearsService.delete(id);}catch(Exceptione){returnResult.error(CodeMsg.ADMIN_WORKING_YEARS_DELETE_ERROR);}operaterLogService.add("删除工龄补贴,工龄ID:"+id);returnResult.success(true);}}
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:Java如何实现员工绩效管理系统的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:JavaScript的计时器和按钮效果怎么设置下一篇:

14 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18