源码获取:博客首页 "资源" 里下载!

超级管理员等角色,除基础脚手架外,实现的功能有:

超级管理员:系统管理、用户管理(冻结等)、职称管理、部门管理(工资项)、岗位管理(考核指标管理,可指定部门)、工龄管理等。

普通员工:考勤管理(查看自己的考勤记录)、工资管理(查看自己的工资详情)。

HR人事:员工管理、考勤管理、工资管理。

部门经理:部门绩效考核管理、年度考核管理、考核指标管理。

运行环境:windows/Linux均可、jdk1.8、mysql5.7、idea/eclipse均可。

后台用户管理控制器:

/*** 后台用户管理控制器* @author yy**/
@RequestMapping("/admin/user")
@Controller
public class UserController {@Autowiredprivate UserService userService;@Autowiredprivate RoleService roleService;@Autowiredprivate OperaterLogService operaterLogService;/*** 用户列表页面* @param model* @param user* @param pageBean* @return*/@RequestMapping(value="/list")public String list(Model model,User user,PageBean<User> pageBean){model.addAttribute("title", "用户列表");model.addAttribute("username", user.getUsername());model.addAttribute("pageBean", userService.findList(user, pageBean));return "admin/user/list";}/*** 新增用户页面* @param model* @return*/@RequestMapping(value="/add",method=RequestMethod.GET)public String add(Model model){model.addAttribute("roles", roleService.findAll());return "admin/user/add";}/*** 用户添加表单提交处理* @param user* @return*/@RequestMapping(value="/add",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> add(User user){//用统一验证实体方法验证是否合法CodeMsg validate = ValidateEntityUtil.validate(user);if(validate.getCode() != CodeMsg.SUCCESS.getCode()){return Result.error(validate);}if(user.getRole() == null || user.getRole().getId() == null){return Result.error(CodeMsg.ADMIN_USER_ROLE_EMPTY);}//判断用户名是否存在if(userService.isExistUsername(user.getUsername(), 0l)){return Result.error(CodeMsg.ADMIN_USERNAME_EXIST);}//到这说明一切符合条件,进行数据库新增if(userService.save(user) == null){return Result.error(CodeMsg.ADMIN_USE_ADD_ERROR);}operaterLogService.add("添加用户,用户名:" + user.getUsername());return Result.success(true);}/*** 用户编辑页面* @param model* @return*/@RequestMapping(value="/edit",method=RequestMethod.GET)public String edit(Model model,@RequestParam(name="id",required=true)Long id){model.addAttribute("roles", roleService.findAll());model.addAttribute("user", userService.find(id));return "admin/user/edit";}/*** 编辑用户信息表单提交处理* @param user* @return*/@RequestMapping(value="/edit",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> edit(User user){//用统一验证实体方法验证是否合法CodeMsg validate = ValidateEntityUtil.validate(user);if(validate.getCode() != CodeMsg.SUCCESS.getCode()){return Result.error(validate);}if(user.getRole() == null || user.getRole().getId() == null){return Result.error(CodeMsg.ADMIN_USER_ROLE_EMPTY);}if(user.getId() == null || user.getId().longValue() <= 0){return Result.error(CodeMsg.ADMIN_USE_NO_EXIST);}if(userService.isExistUsername(user.getUsername(), user.getId())){return Result.error(CodeMsg.ADMIN_USERNAME_EXIST);}//到这说明一切符合条件,进行数据库保存User findById = userService.find(user.getId());//讲提交的用户信息指定字段复制到已存在的user对象中,该方法会覆盖新字段内容BeanUtils.copyProperties(user, findById, "id","createTime","updateTime");if(userService.save(findById) == null){return Result.error(CodeMsg.ADMIN_USE_EDIT_ERROR);}operaterLogService.add("编辑用户,用户名:" + user.getUsername());return Result.success(true);}/*** 删除用户* @param id* @return*/@RequestMapping(value="/delete",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> delete(@RequestParam(name="id",required=true)Long id){try {userService.delete(id);} catch (Exception e) {return Result.error(CodeMsg.ADMIN_USE_DELETE_ERROR);}operaterLogService.add("删除用户,用户ID:" + id);return Result.success(true);}
}

后台工龄管理Controller:

/*** 后台工龄管理Controller*/
@Controller
@RequestMapping("/admin/work_years")
public class WorkingYearsController {@Autowiredprivate WorkingYearsService workingYearsService;@Autowiredprivate OperaterLogService operaterLogService;/*** 分页查询工龄列表* @param model* @param pageBean* @param workingYears* @return*/@RequestMapping("/list")public String list(Model model, PageBean<WorkingYears> pageBean, WorkingYears workingYears){model.addAttribute("title","工龄列表");model.addAttribute("years",workingYears.getYears());model.addAttribute("pageBean",workingYearsService.findList(workingYears, pageBean));return "/admin/working_years/list";}/*** 添加页面* @return*/@RequestMapping("/add")public String add(){return "/admin/working_years/add";}/*** 工龄添加提交处理* @param workingYears* @return*/@RequestMapping(value = "/add",method = RequestMethod.POST)@ResponseBodypublic Result<Boolean> add(WorkingYears workingYears){//用统一验证实体方法验证是否合法CodeMsg validate = ValidateEntityUtil.validate(workingYears);if(validate.getCode() != CodeMsg.SUCCESS.getCode()){return Result.error(validate);}if(workingYearsService.findByYears(workingYears.getYears())!=null){return Result.error(CodeMsg.ADMIN_WORKING_YEARS_EXIST_ERROR);}if(workingYearsService.save(workingYears) == null){return Result.error(CodeMsg.ADMIN_WORKING_YEARS_ADD_ERROR);}operaterLogService.add("添加工龄,工龄补贴为:" + workingYears.getSubsidy());return Result.success(true);}/*** 编辑页面* @param model* @param id* @return*/@RequestMapping("/edit")public String edit(Model model,@RequestParam(name="id",required=true)Long id){model.addAttribute("workYears",workingYearsService.find(id));return "/admin/working_years/edit";}/*** 编辑表单提交处理* @param workingYears* @return*/@RequestMapping(value = "/edit",method = RequestMethod.POST)@ResponseBodypublic Result<Boolean> edit(WorkingYears workingYears){//用统一验证实体方法验证是否合法CodeMsg validate = ValidateEntityUtil.validate(workingYears);if(validate.getCode() != CodeMsg.SUCCESS.getCode()){return Result.error(validate);}if(workingYearsService.isExistYear(workingYears.getYears(),workingYears.getId())){return Result.error(CodeMsg.ADMIN_WORKING_YEARS_EXIST_ERROR);}//到这说明一切符合条件,进行数据库保存WorkingYears findById = workingYearsService.find(workingYears.getId());//讲提交的用户信息指定字段复制到已存在的department对象中,该方法会覆盖新字段内容BeanUtils.copyProperties(workingYears, findById, "id","createTime","updateTime");if(workingYearsService.save(findById) == null){return Result.error(CodeMsg.ADMIN_WORKING_YEARS_EDIT_ERROR);}operaterLogService.add("编辑工龄,工龄补贴为:" + workingYears.getSubsidy());return Result.success(true);}/*** 工龄删除操作* @param id* @return*/@RequestMapping(value = "delete",method = RequestMethod.POST)@ResponseBodypublic Result<Boolean> delete(@RequestParam(name="id",required=true)Long id){try{workingYearsService.delete(id);}catch (Exception e){return Result.error(CodeMsg.ADMIN_WORKING_YEARS_DELETE_ERROR);}operaterLogService.add("删除工龄补贴,工龄ID:" + id);return Result.success(true);}
}

后台角色管理控制器:

/*** 后台角色管理控制器* @author yy**/
@RequestMapping("/admin/role")
@Controller
public class RoleController {private Logger log = LoggerFactory.getLogger(RoleController.class);@Autowiredprivate MenuService menuService;@Autowiredprivate OperaterLogService operaterLogService;@Autowiredprivate RoleService roleService;/*** 分页搜索角色列表* @param model* @param role* @param pageBean* @return*/@RequestMapping(value="/list")public String list(Model model,Role role,PageBean<Role> pageBean){model.addAttribute("title", "角色列表");model.addAttribute("name", role.getName());model.addAttribute("pageBean", roleService.findByName(role, pageBean));return "admin/role/list";}/*** 角色添加页面* @param model* @return*/@RequestMapping(value="/add",method=RequestMethod.GET)public String add(Model model){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";}/*** 角色添加表单提交处理* @param role* @return*/@RequestMapping(value="/add",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> add(Role role){//用统一验证实体方法验证是否合法CodeMsg validate = ValidateEntityUtil.validate(role);if(validate.getCode() != CodeMsg.SUCCESS.getCode()){return Result.error(validate);}if(roleService.save(role) == null){return Result.error(CodeMsg.ADMIN_ROLE_ADD_ERROR);}log.info("添加角色【"+role+"】");operaterLogService.add("添加角色【"+role.getName()+"】");return Result.success(true);}/*** 角色编辑页面* @param id* @param model* @return*/@RequestMapping(value="/edit",method=RequestMethod.GET)public String edit(@RequestParam(name="id",required=true)Long id,Model model){List<Menu> findAll = menuService.findAll();model.addAttribute("topMenus",MenuUtil.getTopMenus(findAll));model.addAttribute("secondMenus",MenuUtil.getSecondMenus(findAll));model.addAttribute("thirdMenus",MenuUtil.getThirdMenus(findAll));Role role = roleService.find(id);model.addAttribute("role", role);model.addAttribute("authorities",JSONArray.toJSON(role.getAuthorities()).toString());return "admin/role/edit";}/*** 角色修改表单提交处理* @param request* @param role* @return*/@RequestMapping(value="/edit",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> edit(Role role){//用统一验证实体方法验证是否合法CodeMsg validate = ValidateEntityUtil.validate(role);if(validate.getCode() != CodeMsg.SUCCESS.getCode()){return Result.error(validate);}Role existRole = roleService.find(role.getId());if(existRole == null){return Result.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){return Result.error(CodeMsg.ADMIN_ROLE_EDIT_ERROR);}log.info("编辑角色【"+role+"】");operaterLogService.add("编辑角色【"+role.getName()+"】");return Result.success(true);}/*** 删除角色* @param request* @param id* @return*/@RequestMapping(value="delete",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> delete(@RequestParam(name="id",required=true)Long id){try {roleService.delete(id);} catch (Exception e) {// TODO: handle exceptionreturn Result.error(CodeMsg.ADMIN_ROLE_DELETE_ERROR);}log.info("编辑角色ID【"+id+"】");operaterLogService.add("删除角色ID【"+id+"】");return Result.success(true);}
}

源码获取:博客首页 "资源" 里下载!

Java项目:企业员工绩效工资管理系统(java+SpringBoot+FreeMarker+Mysql)相关推荐

  1. Springboot+Mysql企业员工绩效工资管理系统

    此篇发布的是由[猿来入此]的优秀学员独立做的一个基于springboot脚手架的员工绩效工资考核管理系统 ​ 主要实现了企业员工绩效工资管理基本操作流程的全部功能,系统分HR人事.员工.部门经理.超级 ...

  2. 基于java+swing的员工出差报销管理系统(java+swing+Mysql+lw)

    基于java+swing的员工出差报销管理系统(java+swing+Mysql+lw) 项目名称:基于java swing的员工出差报销管理系统 涉及技术:java.java swing.mysql ...

  3. SpringBoot+Vue项目月度员工绩效考核管理系统

    文末获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:eclip ...

  4. java基于springboot的企业员工人事工资管理系统

    人事管理系统是基于java编程语言,ssm框架,mysql数据库开发,本系统分为员工和管理员两个角色,员工的主要功能有登陆系统,个人信息更新,查看工资,查看公告,查看培训和奖惩信息,对工作事务管理:管 ...

  5. Springboot+vue+java企业员工绩效考核管理系统

    系统登录页面 3.2个人中心管理功能模块实现 本界面主要是对管理员账号和密码进行设置,是管理员角色的操作功能,员工不能添加管理员账号.个人中心管理功能实现界面如下图 3.3部门信息管理模块实现 部门信 ...

  6. Java项目:自习室图书馆座位预约管理系统(java+SSM+JSP+easyUI+mysql)

    源码获取:俺的博客首页 "资源" 里下载! 项目介绍 一款由jsp+ssm+mysql实现的图书馆预约占座管理系统,前端采用的是当下最流行的easyui框架,后台用的ssm(spr ...

  7. Java项目:流浪猫狗救助管理系统(java+SSM+JSP+bootstrap+jQuery+mysql)

    源码获取:博客首页 "资源" 里下载! 项目介绍 流浪猫狗救助管理系统.该项目分为前后台: 前台主要功能包括:会员的注册登陆,流浪猫狗知识,领养中心,团队活动,流浪宠物详情,申请领 ...

  8. Java项目:医药进销存管理系统(java+SpringBoot+HTML+Echarts+JQuery+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 功能介绍 医药进销存系统,主要分两种角色:员工.客户.本系统具有进销存系统的通用性,可以修改为其它进销存系统,如家电进销存.手机进销存等: ...

  9. python+django企业员工绩效考核管理系统vue

    开发语言:Python 框架:django Python版本:python3.7.7 数据库:mysql   数据库工具:Navicat11 开发软件:PyCharm 本系统的功能分为管理员和员工两个 ...

最新文章

  1. python 两个列表相互映射_Python基础 — 10分钟学习函数式Python
  2. java中并行_[JAVA] 12. Java中的并行Concurrency
  3. 【Python-ML】神经网络激励函数-Softmax
  4. CTFshow 信息收集 web7
  5. 我的vscode配置 利用Settings Sync一键安装
  6. Asp-Net-Core开发笔记:在docker部署时遇到一个小坑
  7. python外卷(12)-sort(),sorted(),ord(),chr()
  8. python中的基本数据结构
  9. Excel和PPT已经落后了,可视化大屏强在哪?一次看过瘾
  10. 【免费下载】2022年1月热门报告盘点(附热门报告列表及下载链接)
  11. Unable to access “***“, Failed to mount ‘/dev/sda7‘: Operation not permitted
  12. Apache Tika 内容抽取工具集合
  13. jenkins java jar_Jenkins 安装和配置、启动jar包
  14. 使用media player和foobar的DLAN服务
  15. 万圣节| Huluween“魔幻洞窟”闯关之夜
  16. 三星s8文档有html,三星s8有哪些特殊功能 这些绝对能让你羡慕
  17. windows电脑提醒功能,定时打卡
  18. PHP使用PDO连接带密码Access数据库(简单版)
  19. 爬虫修正:裁判文书网20200901更新增加登录系统
  20. Linux - 解密迅雷下载链接

热门文章

  1. nicstat命令安装与分析
  2. pytest+allure环境别人电脑运行正常,自己运行不正常几种情况
  3. 第八章 泛型程序设计
  4. little w and Soda(思维题)
  5. C语言------运算符和表达式
  6. 微信是个坑货4-网页授权
  7. js MD5加密处理
  8. cojs 简单的数位DP 题解报告
  9. iOS常用动画 类封装
  10. [UML]UML系列——用例图中的各种关系(include、extend)