From 764c798abb4b33901e6d5f6e3796129244d9523d Mon Sep 17 00:00:00 2001 From: zhuxiaomeng Date: Tue, 7 Apr 2020 19:18:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96=20?= =?UTF-8?q?=E4=BA=8B=E5=8A=A1=E8=B0=83=E6=95=B4=EF=BC=8C=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../len/controller/BlogAdminController.java | 2 +- .../java/com/len/base/BaseController.java | 43 +++++- .../main/java/com/len/base/BaseService.java | 2 +- .../len/base/impl/AbstractServiceImpl.java | 6 +- .../com/len/controller/JobController.java | 48 ++---- .../com/len/controller/LogController.java | 21 +-- .../com/len/controller/LoginController.java | 8 +- .../com/len/controller/MenuController.java | 27 +--- .../com/len/controller/PersonController.java | 22 +-- .../com/len/controller/RoleController.java | 16 +- .../com/len/controller/UserController.java | 137 +++++------------- .../java/com/len/service/SysUserService.java | 17 ++- .../com/len/service/impl/JobServiceImpl.java | 61 +++----- .../com/len/service/impl/MenuServiceImpl.java | 15 +- .../len/service/impl/RoleMenuServiceImpl.java | 1 + .../com/len/service/impl/RoleServiceImpl.java | 90 +++++------- .../len/service/impl/SysUserServiceImpl.java | 113 +++++++++------ .../resources/ftl/system/user/re-pass.ftl | 17 +-- .../src/main/java/com/len/config/RConfig.java | 62 ++++++++ .../main/java/com/len/config/ShiroConfig.java | 101 ++++++++----- .../com/len/config/ShiroSessionManager.java | 34 +++++ .../com/len/config/TransactionalConfig.java | 67 +++++---- .../main/resources/application-mysql-dev.yml | 47 ++---- pom.xml | 23 ++- 24 files changed, 513 insertions(+), 467 deletions(-) create mode 100644 len-web/src/main/java/com/len/config/RConfig.java create mode 100644 len-web/src/main/java/com/len/config/ShiroSessionManager.java diff --git a/len-blog/src/main/java/com/len/controller/BlogAdminController.java b/len-blog/src/main/java/com/len/controller/BlogAdminController.java index 367f39a..208d06e 100644 --- a/len-blog/src/main/java/com/len/controller/BlogAdminController.java +++ b/len-blog/src/main/java/com/len/controller/BlogAdminController.java @@ -79,7 +79,7 @@ public class BlogAdminController { int serverPort = request.getServerPort(); int i = requestURL.indexOf(String.valueOf(serverPort)); String url = requestURL.substring(0, i); - json.setData(url + String.valueOf(serverPort) + "/img/" + path); + json.setData(url + serverPort + "/img/" + path); json.setFlag(true); return json; } diff --git a/len-core/src/main/java/com/len/base/BaseController.java b/len-core/src/main/java/com/len/base/BaseController.java index cef319f..8b57110 100644 --- a/len-core/src/main/java/com/len/base/BaseController.java +++ b/len-core/src/main/java/com/len/base/BaseController.java @@ -2,6 +2,7 @@ package com.len.base; import com.alibaba.fastjson.JSON; import com.google.common.collect.Maps; +import com.len.util.LenResponse; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authz.AuthorizationException; import org.apache.shiro.authz.UnauthorizedException; @@ -12,6 +13,7 @@ import org.springframework.web.bind.annotation.InitBinder; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.text.SimpleDateFormat; @@ -29,12 +31,12 @@ public abstract class BaseController { @InitBinder protected void initBinder(WebDataBinder binder) { binder.registerCustomEditor(Date.class, new CustomDateEditor( - new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"), true)); + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"), true)); binder.registerCustomEditor(Date.class, new CustomDateEditor( - new SimpleDateFormat("yyyy-MM-dd"), true)); + new SimpleDateFormat("yyyy-MM-dd"), true)); } - @ExceptionHandler({UnauthorizedException.class, AuthorizationException.class}) + @ExceptionHandler( {UnauthorizedException.class, AuthorizationException.class}) public String authorizationException(HttpServletRequest request, HttpServletResponse response) { if (isAjaxRequest(request)) { Map map = Maps.newHashMap(); @@ -53,10 +55,45 @@ public abstract class BaseController { } } + @ExceptionHandler( {Exception.class}) + public void runTimeException(HttpServletRequest request, HttpServletResponse response) { + response.setContentType("application/json"); + try { + LenResponse lenResponse = new LenResponse(false, "处理错误"); + response.getWriter().write(JSON.toJSONString(lenResponse)); + } catch (IOException e) { + e.printStackTrace(); + } + } + private static boolean isAjaxRequest(HttpServletRequest request) { String requestedWith = request.getHeader("x-requested-with"); return requestedWith != null && requestedWith.equalsIgnoreCase("XMLHttpRequest"); } + public LenResponse resp(boolean flag, String msg) { + return new LenResponse(flag, msg); + } + + public LenResponse resp(boolean flag) { + return resp(flag, null); + } + + public LenResponse succ(String msg) { + return resp(true, msg); + } + + public LenResponse succ() { + return succ(null); + } + + public LenResponse error(String msg) { + return resp(false, null); + } + + public LenResponse error() { + return error(null); + } + } diff --git a/len-core/src/main/java/com/len/base/BaseService.java b/len-core/src/main/java/com/len/base/BaseService.java index d4c248f..f07f725 100644 --- a/len-core/src/main/java/com/len/base/BaseService.java +++ b/len-core/src/main/java/com/len/base/BaseService.java @@ -19,5 +19,5 @@ public interface BaseService extends IService { public ReType getList(T t, int page, int limit); - public String showAll(T t); + public List showAll(T t); } diff --git a/len-core/src/main/java/com/len/base/impl/AbstractServiceImpl.java b/len-core/src/main/java/com/len/base/impl/AbstractServiceImpl.java index 015d033..2840fcc 100644 --- a/len-core/src/main/java/com/len/base/impl/AbstractServiceImpl.java +++ b/len-core/src/main/java/com/len/base/impl/AbstractServiceImpl.java @@ -17,7 +17,7 @@ import java.util.List; * @author zhuxiaomeng * @date 2017/12/13. * @email 154040976@qq.com - * update by 2019/11/12 tkmapper替换成mybatisplus + * update by 2019/11/12 mybatisplus */ @Slf4j public class AbstractServiceImpl extends ServiceImpl, T> implements BaseService { @@ -45,7 +45,7 @@ public class AbstractServiceImpl extends ServiceImpl< } @Override - public String showAll(T t) { + public List showAll(T t) { List tList = null; try { tList = getBaseMapper().selectListByPage(t); @@ -53,7 +53,7 @@ public class AbstractServiceImpl extends ServiceImpl< log.error("class:BaseServiceImpl ->method:show->message:" + e.getMessage()); e.printStackTrace(); } - return JSON.toJSONString(tList); + return tList; } @Override diff --git a/len-sys/src/main/java/com/len/controller/JobController.java b/len-sys/src/main/java/com/len/controller/JobController.java index 47437a7..e7a4293 100644 --- a/len-sys/src/main/java/com/len/controller/JobController.java +++ b/len-sys/src/main/java/com/len/controller/JobController.java @@ -5,7 +5,6 @@ import com.len.core.annotation.Log; import com.len.core.annotation.Log.LOG_TYPE; import com.len.core.quartz.JobTask; import com.len.entity.SysJob; -import com.len.exception.MyException; import com.len.service.JobService; import com.len.util.LenResponse; import com.len.util.ReType; @@ -30,7 +29,7 @@ import org.springframework.web.bind.annotation.ResponseBody; */ @Controller @RequestMapping("/job") -@Api(value = "定时任务",tags="定时任务") +@Api(value = "定时任务", tags = "定时任务") public class JobController extends BaseController { @Autowired @@ -62,18 +61,9 @@ public class JobController extends BaseController { @PostMapping(value = "addJob") @ResponseBody public LenResponse addJob(SysJob job) { - LenResponse j = new LenResponse(); - String msg = "保存成功"; job.setStatus(false); - try { - jobService.save(job); - } catch (MyException e) { - msg = "保存失败"; - j.setFlag(false); - e.printStackTrace(); - } - j.setMsg(msg); - return j; + jobService.save(job); + return succ("保存成功"); } @GetMapping(value = "updateJob") @@ -92,23 +82,17 @@ public class JobController extends BaseController { @PostMapping(value = "updateJob") @ResponseBody public LenResponse updateJob(SysJob job) { - LenResponse lenResponse = new LenResponse(); - lenResponse.setFlag(false); if (job == null) { - lenResponse.setMsg("获取数据失败"); - return lenResponse; + return error("获取数据失败"); } if (jobTask.checkJob(job)) { - lenResponse.setMsg("已经启动任务无法更新,请停止后更新"); - return lenResponse; + return error("已经启动任务无法更新,请停止后更新"); } if (jobService.updateJob(job)) { - lenResponse.setFlag(true); - lenResponse.setData("更新成功"); + return succ("更新成功"); } else { - lenResponse.setData("更新失败"); + return error("更新失败"); } - return lenResponse; } @Log(desc = "删除任务", type = LOG_TYPE.DEL) @@ -126,20 +110,16 @@ public class JobController extends BaseController { @ResponseBody @RequiresPermissions("job:start") public LenResponse startJob(String id) { - LenResponse j = new LenResponse(); - String msg = null; + String msg; if (StringUtils.isEmpty(id)) { - j.setMsg("获取数据失败"); - j.setFlag(false); - return j; + return error("获取数据失败"); } if (jobService.startJob(id)) { msg = "启动成功"; } else { msg = "启动失败"; } - j.setMsg(msg); - return j; + return succ(msg); } @Log(desc = "停止任务") @@ -147,20 +127,16 @@ public class JobController extends BaseController { @ResponseBody @RequiresPermissions("job:end") public LenResponse endJob(String id) { - LenResponse j = new LenResponse(); String msg; if (StringUtils.isEmpty(id)) { - j.setMsg("获取数据失败"); - j.setFlag(false); - return j; + return error("获取数据失败"); } if (jobService.stopJob(id)) { msg = "停止成功"; } else { msg = "停止失败"; } - j.setMsg(msg); - return j; + return succ(msg); } } diff --git a/len-sys/src/main/java/com/len/controller/LogController.java b/len-sys/src/main/java/com/len/controller/LogController.java index 9f8d57d..1430ba5 100644 --- a/len-sys/src/main/java/com/len/controller/LogController.java +++ b/len-sys/src/main/java/com/len/controller/LogController.java @@ -8,9 +8,6 @@ import com.len.exception.MyException; import com.len.mapper.SysLogMapper; import com.len.util.LenResponse; import com.len.util.ReType; - -import java.util.List; - import io.swagger.annotations.Api; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -21,6 +18,8 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; +import java.util.List; + /** * @author zhuxiaomeng * @date 2017/12/29. @@ -31,7 +30,7 @@ import org.springframework.web.bind.annotation.ResponseBody; @Controller @RequestMapping(value = "/log") @Slf4j -@Api(value = "日志管理",tags="操作日志记录") +@Api(value = "日志管理", tags = "操作日志记录") public class LogController extends BaseController { @Autowired private SysLogMapper logMapper; @@ -72,18 +71,10 @@ public class LogController extends BaseController { @PostMapping(value = "del") @ResponseBody public LenResponse del(String[] ids) { - LenResponse j = new LenResponse(); - String msg = "删除成功"; - try { - for (String id : ids) { - logMapper.deleteById(Integer.valueOf(id)); - } - } catch (MyException e) { - msg = "删除失败"; - log.error(msg + e.getMessage()); + for (String id : ids) { + logMapper.deleteById(Integer.valueOf(id)); } - j.setMsg(msg); - return j; + return succ("删除成功"); } diff --git a/len-sys/src/main/java/com/len/controller/LoginController.java b/len-sys/src/main/java/com/len/controller/LoginController.java index 3c55428..03fe4dd 100644 --- a/len-sys/src/main/java/com/len/controller/LoginController.java +++ b/len-sys/src/main/java/com/len/controller/LoginController.java @@ -32,7 +32,7 @@ import javax.servlet.http.HttpSession; */ @Controller @Slf4j -@Api(value = "登录业务",tags="登录校验处理") +@Api(value = "登录业务", tags = "登录校验处理") public class LoginController { @Autowired @@ -58,9 +58,7 @@ public class LoginController { @GetMapping(value = "/login") public String loginCheck() { Subject sub = SecurityUtils.getSubject(); - Boolean flag2 = sub.isRemembered(); - boolean flag = sub.isAuthenticated() || flag2; - if (flag) { + if (sub.isAuthenticated() || sub.isRemembered()) { return "/main/main"; } return "/login2"; @@ -83,7 +81,7 @@ public class LoginController { return "/login2"; }*/ CustomUsernamePasswordToken token = new CustomUsernamePasswordToken(user.getUsername().trim(), - user.getPassword(), "UserLogin"); + user.getPassword(), "UserLogin"); Subject subject = Principal.getSubject(); String msg = null; try { diff --git a/len-sys/src/main/java/com/len/controller/MenuController.java b/len-sys/src/main/java/com/len/controller/MenuController.java index 267d607..d376d96 100644 --- a/len-sys/src/main/java/com/len/controller/MenuController.java +++ b/len-sys/src/main/java/com/len/controller/MenuController.java @@ -5,7 +5,6 @@ import com.len.base.BaseController; import com.len.core.annotation.Log; import com.len.core.annotation.Log.LOG_TYPE; import com.len.entity.SysMenu; -import com.len.exception.MyException; import com.len.service.MenuService; import com.len.util.BeanUtil; import com.len.util.LenResponse; @@ -29,7 +28,7 @@ import org.springframework.web.bind.annotation.ResponseBody; */ @RequestMapping("/menu") @Controller -@Api(value = "菜单管理",tags="菜单业务处理") +@Api(value = "菜单管理", tags = "菜单业务处理") public class MenuController extends BaseController { @Autowired @@ -61,12 +60,9 @@ public class MenuController extends BaseController { @ApiOperation(value = "/addMenu", httpMethod = "POST", notes = "添加菜单") @PostMapping(value = "addMenu") @ResponseBody - public LenResponse addMenu(SysMenu sysMenu, Model model) { - LenResponse lenResponse = new LenResponse(); - lenResponse.setFlag(false); + public LenResponse addMenu(SysMenu sysMenu) { if (sysMenu == null) { - lenResponse.setMsg("获取数据失败"); - return lenResponse; + return error("获取数据失败"); } if (StringUtils.isEmpty(sysMenu.getPId())) { sysMenu.setPId(null); @@ -77,18 +73,11 @@ public class MenuController extends BaseController { if (StringUtils.isEmpty(sysMenu.getPermission())) { sysMenu.setPermission(null); } - - try { - if (sysMenu.getMenuType() == 2) { - sysMenu.setMenuType((byte) 0); - } - menuService.save(sysMenu); - lenResponse.setMsg("添加成功"); - } catch (MyException e) { - e.printStackTrace(); - lenResponse.setMsg("添加失败"); + if (sysMenu.getMenuType() == 2) { + sysMenu.setMenuType((byte) 0); } - return lenResponse; + menuService.save(sysMenu); + return succ("添加成功"); } @GetMapping(value = "showUpdateMenu") @@ -112,7 +101,7 @@ public class MenuController extends BaseController { SysMenu oldMenu = menuService.getById(sysMenu.getId()); BeanUtil.copyNotNullBean(sysMenu, oldMenu); menuService.updateById(oldMenu); - return LenResponse.sucess("保存成功"); + return succ("保存成功"); } @Log(desc = "删除菜单", type = LOG_TYPE.DEL) diff --git a/len-sys/src/main/java/com/len/controller/PersonController.java b/len-sys/src/main/java/com/len/controller/PersonController.java index e26e1e7..4ca0ac7 100644 --- a/len-sys/src/main/java/com/len/controller/PersonController.java +++ b/len-sys/src/main/java/com/len/controller/PersonController.java @@ -1,11 +1,11 @@ package com.len.controller; +import com.len.base.BaseController; import com.len.base.CurrentUser; import com.len.core.annotation.Log; import com.len.core.shiro.Principal; import com.len.entity.SysUser; import com.len.service.SysUserService; -import com.len.util.BeanUtil; import com.len.util.Checkbox; import com.len.util.LenResponse; import io.swagger.annotations.Api; @@ -27,14 +27,14 @@ import java.util.List; */ @Controller @RequestMapping("/person") -@Api(value = "个人业务",tags="个人业务处理") -public class PersonController { +@Api(value = "个人业务", tags = "个人业务处理") +public class PersonController extends BaseController { @Autowired SysUserService userService; @GetMapping("/index") - public String main(){ + public String main() { return "/main/index"; } @@ -57,18 +57,10 @@ public class PersonController { @PostMapping(value = "updateUser") @ResponseBody public LenResponse updatePerson(SysUser user) { - LenResponse jsonUtil = new LenResponse(); - jsonUtil.setFlag(false); if (user == null) { - jsonUtil.setMsg("获取数据失败"); - return jsonUtil; + return error("获取数据失败"); } - SysUser oldUser = userService.getById(user.getId()); - BeanUtil.copyNotNullBean(user, oldUser); - userService.updateById(oldUser); - jsonUtil.setFlag(true); - jsonUtil.setMsg("修改成功"); - userService.updateCurrent(user); - return jsonUtil; + userService.updatePerson(user); + return succ("修改成功"); } } diff --git a/len-sys/src/main/java/com/len/controller/RoleController.java b/len-sys/src/main/java/com/len/controller/RoleController.java index e045c8d..486510e 100644 --- a/len-sys/src/main/java/com/len/controller/RoleController.java +++ b/len-sys/src/main/java/com/len/controller/RoleController.java @@ -22,6 +22,8 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; +import java.util.List; + /** * @author zhuxiaomeng * @date 2017/12/19. @@ -30,7 +32,7 @@ import org.springframework.web.bind.annotation.ResponseBody; */ @Controller @RequestMapping(value = "/role") -@Api(value = "用户角色管理",tags="角色业务处理") +@Api(value = "用户角色管理", tags = "角色业务处理") public class RoleController extends BaseController { @Autowired @@ -44,7 +46,7 @@ public class RoleController extends BaseController { @GetMapping(value = "showRole") @RequiresPermissions(value = "role:show") - public String showRole(Model model) { + public String showRole() { return "/system/role/roleList"; } @@ -52,7 +54,7 @@ public class RoleController extends BaseController { @GetMapping(value = "showRoleList") @ResponseBody @RequiresPermissions("role:show") - public ReType showRoleList(SysRole role, Model model, String page, String limit) { + public ReType showRoleList(SysRole role, String page, String limit) { return roleService.show(role, Integer.valueOf(page), Integer.valueOf(limit)); } @@ -60,7 +62,7 @@ public class RoleController extends BaseController { @GetMapping(value = "showaLLRoleList") @ResponseBody @RequiresPermissions("role:show") - public String showRoleList(SysRole role, Model model) { + public List showRoleList(SysRole role) { return roleService.showAll(role); } @@ -78,7 +80,7 @@ public class RoleController extends BaseController { @ResponseBody public LenResponse addRole(SysRole sysRole, String[] menus) { if (StringUtils.isEmpty(sysRole.getRoleName())) { - LenResponse.error("角色名称不能为空"); + return error("角色名称不能为空"); } return roleService.addRole(sysRole, menus); } @@ -101,7 +103,7 @@ public class RoleController extends BaseController { @ResponseBody public LenResponse updateUser(SysRole role, String[] menus) { if (role == null) { - return LenResponse.error("获取数据失败"); + return error("获取数据失败"); } return roleService.updateUser(role, menus); } @@ -113,7 +115,7 @@ public class RoleController extends BaseController { @RequiresPermissions("role:del") public LenResponse del(String id) { if (StringUtils.isEmpty(id)) { - return LenResponse.error("获取数据失败"); + return error("获取数据失败"); } return roleService.del(id); } diff --git a/len-sys/src/main/java/com/len/controller/UserController.java b/len-sys/src/main/java/com/len/controller/UserController.java index 2bdf489..37af517 100644 --- a/len-sys/src/main/java/com/len/controller/UserController.java +++ b/len-sys/src/main/java/com/len/controller/UserController.java @@ -2,19 +2,20 @@ package com.len.controller; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; import com.len.base.BaseController; import com.len.core.annotation.Log; import com.len.core.annotation.Log.LOG_TYPE; import com.len.core.quartz.JobTask; -import com.len.entity.SysRoleUser; import com.len.entity.SysUser; -import com.len.exception.MyException; import com.len.service.RoleUserService; import com.len.service.SysUserService; -import com.len.util.*; +import com.len.util.Checkbox; +import com.len.util.LenResponse; +import com.len.util.Md5Util; +import com.len.util.ReType; +import com.len.util.UploadUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; @@ -22,11 +23,15 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; -import org.springframework.ui.ModelMap; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; +import java.util.Arrays; import java.util.List; /** @@ -38,7 +43,7 @@ import java.util.List; //@Api(value="user") @Controller @RequestMapping(value = "/user") -@Api(value = "用户管理",tags="用户管理业务") +@Api(value = "用户管理", tags = "用户管理业务") public class UserController extends BaseController { //private static final Logger @@ -60,14 +65,14 @@ public class UserController extends BaseController { @GetMapping(value = "showUser") @RequiresPermissions("user:show") - public String showUser(Model model) { + public String showUser() { return "/system/user/userList"; } @GetMapping(value = "showUserList") @ResponseBody @RequiresPermissions("user:show") - public ReType showUser(Model model, SysUser user, String page, String limit) { + public ReType showUser(SysUser user, String page, String limit) { return userService.show(user, Integer.valueOf(page), Integer.valueOf(limit)); } @@ -75,7 +80,7 @@ public class UserController extends BaseController { @GetMapping(value = "listByRoleId") @ResponseBody @RequiresPermissions("user:show") - public String showUser(Model model, String roleId, int page, int limit) { + public String showUser(String roleId, int page, int limit) { JSONObject returnValue = new JSONObject(); Page startPage = PageHelper.startPage(page, limit); List users = userService.getUserByRoleId(roleId); @@ -98,38 +103,24 @@ public class UserController extends BaseController { @ResponseBody public LenResponse addUser(SysUser user, String[] role) { if (user == null) { - return LenResponse.error("获取数据失败"); + return error("获取数据失败"); } if (StringUtils.isBlank(user.getUsername())) { - return LenResponse.error("用户名不能为空"); + return error("用户名不能为空"); } if (StringUtils.isBlank(user.getPassword())) { - return LenResponse.error("密码不能为空"); + return error("密码不能为空"); } if (role == null) { - return LenResponse.error("请选择角色"); + return error("请选择角色"); } int result = userService.checkUser(user.getUsername()); if (result > 0) { - return LenResponse.error("用户名已存在"); + return error("用户名已存在"); } - LenResponse j = new LenResponse(); - try { - user.setPassword(Md5Util.getMD5(user.getPassword(),user.getUsername())); - userService.save(user); - SysRoleUser sysRoleUser = new SysRoleUser(); - sysRoleUser.setUserId(user.getId()); - for (String r : role) { - sysRoleUser.setRoleId(r); - roleUserService.save(sysRoleUser); - } - j.setMsg("保存成功"); - } catch (MyException e) { - j.setMsg("保存失败"); - j.setFlag(false); - e.printStackTrace(); - } - return j; + userService.add(user, Arrays.asList(role)); + + return succ(); } @GetMapping(value = "updateUser") @@ -145,42 +136,17 @@ public class UserController extends BaseController { return "system/user/update-user"; } + @ApiOperation(value = "/updateUser", httpMethod = "POST", notes = "更新用户") @Log(desc = "更新用户", type = LOG_TYPE.UPDATE) @PostMapping(value = "updateUser") @ResponseBody - public LenResponse updateUser(SysUser user, String role[]) { - LenResponse jsonUtil = new LenResponse(); - jsonUtil.setFlag(false); + public LenResponse updateUser(SysUser user, String[] role) { if (user == null) { - jsonUtil.setMsg("获取数据失败"); - return jsonUtil; + return error("获取数据失败"); } - try { - SysUser oldUser = userService.getById(user.getId()); - BeanUtil.copyNotNullBean(user, oldUser); - userService.updateById(oldUser); - - SysRoleUser sysRoleUser = new SysRoleUser(); - sysRoleUser.setUserId(oldUser.getId()); - List keyList = userService.selectByCondition(sysRoleUser); - for (SysRoleUser currentRoleUser : keyList) { - QueryWrapper queryWrapper = new QueryWrapper<>(currentRoleUser); - roleUserService.remove(queryWrapper); - } - if (role != null) { - for (String r : role) { - sysRoleUser.setRoleId(r); - roleUserService.save(sysRoleUser); - } - } - jsonUtil.setFlag(true); - jsonUtil.setMsg("修改成功"); - userService.updateCurrent(user); - } catch (MyException e) { - e.printStackTrace(); - } - return jsonUtil; + userService.updateUser(user, Arrays.asList(role)); + return succ("修改成功"); } @Log(desc = "删除用户", type = LOG_TYPE.DEL) @@ -206,7 +172,6 @@ public class UserController extends BaseController { * 修改密码 * * @param id - * @param pass * @param newPwd * @return */ @@ -214,35 +179,20 @@ public class UserController extends BaseController { @PostMapping(value = "rePass") @ResponseBody @RequiresPermissions("user:repass") - public LenResponse rePass(String id, String pass, String newPwd) { - boolean flag = StringUtils.isEmpty(id) || StringUtils.isEmpty(pass) || StringUtils.isEmpty(newPwd); - LenResponse j = new LenResponse(); - j.setFlag(false); + public LenResponse rePass(String id, String newPwd) { + boolean flag = StringUtils.isEmpty(id) || StringUtils.isEmpty(newPwd); if (flag) { - j.setMsg("获取数据失败,修改失败"); - return j; + return error("获取数据失败,修改失败"); } SysUser user = userService.getById(id); newPwd = Md5Util.getMD5(newPwd, user.getUsername()); - pass = Md5Util.getMD5(pass, user.getUsername()); - if (!pass.equals(user.getPassword())) { - j.setMsg("密码不正确"); - return j; - } if (newPwd.equals(user.getPassword())) { - j.setMsg("新密码不能与旧密码相同"); - - return j; + return resp(false, "新密码不能与旧密码相同"); } user.setPassword(newPwd); - try { - userService.rePass(user); - j.setMsg("修改成功"); - j.setFlag(true); - } catch (MyException e) { - e.printStackTrace(); - } - return j; + userService.rePass(user); + + return succ("修改成功"); } @Autowired @@ -253,8 +203,7 @@ public class UserController extends BaseController { */ @PostMapping(value = "upload") @ResponseBody - public LenResponse imgUpload(HttpServletRequest req, @RequestParam("file") MultipartFile file, - ModelMap model) { + public LenResponse imgUpload(HttpServletRequest req, @RequestParam("file") MultipartFile file) { String fileName = uploadUtil.upload(file); LenResponse j = new LenResponse(); j.setMsg(fileName); @@ -266,21 +215,15 @@ public class UserController extends BaseController { */ @GetMapping(value = "checkUser") @ResponseBody - public LenResponse checkUser(String uname, HttpServletRequest req) { - LenResponse j = new LenResponse(); - j.setFlag(Boolean.FALSE); + public LenResponse checkUser(String uname) { if (StringUtils.isEmpty(uname)) { - j.setMsg("获取数据失败"); - return j; + return error("获取数据失败"); } int result = userService.checkUser(uname); if (result > 0) { - j.setMsg("用户名已存在"); - return j; + return error("用户名已存在"); } - j.setFlag(true); - return j; - + return succ(); } diff --git a/len-sys/src/main/java/com/len/service/SysUserService.java b/len-sys/src/main/java/com/len/service/SysUserService.java index 2a3e2a3..5a66f04 100644 --- a/len-sys/src/main/java/com/len/service/SysUserService.java +++ b/len-sys/src/main/java/com/len/service/SysUserService.java @@ -19,12 +19,21 @@ public interface SysUserService extends BaseService { SysUser login(String username); /** - * 新增 + * 新增用户和用户角色信息 * - * @param user + * @param user 用户对象 + * @param role 角色列表 * @return */ - int add(SysUser user); + boolean add(SysUser user, List role); + + /** + * 更新用户和用户角色信息 + * @param user + * @param role + * @return + */ + boolean updateUser(SysUser user, List role); /** * 删除 @@ -55,4 +64,6 @@ public interface SysUserService extends BaseService { void setMenuAndRoles(String username); void updateCurrent(SysUser user); + + boolean updatePerson(SysUser user); } diff --git a/len-sys/src/main/java/com/len/service/impl/JobServiceImpl.java b/len-sys/src/main/java/com/len/service/impl/JobServiceImpl.java index 71ceb85..389ef46 100644 --- a/len-sys/src/main/java/com/len/service/impl/JobServiceImpl.java +++ b/len-sys/src/main/java/com/len/service/impl/JobServiceImpl.java @@ -53,53 +53,38 @@ public class JobServiceImpl extends BaseServiceImpl implements J j.setMsg("获取数据失败"); return j; } - try { - SysJob job = getById(id); - boolean flag = jobTask.checkJob(job); - if ((flag && !job.getStatus()) || !flag && job.getStatus()) { - j.setMsg("您任务表状态和web任务状态不一致,无法删除"); - return j; - } - if (flag) { - j.setMsg("该任务处于启动中,无法删除"); - return j; - } - removeById(id); - j.setFlag(true); - j.setMsg("任务删除成功"); - } catch (MyException e) { - j.setMsg("任务删除异常"); - e.printStackTrace(); + SysJob job = getById(id); + boolean flag = jobTask.checkJob(job); + if ((flag && !job.getStatus()) || !flag && job.getStatus()) { + j.setMsg("您任务表状态和web任务状态不一致,无法删除"); + return j; } + if (flag) { + j.setMsg("该任务处于启动中,无法删除"); + return j; + } + removeById(id); + j.setFlag(true); + j.setMsg("任务删除成功"); + return j; } @Override public boolean startJob(String id) { - try { - SysJob job = getById(id); - jobTask.startJob(job); - job.setStatus(true); - updateById(job); - return true; - } catch (MyException e) { - log.error(e.getMessage()); - e.printStackTrace(); - } - return false; + SysJob job = getById(id); + jobTask.startJob(job); + job.setStatus(true); + updateById(job); + return true; } @Override public boolean stopJob(String id) { - try { - SysJob job = getById(id); - jobTask.remove(job); - job.setStatus(false); - updateById(job); - return true; - } catch (MyException e) { - e.printStackTrace(); - } - return false; + SysJob job = getById(id); + jobTask.remove(job); + job.setStatus(false); + updateById(job); + return true; } } diff --git a/len-sys/src/main/java/com/len/service/impl/MenuServiceImpl.java b/len-sys/src/main/java/com/len/service/impl/MenuServiceImpl.java index b4adb6a..480d057 100644 --- a/len-sys/src/main/java/com/len/service/impl/MenuServiceImpl.java +++ b/len-sys/src/main/java/com/len/service/impl/MenuServiceImpl.java @@ -49,14 +49,13 @@ public class MenuServiceImpl extends BaseServiceImpl implements return menuDao.getMenuChildren(id); } - public SysMenu child(SysMenu sysMenu, List sysMenus, Integer pNum, Integer num) { + public SysMenu child(SysMenu sysMenu, List sysMenus, Integer num) { List childSysMenu = sysMenus.stream().filter(s -> s.getPId().equals(sysMenu.getId())).collect(Collectors.toList()); sysMenus.removeAll(childSysMenu); - SysMenu m; for (SysMenu menu : childSysMenu) { ++num; - m = child(menu, sysMenus, pNum, num); + child(menu, sysMenus, num); sysMenu.addChild(menu); } return sysMenu; @@ -72,7 +71,7 @@ public class MenuServiceImpl extends BaseServiceImpl implements supers.sort(Comparator.comparingInt(SysMenu::getOrderNum)); JSONArray jsonArr = new JSONArray(); for (SysMenu sysMenu : supers) { - SysMenu child = child(sysMenu, sysMenus, 0, 0); + SysMenu child = child(sysMenu, sysMenus, 0); jsonArr.add(child); } return jsonArr; @@ -81,7 +80,7 @@ public class MenuServiceImpl extends BaseServiceImpl implements @Override public JSONArray getMenuJsonByUser(List menuList) { JSONArray jsonArr = new JSONArray(); - Collections.sort(menuList, (o1, o2) -> { + menuList.sort((o1, o2) -> { if (o1.getOrderNum() == null || o2.getOrderNum() == null) { return -1; } @@ -160,7 +159,7 @@ public class MenuServiceImpl extends BaseServiceImpl implements @Override public JSONArray getTreeUtil(String roleId) { - TreeUtil treeUtil = null; + TreeUtil treeUtil; List sysMenus = list(); List supers = sysMenus.stream().filter(sysMenu -> StringUtils.isEmpty(sysMenu.getPId())) @@ -181,7 +180,7 @@ public class MenuServiceImpl extends BaseServiceImpl implements return menuDao.getUserMenu(id); } - public TreeUtil getChildByTree(SysMenu sysMenu, List sysMenus, int layer, String pId, String roleId) { + private TreeUtil getChildByTree(SysMenu sysMenu, List sysMenus, int layer, String pId, String roleId) { layer++; List childSysMenu = sysMenus.stream().filter(s -> s.getPId().equals(sysMenu.getId())).collect(Collectors.toList()); @@ -191,7 +190,7 @@ public class MenuServiceImpl extends BaseServiceImpl implements treeUtil.setName(sysMenu.getName()); treeUtil.setLayer(layer); treeUtil.setPId(pId); - /**判断是否存在*/ + /*判断是否存在*/ if (!StringUtils.isEmpty(roleId)) { SysRoleMenu sysRoleMenu = new SysRoleMenu(); sysRoleMenu.setMenuId(sysMenu.getId()); diff --git a/len-sys/src/main/java/com/len/service/impl/RoleMenuServiceImpl.java b/len-sys/src/main/java/com/len/service/impl/RoleMenuServiceImpl.java index 2fc2d7f..f735e02 100644 --- a/len-sys/src/main/java/com/len/service/impl/RoleMenuServiceImpl.java +++ b/len-sys/src/main/java/com/len/service/impl/RoleMenuServiceImpl.java @@ -18,6 +18,7 @@ import java.util.List; @Service public class RoleMenuServiceImpl extends BaseServiceImpl implements RoleMenuService { + @Autowired private SysRoleMenuMapper roleMenuMapper; diff --git a/len-sys/src/main/java/com/len/service/impl/RoleServiceImpl.java b/len-sys/src/main/java/com/len/service/impl/RoleServiceImpl.java index 7a69ddf..8ba6240 100644 --- a/len-sys/src/main/java/com/len/service/impl/RoleServiceImpl.java +++ b/len-sys/src/main/java/com/len/service/impl/RoleServiceImpl.java @@ -5,14 +5,12 @@ import com.len.base.impl.BaseServiceImpl; import com.len.entity.SysRole; import com.len.entity.SysRoleMenu; import com.len.entity.SysRoleUser; -import com.len.exception.MyException; import com.len.mapper.SysRoleMapper; import com.len.service.RoleMenuService; import com.len.service.RoleService; import com.len.service.RoleUserService; import com.len.util.BeanUtil; import com.len.util.LenResponse; -import com.len.util.UuidUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -36,33 +34,21 @@ public class RoleServiceImpl extends BaseServiceImpl implements private RoleUserService roleUserService; - /*@Override - public int insert(SysRole record) { - record = super.addValue(record, true); - return roleMapper.insert(record); - }*/ - @Override public LenResponse addRole(SysRole sysRole, String[] menus) { LenResponse j = new LenResponse(); - try { - roleMapper.insert(sysRole); - //操作role-menu data - - if (menus != null) { - for (String menu : menus) { - SysRoleMenu sysRoleMenu = new SysRoleMenu(); - sysRoleMenu.setRoleId(sysRole.getId()); - sysRoleMenu.setMenuId(menu); - roleMenuService.save(sysRoleMenu); - } + roleMapper.insert(sysRole); + //操作role-menu data + if (menus != null) { + for (String menu : menus) { + SysRoleMenu sysRoleMenu = new SysRoleMenu(); + sysRoleMenu.setRoleId(sysRole.getId()); + sysRoleMenu.setMenuId(menu); + roleMenuService.save(sysRoleMenu); } - j.setMsg("保存成功"); - } catch (MyException e) { - j.setMsg("保存失败"); - j.setFlag(false); - e.printStackTrace(); } + j.setMsg("保存成功"); + return j; } @@ -70,29 +56,25 @@ public class RoleServiceImpl extends BaseServiceImpl implements public LenResponse updateUser(SysRole role, String[] menus) { LenResponse jsonUtil = new LenResponse(); jsonUtil.setFlag(false); - try { - SysRole oldRole = roleMapper.selectById(role.getId()); - BeanUtil.copyNotNullBean(role, oldRole); - roleMapper.updateById(oldRole); + SysRole oldRole = roleMapper.selectById(role.getId()); + BeanUtil.copyNotNullBean(role, oldRole); + roleMapper.updateById(oldRole); - SysRoleMenu sysRoleMenu = new SysRoleMenu(); - sysRoleMenu.setRoleId(role.getId()); - List menuList = roleMenuService.selectByCondition(sysRoleMenu); - for (SysRoleMenu sysRoleMenu1 : menuList) { - roleMenuService.deleteByPrimaryKey(sysRoleMenu1); - } - if (menus != null) { - for (String menu : menus) { - sysRoleMenu.setMenuId(menu); - roleMenuService.save(sysRoleMenu); - } - } - jsonUtil.setFlag(true); - jsonUtil.setMsg("修改成功"); - } catch (MyException e) { - jsonUtil.setMsg("修改失败"); - e.printStackTrace(); + SysRoleMenu sysRoleMenu = new SysRoleMenu(); + sysRoleMenu.setRoleId(role.getId()); + List menuList = roleMenuService.selectByCondition(sysRoleMenu); + for (SysRoleMenu sysRoleMenu1 : menuList) { + roleMenuService.deleteByPrimaryKey(sysRoleMenu1); } + if (menus != null) { + for (String menu : menus) { + sysRoleMenu.setMenuId(menu); + roleMenuService.save(sysRoleMenu); + } + } + jsonUtil.setFlag(true); + jsonUtil.setMsg("修改成功"); + return jsonUtil; } @@ -101,19 +83,13 @@ public class RoleServiceImpl extends BaseServiceImpl implements SysRoleUser sysRoleUser = new SysRoleUser(); sysRoleUser.setRoleId(id); LenResponse j = new LenResponse(); - try { - QueryWrapper wrapper = new QueryWrapper<>(sysRoleUser); - int count = roleUserService.count(wrapper); - if (count > 0) { - return LenResponse.error("已分配给用户,删除失败"); - } - roleMapper.deleteById(id); - j.setMsg("删除成功"); - } catch (MyException e) { - j.setMsg("删除失败"); - j.setFlag(false); - e.printStackTrace(); + QueryWrapper wrapper = new QueryWrapper<>(sysRoleUser); + int count = roleUserService.count(wrapper); + if (count > 0) { + return LenResponse.error("已分配给用户,删除失败"); } + roleMapper.deleteById(id); + j.setMsg("删除成功"); return j; } } diff --git a/len-sys/src/main/java/com/len/service/impl/SysUserServiceImpl.java b/len-sys/src/main/java/com/len/service/impl/SysUserServiceImpl.java index d81857c..8fc7783 100644 --- a/len-sys/src/main/java/com/len/service/impl/SysUserServiceImpl.java +++ b/len-sys/src/main/java/com/len/service/impl/SysUserServiceImpl.java @@ -2,7 +2,6 @@ package com.len.service.impl; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.len.base.BaseMapper; import com.len.base.CurrentMenu; import com.len.base.CurrentRole; import com.len.base.CurrentUser; @@ -12,7 +11,6 @@ import com.len.entity.SysMenu; import com.len.entity.SysRole; import com.len.entity.SysRoleUser; import com.len.entity.SysUser; -import com.len.exception.MyException; import com.len.mapper.SysRoleUserMapper; import com.len.mapper.SysUserMapper; import com.len.service.MenuService; @@ -23,15 +21,15 @@ import com.len.util.BeanUtil; import com.len.util.Checkbox; import com.len.util.LenResponse; import com.len.util.Md5Util; -import java.util.ArrayList; -import java.util.List; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.session.Session; import org.apache.shiro.subject.Subject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.HashSet; +import java.util.List; import java.util.Set; /** @@ -59,9 +57,6 @@ public class SysUserServiceImpl extends BaseServiceImpl impleme private static final String ADMIN = "admin"; -// -// String pwd = Md5Util.getMD5(record.getPassword().trim(), record.getUsername().trim()); -// record.setPassword(pwd); @Override public SysUser login(String username) { return sysUserMapper.login(username); @@ -80,11 +75,41 @@ public class SysUserServiceImpl extends BaseServiceImpl impleme } @Override - public int add(SysUser user) { + public boolean add(SysUser user, List role) { //密码加密 - String pwd = Md5Util.getMD5(user.getPassword().trim(), user.getUsername().trim()); - user.setPassword(pwd); - return sysUserMapper.add(user); + user.setPassword(Md5Util.getMD5(user.getPassword(), user.getUsername())); + boolean save = save(user); + SysRoleUser sysRoleUser = new SysRoleUser(); + sysRoleUser.setUserId(user.getId()); + for (String r : role) { + sysRoleUser.setRoleId(r); + roleUserService.save(sysRoleUser); + } + return save; + } + + @Override + public boolean updateUser(SysUser user, List role) { + SysUser oldUser = getById(user.getId()); + BeanUtil.copyNotNullBean(user, oldUser); + updateById(oldUser); + + SysRoleUser sysRoleUser = new SysRoleUser(); + sysRoleUser.setUserId(oldUser.getId()); + List keyList = selectByCondition(sysRoleUser); + for (SysRoleUser currentRoleUser : keyList) { + QueryWrapper queryWrapper = new QueryWrapper<>(currentRoleUser); + roleUserService.remove(queryWrapper); + } + + if (role != null) { + for (String r : role) { + sysRoleUser.setRoleId(r); + roleUserService.save(sysRoleUser); + } + } + updateCurrent(user); + return true; } @Override @@ -93,32 +118,27 @@ public class SysUserServiceImpl extends BaseServiceImpl impleme return LenResponse.error("获取数据失败"); } LenResponse j = new LenResponse(); - try { - SysUser sysUser = sysUserMapper.selectById(id); - if (ADMIN.equals(sysUser.getUsername())) { - return LenResponse.error("超管无法删除"); - } - SysRoleUser roleUser = new SysRoleUser(); - roleUser.setUserId(id); - QueryWrapper wrapper=new QueryWrapper<>(roleUser); - int count = roleUserService.count(wrapper); - if (count > 0) { - return LenResponse.error("账户已经绑定角色,无法删除"); - } - if (flag) { - //逻辑 - sysUser.setDelFlag(Byte.parseByte("1")); - sysUserMapper.updateById(sysUser); - } else { - //物理 - sysUserMapper.delById(id); - } - j.setMsg("删除成功"); - } catch (MyException e) { - j.setMsg("删除失败"); - j.setFlag(false); - e.printStackTrace(); + SysUser sysUser = sysUserMapper.selectById(id); + if (ADMIN.equals(sysUser.getUsername())) { + return LenResponse.error("超管无法删除"); } + SysRoleUser roleUser = new SysRoleUser(); + roleUser.setUserId(id); + QueryWrapper wrapper = new QueryWrapper<>(roleUser); + int count = roleUserService.count(wrapper); + if (count > 0) { + return LenResponse.error("账户已经绑定角色,无法删除"); + } + if (flag) { + //逻辑 + sysUser.setDelFlag(Byte.parseByte("1")); + sysUserMapper.updateById(sysUser); + } else { + //物理 + sysUserMapper.delById(id); + } + int i = 1 / 0; + j.setMsg("删除成功"); return j; } @@ -163,12 +183,11 @@ public class SysUserServiceImpl extends BaseServiceImpl impleme } - @Override public void setMenuAndRoles(String username) { SysUser s = new SysUser(); s.setUsername(username); - QueryWrapper userQueryWrapper=new QueryWrapper<>(s); + QueryWrapper userQueryWrapper = new QueryWrapper<>(s); s = sysUserMapper.selectOne(userQueryWrapper); CurrentUser currentUser = new CurrentUser(s.getId(), s.getUsername(), s.getAge(), s.getEmail(), s.getPhoto(), s.getRealName()); Subject subject = Principal.getSubject(); @@ -178,7 +197,7 @@ public class SysUserServiceImpl extends BaseServiceImpl impleme List menuList = menuService.getUserMenu(s.getId()); JSONArray json = menuService.getMenuJsonByUser(menuList); - session.setAttribute("menu", json); + session.setAttribute("menu", json.toJSONString()); List currentMenuList = new ArrayList<>(); @@ -208,13 +227,21 @@ public class SysUserServiceImpl extends BaseServiceImpl impleme @Override public void updateCurrent(SysUser sysUser) { CurrentUser principal = Principal.getPrincipal(); - if(principal.getId().equals(sysUser.getId())){ + if (principal.getId().equals(sysUser.getId())) { //当前用户 CurrentUser currentUse = Principal.getCurrentUse(); - Session session=Principal.getSession(); + Session session = Principal.getSession(); currentUse.setPhoto(sysUser.getPhoto()); - session.setAttribute("currentPrincipal",currentUse); - + session.setAttribute("currentPrincipal", currentUse); } } + + @Override + public boolean updatePerson(SysUser user) { + SysUser oldUser = getById(user.getId()); + BeanUtil.copyNotNullBean(user, oldUser); + updateById(oldUser); + updateCurrent(user); + return true; + } } diff --git a/len-sys/src/main/resources/ftl/system/user/re-pass.ftl b/len-sys/src/main/resources/ftl/system/user/re-pass.ftl index 8242b41..e764015 100644 --- a/len-sys/src/main/resources/ftl/system/user/re-pass.ftl +++ b/len-sys/src/main/resources/ftl/system/user/re-pass.ftl @@ -22,16 +22,6 @@ To change this template use File | Settings | File Templates.--> 修改账户:${user.username} -
- -
- - -
-