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.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.YonghuEntity;
import com.entity.view.YonghuView;
import com.service.YonghuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MPUtil;
import com.utils.CommonUtil;
/**
* 用户
* 后端接口
* @author
* @email
* @date 2020-11-09 16:15:06
*/
@RestController
@RequestMapping("/yonghu")
public class YonghuController {
@Autowired
private YonghuService yonghuService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@RequestMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", username));
if(user==null || !user.getMima().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(), username,"yonghu", "用户" );
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@RequestMapping("/register")
public R register(@RequestBody YonghuEntity yonghu){
//ValidatorUtils.validateEntity(yonghu);
YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));
if(user!=null) {
return R.error("注册用户已存在");
}
Long uId = new Date().getTime();
yonghu.setId(uId);
yonghuService.insert(yonghu);
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");
YonghuEntity user = yonghuService.selectById(id);
return R.ok().put("data", user);
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", username));
if(user==null) {
return R.error("账号不存在");
}
user.setMima("123456");
yonghuService.updateById(user);
return R.ok("密码已重置为:123456");
}
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,YonghuEntity yonghu, HttpServletRequest request){
EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();
PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,YonghuEntity yonghu, HttpServletRequest request){
EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();
PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( YonghuEntity yonghu){
EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();
ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu"));
return R.ok().put("data", yonghuService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(YonghuEntity yonghu){
EntityWrapper< YonghuEntity> ew = new EntityWrapper< YonghuEntity>();
ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu"));
YonghuView yonghuView = yonghuService.selectView(ew);
return R.ok("查询用户成功").put("data", yonghuView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
YonghuEntity yonghu = yonghuService.selectById(id);
return R.ok().put("data", yonghu);
}
/**
* 前端详情
*/
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") String id){
YonghuEntity yonghu = yonghuService.selectById(id);
return R.ok().put("data", yonghu);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody YonghuEntity yonghu, HttpServletRequest request){
yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(yonghu);
YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));
if(user!=null) {
return R.error("用户已存在");
}
yonghu.setId(new Date().getTime());
yonghuService.insert(yonghu);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody YonghuEntity yonghu, HttpServletRequest request){
yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(yonghu);
YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));
if(user!=null) {
return R.error("用户已存在");
}
yonghu.setId(new Date().getTime());
yonghuService.insert(yonghu);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody YonghuEntity yonghu, HttpServletRequest request){
//ValidatorUtils.validateEntity(yonghu);
yonghuService.updateById(yonghu);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
yonghuService.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
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
高分项目-基于SpringBoot框架实现的在线BLOG网(包含全套源码 + 数据库sql + 论文).zip (1286个子文件)
2-run.bat 14B
2-run.bat 14B
1-install.bat 12B
1-install.bat 12B
YonghuController.class 10KB
CommonController.class 9KB
ForumController.class 9KB
TukuxiangceController.class 8KB
StoreupController.class 8KB
BokeController.class 8KB
DiscusstukuxiangceController.class 8KB
DiscussbokeController.class 8KB
BokebiaoqianController.class 8KB
BokefenleiController.class 7KB
NewsController.class 7KB
MPUtil.class 7KB
UserController.class 6KB
FileController.class 5KB
TokenServiceImpl.class 4KB
BaiduUtil.class 4KB
ForumEntity.class 4KB
DiscusstukuxiangceServiceImpl.class 4KB
BokebiaoqianServiceImpl.class 4KB
TukuxiangceServiceImpl.class 4KB
DiscussbokeServiceImpl.class 4KB
BokefenleiServiceImpl.class 4KB
BokeEntity.class 4KB
StoreupServiceImpl.class 4KB
YonghuServiceImpl.class 4KB
ForumServiceImpl.class 4KB
ConfigController.class 4KB
BokeServiceImpl.class 4KB
NewsServiceImpl.class 4KB
TukuxiangceEntity.class 4KB
AuthorizationInterceptor.class 3KB
YonghuEntity.class 3KB
StoreupEntity.class 3KB
Query.class 3KB
DiscusstukuxiangceEntity.class 3KB
DiscussbokeEntity.class 3KB
NewsEntity.class 3KB
UserServiceImpl.class 3KB
PageUtils.class 3KB
BokebiaoqianEntity.class 3KB
TokenEntity.class 3KB
BokefenleiEntity.class 3KB
InterceptorConfig.class 2KB
CommonServiceImpl.class 2KB
BokeModel.class 2KB
BokeVO.class 2KB
R.class 2KB
TukuxiangceModel.class 2KB
TukuxiangceVO.class 2KB
UserEntity.class 2KB
DiscusstukuxiangceService.class 2KB
ValidatorUtils.class 2KB
SpringContextUtils.class 2KB
DiscusstukuxiangceDao.class 2KB
BokebiaoqianService.class 2KB
DiscussbokeService.class 2KB
TukuxiangceService.class 2KB
BokefenleiService.class 2KB
BokebiaoqianDao.class 2KB
HttpClientUtils.class 2KB
TukuxiangceDao.class 2KB
DiscussbokeDao.class 2KB
BokefenleiDao.class 2KB
StoreupService.class 2KB
YonghuService.class 2KB
ConfigServiceImpl.class 2KB
ForumService.class 2KB
StoreupDao.class 1KB
BokeService.class 1KB
NewsService.class 1KB
YonghuDao.class 1KB
ForumDao.class 1KB
BokeDao.class 1KB
NewsDao.class 1KB
ForumModel.class 1KB
ForumVO.class 1KB
YonghuModel.class 1KB
YonghuVO.class 1KB
JQPageInfo.class 1KB
SpringbootSchemaApplication.class 1KB
EIException.class 1KB
ConfigEntity.class 1KB
StoreupModel.class 1KB
StoreupVO.class 1KB
SQLFilter.class 1KB
DiscusstukuxiangceView.class 1KB
BokebiaoqianView.class 1KB
DiscussbokeView.class 1KB
TukuxiangceView.class 1KB
BokefenleiView.class 1KB
StoreupView.class 1KB
TokenService.class 1KB
YonghuView.class 1KB
ForumView.class 1KB
CommonUtil.class 1KB
BokeView.class 1KB
共 1286 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
编程资源宝库
- 粉丝: 3888
- 资源: 1966
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功