package com.controller;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.text.ParseException;
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 java.io.IOException;
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.XueshengEntity;
import com.entity.view.XueshengView;
import com.service.XueshengService;
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 2023-03-04 08:15:50
*/
@RestController
@RequestMapping("/xuesheng")
public class XueshengController {
@Autowired
private XueshengService xueshengService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@RequestMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
XueshengEntity u = xueshengService.selectOne(new EntityWrapper<XueshengEntity>().eq("xuehao", username));
if(u==null || !u.getMima().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(u.getId(), username,"xuesheng", "学生" );
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@RequestMapping("/register")
public R register(@RequestBody XueshengEntity xuesheng){
//ValidatorUtils.validateEntity(xuesheng);
XueshengEntity u = xueshengService.selectOne(new EntityWrapper<XueshengEntity>().eq("xuehao", xuesheng.getXuehao()));
if(u!=null) {
return R.error("注册用户已存在");
}
Long uId = new Date().getTime();
xuesheng.setId(uId);
xueshengService.insert(xuesheng);
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");
XueshengEntity u = xueshengService.selectById(id);
return R.ok().put("data", u);
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
XueshengEntity u = xueshengService.selectOne(new EntityWrapper<XueshengEntity>().eq("xuehao", username));
if(u==null) {
return R.error("账号不存在");
}
u.setMima("123456");
xueshengService.updateById(u);
return R.ok("密码已重置为:123456");
}
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,XueshengEntity xuesheng,
HttpServletRequest request){
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("fudaoyuan")) {
xuesheng.setFudaoyuangonghao((String)request.getSession().getAttribute("username"));
}
EntityWrapper<XueshengEntity> ew = new EntityWrapper<XueshengEntity>();
PageUtils page = xueshengService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xuesheng), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,XueshengEntity xuesheng,
HttpServletRequest request){
EntityWrapper<XueshengEntity> ew = new EntityWrapper<XueshengEntity>();
PageUtils page = xueshengService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xuesheng), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( XueshengEntity xuesheng){
EntityWrapper<XueshengEntity> ew = new EntityWrapper<XueshengEntity>();
ew.allEq(MPUtil.allEQMapPre( xuesheng, "xuesheng"));
return R.ok().put("data", xueshengService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(XueshengEntity xuesheng){
EntityWrapper< XueshengEntity> ew = new EntityWrapper< XueshengEntity>();
ew.allEq(MPUtil.allEQMapPre( xuesheng, "xuesheng"));
XueshengView xueshengView = xueshengService.selectView(ew);
return R.ok("查询学生成功").put("data", xueshengView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
XueshengEntity xuesheng = xueshengService.selectById(id);
return R.ok().put("data", xuesheng);
}
/**
* 前端详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
XueshengEntity xuesheng = xueshengService.selectById(id);
return R.ok().put("data", xuesheng);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody XueshengEntity xuesheng, HttpServletRequest request){
xuesheng.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(xuesheng);
XueshengEntity u = xueshengService.selectOne(new EntityWrapper<XueshengEntity>().eq("xuehao", xuesheng.getXuehao()));
if(u!=null) {
return R.error("用户已存在");
}
xuesheng.setId(new Date().getTime());
xueshengService.insert(xuesheng);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody XueshengEntity xuesheng, HttpServletRequest request){
xuesheng.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(xuesheng);
XueshengEntity u = xueshengService.selectOne(new EntityWrapper<XueshengEntity>().eq("xuehao", xuesheng.getXuehao()));
if(u!=null) {
return R.error("用户已存在");
}
xuesheng.setId(new Date().getTime());
xueshengService.insert(xuesheng);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
@Transactional
public R update(@RequestBody XueshengEntity xuesheng, HttpServletRequest request){
//ValidatorUtils.validateEntity(xuesheng);
xueshengService.updateById(xuesheng);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
xueshengService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariabl
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
近几年毕业设计和毕业答辩的要求和难度不断提升,传统的毕业项目缺少创新和亮点,往往达不到毕业答辩的要求,这几年教育机构专门针对各大院校毕业设计进行培训指导,衍生出很多届优秀学员的毕业项目,为了让广大同学都可以顺利通过答辩,我作为过来人给大家准备了一些资料,同学们可以互相参考,我建议大家是要有自己的想法来重构项目,而不是照搬抄袭。近几年毕业设计和毕业答辩的要求和难度不断提升,传统的毕业项目缺少创新和亮点,往往达不到毕业答辩的要求,这几年教育机构专门针对各大院校毕业设计进行培训指导,衍生出很多届优秀学员的毕业项目,为了让广大同学都可以顺利通过答辩,我作为过来人给大家准备了一些资料,同学们可以互相参考,我建议大家是要有自己的想法来重构项目,而不是照搬抄袭。近几年毕业设计和毕业答辩的要求和难度不断提升,传统的毕业项目缺少创新和亮点,往往达不到毕业答辩的要求,这几年教育机构专门针对各大院校毕业设计进行培训指导,衍生出很多届优秀学员的毕业项目,为了让广大同学都可以顺利通过答辩,我作为过来人给大家准备了一些资料,同学们可以互相参考,我建议大家是要有自己的想法来重构项目,而不是照搬抄袭。
资源推荐
资源详情
资源评论
收起资源包目录
ssm3619n.zip (977个子文件)
update-password.vue.bak 3KB
update-password.vue.bak 3KB
main.js.bak 2KB
main.js.bak 2KB
IndexMain.vue.bak 2KB
IndexMain.vue.bak 2KB
IndexAsideStatic.vue.bak 2KB
IndexAsideStatic.vue.bak 2KB
BreadCrumbs.vue.bak 2KB
BreadCrumbs.vue.bak 2KB
IndexHeader.vue.bak 2KB
IndexHeader.vue.bak 2KB
3-build.bat 15B
3-build.bat 15B
2-run.bat 14B
2-run.bat 14B
1-install.bat 12B
1-install.bat 12B
XueshengController.class 10KB
XueshengController.class 10KB
FudaoyuanController.class 10KB
FudaoyuanController.class 10KB
QingjiashenqingController.class 8KB
XiaojiashenqingController.class 8KB
XiaojiashenqingController.class 8KB
QingjiashenqingController.class 8KB
CommonController.class 8KB
CommonController.class 8KB
YuanxiController.class 8KB
YuanxiController.class 8KB
BanjiController.class 8KB
BanjiController.class 8KB
BaiduUtil.class 7KB
BaiduUtil.class 7KB
MPUtil.class 7KB
MPUtil.class 7KB
UsersController.class 6KB
UsersController.class 6KB
QingjiashenqingEntity.class 6KB
QingjiashenqingEntity.class 6KB
XiaojiashenqingEntity.class 5KB
XiaojiashenqingEntity.class 5KB
TokenServiceImpl.class 4KB
TokenServiceImpl.class 4KB
FileController.class 4KB
FileController.class 4KB
XueshengEntity.class 4KB
XueshengEntity.class 4KB
FudaoyuanEntity.class 4KB
FudaoyuanEntity.class 4KB
ConfigController.class 4KB
ConfigController.class 4KB
QingjiashenqingServiceImpl.class 4KB
XiaojiashenqingServiceImpl.class 4KB
QingjiashenqingServiceImpl.class 4KB
XiaojiashenqingServiceImpl.class 4KB
FudaoyuanServiceImpl.class 4KB
FudaoyuanServiceImpl.class 4KB
XueshengServiceImpl.class 4KB
XueshengServiceImpl.class 4KB
YuanxiServiceImpl.class 4KB
YuanxiServiceImpl.class 4KB
BanjiServiceImpl.class 4KB
BanjiServiceImpl.class 4KB
AuthorizationInterceptor.class 3KB
AuthorizationInterceptor.class 3KB
QingjiashenqingModel.class 3KB
QingjiashenqingModel.class 3KB
QingjiashenqingVO.class 3KB
QingjiashenqingVO.class 3KB
CommonUtil.class 3KB
CommonUtil.class 3KB
Query.class 3KB
Query.class 3KB
UsersServiceImpl.class 3KB
UsersServiceImpl.class 3KB
XiaojiashenqingModel.class 3KB
XiaojiashenqingModel.class 3KB
XiaojiashenqingVO.class 3KB
XiaojiashenqingVO.class 3KB
PageUtils.class 3KB
PageUtils.class 3KB
TokenEntity.class 3KB
TokenEntity.class 3KB
YuanxiEntity.class 2KB
YuanxiEntity.class 2KB
BanjiEntity.class 2KB
BanjiEntity.class 2KB
CommonServiceImpl.class 2KB
CommonServiceImpl.class 2KB
XueshengModel.class 2KB
XueshengModel.class 2KB
XueshengVO.class 2KB
XueshengVO.class 2KB
FudaoyuanModel.class 2KB
FudaoyuanModel.class 2KB
FudaoyuanVO.class 2KB
FudaoyuanVO.class 2KB
R.class 2KB
R.class 2KB
共 977 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
诚信赢天下
- 粉丝: 2971
- 资源: 102
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功