package com.egao.common.system.controller;
import cn.hutool.core.util.StrUtil;
import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.egao.common.core.annotation.OperLog;
import com.egao.common.core.web.*;
import com.egao.common.core.utils.CoreUtil;
import com.egao.common.system.entity.DictionaryData;
import com.egao.common.system.entity.Organization;
import com.egao.common.system.entity.Role;
import com.egao.common.system.entity.User;
import com.egao.common.system.service.DictionaryDataService;
import com.egao.common.system.service.OrganizationService;
import com.egao.common.system.service.RoleService;
import com.egao.common.system.service.UserService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* 用户管理
* Created by wangfan on 2018-12-24 16:10
*/
@Controller
@RequestMapping("/sys/user")
public class UserController extends BaseController {
@Autowired
private UserService userService;
@Autowired
private DictionaryDataService dictionaryDataService;
@Autowired
private RoleService roleService;
@Autowired
private OrganizationService organizationService;
@RequiresPermissions("sys:user:view")
@RequestMapping()
public String view(Model model) {
model.addAttribute("sexList", dictionaryDataService.listByDictCode("sex"));
model.addAttribute("organizationTypeList", dictionaryDataService.listByDictCode("organization_type"));
model.addAttribute("rolesJson", JSON.toJSONString(roleService.list()));
return "system/user.html";
}
/**
* 个人中心
*/
@RequestMapping("/info")
public String userInfo(Model model) {
model.addAttribute("user", userService.getFullById(getLoginUserId()));
model.addAttribute("sexList", dictionaryDataService.listByDictCode("sex"));
return "index/user-info.html";
}
/**
* 分页查询用户
*/
@OperLog(value = "用户管理", desc = "分页查询")
@RequiresPermissions("sys:user:list")
@ResponseBody
@RequestMapping("/page")
public PageResult<User> page(HttpServletRequest request) {
PageParam<User> pageParam = new PageParam<>(request);
pageParam.setDefaultOrder(null, new String[]{"create_time"});
return userService.listPage(pageParam);
}
/**
* 查询全部用户
*/
@OperLog(value = "用户管理", desc = "查询全部")
@RequiresPermissions("sys:user:list")
@ResponseBody
@RequestMapping("/list")
public JsonResult list(HttpServletRequest request) {
PageParam<User> pageParam = new PageParam<>(request);
List<User> records = userService.listAll(pageParam.getNoPageParam());
return JsonResult.ok().setData(pageParam.sortRecords(records));
}
/**
* 根据id查询用户
*/
@OperLog(value = "用户管理", desc = "根据id查询")
@RequiresPermissions("sys:user:list")
@ResponseBody
@RequestMapping("/get")
public JsonResult get(Integer id) {
PageParam<User> pageParam = new PageParam<>();
pageParam.put("userId", id);
List<User> records = userService.listAll(pageParam.getNoPageParam());
return JsonResult.ok().setData(pageParam.getOne(records));
}
/**
* 添加用户
*/
@OperLog(value = "用户管理", desc = "添加", param = false, result = true)
@RequiresPermissions("sys:user:save")
@ResponseBody
@RequestMapping("/save")
public JsonResult save(@RequestBody User user) {
user.setState(0);
user.setPassword(userService.encodePsw(user.getPassword()));
if (userService.saveUser(user)) {
return JsonResult.ok("添加成功");
}
return JsonResult.error("添加失败");
}
/**
* 修改用户
*/
@OperLog(value = "用户管理", desc = "修改", param = false, result = true)
@RequiresPermissions("sys:user:update")
@ResponseBody
@RequestMapping("/update")
public JsonResult update(@RequestBody User user) {
user.setState(null); // 状态不能修改
user.setPassword(null); // 密码不能修改
user.setUsername(null); // 账号不能修改
if (userService.updateUser(user)) {
return JsonResult.ok("修改成功");
}
return JsonResult.error("修改失败");
}
/**
* 删除用户
*/
@OperLog(value = "用户管理", desc = "删除", result = true)
@RequiresPermissions("sys:user:remove")
@ResponseBody
@RequestMapping("/remove")
public JsonResult remove(Integer id) {
if (userService.removeById(id)) {
return JsonResult.ok("删除成功");
}
return JsonResult.error("删除失败");
}
/**
* 批量修改用户
*/
@OperLog(value = "用户管理", desc = "批量修改", param = false, result = true)
@RequiresPermissions("sys:user:update")
@ResponseBody
@RequestMapping("/updateBatch")
public JsonResult updateBatch(@RequestBody BatchParam<User> batchParam) {
// 不能修改的字段
batchParam.getData().setPassword(null);
batchParam.getData().setState(null);
batchParam.getData().setUsername(null);
batchParam.getData().setPhone(null);
batchParam.getData().setEmail(null);
if (batchParam.update(userService, "user_id")) {
return JsonResult.ok("修改成功");
}
return JsonResult.error("修改失败");
}
/**
* 批量删除用户
*/
@OperLog(value = "用户管理", desc = "批量删除", result = true)
@RequiresPermissions("sys:user:remove")
@ResponseBody
@RequestMapping("/deleteBatch")
public JsonResult deleteBatch(@RequestBody List<Integer> ids) {
if (userService.removeByIds(ids)) {
return JsonResult.ok("删除成功");
}
return JsonResult.error("删除失败");
}
/**
* 修改用户状态
*/
@OperLog(value = "用户管理", desc = "修改状态", result = true)
@RequiresPermissions("sys:user:update")
@ResponseBody
@RequestMapping("/state/update")
public JsonResult updateState(Integer id, Integer state) {
if (state == null || (state != 0 && state != 1)) {
return JsonResult.error("状态值不正确");
}
User user = new User();
user.setUserId(id);
user.setState(state);
if (userService.updateById(user)) {
return JsonResult.ok("修改成功");
}
return JsonResult.error("修改失败");
}
/**
* 批量修改用户状态
*/
@OperLog(value = "用户管理", desc = "批量修改状态", result = true)
@RequiresPermissions("sys:user:update")
@ResponseBody
@RequestMapping("/state/updateBatch")
public JsonResult updateStateBatch(@RequestBody BatchParam<User> batchParam) {
User user = new User();
user.setState(batchParam.getData().getState());
if (user.getState() == null || (user.getState() != 0 && user.getState() != 1)) {
return JsonResult.error("状态值不正确");
}
if (batchParam.update(userService, "user_id")) {
return JsonResult.ok("修改成功");
}
return JsonResult.error("修改失败");
}
/**
* 重置密码
*/
@OperLog(val
没有合适的资源?快使用搜索试试~ 我知道了~
java毕业设计 基于SpringBoot+Mybatis的学生宿舍管理系统的设计与实现+详细文档+全部资料(优秀项目).zip
共605个文件
js:187个
java:145个
gif:81个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 177 浏览量
2024-04-17
10:51:05
上传
评论
收藏 4.44MB ZIP 举报
温馨提示
【资源说明】 java毕业设计 基于SpringBoot+Mybatis的学生宿舍管理系统的设计与实现+详细文档+全部资料(优秀项目).zipjava毕业设计 基于SpringBoot+Mybatis的学生宿舍管理系统的设计与实现+详细文档+全部资料(优秀项目).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如软件工程、计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也可作为毕设项目、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 3、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
java毕业设计 基于SpringBoot+Mybatis的学生宿舍管理系统的设计与实现+详细文档+全部资料(优秀项目).zip (605个子文件)
mvnw.cmd 5KB
admin.css 96KB
layui.css 73KB
notice.css 59KB
skin.min.css 54KB
skin.min.css 54KB
main.css 27KB
skin.mobile.min.css 21KB
skin.mobile.min.css 21KB
content.min.css 17KB
content.inline.min.css 17KB
content.inline.min.css 17KB
content.min.css 17KB
layer.css 14KB
main.min.css 14KB
introJs.css 12KB
dropdown.css 11KB
layui.mobile.css 10KB
laydate.css 7KB
main.css 7KB
steps.css 7KB
metroStyle.css 6KB
zTreeStyle.css 6KB
Cropper.css 5KB
cascader.css 5KB
main.min.css 3KB
city-picker.css 3KB
tagsInput.css 2KB
main.css 2KB
main.css 2KB
Split.css 2KB
main.min.css 1KB
content.min.css 1KB
code.css 1KB
content.min.css 1KB
main.min.css 1004B
content.min.css 978B
content.min.css 957B
content.mobile.min.css 544B
content.mobile.min.css 544B
.DS_Store 8KB
.DS_Store 8KB
.DS_Store 8KB
.DS_Store 8KB
.DS_Store 8KB
iconfont.eot 46KB
ic_loading.gif 14KB
59.gif 10KB
22.gif 10KB
24.gif 8KB
13.gif 7KB
16.gif 7KB
39.gif 6KB
64.gif 6KB
63.gif 6KB
50.gif 6KB
loading-0.gif 6KB
4.gif 6KB
zTreeStandard.gif 5KB
1.gif 5KB
42.gif 5KB
71.gif 5KB
21.gif 5KB
20.gif 5KB
29.gif 5KB
metro.gif 5KB
70.gif 4KB
5.gif 4KB
17.gif 4KB
27.gif 4KB
9.gif 4KB
44.gif 4KB
11.gif 4KB
8.gif 4KB
3.gif 4KB
23.gif 4KB
34.gif 4KB
41.gif 4KB
38.gif 4KB
65.gif 3KB
32.gif 3KB
45.gif 3KB
7.gif 3KB
12.gif 3KB
26.gif 3KB
60.gif 3KB
2.gif 3KB
40.gif 3KB
25.gif 3KB
19.gif 3KB
66.gif 3KB
18.gif 3KB
46.gif 3KB
10.gif 3KB
28.gif 3KB
51.gif 3KB
57.gif 3KB
67.gif 3KB
0.gif 3KB
48.gif 3KB
共 605 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
不走小道
- 粉丝: 3221
- 资源: 5113
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功