package com.sdms.controller;
import com.sdms.bean.system.Role;
import com.sdms.bean.system.User;
import com.sdms.service.RoleService;
import com.sdms.service.UserService;
import com.sdms.util.MyStringUtils;
import com.sdms.util.QueryResult;
import com.sdms.util.ResultUtils;
import com.sdms.vo.UserVO;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import javax.servlet.http.HttpSession;
import java.util.ArrayList;
import java.util.List;
@Controller
public class UserController {
@Resource
private UserService userService;
@Resource
private RoleService roleService;
//使用thymeleaf模板渲染,这里的字符串指的是URL
@RequestMapping("/admin/user-list")
public String toUserList(Model model) {
List<Role> roleList = roleService.findAll();
model.addAttribute("roleList", roleList);
return "admin/user-list";//这里的字符串指的是模板 /admin/user-list.html
}
//使用ajax在前端渲染
/**
@RequestMapping("/admin/users")
@ResponseBody
public ResultUtils<UserVO> findAll(@RequestParam(value = "page", defaultValue = "1") Integer pageFromLayUI,
@RequestParam(value = "limit", defaultValue = "10") Integer limitFromLayUI,
@RequestParam(value = "queryParam[userId]", defaultValue = "") String userId,
@RequestParam(value = "queryParam[keyWord]", defaultValue = "") String keyWord,
@RequestParam(value = "queryParam[roleId]", defaultValue = "-1") String roleId,
@RequestParam(value = "queryParam[queryType]", defaultValue = "1") String queryType) {
//0精确搜索
if ("0".equals(queryType)) {
//精确查询
if (MyStringUtils.isNumeric(userId)) {
//传入的用户编号是数字
User user = userService.findUserById(Long.parseLong(userId));
if (null != user) {
UserVO userVO = UserVO.convert(user);
List<UserVO> userVOList = new ArrayList<>();
userVOList.add(userVO);
return ResultUtils.layUITable(1L, userVOList);
}
}
//传入的用户编号不是数字 或者 null==user
return ResultUtils.layUITable(0L, new ArrayList<>());
} else {
//模糊查询
User param = new User();
if (null == keyWord) {
keyWord = "";
}
String s = StringUtils.trimAllWhitespace(keyWord);
param.setUsername(s);
QueryResult<UserVO> queryResult;
if ("-1".equals(roleId) || !MyStringUtils.isNumeric(roleId)) {
//不限用户角色
queryResult = userService.queryByKeyWordLikeNoRole(pageFromLayUI - 1, limitFromLayUI, param);
} else {
//限制用户角色
queryResult = userService.queryByKeyWordLikeWithRole(pageFromLayUI - 1, limitFromLayUI, param, Long.parseLong(roleId));
}
//返回JSON结果
return ResultUtils.layUITable(queryResult.getTotalCount(), queryResult.getData());
}
}
//使用thymeleaf模板渲染
@RequestMapping("/admin/user-input")
//@RequiresPermissions(value = {"user-update", "user-add"}, logical = Logical.OR)
public String toUserInput(Long userId, Model model) {
if (-1 == userId) {
model.addAttribute("operation", "添加用户");
model.addAttribute("user", new User());
} else {
model.addAttribute("operation", "更新用户");
User user = userService.findUserById(userId);
model.addAttribute("user", user);
}
List<Role> roles = roleService.findAll();
model.addAttribute("roles", roles);
return "admin/user-input";//这里的字符串指的是 /admin/user-input.html
}
@RequestMapping("/admin/user-save")
//@RequiresPermissions(value = {"user-update", "user-add"}, logical = Logical.OR)
public String save(User user) {
userService.save(user);
return "redirect:/admin/user-list";
}
@RequestMapping("/admin/user-delete")
//@RequiresRoles(value = "admin")
//@RequiresPermissions({"user-delete"})
public String deleteById(Long userId) {
userService.deleteById(userId);
return "redirect:/admin/user-list";
}
@RequestMapping("/admin/user-deleteAll")
//@RequiresPermissions({"user-delete"})
//@RequiresRoles(value = "admin")
public String deleteById(String ids) {
userService.deleteAll(ids);
return "redirect:/admin/user-list";
}
@RequestMapping("/changeUserInfo")
public String changeUserInfo(User user, HttpSession session){
userService.changeUserInfo(user);
session.setAttribute("user",userService.findUserById(user.getId()));
return "redirect:/login";
}
}
源码获取点击下面的链接获取源码
GitCode - 全球开发者的开源社区,开源代码托管平台GitCode是面向全球开发者的开源社区,包括原创博客,开源代码托管,代码协作,项目管理等。与开发者社区互动,提升您的研发效率和质量。https://gitcode.com/yuanmadd/ymgg/blob/main/README.md?init=initTree
相关知识
基于微信小程序宠物交易商城系统设计与实现(源码+lw+部署文档+讲解等)
基于php宠物爱好者交流平台管理系统设计与实现(源码+lw+部署文档+讲解等)
基于Java(Spring Boot)的宠物医院管理系统设计与实现(源码+lw+部署文档+讲解等)
基于Java开发的宠物管理系统的设计与实现(源码+文档+部署讲解等)
基于SSM框架的宠物常规护理知识管理系统设计与实现(源码+文档+部署讲解等)
JAVA毕业设计宠物店管理系统设计与实现计算机源码+lw文档+系统+调试部署+数据库
宠物爱心组织管理系统(程序+文档模板)
宠物领养小程序源码分享
【附源码】springboot 基于宠物饲养管理APP设计与实现
计算机毕业设计ssm基于SSM框架在线电影评论投票系统3gr0f系统+程序+源码+lw+远程部署
网址: springboot基于Android宠物饲养商城交流论坛管理APP小程序的设计与实现(源码+lw+部署文档+讲解等) https://m.mcbbbk.com/newsview1057713.html
上一篇: 女子频繁发烧住院4次都治不好,罪 |
下一篇: 什么宠物鸟好养不怕人 |