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.transaction.annotation.Transactional;
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.GongzuorenyuanEntity;
import com.entity.view.GongzuorenyuanView;
import com.service.GongzuorenyuanService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
import java.io.IOException;
/**
* 工作人员
* 后端接口
* @author
* @email
* @date 2022-04-21 14:17:10
*/
@RestController
@RequestMapping("/gongzuorenyuan")
public class GongzuorenyuanController {
@Autowired
private GongzuorenyuanService gongzuorenyuanService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@RequestMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
GongzuorenyuanEntity user = gongzuorenyuanService.selectOne(new EntityWrapper<GongzuorenyuanEntity>().eq("renyuanzhanghao", username));
if(user==null || !user.getMima().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(), username,"gongzuorenyuan", "工作人员" );
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@RequestMapping("/register")
public R register(@RequestBody GongzuorenyuanEntity gongzuorenyuan){
//ValidatorUtils.validateEntity(gongzuorenyuan);
GongzuorenyuanEntity user = gongzuorenyuanService.selectOne(new EntityWrapper<GongzuorenyuanEntity>().eq("renyuanzhanghao", gongzuorenyuan.getRenyuanzhanghao()));
if(user!=null) {
return R.error("注册用户已存在");
}
Long uId = new Date().getTime();
gongzuorenyuan.setId(uId);
gongzuorenyuanService.insert(gongzuorenyuan);
return R.ok();
}
/**
* 退出
*/
@RequestMapping("/logout")
public R logout(HttpServletRequest request) {
request.getSession().invalidate();
return R.ok("退出成功");
}
/**
* 获取用户的session用户信息
*/
@RequestMapping("/session")
public R getCurrUser(HttpServletRequest request){
Long id = (Long)request.getSession().getAttribute("userId");
GongzuorenyuanEntity user = gongzuorenyuanService.selectById(id);
return R.ok().put("data", user);
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
GongzuorenyuanEntity user = gongzuorenyuanService.selectOne(new EntityWrapper<GongzuorenyuanEntity>().eq("renyuanzhanghao", username));
if(user==null) {
return R.error("账号不存在");
}
user.setMima("123456");
gongzuorenyuanService.updateById(user);
return R.ok("密码已重置为:123456");
}
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,GongzuorenyuanEntity gongzuorenyuan,
HttpServletRequest request){
EntityWrapper<GongzuorenyuanEntity> ew = new EntityWrapper<GongzuorenyuanEntity>();
PageUtils page = gongzuorenyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gongzuorenyuan), params), params));
request.setAttribute("data", page);
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,GongzuorenyuanEntity gongzuorenyuan,
HttpServletRequest request){
EntityWrapper<GongzuorenyuanEntity> ew = new EntityWrapper<GongzuorenyuanEntity>();
PageUtils page = gongzuorenyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gongzuorenyuan), params), params));
request.setAttribute("data", page);
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( GongzuorenyuanEntity gongzuorenyuan){
EntityWrapper<GongzuorenyuanEntity> ew = new EntityWrapper<GongzuorenyuanEntity>();
ew.allEq(MPUtil.allEQMapPre( gongzuorenyuan, "gongzuorenyuan"));
return R.ok().put("data", gongzuorenyuanService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(GongzuorenyuanEntity gongzuorenyuan){
EntityWrapper< GongzuorenyuanEntity> ew = new EntityWrapper< GongzuorenyuanEntity>();
ew.allEq(MPUtil.allEQMapPre( gongzuorenyuan, "gongzuorenyuan"));
GongzuorenyuanView gongzuorenyuanView = gongzuorenyuanService.selectView(ew);
return R.ok("查询工作人员成功").put("data", gongzuorenyuanView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
GongzuorenyuanEntity gongzuorenyuan = gongzuorenyuanService.selectById(id);
return R.ok().put("data", gongzuorenyuan);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
GongzuorenyuanEntity gongzuorenyuan = gongzuorenyuanService.selectById(id);
return R.ok().put("data", gongzuorenyuan);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody GongzuorenyuanEntity gongzuorenyuan, HttpServletRequest request){
gongzuorenyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(gongzuorenyuan);
GongzuorenyuanEntity user = gongzuorenyuanService.selectOne(new EntityWrapper<GongzuorenyuanEntity>().eq("renyuanzhanghao", gongzuorenyuan.getRenyuanzhanghao()));
if(user!=null) {
return R.error("用户已存在");
}
gongzuorenyuan.setId(new Date().getTime());
gongzuorenyuanService.insert(gongzuorenyuan);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody GongzuorenyuanEntity gongzuorenyuan, HttpServletRequest request){
gongzuorenyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(gongzuorenyuan);
GongzuorenyuanEntity user = gongzuorenyuanService.selectOne(new EntityWrapper<GongzuorenyuanEntity>().eq("renyuanzhanghao", gongzuorenyuan.getRenyuanzhanghao()));
if(user!=null) {
return R.error("用户已存在");
}
gongzuorenyuan.setId(new Date().getTime());
gongzuorenyuanService.insert(gongzuorenyuan);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
@Transactional
public R update(@RequestBody GongzuorenyuanEntity gongzuorenyuan, HttpServletRequest request){
//ValidatorUtils.
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
新冠疫情下的校园出入系统主要包括以下功能模块:个人中心,通知公告管理,用户管理,工作人员管理,进门登记管理,出门登记管理,出入统计管理,外来登记管理等模块。 环境说明: 开发语言:Java 框架:ssm JDK版本:JDK1.8 数据库:mysql 5.7+ 部署容器:tomcat7+ 数据库工具:Navicat11+ 开发软件:eclipse/myeclipse/idea(推荐idea) Maven包:Maven3.3.9
资源推荐
资源详情
资源评论
收起资源包目录
java毕业设计之新冠疫情下的校园出入系统源码(ssm后端+mysql数据库+前端+说明文档+LW).zip (894个子文件)
styles.css.bak 23KB
index.jsp.bak 4KB
setMenu.js.bak 3KB
topNav.jsp.bak 1KB
.classpath 1KB
org.eclipse.wst.common.component 689B
org.eclipse.wst.jsdt.ui.superType.container 49B
bootstrap.min.css 141KB
bootstrap.css 120KB
style.css 66KB
ueditor.css 44KB
styles.css 40KB
ueditor.min.css 34KB
font-awesome.min.css 30KB
jquery.treetable.theme.default.css 25KB
animate.css 23KB
entypo-icon.css 23KB
all.css 21KB
font-awesome.css 21KB
video-js.css 21KB
image.css 19KB
jquery.idealforms.css 17KB
themify-icons.css 16KB
video.css 15KB
attachment.css 15KB
square.min.css 14KB
all.css 13KB
dropzone.css 11KB
video-js.min.css 11KB
bootstrap-switch.css 11KB
bootstrap-datetimepicker.min.css 11KB
extra-pages.css 11KB
ladda.min.css 10KB
tooltipster.css 9KB
calendar.css 9KB
responsive.css 8KB
shCoreDefault.css 7KB
social.css 7KB
jquery-jvectormap.css 6KB
clockface.css 6KB
jquery.steps.css 6KB
dripicon.css 5KB
weather-icons.min.css 5KB
footable.core.css 5KB
dataTables.bootstrap4.min.css 5KB
datepicker.css 5KB
tabelizer.min.css 5KB
datepicker.css 5KB
datepicker.css 5KB
footable.standalone.css 5KB
signin.css 5KB
media.css 5KB
slidebars.css 4KB
skin-select.css 4KB
datepicker.css 4KB
scrawl.css 4KB
DT_bootstrap.css 4KB
datepicker.css 4KB
bootstrap-timepicker.css 3KB
green.css 3KB
yellow.css 3KB
red.css 3KB
blue.css 3KB
violet.css 3KB
codemirror.css 3KB
bootstrap-colorpicker.css 3KB
maki-icons.css 3KB
jquery.treeview.css 3KB
profile.css 3KB
charts.css 3KB
background.css 2KB
bootstrap-wysihtml5.css 2KB
awwwards.css 2KB
jquery.stepy.css 2KB
responsive-table.css 2KB
emotion.css 2KB
dialogbase.css 2KB
jquery.pnotify.default.css 2KB
music.css 2KB
demo.css 1KB
acc-wizard.min.css 1KB
jquery.easy-pie-chart.css 1KB
pace-theme-center-simple.css 1KB
uploader.css 1KB
edittable.css 1KB
editor.css 1KB
template.css 1KB
jquery.tagsinput.css 992B
mail.css 840B
number-pb.css 737B
jquery.treetable.css 652B
datatables.responsive.css 618B
validate.css 581B
open-sans.css 567B
stacktable.css 565B
webuploader.css 515B
icons-style.css 490B
loader-style.css 483B
footable-demos.css 440B
morris.css 433B
共 894 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
资源评论
大学生资源网
- 粉丝: 130
- 资源: 1334
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功