package com.easy.controller;
import com.alibaba.excel.EasyExcel;
import com.easy.bean.User;
import com.easy.common.CommonResult;
import com.easy.config.EasyConfig;
import com.easy.dao.IUserDao;
import com.easy.excel.EasyObjExcelListener;
import com.easy.service.IUserService;
import com.easy.util.JWTUtil;
import com.easy.util.Page;
import com.easy.util.UploadFileUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@CrossOrigin
public class UserController {
@Autowired
IUserDao dao;
@Autowired
IUserService userService;
private static String checkCode;
// @RequestMapping("hello")
// public String hello(){
// return "java so easy";
// }
//
// @GetMapping("now")
// public String now() {
// return dao.getNow();
// }
//通过ID获取用户
@GetMapping("user/{id}")
public CommonResult getUserByID(@PathVariable int id) {
User user = dao.getUserByID(id);
return CommonResult.success(200,"ID查找成功",user);
}
//获取用户列表
@GetMapping("user")
@Transactional
public CommonResult getUser(User user, Page page) {
List<User> list =userService.getUser(user,page);
int count=userService.getCount(user);
HashMap map=new HashMap();
map.put("list",list);
map.put("count",count);
return CommonResult.success(map);
}
//删除用户
@DeleteMapping("user/{id}")
public CommonResult delUser(@PathVariable int id) {
int count = userService.delUser(id);
if(count>0){
return CommonResult.success(count);
}else {
return CommonResult.fail();
}
}
//新增用户form
@PostMapping("user")
public CommonResult addUser(User user){
List<User> list = userService.getUserByUserName(user.getUsername());
if(list.size()>0){
return CommonResult.fail(400,"用户已存在",list);
}else {
userService.addUser(user);
user = userService.getUserByID(user.getId());
return CommonResult.success(user);
}
}
//新增用户JSON
@PostMapping("userjson")
@Transactional
public CommonResult addUserJSON(@RequestBody User user){
List<User> list = userService.getUserByUserName(user.getUsername());
if(list.size()>0){
return CommonResult.fail(400,"用户已存在",list);
}else {
userService.addUser(user);
user = userService.getUserByID(user.getId());
return CommonResult.success(400,"添加成功",user);
}
}
//修改用户
@PutMapping("userjson")
@Transactional
public CommonResult editUserJSON(@RequestBody User user) {
userService.editUser(user);
user = userService.getUserByID(user.getId());
return CommonResult.success(user);
}
//登录
@PostMapping("dologin")
@Transactional
public CommonResult doLogin(User user, String checkCode, HttpServletRequest request){
// 从Session中获取验证码
String sessionCaptcha = (String) request.getSession().getAttribute("captcha");
System.out.println(sessionCaptcha+"-----");
if (sessionCaptcha == null || !sessionCaptcha.equals(checkCode)) {
System.out.println(checkCode + "-----验证失败");
return CommonResult.fail(405, "验证码不正确");
}
// 清除Session中的验证码
request.getSession().removeAttribute("captcha");
String token=userService.doLogin(user);
if(token==null){
return CommonResult.fail(403,"登录失败");
}else {
List<User> list =userService.getUserByUserName(user.getUsername());
System.out.println(sessionCaptcha +"-----登录");
HashMap map=new HashMap();
if(list.size()>0){
int id =list.get(0).getId();
map.put("id",id);
map.put("token",token);
}
return CommonResult.success(200, "登录成功", map);
}
}
@PostMapping("checkpass")
@Transactional
public CommonResult doCheckPass(User user, String checkCode){
String token=userService.doLogin(user);
if(token==null){
return CommonResult.fail(403,"验证失败");
}else {
List<User> list =userService.getUserByUserName(user.getUsername());
HashMap map=new HashMap();
if(list.size()>0){
int id =list.get(0).getId();
map.put("id",id);
map.put("token",token);
}
return CommonResult.success(200, "验证成功", map);
}
}
@GetMapping("checktoken")
public CommonResult checkToken(HttpServletRequest request){
String token = request.getHeader("Authorization");
if(token!=null && JWTUtil.verifyToken(token)){
Map<String, Object> map = JWTUtil.decodeJWT(token);
return CommonResult.success(200,"解析成功",map);
}
return CommonResult.fail();
}
//注册
@PostMapping("register")
@Transactional
public CommonResult register(@RequestBody User user){
if(user.getUsername()!=null && user.getPassword()!=null){
List<User> list = userService.getUserByUserName(user.getUsername());
if(list.size()>0){
return CommonResult.fail(500,"用户已存在");
}else {
userService.addUser(user);
user = userService.getUserByID(user.getId());
user.setName("游客"+user.getId());
userService.editUser(user);
return CommonResult.success(200,"注册成功",user);
}
}else {
return CommonResult.fail(403, "注册失败");
}
}
@PostMapping("userimg")
public CommonResult userImg(@RequestParam("file") MultipartFile file){
//存储文件
String newName = UploadFileUtil.uploadFile(file);
//将文件地址存入数据库
//返回上传文件的地址 / 返回上传头像的员工数据
return CommonResult.success(EasyConfig.STATIC_PATH+newName);
}
@PutMapping("userimg")
public CommonResult saveImg(User user){
userService.saveImg(user);
return CommonResult.success(200,"头像保存成功");
}
@PutMapping("setpass")
public CommonResult setPass(User user){
userService.setPassword(user);
return CommonResult.success(200,"密码修改成功");
}
@PostMapping("userexcel")
public CommonResult userExcel(@RequestParam("file")MultipartFile file){
EasyObjExcelListener<User> userList= null;
try{
userList = new EasyObjExcelListener<User>();
InputStream fis= null;
try {
fis = file.getInputStream();
} catch (IOException e) {
e.printStackTrace();
}
EasyExcel.read(fis,User.class,userList).sheet(0).doRead();
}catch (Exception e){
e.printStackTrace();
return CommonResult.fail(400,"解析失败");
}
// for(User item : userList.list){
// if(userService.getUserByUserName(item.getUsername()).size()>0){
// System.out.println(item.getUsername()+"已存在");
// continue;
// }
// userService.addUser(item);
// System.out.println("新增用户:"+item.toString());
// }
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本项目旨在开发一个功能全面的物流仓库管理系统,以数字化手段优化仓库作业流程,提高管理效率。系统集成了前端用户交互界面与后端数据处理逻辑,涵盖了从用户注册登录、订单管理、货单跟踪到用户信息维护等多个核心业务模块。
资源推荐
资源详情
资源评论
收起资源包目录
logi-swift-wms-master.zip (54个子文件)
logi-swift-wms-master
sql
logiswift_wms.sql 166KB
pom.xml 4KB
src
main
resources
mapper
Record_Mapper.xml 5KB
Order_Mapper.xml 5KB
Station_Mapper.xml 2KB
Detail_Mapper.xml 4KB
User_Mapper.xml 3KB
Count_Mapper.xml 1KB
application.yml 473B
java
com
easy
controller
TestController.java 1KB
RecordController.java 3KB
StationController.java 2KB
UserController.java 8KB
OrderController.java 3KB
DetailController.java 3KB
dao
LogisticsOrderMapper.java 400B
IDetailDao.java 776B
IRecordDao.java 799B
IOrderDao.java 628B
IStationDao.java 518B
IUserDao.java 595B
service
IStationService.java 383B
IRecordService.java 616B
IUserService.java 479B
IOrderService.java 537B
impl
UserServiceImpl.java 3KB
DetailServiceImpl.java 2KB
StationServiceImpl.java 1KB
OrderServiceImpl.java 3KB
RecordServiceImpl.java 2KB
IDetailService.java 588B
common
CommonResult.java 2KB
LogiSwiftWMSApplication.java 430B
util
Regex.java 706B
DigestUtil.java 2KB
UploadFileUtil.java 1002B
DateTimeConverter.java 1KB
Page.java 507B
JWTUtil.java 2KB
LogisticsOrderStatistics.java 2KB
config
EasyConfig.java 1KB
bean
Station.java 765B
Detail.java 616B
Order.java 510B
Record.java 2KB
User.java 2KB
excel
EasyObjExcelListener.java 948B
EasyObj.java 755B
interceptor
LoginInterceptor.java 2KB
.idea
uiDesigner.xml 9KB
misc.xml 626B
.gitignore 176B
encodings.xml 261B
.gitignore 490B
共 54 条
- 1
资源评论
Java程序员-张凯
- 粉丝: 1w+
- 资源: 7254
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于MATLAB卡尔曼小球运动跟踪系统GUI面板.zip
- 基于MATLAB卡尔曼小球运动跟踪代码面板GUI.zip
- 基于MATLAB卡尔曼小球运动跟踪代码面板GUI(1).zip
- AKStream是一套全功能的流媒体管理控制接口平台
- NoSQL Manager for MongoDB图形化管理工具,便于对MongoDB数据库进行操作和维护(包含授权码)
- opencv4.10.0-cuda12.4-cudnn9.2.0-python3.10.15编译包
- 适用于Windows,macOS,linux(x11)的开源跨平台的剪贴板管理工具
- 乾程理想中佑速印机JF系列操作手册
- Java项目: 基于springBoot+mysql+maven+vue江理工文档管理系统(含源码+数据库+开题报告+毕业论文)
- XArrPay 支付系统 商户版 v 1.0.4 版本
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功