基于java+springboot+vue的月度员工绩效考核管理系统

项目介绍

科学时代的发展改变了人类的生活,促使网络与计算机技术深入人类的各个角落,得以普及到人类的具体生活中,为人类的时代文明掀开新的篇章。本系统为月度员工绩效考核管理系统,是专为企业开发的对员工考核的协助软件。可以帮助企业对于员工的绩效考核进行更为正规、规范的管理,使企业管理更加的轻松快捷。

本月度员工绩效考核管理系统采用java语言做为代码编写工具,采用mysql数据库进行系统中信息的存储与处理。框架采用springboot。本月度员工绩效考核管理系统调试环境为idea。主要包括的内容有部门方面、员工方面、绩效考核方面、绩效指标方面。员工可以查询绩效指标和绩效考核详情,管理员进行发布和管理。本系统结合了新时代的工作要求和获得了先进技术的支持,适应时代发展,为使用人员提供了极好的绩效考核途径。

3.2系统功能结构设计
根据系统分析中分析出来的功能,本系统的主要功能包括部门管理、岗位管理、绩效指标管理、绩效考核管理、员工管理、通知管理等。本系统的功能结构设计如下图3.1所示:
在这里插入图片描述

开发环境

编程语言:Java
数据库 :Mysql
系统架构:B/S
后端框架:SpringBoot
编译工具:idea或者eclipse,jdk1.8,maven
支持定做:java/php/python/android/小程序vue/爬虫/c#/asp.net

系统实现

4.1.1系统登录模块实现
本模块界面加入了系统标题和角色的选择,在本界面中采用了图形和控件进行合理摆放的方法进行设计,还加入了合适的背景图片,使登录界面更加的直观。系统登录模块设计实现界面如下图4.1所示:
在这里插入图片描述

图4.1系统登录模块界面实现

4.1.2个人中心管理功能模块实现
本界面主要是对管理员账号和密码进行设置,是管理员角色的操作功能,员工不能添加管理员账号,个人中心管理功能实现界面如下图4.2所示:
在这里插入图片描述

图4.2个人中心管理模块实现界面

4.1.3部门信息管理模块实现
部门信息是管理员角色的功能,管理员可以为企业添加新的部门,可以查询部门的创建时间,管理员添加部门信息的实现界面如下图4.3所示:
在这里插入图片描述

图4.3管理员添加部门信息实现界面

管理员添加部门信息的流程为,先进行必要字段的填写,数据库进行判定是否合法、是否为空,然后进行数据库信息的插入。

4.1.4部门信息管理模块实现
管理员可以在新员工招入时进行添加,对员工进行部门的安排和备注的添加。管理员添加员工信息的界面实现如下图4.4所示:
在这里插入图片描述

图4.4管理员添加员工信息界面实现

4.1.5绩效指标管理模块实现
本功能是为了方便管理员对员工进行绩效考核,添加绩效指标的实现界面如下图4.5所示:
在这里插入图片描述

图4.5添加绩效指标模块的界面实现

4.1.6公告信息管理模块的实现
本功能可以实现公告的发布,添加公告信息功能模块的实现界面如下图4.6所示:
在这里插入图片描述

图4.6添加公告模块的实现界面

4.1.7岗位管理模块的实现
管理员可以对员工分配岗位,管理员查询岗位的实现界面如下图4.7所示:
在这里插入图片描述

图4.7查询岗位信息的实现界面

4.1.8绩效考核管理模块的实现
发布员工的绩效考核,绩效考核信息的实现界面如下图4.8所示:
在这里插入图片描述

图4.8绩效考核信息界面

4.2员工功能的界面实现
员工可以查询公告和绩效指标、绩效考核信息,也可以修改个人资料和密码。实现界面如下图4.9所示:
在这里插入图片描述

图4.9员工功能的实现界面

核心代码

package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.GangweiEntity;
import com.entity.view.GangweiView;

import com.service.GangweiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;


