基于Java+SpringBoot+vue+element实现毕业就业招聘系统

举报
Java李杨勇 发表于 2022/03/31 21:58:06 2022/03/31
【摘要】 前言介绍:      随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。高校毕业生就业管理系统,主要的模块包括首页、个人中心、学生管理、辅导员管理、企业管理、招聘信息管理、应聘信息管理、毕业去向管理、就业知识管理、系统管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的...

前言介绍:

      随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。高校毕业生就业管理系统,主要的模块包括首页、个人中心、学生管理、辅导员管理、企业管理、招聘信息管理、应聘信息管理、毕业去向管理、就业知识管理、系统管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的操作权限。要想实现高校毕业生就业管理系统的各项功能,需要后台数据库的大力支持。管理员验证注册信息,收集的信息,并由此分析得出的关联信息等大量的数据都由数据库管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。本系统的开发使获取高校毕业生就业管理系统信息能够更加方便快捷,同时也使高校毕业生就业管理系统管理信息变的更加系统化、有序化。系统界面较友好,易于操作。

项目设计:

     高校毕业生就业管理系统基于Web服务模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在不受时间、地点的限制来使用这个系统。高校毕业生就业管理系统工作原理图,如图


图系统工作原理图

系统架构图属于系统设计阶段,系统架构图只是这个阶段一个产物,系统的总体架构决定了整个系统的模式,是系统的基础。高校毕业生就业管理系统的整体结构设计

功能截图:

系统首页:首页可以查看首页、企业、招聘信息、就业知识、公告信息、个人中心、后台管理等信息进行详细操作

登录注册:管理员、学生、辅导员和企业四个角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息

企业信息:

企业详情:

招聘信息:在招聘信息页面中可以查看企业名称、企业账号、岗位名称、上班地点、上班时间、薪资待遇、招聘人数、联系方式、点击次数、任职要求、企业介绍等信息

 招聘信息详情:

招聘信息详情公司介绍

用户填写应聘信息:管理员或企业收到应聘信息进行审核、审核后在用户端可以看到

 

企业账号登录审核通过后进行面试:

学生用户查看应聘信息 

就业知识:在就业知识页面中可以查看标题、分类、图片、相关资料、视频等信息

 在就业知识可以对文件进行下载以及视频的观看。

以及评论和文件内容的查看 

线下宣讲会:

公告信息:

公告详情:

个人中心:

管理员后台管理:管理员登录进入系统之后,就可以对所有的信息进行查看,可以查看到首页、个人中心、学生管理、辅导员管理、企业管理、招聘信息管理、应聘信息管理、毕业去向管理、就业知识管理、系统管理等,并且还可以对其进行相应的操作管理

 企业管理:在企业管理页面中可以对索引、企业账号、企业名称、企业地址、负责人、联系方式、邮箱、企业图片、附件等信息进行详情,修改或删除等操作

招聘信息:

 

 应聘信息:

毕业去向:

 就业知识:

 线下宣讲会:

系统公告以及轮播图等管理:

代码实现:



/**
 * 招聘信息
 * 后端接口
 * @author 
 * @email 
 * @date 2022-03-05 23:00:18
 */
@RestController
@RequestMapping("/zhaopinxinxi")
public class ZhaopinxinxiController {
    @Autowired
    private ZhaopinxinxiService zhaopinxinxiService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ZhaopinxinxiEntity zhaopinxinxi,
		HttpServletRequest request){
		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("qiye")) {
			zhaopinxinxi.setQiyezhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZhaopinxinxiEntity> ew = new EntityWrapper<ZhaopinxinxiEntity>();
		PageUtils page = zhaopinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zhaopinxinxi), params), params));

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

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

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ZhaopinxinxiEntity zhaopinxinxi){
        EntityWrapper< ZhaopinxinxiEntity> ew = new EntityWrapper< ZhaopinxinxiEntity>();
 		ew.allEq(MPUtil.allEQMapPre( zhaopinxinxi, "zhaopinxinxi")); 
		ZhaopinxinxiView zhaopinxinxiView =  zhaopinxinxiService.selectView(ew);
		return R.ok("查询招聘信息成功").put("data", zhaopinxinxiView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ZhaopinxinxiEntity zhaopinxinxi = zhaopinxinxiService.selectById(id);
		zhaopinxinxi.setClicknum(zhaopinxinxi.getClicknum()+1);
		zhaopinxinxiService.updateById(zhaopinxinxi);
        return R.ok().put("data", zhaopinxinxi);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ZhaopinxinxiEntity zhaopinxinxi = zhaopinxinxiService.selectById(id);
		zhaopinxinxi.setClicknum(zhaopinxinxi.getClicknum()+1);
		zhaopinxinxiService.updateById(zhaopinxinxi);
        return R.ok().put("data", zhaopinxinxi);
    }
    



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

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

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        zhaopinxinxiService.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<ZhaopinxinxiEntity> wrapper = new EntityWrapper<ZhaopinxinxiEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("qiye")) {
			wrapper.eq("qiyezhanghao", (String)request.getSession().getAttribute("username"));
		}

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


}

