SpringBoot+Vue实现前后端分离的企业人事管理系统
创始人
2024-04-05 21:07:56
0

文末获取源码

开发语言:Java

使用框架:spring boot

前端技术:JavaScript、Vue.js 、css3

开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code

数据库:MySQL 5.7/8.0

数据库管理工具:phpstudy/Navicat

JDK版本:Java jdk8

Maven:apache-maven 3.8.1-bin

目录

一、前言介绍 

二、功能需求分析

2.1前台用户功能 

2.2后台管理员功能

三、前台员工功能

3.1前台登录模块

3.2企业资讯模块

3.3培训信息详细模块

3.4个人信息模块 

四、管理员功能模块

4.1员工管理模块

4.2企业资讯管理模块

4.3培训信息管理模块

4.4部门管理模块 

4.5离职信息管理模块 

五、员工功能模块 

5.1考勤信息管理模块 

5.2薪资信息管理模块 

六、部分核心代码 

6.1员工管理的逻辑代码 

6.2考勤信息界面逻辑代码 

6.3合同信息管理界面逻辑代码

6.4薪资信息管理界面关键代码

6.5用户登录的逻辑代码


一、前言介绍 

企业人事管理系统主要功能模块包括员工管理、考勤管理、工资管理、离职管理、培训管理等,采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作,采取MySQL作为后台数据的主要存储单元,采用Springboot框架、B/S架构进行业务系统的编码及其开发,实现了本系统的全部功能。本次报告,首先分析了研究的背景、作用、意义,为研究工作的合理性打下了基础。针对企业人事管理系统的各项需求以及技术问题进行分析,证明了系统的必要性和技术可行性,然后对设计系统需要使用的技术软件以及设计思想做了基本的介绍,最后来实现企业人事管理系统的部署与运行。

二、功能需求分析

企业人事管理系统的功能主要分为前台用户根据自己的需求进行注册登录:培训信息、合同信息、考勤信息、薪资信息、离职信息、奖罚信息查询操作。后台系统管理员主要对注册用户,员工管理,薪资管理,考勤管理,奖惩管理,离职管理等。 

2.1前台用户功能 

注册登录:用户填写个人信息,并验证手机号码进行账户注册,注册成功后方可登录系统。

考勤信息:员工可以在线上查看日常考勤信息。

薪资信息:员工的薪资发放明细。

培训信息:查看培训安排信息等。

企业资讯:可以进行企业资讯浏览。

个人信息:用户可以修改个人信息。

2.2后台管理员功能

修改密码:管理员可以随时修改自己进入系统的登录密码,以保证系统的安全性。

员工管理:对企业员工信息进行维护管理等。

部门管理:对部门信息进行维护,添加、删除、修改信息。

考勤信息管理:对员工考勤数据项进行维护管理。

奖惩信息管理:对员工奖惩信息项进行维护管理。

培训信息管理:对员工培训信息进行维护管理。

企业资讯进行发布。

三、前台员工功能

3.1前台登录模块

3.2企业资讯模块

3.3培训信息详细模块

3.4个人信息模块 

 

四、管理员功能模块

4.1员工管理模块

4.2企业资讯管理模块

4.3培训信息管理模块

4.4部门管理模块 

4.5离职信息管理模块 

五、员工功能模块 

5.1考勤信息管理模块 

5.2薪资信息管理模块 

六、部分核心代码 

6.1员工管理的逻辑代码 

<%String lb=request.getParameter("lb");HashMap ext = new HashMap();  new CommDAO().insert(request,response,"xinwentongzhi",ext,true,false,"xinwentongzhi_add.jsp?lb="+lb);%>

6.2考勤信息界面逻辑代码 

${sql}${sql}

6.3合同信息管理界面逻辑代码

@RequestMapping("/get_list")public Map getList(HttpServletRequest request) {Map map = service.selectToPage(service.readQuery(request), service.readConfig(request));return success(map);}

6.4薪资信息管理界面关键代码

@RequestMapping("/get_obj")public Map obj(HttpServletRequest request) {List resultList = service.selectBaseList(service.select(service.readQuery(request), service.readConfig(request)));if (resultList.size() > 0) {JSONObject jsonObject = new JSONObject();jsonObject.put("obj",resultList.get(0));return success(jsonObject);} else {return success(null);}}

6.5用户登录的逻辑代码

 * 登录* @param data* @param httpServletRequest* @return*/@PostMapping("login")public Map login(@RequestBody Map data, HttpServletRequest httpServletRequest) {log.info("[执行登录接口]");String username = data.get("username");String email = data.get("email");String phone = data.get("phone");String password = data.get("password");List resultList = null;QueryWrapper wrapper = new QueryWrapper();Map map = new HashMap<>();if(username != null && "".equals(username) == false){map.put("username", username);resultList = service.selectBaseList(service.select(map, new HashMap<>()));}else if(email != null && "".equals(email) == false){map.put("email", email);resultList = service.selectBaseList(service.select(map, new HashMap<>()));}else if(phone != null && "".equals(phone) == false){map.put("phone", phone);resultList = service.selectBaseList(service.select(map, new HashMap<>()));}else{return error(30000, "账号或密码不能为空");}if (resultList == null || password == null) {return error(30000, "账号或密码不能为空");}//判断是否有这个用户if (resultList.size()<=0){return error(30000,"用户不存在");}User byUsername = (User) resultList.get(0);Map groupMap = new HashMap<>();groupMap.put("name",byUsername.getUserGroup());List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));if (groupList.size()<1){return error(30000,"用户组不存在");}UserGroup userGroup = (UserGroup) groupList.get(0);//查询用户审核状态if (!StringUtils.isEmpty(userGroup.getSourceTable())){String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());if (res==null){return error(30000,"用户不存在");}if (!res.equals("已通过")){return error(30000,"该用户审核未通过");}}//查询用户状态if (byUsername.getState()!=1){return error(30000,"用户非可用状态,不能登录");}String md5password = service.encryption(password);if (byUsername.getPassword().equals(md5password)) {// 存储Token到数据库AccessToken accessToken = new AccessToken();accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));accessToken.setUser_id(byUsername.getUserId());tokenService.save(accessToken);// 返回用户信息JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));user.put("token", accessToken.getToken());JSONObject ret = new JSONObject();ret.put("obj",user);return success(ret);} else {return error(30000, "账号或密码不正确");}}public String select(Map query,Map config){StringBuffer sql = new StringBuffer("select ");sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");}if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");}if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);}log.info("[{}] - 查询操作,sql: {}",table,sql);return sql.toString();}public List selectBaseList(String select) {List> mapList = baseMapper.selectBaseList(select);List list = new ArrayList<>();for (Map map:mapList) {list.add(JSON.parseObject(JSON.toJSONString(map),eClass));}return list;}

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...