/**
 * 岗位
 * 后端接口
 * @author 
 * @email 
 * @date 
 */
@RestController
@RequestMapping("/gangwei")
public class GangweiController {
    @Autowired
    private GangweiService gangweiService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,GangweiEntity gangwei,
		HttpServletRequest request){
        EntityWrapper<GangweiEntity> ew = new EntityWrapper<GangweiEntity>();
		PageUtils page = gangweiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gangwei), params), params));

        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,GangweiEntity gangwei, 
		HttpServletRequest request){
        EntityWrapper<GangweiEntity> ew = new EntityWrapper<GangweiEntity>();
		PageUtils page = gangweiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gangwei), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( GangweiEntity gangwei){
       	EntityWrapper<GangweiEntity> ew = new EntityWrapper<GangweiEntity>();
      	ew.allEq(MPUtil.allEQMapPre( gangwei, "gangwei")); 
        return R.ok().put("data", gangweiService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(GangweiEntity gangwei){
        EntityWrapper< GangweiEntity> ew = new EntityWrapper< GangweiEntity>();
 		ew.allEq(MPUtil.allEQMapPre( gangwei, "gangwei")); 
		GangweiView gangweiView =  gangweiService.selectView(ew);
		return R.ok("查询岗位成功").put("data", gangweiView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        GangweiEntity gangwei = gangweiService.selectById(id);
        return R.ok().put("data", gangwei);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        GangweiEntity gangwei = gangweiService.selectById(id);
        return R.ok().put("data", gangwei);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody GangweiEntity gangwei, HttpServletRequest request){
    	gangwei.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(gangwei);
        gangweiService.insert(gangwei);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody GangweiEntity gangwei, HttpServletRequest request){
    	gangwei.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(gangwei);
        gangweiService.insert(gangwei);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody GangweiEntity gangwei, HttpServletRequest request){
        //ValidatorUtils.validateEntity(gangwei);
        gangweiService.updateById(gangwei);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        gangweiService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<GangweiEntity> wrapper = new EntityWrapper<GangweiEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}


		int count = gangweiService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	


}

论文参考

在这里插入图片描述

目 录
第1章 引言 1
1.1课题研究现状 1
1.2课题研究意义及背景 1
1.3课题的目的及设计要求 2
1.4论文内容与组成部分 2
第2章 系统需求分析与系统开发分析 3
2.1系统的需求分析 3
2.2现行员工绩效考核管理系统优缺点分析 3
2.3系统设计中应注意的问题及解决方法 3
2.3.1应注意的问题 4
2.3.2解决办法 4
2.4系统使用技术与开发环境平台分析 4
2.4.1 Jsp技术介绍 4
2.4.2 Mysql数据库 4
2.4.3 SpringBoot框架介绍 5
2.4.4 tomcat服务器介绍 5
2.5系统开发可行性分析 6
2.5.1经济可行性 6
2.5.2技术可行性 6
2.5.3操作可行性 6
2.6系统开发功能分析 7
2.7系统角色之间的用例分析 7
2.7.1管理员用例图分析 7
2.7.2员工用例图分析 8
2.8系统主要业务流程分析 8
第3章 系统设计 10
3.1系统体系结构设计 10
3.2系统功能结构设计 10
3.3数据库结构设计 10
3.3.1数据库ER图设计 10
3.3.2数据库表设计 12
第4章 系统实现 16
4.1系统主要模块的实现 16
4.1.1系统登录模块实现 16
4.1.2个人中心管理功能模块实现 16
4.1.3部门信息管理模块实现 17
4.1.4部门信息管理模块实现 18
4.1.5绩效指标管理模块实现 18
4.1.6公告信息管理模块的实现 18
4.1.7岗位管理模块的实现 19
4.1.8绩效考核管理模块的实现 20
第5章 系统测试 22
5.1测试概述 22
5.2数据库连接测试 22
5.3测试用例 22
5.4测试总结 23
总 结 24
参考文献 25
致 谢 27

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值