数据库设计:

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表4-1企业

字段名称

类型

长度

字段说明

id

bigint


主键

addtime

timestamp


创建时间

qiyezhanghao

varchar

200

企业账号

mima

varchar

200

密码

qiyemingcheng

varchar

200

企业名称

qiyedizhi

varchar

200

企业地址

fuzeren

varchar

200

负责人

lianxifangshi

varchar

200

联系方式

youxiang

varchar

200

邮箱

qiyetupian

varchar

200

企业图片

qiyezizhi

varchar

200

企业资质

yingyexukezheng

varchar

200

营业许可证

sfsh

varchar

200

是否审核

shhf

longtext

4294967295

审核回复

公告信息

字段名称

类型

长度

字段说明

id

bigint


主键

addtime

timestamp


创建时间

title

varchar

200

标题

introduction

longtext

4294967295

简介

picture

varchar

200

图片

content

longtext

4294967295

内容

就业知识

字段名称

类型

长度

字段说明

id

bigint


主键

addtime

timestamp


创建时间

biaoti

varchar

200

标题

fenlei

varchar

200

分类

tupian

varchar

200

图片

xiangguanziliao

varchar

200

相关资料

shipin

varchar

200

视频

wenzhangneirong

longtext

4294967295

文章内容

辅导员

字段名称

类型

长度

字段说明

id

bigint


主键

addtime

timestamp


创建时间

fudaoyuangonghao

varchar

200

辅导员工号

mima

varchar

200

密码

fudaoyuanxingming

varchar

200

辅导员姓名

xingbie

varchar

200

性别

lianxidianhua

varchar

200

联系电话

jiaoshiyouxiang

varchar

200

教师邮箱

招聘信息

字段名称

类型

长度

字段说明

id

bigint


主键

addtime

timestamp


创建时间

qiyemingcheng

varchar

200

企业名称

qiyezhanghao

varchar

200

企业账号

qiyetupian

varchar

200

企业图片

gangweimingcheng

varchar

200

岗位名称

shangbandidian

varchar

200

上班地点

shangbanshijian

varchar

200

上班时间

xinzidaiyu

int


薪资待遇

zhaopinrenshu

int


招聘人数

lianxifangshi

varchar

200

联系方式

qiyejieshao

longtext

4294967295

企业介绍

renzhiyaoqiu

longtext

4294967295

任职要求

sfsh

varchar

200

是否审核

shhf

longtext

4294967295

审核回复

clicknum

int


点击次数

配置文件

字段名称

类型

长度

字段说明

id

bigint


主键

name

varchar

100

配置参数名称

value

varchar

100

配置参数值

应聘信息

字段名称

类型

长度

字段说明

id

bigint


主键

addtime

timestamp


创建时间

qiyemingcheng

varchar

200

企业名称

gangweimingcheng

varchar

200

岗位名称

xinzidaiyu

varchar

200

薪资待遇

qiyezhanghao

varchar

200

企业账号

xueshengzhanghao

varchar

200

学生账号

xueshengxingming

varchar

200

学生姓名

lianxifangshi

varchar

200

联系方式

jianlitoudi

varchar

200

简历投递

yingpinriqi

datetime


应聘日期

sfsh

varchar

200

是否审核

shhf

longtext

4294967295

审核回复

论文报告:

获取源码:

 大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻微信公众号获取联系方式👇🏻👇🏻👇🏻

打卡 文章 更新 223/  365天

 精彩专栏推荐订阅下方专栏👇🏻👇🏻👇🏻👇🏻

Java项目精品实战案例《100套》

web前端期末大作业网页实战《100套》

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。