基于javaweb的SSM+Maven企业绩效考核管理系统(java+ssm+jsp+bootstrap+jquery+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

330023502402

340023502402

360023502402

370023502402

380023502402

390023502402

400023502402

基于javaweb的SSM+Maven企业绩效考核管理系统(java+ssm+jsp+bootstrap+jquery+mysql)

项目介绍

本项目包含管理员与员工两种角色; 管理员角色包含以下功能: 个人信息查看,出勤管理,员工管理,奖励与罚款,工资设置,管理员登录,缴税设置,部门管理,银行工资发放等功能。

员工角色包含以下功能: 登录、公告管理、绩效查看、首页、修改密码、意见反馈、周报信息等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;  5.数据库:MySql 5.7版本; 6.是否Maven项目:是;

技术栈

  1. 后端:Spring SpringMVC MyBatis 2. 前端:JSP+css+javascript+bootstrap+jQuery

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ssm_qyjxkhsys

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
	super(messageConverters);
}

public CompressRequestResponseBodyMethodProcessor(List<HttpMessageConverter<?>> messageConverters,
ContentNegotiationManager contentNegotiationManager) {

super(messageConverters, contentNegotiationManager);
}

public CompressRequestResponseBodyMethodProcessor(List<HttpMessageConverter<?>> messageConverters,
ContentNegotiationManager contentNegotiationManager, List<Object> responseBodyAdvice) {
super(messageConverters, contentNegotiationManager, responseBodyAdvice);
}


@Override
public boolean supportsParameter(MethodParameter parameter) {
return parameter.hasParameterAnnotation(CompressRespnseBody.class);
}

@Override
public boolean supportsReturnType(MethodParameter returnType) {
return (AnnotationUtils.findAnnotation(returnType.getContainingClass(), CompressRespnseBody.class) != null ||
returnType.getMethodAnnotation(CompressRespnseBody.class) != null);
}

/**
* @throws MethodArgumentNotValidException if validation fails
* @throws HttpMessageNotReadableException if {@link CompressRespnseBody#required()}
* is {@code true} and there is no body content or if there is no suitable
* converter to read the content with.
*/
@Override
public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer,
NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {

Object argument = readWithMessageConverters(webRequest, parameter, parameter.getGenericParameterType());
String name = Conventions.getVariableNameForParameter(parameter);
WebDataBinder binder = binderFactory.createBinder(webRequest, argument, name);
if (argument != null) {
validate(binder, parameter);
}
mavContainer.addAttribute(BindingResult.MODEL_KEY_PREFIX + name, binder.getBindingResult());
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
    @ResponseBody
@RequestMapping("deleteWeek")
public RemoteResult deleteWeek(@RequestParam(value = "ids[]") String[] ids) {
this.weekService.deleteWeek(ids);
return ResultUtils.createNullResult();
}

}
package com.xmjd.info.controller.information;


/**
* 平台公告的controller
*/
@Controller
@RequestMapping("/notice")
public class NoticeController extends BaseController {


@Autowired
private NoticeService noticeService;

/**
* 系统管理=公告管理主界面
*
* @return
*/
@RequestMapping("/toList")
public String toNoticeList() {
return "page/jx/noticeList";
}

/**
* 数据列表
*
* @param query 分页数据
* @return 结果
*/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
		return super.preHandle(request, response, handler);
}

public boolean verify(RequestDelegate requestDelegate,String... properties){
return false;
}

public boolean isSkipVerify() {
return skipVerify;
}

public void setSkipVerify(boolean skipVerify) {
this.skipVerify = skipVerify;
}

}
package com.xmjd.info.controller.information;


/**
* 周报的controller
*/
@Controller
@RequestMapping("/week")
public class WeekController extends BaseController {


@Autowired
private WeekService weekService;

/**
* 系统管理=公告管理主界面
*
* @return
*/
@RequestMapping("/toList")
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
     * 添加平台用户管理证件人
*
* @param sysUser 平台用户管理
* @return
*/
@ResponseBody
@RequestMapping("createSysUser")
public RemoteResult createSysUser(SysUser sysUser) {
this.sysUserService.createSysUser(sysUser);
return ResultUtils.createNullResult();
}

/**
* 修改平台用户管理证件人
*
* @param sysUser 平台用户管理
* @return
*/
@ResponseBody
@RequestMapping("updateSysUser")
public RemoteResult updateSysUser(SysUser sysUser) {
this.sysUserService.updateSysUser(sysUser);
return ResultUtils.createNullResult();
}

/**
* 重置平台用户管理密码
*
* @param sysUser 平台用户管理ID,PWD
* @return 结果
*/
@ResponseBody
@RequestMapping("resetPassword")
public RemoteResult resetPassword(SysUser sysUser) {
this.sysUserService.resetPassword(sysUser);
return ResultUtils.createNullResult();
}

@RequestMapping("/print")
public String print(Model model, String id) {
model.addAttribute("user", this.sysUserDao.findSysUserById(id));
return "page/system/sysUserPrint";
}

}
package com.xmjd.info.controller.filter;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

@Autowired
private SysUserDao sysUserDao;

@Autowired
private EvalDao evalDao;

@Autowired
private DeptDao deptDao;

/**
* 系统管理=公告管理主界面
*
* @return
*/
@RequestMapping("/toList")
public String toEvalList(Model model) {
model.addAttribute("items", this.itemDao.getItems());
model.addAttribute("users", this.sysUserService.findAll());
return "page/jx/evalList";
}
/**
* 系统管理=公告管理主界面
*
* @return
*/
@RequestMapping("/toList2")
public String toEvalList2(Model model) {
return "page/jx/evalList2";
}

/**
* 数据列表
*
* @param query 分页数据
* @return 结果
*/
@ResponseBody
@RequestMapping("findEvals")
public RemoteResult findEval(EvalQuery query) {
if(super.getLoginer().getAdmin() != SysUser.ADMINISTRATOR){
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
     * @param opinion 意见反馈
* @return
*/
@ResponseBody
@RequestMapping("createOpinion")
public RemoteResult createUser(Opinion opinion) {
opinion.setUserId(super.getLoginerId());
this.opinionService.createOpinion(opinion);
return ResultUtils.createNullResult();
}

/**
* 修改意见反馈
*
* @param opinion 意见反馈
* @return
*/
@ResponseBody
@RequestMapping("updateOpinion")
public RemoteResult updateOpinion(Opinion opinion) {
if (opinion.getId() == null) {
throw new CiBizException("请选择需要修改的意见反馈");
}
this.opinionService.updateOpinion(opinion);
return ResultUtils.createNullResult();
}

/**
* 删除意见反馈
*
* @param ids 意见反馈ID
* @return
*/
@ResponseBody
@RequestMapping("deleteOpinion")
public RemoteResult deleteOpinion(@RequestParam(value = "ids[]") String[] ids) {
this.opinionService.deleteOpinion(ids);
return ResultUtils.createNullResult();
}

}
/**
* Project Name:zfono-spring
* File Name:GrantHandlerInterceptorAdapter.java
* Copyright (c) 2016, www.zm0618.com All Rights Reserved.
*/
package com.xmjd.spring.web.interceptor;



项目链接:
https://javayms.github.io?id=531122512008200nj
https://javayms.pages.dev?id=531122512008200nj