This commit is contained in:
parent
8e6f2f8ca3
commit
539216f2dc
|
|
@ -3,8 +3,8 @@ package com.hxkj.admin;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||||
import com.hxkj.admin.config.SystemConfig;
|
import com.hxkj.admin.config.SystemConfig;
|
||||||
import com.hxkj.admin.service.ISysAdminService;
|
import com.hxkj.admin.service.ISystemAdminService;
|
||||||
import com.hxkj.admin.service.ISysRoleMenuService;
|
import com.hxkj.admin.service.ISystemRoleMenuService;
|
||||||
import com.hxkj.common.core.AjaxResult;
|
import com.hxkj.common.core.AjaxResult;
|
||||||
import com.hxkj.common.enums.HttpEnum;
|
import com.hxkj.common.enums.HttpEnum;
|
||||||
import com.hxkj.common.utils.RedisUtil;
|
import com.hxkj.common.utils.RedisUtil;
|
||||||
|
|
@ -27,10 +27,10 @@ import java.util.Map;
|
||||||
public class LikeAdminInterceptor implements HandlerInterceptor {
|
public class LikeAdminInterceptor implements HandlerInterceptor {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysAdminService iSysAdminService;
|
ISystemAdminService iSystemAdminService;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysRoleMenuService iSysRoleMenuService;
|
ISystemRoleMenuService iSystemRoleMenuService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
||||||
|
|
@ -65,24 +65,37 @@ public class LikeAdminInterceptor implements HandlerInterceptor {
|
||||||
// 用户信息缓存
|
// 用户信息缓存
|
||||||
String uid = RedisUtil.get(token).toString();
|
String uid = RedisUtil.get(token).toString();
|
||||||
if (!RedisUtil.hExists(SystemConfig.backstageManageKey, uid)) {
|
if (!RedisUtil.hExists(SystemConfig.backstageManageKey, uid)) {
|
||||||
iSysAdminService.cacheAdminUserByUid(Integer.parseInt(uid));
|
iSystemAdminService.cacheAdminUserByUid(Integer.parseInt(uid));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验用户是否被删除
|
// 校验用户被删除
|
||||||
Map<String, Object> map = ToolsUtil.jsonToMap(RedisUtil.hGet(SystemConfig.backstageManageKey, uid).toString());
|
Map<String, Object> map = ToolsUtil.jsonToMap(RedisUtil.hGet(SystemConfig.backstageManageKey, uid).toString());
|
||||||
if (map == null || map.get("isDelete").toString().equals("1")) {
|
if (map == null || map.get("isDelete").toString().equals("1")) {
|
||||||
|
RedisUtil.del(token);
|
||||||
|
RedisUtil.hDel(SystemConfig.backstageManageKey, uid);
|
||||||
AjaxResult result = AjaxResult.failed(HttpEnum.TOKEN_INVALID.getCode(), HttpEnum.TOKEN_INVALID.getMsg());
|
AjaxResult result = AjaxResult.failed(HttpEnum.TOKEN_INVALID.getCode(), HttpEnum.TOKEN_INVALID.getMsg());
|
||||||
response.getWriter().print(JSON.toJSONString(result));
|
response.getWriter().print(JSON.toJSONString(result));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验用户是否被禁用
|
// 校验用户被禁用
|
||||||
if (map.get("isDisable").toString().equals("1")) {
|
if (map.get("isDisable").toString().equals("1")) {
|
||||||
AjaxResult result = AjaxResult.failed(HttpEnum.LOGIN_DISABLE_ERROR.getCode(), HttpEnum.LOGIN_DISABLE_ERROR.getMsg());
|
AjaxResult result = AjaxResult.failed(HttpEnum.LOGIN_DISABLE_ERROR.getCode(), HttpEnum.LOGIN_DISABLE_ERROR.getMsg());
|
||||||
response.getWriter().print(JSON.toJSONString(result));
|
response.getWriter().print(JSON.toJSONString(result));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 令牌剩余30分钟自动续签
|
||||||
|
if (RedisUtil.ttl(token) < 1800) {
|
||||||
|
RedisUtil.expire(token, 7200L);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 写入本地线程
|
||||||
|
LikeAdminThreadLocal.put("adminId", uid);
|
||||||
|
LikeAdminThreadLocal.put("roleId", map.get("role").toString());
|
||||||
|
LikeAdminThreadLocal.put("username", map.get("username").toString());
|
||||||
|
LikeAdminThreadLocal.put("nickname", map.get("nickname").toString());
|
||||||
|
|
||||||
// 免权限验证接口
|
// 免权限验证接口
|
||||||
List<String> notAuthUri = Arrays.asList(SystemConfig.notLoginUri);
|
List<String> notAuthUri = Arrays.asList(SystemConfig.notLoginUri);
|
||||||
if (notAuthUri.contains(request.getRequestURI()) || Integer.parseInt(uid) == 1) {
|
if (notAuthUri.contains(request.getRequestURI()) || Integer.parseInt(uid) == 1) {
|
||||||
|
|
@ -92,7 +105,7 @@ public class LikeAdminInterceptor implements HandlerInterceptor {
|
||||||
// 校验角色权限是否存在
|
// 校验角色权限是否存在
|
||||||
String roleId = map.get("role").toString();
|
String roleId = map.get("role").toString();
|
||||||
if (!RedisUtil.hExists(SystemConfig.backstageRolesKey, roleId)) {
|
if (!RedisUtil.hExists(SystemConfig.backstageRolesKey, roleId)) {
|
||||||
iSysRoleMenuService.cacheRoleMenusByRoleId(Integer.parseInt(roleId));
|
iSystemRoleMenuService.cacheRoleMenusByRoleId(Integer.parseInt(roleId));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 验证是否有权限操作
|
// 验证是否有权限操作
|
||||||
|
|
@ -103,9 +116,6 @@ public class LikeAdminInterceptor implements HandlerInterceptor {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 写入本地线程
|
|
||||||
LikeAdminThreadLocal.put("adminId", uid);
|
|
||||||
|
|
||||||
// 验证通过继续操作
|
// 验证通过继续操作
|
||||||
return HandlerInterceptor.super.preHandle(request, response, handler);
|
return HandlerInterceptor.super.preHandle(request, response, handler);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,9 @@ package com.hxkj.admin;
|
||||||
|
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 本地线程
|
||||||
|
*/
|
||||||
public class LikeAdminThreadLocal {
|
public class LikeAdminThreadLocal {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -18,8 +21,12 @@ public class LikeAdminThreadLocal {
|
||||||
/**
|
/**
|
||||||
* 写入本地线程
|
* 写入本地线程
|
||||||
*/
|
*/
|
||||||
public static void put(String key, String val) {
|
public static void put(String key, Object val) {
|
||||||
LinkedHashMap<String, Object> map = MY_LOCAL.get();
|
LinkedHashMap<String, Object> map = MY_LOCAL.get();
|
||||||
|
if (map == null) {
|
||||||
|
map = new LinkedHashMap<>();
|
||||||
|
}
|
||||||
|
|
||||||
map.put(key, val);
|
map.put(key, val);
|
||||||
MY_LOCAL.set(map);
|
MY_LOCAL.set(map);
|
||||||
}
|
}
|
||||||
|
|
@ -42,6 +49,17 @@ public class LikeAdminThreadLocal {
|
||||||
return Integer.parseInt(adminId);
|
return Integer.parseInt(adminId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取角色ID
|
||||||
|
*/
|
||||||
|
public static Integer getRoleId() {
|
||||||
|
String roleId = LikeAdminThreadLocal.get("roleId").toString();
|
||||||
|
if (roleId.equals("")) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return Integer.parseInt(roleId);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除本地线程
|
* 删除本地线程
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,7 @@
|
||||||
package com.hxkj.admin.controller;
|
package com.hxkj.admin.controller;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
||||||
|
|
||||||
import com.hxkj.common.entity.system.SysAdmin;
|
|
||||||
import com.hxkj.common.utils.YmlUtil;
|
import com.hxkj.common.utils.YmlUtil;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.hxkj.admin.controller.system;
|
package com.hxkj.admin.controller.system;
|
||||||
|
|
||||||
import com.hxkj.admin.service.ISysAdminService;
|
import com.hxkj.admin.service.ISystemAdminService;
|
||||||
import com.hxkj.admin.validate.PageParam;
|
import com.hxkj.admin.validate.PageParam;
|
||||||
import com.hxkj.admin.validate.SysAdminParam;
|
import com.hxkj.admin.validate.SysAdminParam;
|
||||||
import com.hxkj.admin.vo.system.SysAdminVo;
|
import com.hxkj.admin.vo.system.SystemAdminVo;
|
||||||
import com.hxkj.common.core.AjaxResult;
|
import com.hxkj.common.core.AjaxResult;
|
||||||
import com.hxkj.common.core.PageResult;
|
import com.hxkj.common.core.PageResult;
|
||||||
import com.hxkj.common.validator.annotation.IDMust;
|
import com.hxkj.common.validator.annotation.IDMust;
|
||||||
|
|
@ -15,10 +15,10 @@ import java.util.Map;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/system/admin")
|
@RequestMapping("/api/system/admin")
|
||||||
public class SysAdminController {
|
public class SystemAdminController {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysAdminService iSysAdminService;
|
ISystemAdminService iSystemAdminService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 管理员列表
|
* 管理员列表
|
||||||
|
|
@ -29,7 +29,7 @@ public class SysAdminController {
|
||||||
@GetMapping("/lists")
|
@GetMapping("/lists")
|
||||||
public Object lists(@Validated PageParam pageParam,
|
public Object lists(@Validated PageParam pageParam,
|
||||||
@RequestParam Map<String, String> params) {
|
@RequestParam Map<String, String> params) {
|
||||||
PageResult<SysAdminVo> list = iSysAdminService.lists(pageParam, params);
|
PageResult<SystemAdminVo> list = iSystemAdminService.lists(pageParam, params);
|
||||||
return AjaxResult.success(list);
|
return AjaxResult.success(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -41,7 +41,7 @@ public class SysAdminController {
|
||||||
*/
|
*/
|
||||||
@GetMapping("/detail")
|
@GetMapping("/detail")
|
||||||
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||||
SysAdminVo vo = iSysAdminService.detail(id);
|
SystemAdminVo vo = iSystemAdminService.detail(id);
|
||||||
return AjaxResult.success(vo);
|
return AjaxResult.success(vo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -54,7 +54,7 @@ public class SysAdminController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/add")
|
@PostMapping("/add")
|
||||||
public Object add(@Validated(value = SysAdminParam.create.class) @RequestBody SysAdminParam sysAdminParam) {
|
public Object add(@Validated(value = SysAdminParam.create.class) @RequestBody SysAdminParam sysAdminParam) {
|
||||||
iSysAdminService.add(sysAdminParam);
|
iSystemAdminService.add(sysAdminParam);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -67,7 +67,7 @@ public class SysAdminController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/edit")
|
@PostMapping("/edit")
|
||||||
public Object edit(@Validated(value = SysAdminParam.update.class) @RequestBody SysAdminParam sysAdminParam) {
|
public Object edit(@Validated(value = SysAdminParam.update.class) @RequestBody SysAdminParam sysAdminParam) {
|
||||||
iSysAdminService.edit(sysAdminParam);
|
iSystemAdminService.edit(sysAdminParam);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -79,7 +79,7 @@ public class SysAdminController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/del")
|
@PostMapping("/del")
|
||||||
public Object del(@Validated(value = SysAdminParam.delete.class) @RequestBody SysAdminParam sysAdminParam) {
|
public Object del(@Validated(value = SysAdminParam.delete.class) @RequestBody SysAdminParam sysAdminParam) {
|
||||||
iSysAdminService.del(sysAdminParam.getId());
|
iSystemAdminService.del(sysAdminParam.getId());
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
package com.hxkj.admin.controller.system;
|
package com.hxkj.admin.controller.system;
|
||||||
|
|
||||||
import com.hxkj.admin.service.ISysLoginService;
|
import com.hxkj.admin.service.ISystemLoginService;
|
||||||
import com.hxkj.admin.validate.SysLoginParam;
|
import com.hxkj.admin.validate.SysLoginParam;
|
||||||
import com.hxkj.common.core.AjaxResult;
|
import com.hxkj.common.core.AjaxResult;
|
||||||
import com.hxkj.common.exception.LoginException;
|
import com.hxkj.common.exception.LoginException;
|
||||||
|
|
@ -17,10 +17,10 @@ import java.util.Map;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/system")
|
@RequestMapping("/api/system")
|
||||||
public class SysLoginController {
|
public class SystemLoginController {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysLoginService iSysLoginService;
|
ISystemLoginService iSystemLoginService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 登录系统
|
* 登录系统
|
||||||
|
|
@ -32,7 +32,7 @@ public class SysLoginController {
|
||||||
@PostMapping("/login")
|
@PostMapping("/login")
|
||||||
public Object login(@Validated() @RequestBody SysLoginParam sysLoginParam) {
|
public Object login(@Validated() @RequestBody SysLoginParam sysLoginParam) {
|
||||||
try {
|
try {
|
||||||
Map<String, Object> map = iSysLoginService.login(sysLoginParam);
|
Map<String, Object> map = iSystemLoginService.login(sysLoginParam);
|
||||||
return AjaxResult.success(map);
|
return AjaxResult.success(map);
|
||||||
} catch (LoginException e) {
|
} catch (LoginException e) {
|
||||||
return AjaxResult.failed(e.getCode(), e.getMsg());
|
return AjaxResult.failed(e.getCode(), e.getMsg());
|
||||||
|
|
@ -51,7 +51,7 @@ public class SysLoginController {
|
||||||
@PostMapping("/logout")
|
@PostMapping("/logout")
|
||||||
public Object logout(HttpServletRequest request) {
|
public Object logout(HttpServletRequest request) {
|
||||||
try {
|
try {
|
||||||
iSysLoginService.logout(request.getHeader("token"));
|
iSystemLoginService.logout(request.getHeader("token"));
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
return AjaxResult.failed(e.getMessage());
|
return AjaxResult.failed(e.getMessage());
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
package com.hxkj.admin.controller.system;
|
package com.hxkj.admin.controller.system;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.hxkj.admin.service.ISysMenuService;
|
import com.hxkj.admin.LikeAdminThreadLocal;
|
||||||
|
import com.hxkj.admin.service.ISystemMenuService;
|
||||||
import com.hxkj.admin.validate.SysMenuParam;
|
import com.hxkj.admin.validate.SysMenuParam;
|
||||||
import com.hxkj.admin.vo.system.SysMenuVo;
|
import com.hxkj.admin.vo.system.SystemMenuVo;
|
||||||
import com.hxkj.common.core.AjaxResult;
|
import com.hxkj.common.core.AjaxResult;
|
||||||
import com.hxkj.common.entity.system.SysMenu;
|
|
||||||
import com.hxkj.common.validator.annotation.IDMust;
|
import com.hxkj.common.validator.annotation.IDMust;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
@ -14,10 +14,23 @@ import javax.annotation.Resource;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/system/menu")
|
@RequestMapping("/api/system/menu")
|
||||||
public class SysMenuController {
|
public class SystemMenuController {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysMenuService iSysMenuService;
|
ISystemMenuService iSystemMenuService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取系统菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @return Object
|
||||||
|
*/
|
||||||
|
@GetMapping("/menus")
|
||||||
|
public Object menus() {
|
||||||
|
Integer roleId = LikeAdminThreadLocal.getRoleId();
|
||||||
|
JSONArray lists = iSystemMenuService.selectMenuByRoleId(roleId);
|
||||||
|
return AjaxResult.success(lists);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取菜单列表
|
* 获取菜单列表
|
||||||
|
|
@ -27,7 +40,7 @@ public class SysMenuController {
|
||||||
*/
|
*/
|
||||||
@GetMapping("/lists")
|
@GetMapping("/lists")
|
||||||
public Object lists() {
|
public Object lists() {
|
||||||
JSONArray lists = iSysMenuService.lists();
|
JSONArray lists = iSystemMenuService.lists();
|
||||||
return AjaxResult.success(lists);
|
return AjaxResult.success(lists);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -39,7 +52,7 @@ public class SysMenuController {
|
||||||
*/
|
*/
|
||||||
@GetMapping("/detail")
|
@GetMapping("/detail")
|
||||||
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||||
SysMenuVo vo = iSysMenuService.detail(id);
|
SystemMenuVo vo = iSystemMenuService.detail(id);
|
||||||
return AjaxResult.success(vo);
|
return AjaxResult.success(vo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -51,7 +64,7 @@ public class SysMenuController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/add")
|
@PostMapping("/add")
|
||||||
public Object add(@Validated(value = SysMenuParam.create.class) @RequestBody SysMenuParam sysMenuParam) {
|
public Object add(@Validated(value = SysMenuParam.create.class) @RequestBody SysMenuParam sysMenuParam) {
|
||||||
iSysMenuService.add(sysMenuParam);
|
iSystemMenuService.add(sysMenuParam);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -63,7 +76,7 @@ public class SysMenuController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/edit")
|
@PostMapping("/edit")
|
||||||
public Object edit(@Validated(value = SysMenuParam.update.class) @RequestBody SysMenuParam sysMenuParam) {
|
public Object edit(@Validated(value = SysMenuParam.update.class) @RequestBody SysMenuParam sysMenuParam) {
|
||||||
iSysMenuService.edit(sysMenuParam);
|
iSystemMenuService.edit(sysMenuParam);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -75,7 +88,7 @@ public class SysMenuController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/del")
|
@PostMapping("/del")
|
||||||
public Object del(@Validated(value = SysMenuParam.delete.class) @RequestBody SysMenuParam sysMenuParam) {
|
public Object del(@Validated(value = SysMenuParam.delete.class) @RequestBody SysMenuParam sysMenuParam) {
|
||||||
iSysMenuService.del(sysMenuParam.getId());
|
iSystemMenuService.del(sysMenuParam.getId());
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.hxkj.admin.controller.system;
|
package com.hxkj.admin.controller.system;
|
||||||
|
|
||||||
import com.hxkj.admin.service.ISysRoleService;
|
import com.hxkj.admin.service.ISystemRoleService;
|
||||||
import com.hxkj.admin.validate.PageParam;
|
import com.hxkj.admin.validate.PageParam;
|
||||||
import com.hxkj.admin.validate.SysRoleParam;
|
import com.hxkj.admin.validate.SysRoleParam;
|
||||||
import com.hxkj.admin.vo.system.SysRoleVo;
|
import com.hxkj.admin.vo.system.SystemRoleVo;
|
||||||
import com.hxkj.common.core.AjaxResult;
|
import com.hxkj.common.core.AjaxResult;
|
||||||
import com.hxkj.common.core.PageResult;
|
import com.hxkj.common.core.PageResult;
|
||||||
import com.hxkj.common.validator.annotation.IDMust;
|
import com.hxkj.common.validator.annotation.IDMust;
|
||||||
|
|
@ -14,10 +14,10 @@ import javax.annotation.Resource;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/system/role")
|
@RequestMapping("/api/system/role")
|
||||||
public class SysRoleController {
|
public class SystemRoleController {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysRoleService iSysRoleService;
|
ISystemRoleService iSystemRoleService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 角色列表
|
* 角色列表
|
||||||
|
|
@ -28,7 +28,7 @@ public class SysRoleController {
|
||||||
*/
|
*/
|
||||||
@GetMapping("/lists")
|
@GetMapping("/lists")
|
||||||
public Object lists(@Validated PageParam pageParam) {
|
public Object lists(@Validated PageParam pageParam) {
|
||||||
PageResult<SysRoleVo> lists = iSysRoleService.lists(pageParam);
|
PageResult<SystemRoleVo> lists = iSystemRoleService.lists(pageParam);
|
||||||
return AjaxResult.success(lists);
|
return AjaxResult.success(lists);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -39,8 +39,9 @@ public class SysRoleController {
|
||||||
* @return Object
|
* @return Object
|
||||||
*/
|
*/
|
||||||
@GetMapping("/detail")
|
@GetMapping("/detail")
|
||||||
public Object detail() {
|
public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) {
|
||||||
return null;
|
SystemRoleVo vo = iSystemRoleService.detail(id);
|
||||||
|
return AjaxResult.success(vo);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -52,7 +53,7 @@ public class SysRoleController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/add")
|
@PostMapping("/add")
|
||||||
public Object add(@Validated(value = SysRoleParam.create.class) @RequestBody SysRoleParam sysRoleParam) {
|
public Object add(@Validated(value = SysRoleParam.create.class) @RequestBody SysRoleParam sysRoleParam) {
|
||||||
iSysRoleService.add(sysRoleParam);
|
iSystemRoleService.add(sysRoleParam);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -65,7 +66,7 @@ public class SysRoleController {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/edit")
|
@PostMapping("/edit")
|
||||||
public Object edit(@Validated(value = SysRoleParam.create.class) @RequestBody SysRoleParam sysRoleParam) {
|
public Object edit(@Validated(value = SysRoleParam.create.class) @RequestBody SysRoleParam sysRoleParam) {
|
||||||
iSysRoleService.edit(sysRoleParam);
|
iSystemRoleService.edit(sysRoleParam);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -73,12 +74,12 @@ public class SysRoleController {
|
||||||
* 删除角色
|
* 删除角色
|
||||||
*
|
*
|
||||||
* @author fzr
|
* @author fzr
|
||||||
* @param id 角色ID
|
* @param sysRoleParam 角色参数
|
||||||
* @return Object
|
* @return Object
|
||||||
*/
|
*/
|
||||||
@PostMapping("/del")
|
@PostMapping("/del")
|
||||||
public Object del(@Validated @IDMust() @RequestBody Integer id) {
|
public Object del(@Validated(value = SysRoleParam.delete.class) @RequestBody SysRoleParam sysRoleParam) {
|
||||||
iSysRoleService.del(id);
|
iSystemRoleService.del(sysRoleParam.getId());
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
||||||
package com.hxkj.admin.service;
|
|
||||||
|
|
||||||
import com.hxkj.common.basics.BaseService;
|
|
||||||
import com.hxkj.common.entity.system.SysRoleMenu;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 系统角色菜单服务
|
|
||||||
*/
|
|
||||||
public interface ISysRoleMenuService extends BaseService<SysRoleMenu> {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 批量写入角色菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param roleId 角色ID
|
|
||||||
* @param ids 菜单ID组
|
|
||||||
*/
|
|
||||||
void batchSaveByMenuIds(Integer roleId, String ids);
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 根据ID批量删除角色菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param roleId 角色ID
|
|
||||||
*/
|
|
||||||
void batchDeleteByRoleId(Integer roleId);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 缓存角色菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param roleId 角色ID
|
|
||||||
*/
|
|
||||||
void cacheRoleMenusByRoleId(Integer roleId);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -2,17 +2,17 @@ package com.hxkj.admin.service;
|
||||||
|
|
||||||
import com.hxkj.admin.validate.PageParam;
|
import com.hxkj.admin.validate.PageParam;
|
||||||
import com.hxkj.admin.validate.SysAdminParam;
|
import com.hxkj.admin.validate.SysAdminParam;
|
||||||
import com.hxkj.admin.vo.system.SysAdminVo;
|
import com.hxkj.admin.vo.system.SystemAdminVo;
|
||||||
import com.hxkj.common.basics.BaseService;
|
import com.hxkj.common.basics.BaseService;
|
||||||
import com.hxkj.common.core.PageResult;
|
import com.hxkj.common.core.PageResult;
|
||||||
import com.hxkj.common.entity.system.SysAdmin;
|
import com.hxkj.common.entity.system.SystemAdmin;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统管理员服务
|
* 系统管理员服务
|
||||||
*/
|
*/
|
||||||
public interface ISysAdminService extends BaseService<SysAdmin> {
|
public interface ISystemAdminService extends BaseService<SystemAdmin> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据账号查找管理员
|
* 根据账号查找管理员
|
||||||
|
|
@ -21,7 +21,7 @@ public interface ISysAdminService extends BaseService<SysAdmin> {
|
||||||
* @param username 主键ID
|
* @param username 主键ID
|
||||||
* @return SysAdmin
|
* @return SysAdmin
|
||||||
*/
|
*/
|
||||||
SysAdmin findByUsername(String username);
|
SystemAdmin findByUsername(String username);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 管理员列表
|
* 管理员列表
|
||||||
|
|
@ -30,7 +30,7 @@ public interface ISysAdminService extends BaseService<SysAdmin> {
|
||||||
* @param pageParam 分页参数
|
* @param pageParam 分页参数
|
||||||
* @return PageResult<SysAdminListVo>
|
* @return PageResult<SysAdminListVo>
|
||||||
*/
|
*/
|
||||||
PageResult<SysAdminVo> lists(PageParam pageParam, Map<String, String> params);
|
PageResult<SystemAdminVo> lists(PageParam pageParam, Map<String, String> params);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 管理员详情
|
* 管理员详情
|
||||||
|
|
@ -39,7 +39,7 @@ public interface ISysAdminService extends BaseService<SysAdmin> {
|
||||||
* @param id 主键参数
|
* @param id 主键参数
|
||||||
* @return SysAdmin
|
* @return SysAdmin
|
||||||
*/
|
*/
|
||||||
SysAdminVo detail(Integer id);
|
SystemAdminVo detail(Integer id);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增管理员
|
* 新增管理员
|
||||||
|
|
@ -2,13 +2,12 @@ package com.hxkj.admin.service;
|
||||||
|
|
||||||
import com.hxkj.admin.validate.SysLoginParam;
|
import com.hxkj.admin.validate.SysLoginParam;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统登录服务
|
* 系统登录服务
|
||||||
*/
|
*/
|
||||||
public interface ISysLoginService {
|
public interface ISystemLoginService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 登录
|
* 登录
|
||||||
|
|
@ -2,18 +2,27 @@ package com.hxkj.admin.service;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.hxkj.admin.validate.SysMenuParam;
|
import com.hxkj.admin.validate.SysMenuParam;
|
||||||
import com.hxkj.admin.vo.system.SysMenuVo;
|
import com.hxkj.admin.vo.system.SystemMenuVo;
|
||||||
import com.hxkj.common.basics.BaseService;
|
import com.hxkj.common.basics.BaseService;
|
||||||
import com.hxkj.common.entity.system.SysMenu;
|
import com.hxkj.common.entity.system.SystemMenu;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统菜单服务
|
* 系统菜单服务
|
||||||
*/
|
*/
|
||||||
public interface ISysMenuService extends BaseService<SysMenu> {
|
public interface ISystemMenuService extends BaseService<SystemMenu> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据角色获取菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @return JSONArray
|
||||||
|
*/
|
||||||
|
JSONArray selectMenuByRoleId(Integer roleId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 菜单列表
|
* 菜单列表
|
||||||
*
|
*
|
||||||
|
* @author fzr
|
||||||
* @return JSONArray
|
* @return JSONArray
|
||||||
*/
|
*/
|
||||||
JSONArray lists();
|
JSONArray lists();
|
||||||
|
|
@ -25,7 +34,7 @@ public interface ISysMenuService extends BaseService<SysMenu> {
|
||||||
* @param id 主键
|
* @param id 主键
|
||||||
* @return SysMenu
|
* @return SysMenu
|
||||||
*/
|
*/
|
||||||
SysMenuVo detail(Integer id);
|
SystemMenuVo detail(Integer id);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增菜单
|
* 新增菜单
|
||||||
|
|
@ -0,0 +1,54 @@
|
||||||
|
package com.hxkj.admin.service;
|
||||||
|
|
||||||
|
import com.hxkj.common.basics.BaseService;
|
||||||
|
import com.hxkj.common.entity.system.SystemRoleMenu;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 系统角色菜单服务
|
||||||
|
*/
|
||||||
|
public interface ISystemRoleMenuService extends BaseService<SystemRoleMenu> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据角色ID获取菜单ID
|
||||||
|
*
|
||||||
|
* @param roleId 角色ID
|
||||||
|
* @return List<Integer>
|
||||||
|
*/
|
||||||
|
List<Integer> selectMenuIdsByRoleId(Integer roleId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量写入角色菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param roleId 角色ID
|
||||||
|
* @param menuIds 菜单ID组
|
||||||
|
*/
|
||||||
|
void batchSaveByMenuIds(Integer roleId, String menuIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据角色ID批量删除角色菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param roleId 角色ID
|
||||||
|
*/
|
||||||
|
void batchDeleteByRoleId(Integer roleId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据菜单ID批量删除角色菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param menuId 菜单ID
|
||||||
|
*/
|
||||||
|
void batchDeleteByMenuId(Integer menuId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 缓存角色菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param roleId 角色ID
|
||||||
|
*/
|
||||||
|
void cacheRoleMenusByRoleId(Integer roleId);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -2,16 +2,16 @@ package com.hxkj.admin.service;
|
||||||
|
|
||||||
import com.hxkj.admin.validate.PageParam;
|
import com.hxkj.admin.validate.PageParam;
|
||||||
import com.hxkj.admin.validate.SysRoleParam;
|
import com.hxkj.admin.validate.SysRoleParam;
|
||||||
import com.hxkj.admin.vo.system.SysRoleVo;
|
import com.hxkj.admin.vo.system.SystemRoleVo;
|
||||||
import com.hxkj.common.basics.BaseService;
|
import com.hxkj.common.basics.BaseService;
|
||||||
import com.hxkj.common.core.PageResult;
|
import com.hxkj.common.core.PageResult;
|
||||||
import com.hxkj.common.entity.system.SysRole;
|
import com.hxkj.common.entity.system.SystemRole;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统角色服务
|
* 系统角色服务
|
||||||
*/
|
*/
|
||||||
public interface ISysRoleService extends BaseService<SysRole> {
|
public interface ISystemRoleService extends BaseService<SystemRole> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据id获取角色名称
|
* 根据id获取角色名称
|
||||||
|
|
@ -27,7 +27,7 @@ public interface ISysRoleService extends BaseService<SysRole> {
|
||||||
* @param pageParam 参数
|
* @param pageParam 参数
|
||||||
* @return PageResult<SysRoleListVo>
|
* @return PageResult<SysRoleListVo>
|
||||||
*/
|
*/
|
||||||
PageResult<SysRoleVo> lists(@Validated PageParam pageParam);
|
PageResult<SystemRoleVo> lists(@Validated PageParam pageParam);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 角色详情
|
* 角色详情
|
||||||
|
|
@ -36,7 +36,7 @@ public interface ISysRoleService extends BaseService<SysRole> {
|
||||||
* @param id 主键参数
|
* @param id 主键参数
|
||||||
* @return SysRole
|
* @return SysRole
|
||||||
*/
|
*/
|
||||||
SysRole detail(Integer id);
|
SystemRoleVo detail(Integer id);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增角色
|
* 新增角色
|
||||||
|
|
@ -1,134 +0,0 @@
|
||||||
package com.hxkj.admin.service.impl;
|
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONArray;
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Assert;
|
|
||||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
|
||||||
import com.hxkj.admin.config.SystemConfig;
|
|
||||||
import com.hxkj.admin.service.ISysMenuService;
|
|
||||||
import com.hxkj.admin.validate.SysMenuParam;
|
|
||||||
import com.hxkj.admin.vo.system.SysMenuVo;
|
|
||||||
import com.hxkj.common.entity.system.SysMenu;
|
|
||||||
import com.hxkj.common.mapper.system.SysMenuMapper;
|
|
||||||
import com.hxkj.common.utils.ArrayUtil;
|
|
||||||
import com.hxkj.common.utils.RedisUtil;
|
|
||||||
import com.hxkj.common.utils.TimeUtil;
|
|
||||||
import org.springframework.beans.BeanUtils;
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
@Service
|
|
||||||
public class ISysMenuServiceImpl extends MPJBaseServiceImpl<SysMenuMapper, SysMenu> implements ISysMenuService {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 菜单列表
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @return JSONArray
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public JSONArray lists() {
|
|
||||||
QueryWrapper<SysMenu> queryWrapper = new QueryWrapper<>();
|
|
||||||
queryWrapper.orderByDesc(Arrays.asList("menu_sort", "id"));
|
|
||||||
|
|
||||||
List<SysMenu> sysMenus = this.list( queryWrapper);
|
|
||||||
|
|
||||||
List<SysMenuVo> lists = new ArrayList<>();
|
|
||||||
for (SysMenu sysMenu : sysMenus) {
|
|
||||||
SysMenuVo vo = new SysMenuVo();
|
|
||||||
BeanUtils.copyProperties(sysMenu, vo);
|
|
||||||
|
|
||||||
vo.setCreateTime(TimeUtil.timestampToDate(sysMenu.getCreateTime()));
|
|
||||||
vo.setUpdateTime(TimeUtil.timestampToDate(sysMenu.getUpdateTime()));
|
|
||||||
lists.add(vo);
|
|
||||||
}
|
|
||||||
|
|
||||||
JSONArray jsonArray = JSONArray.parseArray(JSONArray.toJSONString(lists));
|
|
||||||
return ArrayUtil.listToTree(jsonArray, "id", "pid", "children");
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 菜单详情
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param id 主键参数
|
|
||||||
* @return SysMenu
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public SysMenuVo detail(Integer id) {
|
|
||||||
SysMenu sysMenu = this.getOne(new QueryWrapper<SysMenu>().eq("id", id));
|
|
||||||
Assert.notNull(sysMenu, "菜单已不存在!");
|
|
||||||
|
|
||||||
SysMenuVo vo = new SysMenuVo();
|
|
||||||
BeanUtils.copyProperties(sysMenu, vo);
|
|
||||||
vo.setCreateTime(TimeUtil.timestampToDate(sysMenu.getCreateTime()));
|
|
||||||
vo.setUpdateTime(TimeUtil.timestampToDate(sysMenu.getUpdateTime()));
|
|
||||||
|
|
||||||
return vo;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新增菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param sysMenuParam 参数
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void add(SysMenuParam sysMenuParam) {
|
|
||||||
SysMenu model = new SysMenu();
|
|
||||||
model.setPid(sysMenuParam.getPid());
|
|
||||||
model.setMenuType(sysMenuParam.getMenuType());
|
|
||||||
model.setMenuName(sysMenuParam.getMenuName());
|
|
||||||
model.setMenuIcon(sysMenuParam.getMenuIcon());
|
|
||||||
model.setMenuSort(sysMenuParam.getMenuSort());
|
|
||||||
model.setPerms(sysMenuParam.getPerms());
|
|
||||||
model.setIsDisable(sysMenuParam.getIsDisable());
|
|
||||||
model.setCreateTime(System.currentTimeMillis() / 1000);
|
|
||||||
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
|
||||||
this.save(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 编辑菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param sysMenuParam 菜单
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void edit(SysMenuParam sysMenuParam) {
|
|
||||||
SysMenu model = this.getOne(new QueryWrapper<SysMenu>().eq("id", sysMenuParam.getId()));
|
|
||||||
Assert.notNull(model, "菜单已不存在!");
|
|
||||||
|
|
||||||
model.setMenuType(sysMenuParam.getMenuType());
|
|
||||||
model.setMenuName(sysMenuParam.getMenuName());
|
|
||||||
model.setMenuIcon(sysMenuParam.getMenuIcon());
|
|
||||||
model.setMenuSort(sysMenuParam.getMenuSort());
|
|
||||||
model.setPerms(sysMenuParam.getPerms());
|
|
||||||
model.setPid(sysMenuParam.getPid());
|
|
||||||
model.setIsDisable(sysMenuParam.getIsDisable());
|
|
||||||
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
|
||||||
this.updateById(model);
|
|
||||||
|
|
||||||
RedisUtil.del(SystemConfig.backstageRolesKey);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param id 主键参数
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void del(Integer id) {
|
|
||||||
SysMenu model = this.getOne(new QueryWrapper<SysMenu>().eq("id", id));
|
|
||||||
Assert.notNull(model, "菜单已不存在!");
|
|
||||||
|
|
||||||
this.removeById(id);
|
|
||||||
|
|
||||||
RedisUtil.del(SystemConfig.backstageRolesKey);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,89 +0,0 @@
|
||||||
package com.hxkj.admin.service.impl;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
||||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
|
||||||
import com.hxkj.admin.config.SystemConfig;
|
|
||||||
import com.hxkj.admin.service.ISysMenuService;
|
|
||||||
import com.hxkj.admin.service.ISysRoleMenuService;
|
|
||||||
import com.hxkj.common.entity.system.SysMenu;
|
|
||||||
import com.hxkj.common.entity.system.SysRoleMenu;
|
|
||||||
import com.hxkj.common.mapper.system.SysRoleMenuMapper;
|
|
||||||
import com.hxkj.common.utils.RedisUtil;
|
|
||||||
import com.hxkj.common.utils.ToolsUtil;
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.LinkedList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
@Service
|
|
||||||
public class ISysRoleMenuServiceImpl extends MPJBaseServiceImpl<SysRoleMenuMapper, SysRoleMenu> implements ISysRoleMenuService {
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
ISysMenuService iSysMenuService;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 批量写入角色菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param roleId 角色ID
|
|
||||||
* @param ids 菜单ID组
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void batchSaveByMenuIds(Integer roleId, String ids) {
|
|
||||||
if (ids != null && !ids.equals("")) {
|
|
||||||
List<SysRoleMenu> arrayList = new ArrayList<>();
|
|
||||||
for (String menuId : ids.split(",")) {
|
|
||||||
SysRoleMenu model = new SysRoleMenu();
|
|
||||||
model.setRoleId(roleId);
|
|
||||||
model.setMenuId(Integer.parseInt(menuId));
|
|
||||||
arrayList.add(model);
|
|
||||||
}
|
|
||||||
|
|
||||||
this.saveBatch(arrayList);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 批量删除角色菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param roleId 角色ID
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void batchDeleteByRoleId(Integer roleId) {
|
|
||||||
this.remove(new QueryWrapper<SysRoleMenu>().eq("role_id", roleId));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 缓存角色菜单
|
|
||||||
*
|
|
||||||
* @author fzr
|
|
||||||
* @param roleId 角色ID
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void cacheRoleMenusByRoleId(Integer roleId) {
|
|
||||||
List<Integer> menuIds = new LinkedList<>();
|
|
||||||
List<String> menuArray = new LinkedList<>();
|
|
||||||
|
|
||||||
List<SysRoleMenu> sysRoleMenus = this.list(new QueryWrapper<SysRoleMenu>().eq("role_id", roleId));
|
|
||||||
for (SysRoleMenu sysRoleMenu : sysRoleMenus) {
|
|
||||||
menuIds.add(sysRoleMenu.getMenuId());
|
|
||||||
}
|
|
||||||
|
|
||||||
if (menuIds.size() > 0) {
|
|
||||||
List<SysMenu> sysMenus = iSysMenuService.list(new QueryWrapper<SysMenu>()
|
|
||||||
.select("id,perms")
|
|
||||||
.in("id", menuIds)
|
|
||||||
.eq("is_disable", 0));
|
|
||||||
|
|
||||||
for (SysMenu sysMenu : sysMenus) {
|
|
||||||
menuArray.add(sysMenu.getPerms().trim());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
RedisUtil.hSet(SystemConfig.backstageRolesKey, String.valueOf(roleId), ToolsUtil.listStrToString(menuArray, ","));
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -7,18 +7,15 @@ import com.baomidou.mybatisplus.core.toolkit.Assert;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||||
import com.hxkj.admin.config.SystemConfig;
|
import com.hxkj.admin.config.SystemConfig;
|
||||||
import com.hxkj.admin.service.ISysAdminService;
|
import com.hxkj.admin.service.ISystemAdminService;
|
||||||
import com.hxkj.admin.service.ISysRoleService;
|
import com.hxkj.admin.service.ISystemRoleService;
|
||||||
import com.hxkj.admin.validate.PageParam;
|
import com.hxkj.admin.validate.PageParam;
|
||||||
import com.hxkj.admin.validate.SysAdminParam;
|
import com.hxkj.admin.validate.SysAdminParam;
|
||||||
import com.hxkj.admin.vo.system.SysAdminVo;
|
import com.hxkj.admin.vo.system.SystemAdminVo;
|
||||||
import com.hxkj.common.core.PageResult;
|
import com.hxkj.common.core.PageResult;
|
||||||
import com.hxkj.common.entity.system.SysAdmin;
|
import com.hxkj.common.entity.system.SystemAdmin;
|
||||||
import com.hxkj.common.mapper.system.SysAdminMapper;
|
import com.hxkj.common.mapper.system.SystemAdminMapper;
|
||||||
import com.hxkj.common.utils.RedisUtil;
|
import com.hxkj.common.utils.*;
|
||||||
import com.hxkj.common.utils.TimeUtil;
|
|
||||||
import com.hxkj.common.utils.ToolsUtil;
|
|
||||||
import com.hxkj.common.utils.UrlUtil;
|
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
|
@ -26,10 +23,10 @@ import javax.annotation.Resource;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, SysAdmin> implements ISysAdminService {
|
public class ISystemAdminServiceImpl extends MPJBaseServiceImpl<SystemAdminMapper, SystemAdmin> implements ISystemAdminService {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysRoleService iSysRoleService;
|
ISystemRoleService iSystemRoleService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据账号查找管理员
|
* 根据账号查找管理员
|
||||||
|
|
@ -39,8 +36,8 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
* @return SysAdmin
|
* @return SysAdmin
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public SysAdmin findByUsername(String username) {
|
public SystemAdmin findByUsername(String username) {
|
||||||
return this.getOne(new QueryWrapper<SysAdmin>()
|
return this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.eq("username", username)
|
.eq("username", username)
|
||||||
.last("limit 1"));
|
.last("limit 1"));
|
||||||
}
|
}
|
||||||
|
|
@ -53,12 +50,12 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
* @return PageResult<SysAdminListVo>
|
* @return PageResult<SysAdminListVo>
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public PageResult<SysAdminVo> lists(PageParam pageParam, Map<String, String> params) {
|
public PageResult<SystemAdminVo> lists(PageParam pageParam, Map<String, String> params) {
|
||||||
Integer page = pageParam.getPageNo();
|
Integer page = pageParam.getPageNo();
|
||||||
Integer limit = pageParam.getPageSize();
|
Integer limit = pageParam.getPageSize();
|
||||||
|
|
||||||
QueryWrapper<SysAdmin> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<SystemAdmin> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.select(SysAdmin.class, info->
|
queryWrapper.select(SystemAdmin.class, info->
|
||||||
!info.getColumn().equals("salt") &&
|
!info.getColumn().equals("salt") &&
|
||||||
!info.getColumn().equals("password") &&
|
!info.getColumn().equals("password") &&
|
||||||
!info.getColumn().equals("is_delete") &&
|
!info.getColumn().equals("is_delete") &&
|
||||||
|
|
@ -72,15 +69,15 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
"=:role:int"
|
"=:role:int"
|
||||||
});
|
});
|
||||||
|
|
||||||
IPage<SysAdmin> iPage = this.page(new Page<>(page, limit), queryWrapper);
|
IPage<SystemAdmin> iPage = this.page(new Page<>(page, limit), queryWrapper);
|
||||||
|
|
||||||
List<SysAdminVo> adminVoArrayList = new ArrayList<>();
|
List<SystemAdminVo> adminVoArrayList = new ArrayList<>();
|
||||||
for (SysAdmin sysAdmin : iPage.getRecords()) {
|
for (SystemAdmin sysAdmin : iPage.getRecords()) {
|
||||||
SysAdminVo vo = new SysAdminVo();
|
SystemAdminVo vo = new SystemAdminVo();
|
||||||
BeanUtils.copyProperties(sysAdmin, vo);
|
BeanUtils.copyProperties(sysAdmin, vo);
|
||||||
|
|
||||||
vo.setAvatar(UrlUtil.toAbsoluteUrl(sysAdmin.getAvatar()));
|
vo.setAvatar(UrlUtil.toAbsoluteUrl(sysAdmin.getAvatar()));
|
||||||
vo.setRole(iSysRoleService.getRoleNameById(sysAdmin.getRole()));
|
vo.setRole(iSystemRoleService.getRoleNameById(sysAdmin.getRole()));
|
||||||
vo.setCreateTime(TimeUtil.timestampToDate(sysAdmin.getCreateTime()));
|
vo.setCreateTime(TimeUtil.timestampToDate(sysAdmin.getCreateTime()));
|
||||||
vo.setUpdateTime(TimeUtil.timestampToDate(sysAdmin.getUpdateTime()));
|
vo.setUpdateTime(TimeUtil.timestampToDate(sysAdmin.getUpdateTime()));
|
||||||
vo.setLastLoginTime(TimeUtil.timestampToDate(sysAdmin.getLastLoginTime()));
|
vo.setLastLoginTime(TimeUtil.timestampToDate(sysAdmin.getLastLoginTime()));
|
||||||
|
|
@ -98,9 +95,9 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
* @return SysAdmin
|
* @return SysAdmin
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public SysAdminVo detail(Integer id) {
|
public SystemAdminVo detail(Integer id) {
|
||||||
SysAdmin sysAdmin = this.getOne(new QueryWrapper<SysAdmin>()
|
SystemAdmin sysAdmin = this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select(SysAdmin.class, info->
|
.select(SystemAdmin.class, info->
|
||||||
!info.getColumn().equals("salt") &&
|
!info.getColumn().equals("salt") &&
|
||||||
!info.getColumn().equals("password") &&
|
!info.getColumn().equals("password") &&
|
||||||
!info.getColumn().equals("is_delete") &&
|
!info.getColumn().equals("is_delete") &&
|
||||||
|
|
@ -111,7 +108,7 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
|
|
||||||
Assert.notNull(sysAdmin, "账号已不存在!");
|
Assert.notNull(sysAdmin, "账号已不存在!");
|
||||||
|
|
||||||
SysAdminVo vo = new SysAdminVo();
|
SystemAdminVo vo = new SystemAdminVo();
|
||||||
BeanUtils.copyProperties(sysAdmin, vo);
|
BeanUtils.copyProperties(sysAdmin, vo);
|
||||||
|
|
||||||
vo.setRole(String.valueOf(sysAdmin.getRole()));
|
vo.setRole(String.valueOf(sysAdmin.getRole()));
|
||||||
|
|
@ -132,25 +129,25 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
@Override
|
@Override
|
||||||
public void add(SysAdminParam sysAdminParam) {
|
public void add(SysAdminParam sysAdminParam) {
|
||||||
String[] field = {"id", "username", "nickname"};
|
String[] field = {"id", "username", "nickname"};
|
||||||
Assert.isNull(this.getOne(new QueryWrapper<SysAdmin>()
|
Assert.isNull(this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select(field)
|
.select(field)
|
||||||
.eq("is_delete", 0)
|
.eq("is_delete", 0)
|
||||||
.eq("username", sysAdminParam.getUsername())
|
.eq("username", sysAdminParam.getUsername())
|
||||||
.last("limit 1")), "账号已存在换一个吧!");
|
.last("limit 1")), "账号已存在换一个吧!");
|
||||||
|
|
||||||
Assert.isNull(this.getOne(new QueryWrapper<SysAdmin>()
|
Assert.isNull(this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select(field)
|
.select(field)
|
||||||
.eq("is_delete", 0)
|
.eq("is_delete", 0)
|
||||||
.eq("nickname", sysAdminParam.getNickname())
|
.eq("nickname", sysAdminParam.getNickname())
|
||||||
.last("limit 1")), "昵称已存在换一个吧!");
|
.last("limit 1")), "昵称已存在换一个吧!");
|
||||||
|
|
||||||
Assert.notNull(iSysRoleService.getById(sysAdminParam.getRole()), "角色不存在!");
|
Assert.notNull(iSystemRoleService.getById(sysAdminParam.getRole()), "角色不存在!");
|
||||||
|
|
||||||
String salt = ToolsUtil.randomString(5);
|
String salt = ToolsUtil.randomString(5);
|
||||||
String pwd = ToolsUtil.makeMd5(sysAdminParam.getPassword().trim() + salt);
|
String pwd = ToolsUtil.makeMd5(sysAdminParam.getPassword().trim() + salt);
|
||||||
String avatar = UrlUtil.toRelativeUrl(sysAdminParam.getAvatar());
|
String avatar = UrlUtil.toRelativeUrl(sysAdminParam.getAvatar());
|
||||||
|
|
||||||
SysAdmin model = new SysAdmin();
|
SystemAdmin model = new SystemAdmin();
|
||||||
model.setUsername(sysAdminParam.getUsername());
|
model.setUsername(sysAdminParam.getUsername());
|
||||||
model.setNickname(sysAdminParam.getNickname());
|
model.setNickname(sysAdminParam.getNickname());
|
||||||
model.setRole(sysAdminParam.getRole());
|
model.setRole(sysAdminParam.getRole());
|
||||||
|
|
@ -173,29 +170,29 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
@Override
|
@Override
|
||||||
public void edit(SysAdminParam sysAdminParam) {
|
public void edit(SysAdminParam sysAdminParam) {
|
||||||
String[] field = {"id", "username", "nickname"};
|
String[] field = {"id", "username", "nickname"};
|
||||||
Assert.notNull(this.getOne(new QueryWrapper<SysAdmin>()
|
Assert.notNull(this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select(field)
|
.select(field)
|
||||||
.eq("id", sysAdminParam.getId())
|
.eq("id", sysAdminParam.getId())
|
||||||
.eq("is_delete", 0)
|
.eq("is_delete", 0)
|
||||||
.last("limit 1")), "账号不存在了!");
|
.last("limit 1")), "账号不存在了!");
|
||||||
|
|
||||||
Assert.isNull(this.getOne(new QueryWrapper<SysAdmin>()
|
Assert.isNull(this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select(field)
|
.select(field)
|
||||||
.eq("is_delete", 0)
|
.eq("is_delete", 0)
|
||||||
.eq("username", sysAdminParam.getUsername())
|
.eq("username", sysAdminParam.getUsername())
|
||||||
.ne("id", sysAdminParam.getId())
|
.ne("id", sysAdminParam.getId())
|
||||||
.last("limit 1")), "账号已存在换一个吧!");
|
.last("limit 1")), "账号已存在换一个吧!");
|
||||||
|
|
||||||
Assert.isNull(this.getOne(new QueryWrapper<SysAdmin>()
|
Assert.isNull(this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select(field)
|
.select(field)
|
||||||
.eq("is_delete", 0)
|
.eq("is_delete", 0)
|
||||||
.eq("nickname", sysAdminParam.getNickname())
|
.eq("nickname", sysAdminParam.getNickname())
|
||||||
.ne("id", sysAdminParam.getId())
|
.ne("id", sysAdminParam.getId())
|
||||||
.last("limit 1")), "昵称已存在换一个吧!");
|
.last("limit 1")), "昵称已存在换一个吧!");
|
||||||
|
|
||||||
Assert.notNull(iSysRoleService.getById(sysAdminParam.getRole()), "角色不存在!");
|
Assert.notNull(iSystemRoleService.getById(sysAdminParam.getRole()), "角色不存在!");
|
||||||
|
|
||||||
SysAdmin model = new SysAdmin();
|
SystemAdmin model = new SystemAdmin();
|
||||||
model.setId(sysAdminParam.getId());
|
model.setId(sysAdminParam.getId());
|
||||||
model.setNickname(sysAdminParam.getNickname());
|
model.setNickname(sysAdminParam.getNickname());
|
||||||
model.setUsername(sysAdminParam.getUsername());
|
model.setUsername(sysAdminParam.getUsername());
|
||||||
|
|
@ -205,7 +202,7 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
model.setIsDisable(sysAdminParam.getIsDisable());
|
model.setIsDisable(sysAdminParam.getIsDisable());
|
||||||
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||||
|
|
||||||
if (sysAdminParam.getPassword() != null && !sysAdminParam.getPassword().equals("")) {
|
if (sysAdminParam.getPassword() != null) {
|
||||||
String salt = ToolsUtil.randomString(5);
|
String salt = ToolsUtil.randomString(5);
|
||||||
String pwd = ToolsUtil.makeMd5( sysAdminParam.getPassword().trim() + salt);
|
String pwd = ToolsUtil.makeMd5( sysAdminParam.getPassword().trim() + salt);
|
||||||
model.setPassword(pwd);
|
model.setPassword(pwd);
|
||||||
|
|
@ -214,6 +211,10 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
|
|
||||||
this.updateById(model);
|
this.updateById(model);
|
||||||
this.cacheAdminUserByUid(sysAdminParam.getId());
|
this.cacheAdminUserByUid(sysAdminParam.getId());
|
||||||
|
|
||||||
|
if (sysAdminParam.getPassword() != null) {
|
||||||
|
RedisUtil.del(Objects.requireNonNull(HttpUtil.obj()).getHeader("token"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -225,7 +226,7 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
@Override
|
@Override
|
||||||
public void del(Integer id) {
|
public void del(Integer id) {
|
||||||
String[] field = {"id", "username", "nickname"};
|
String[] field = {"id", "username", "nickname"};
|
||||||
Assert.notNull(this.getOne(new QueryWrapper<SysAdmin>()
|
Assert.notNull(this.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select(field)
|
.select(field)
|
||||||
.eq("id", id)
|
.eq("id", id)
|
||||||
.eq("is_delete", 0)
|
.eq("is_delete", 0)
|
||||||
|
|
@ -233,7 +234,7 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
|
|
||||||
Assert.isFalse(id == 1, "系统管理员不允许删除");
|
Assert.isFalse(id == 1, "系统管理员不允许删除");
|
||||||
|
|
||||||
SysAdmin model = new SysAdmin();
|
SystemAdmin model = new SystemAdmin();
|
||||||
model.setId(id);
|
model.setId(id);
|
||||||
model.setIsDelete(1);
|
model.setIsDelete(1);
|
||||||
model.setDeleteTime(System.currentTimeMillis() / 1000);
|
model.setDeleteTime(System.currentTimeMillis() / 1000);
|
||||||
|
|
@ -246,7 +247,7 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl<SysAdminMapper, Sys
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void cacheAdminUserByUid(Integer id) {
|
public void cacheAdminUserByUid(Integer id) {
|
||||||
SysAdmin sysAdmin = this.getById(id);
|
SystemAdmin sysAdmin = this.getById(id);
|
||||||
|
|
||||||
Map<String, Object> user = new LinkedHashMap<>();
|
Map<String, Object> user = new LinkedHashMap<>();
|
||||||
Map<String, Object> map = new LinkedHashMap<>();
|
Map<String, Object> map = new LinkedHashMap<>();
|
||||||
|
|
@ -1,14 +1,13 @@
|
||||||
package com.hxkj.admin.service.impl;
|
package com.hxkj.admin.service.impl;
|
||||||
|
|
||||||
import com.hxkj.admin.config.SystemConfig;
|
import com.hxkj.admin.config.SystemConfig;
|
||||||
import com.hxkj.admin.service.ISysAdminService;
|
import com.hxkj.admin.service.ISystemAdminService;
|
||||||
import com.hxkj.admin.service.ISysLoginService;
|
import com.hxkj.admin.service.ISystemLoginService;
|
||||||
import com.hxkj.admin.validate.SysLoginParam;
|
import com.hxkj.admin.validate.SysLoginParam;
|
||||||
import com.hxkj.common.entity.system.SysAdmin;
|
import com.hxkj.common.entity.system.SystemAdmin;
|
||||||
import com.hxkj.common.enums.HttpEnum;
|
import com.hxkj.common.enums.HttpEnum;
|
||||||
import com.hxkj.common.exception.LoginException;
|
import com.hxkj.common.exception.LoginException;
|
||||||
import com.hxkj.common.exception.OperateException;
|
import com.hxkj.common.exception.OperateException;
|
||||||
import com.hxkj.common.mapper.system.SysAdminMapper;
|
|
||||||
import com.hxkj.common.utils.HttpUtil;
|
import com.hxkj.common.utils.HttpUtil;
|
||||||
import com.hxkj.common.utils.RedisUtil;
|
import com.hxkj.common.utils.RedisUtil;
|
||||||
import com.hxkj.common.utils.ToolsUtil;
|
import com.hxkj.common.utils.ToolsUtil;
|
||||||
|
|
@ -19,13 +18,10 @@ import java.util.LinkedHashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ISysLoginServiceImpl implements ISysLoginService {
|
public class ISystemLoginServiceImpl implements ISystemLoginService {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
SysAdminMapper sysAdminMapper;
|
ISystemAdminService iSystemAdminService;
|
||||||
|
|
||||||
@Resource
|
|
||||||
ISysAdminService iSysAdminService;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 登录
|
* 登录
|
||||||
|
|
@ -39,7 +35,7 @@ public class ISysLoginServiceImpl implements ISysLoginService {
|
||||||
String username = sysLoginParam.getUsername();
|
String username = sysLoginParam.getUsername();
|
||||||
String password = sysLoginParam.getPassword();
|
String password = sysLoginParam.getPassword();
|
||||||
|
|
||||||
SysAdmin sysAdmin = iSysAdminService.findByUsername(username);
|
SystemAdmin sysAdmin = iSystemAdminService.findByUsername(username);
|
||||||
if (sysAdmin == null || sysAdmin.getIsDelete() == 1) {
|
if (sysAdmin == null || sysAdmin.getIsDelete() == 1) {
|
||||||
throw new LoginException(HttpEnum.LOGIN_ACCOUNT_ERROR.getCode(), HttpEnum.LOGIN_ACCOUNT_ERROR.getMsg());
|
throw new LoginException(HttpEnum.LOGIN_ACCOUNT_ERROR.getCode(), HttpEnum.LOGIN_ACCOUNT_ERROR.getMsg());
|
||||||
}
|
}
|
||||||
|
|
@ -57,11 +53,11 @@ public class ISysLoginServiceImpl implements ISysLoginService {
|
||||||
try {
|
try {
|
||||||
sysAdmin.setLastLoginIp(HttpUtil.ip());
|
sysAdmin.setLastLoginIp(HttpUtil.ip());
|
||||||
sysAdmin.setLastLoginTime(System.currentTimeMillis() / 1000);
|
sysAdmin.setLastLoginTime(System.currentTimeMillis() / 1000);
|
||||||
sysAdminMapper.updateById(sysAdmin);
|
iSystemAdminService.updateById(sysAdmin);
|
||||||
|
|
||||||
String token = ToolsUtil.makeToken();
|
String token = ToolsUtil.makeToken();
|
||||||
RedisUtil.set(SystemConfig.backstageTokenKey+token, sysAdmin.getId(), 7200);
|
RedisUtil.set(SystemConfig.backstageTokenKey+token, sysAdmin.getId(), 7200);
|
||||||
iSysAdminService.cacheAdminUserByUid(sysAdmin.getId());
|
iSystemAdminService.cacheAdminUserByUid(sysAdmin.getId());
|
||||||
|
|
||||||
Map<String, Object> response = new LinkedHashMap<>();
|
Map<String, Object> response = new LinkedHashMap<>();
|
||||||
response.put("token", token);
|
response.put("token", token);
|
||||||
|
|
@ -0,0 +1,175 @@
|
||||||
|
package com.hxkj.admin.service.impl;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Assert;
|
||||||
|
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||||
|
import com.hxkj.admin.LikeAdminThreadLocal;
|
||||||
|
import com.hxkj.admin.config.SystemConfig;
|
||||||
|
import com.hxkj.admin.service.ISystemMenuService;
|
||||||
|
import com.hxkj.admin.service.ISystemRoleMenuService;
|
||||||
|
import com.hxkj.admin.validate.SysMenuParam;
|
||||||
|
import com.hxkj.admin.vo.system.SystemMenuVo;
|
||||||
|
import com.hxkj.common.entity.system.SystemMenu;
|
||||||
|
import com.hxkj.common.mapper.system.SystemMenuMapper;
|
||||||
|
import com.hxkj.common.utils.ArrayUtil;
|
||||||
|
import com.hxkj.common.utils.RedisUtil;
|
||||||
|
import com.hxkj.common.utils.TimeUtil;
|
||||||
|
import org.springframework.beans.BeanUtils;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class ISystemMenuServiceImpl extends MPJBaseServiceImpl<SystemMenuMapper, SystemMenu> implements ISystemMenuService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
ISystemRoleMenuService iSystemRoleMenuService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据角色ID获取菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param roleId 角色ID
|
||||||
|
* @return JSONArray
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public JSONArray selectMenuByRoleId(Integer roleId) {
|
||||||
|
Integer adminId = LikeAdminThreadLocal.getAdminId();
|
||||||
|
List<Integer> menuIds = iSystemRoleMenuService.selectMenuIdsByRoleId(roleId);
|
||||||
|
|
||||||
|
QueryWrapper<SystemMenu> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.in("menu_type", Arrays.asList("M", "C"));
|
||||||
|
queryWrapper.orderByDesc(Arrays.asList("menu_sort", "id"));
|
||||||
|
if (adminId != 1 && menuIds.size() > 0) {
|
||||||
|
queryWrapper.in("id", menuIds);
|
||||||
|
}
|
||||||
|
|
||||||
|
List<SystemMenu> systemMenus = this.list(queryWrapper);
|
||||||
|
List<SystemMenuVo> lists = new ArrayList<>();
|
||||||
|
for (SystemMenu systemMenu : systemMenus) {
|
||||||
|
SystemMenuVo vo = new SystemMenuVo();
|
||||||
|
BeanUtils.copyProperties(systemMenu, vo);
|
||||||
|
|
||||||
|
vo.setUpdateTime(TimeUtil.timestampToDate(systemMenu.getUpdateTime()));
|
||||||
|
vo.setCreateTime(TimeUtil.timestampToDate(systemMenu.getCreateTime()));
|
||||||
|
lists.add(vo);
|
||||||
|
}
|
||||||
|
|
||||||
|
JSONArray jsonArray = JSONArray.parseArray(JSONArray.toJSONString(lists));
|
||||||
|
return ArrayUtil.listToTree(jsonArray, "id", "pid", "children");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 菜单列表
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @return JSONArray
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public JSONArray lists() {
|
||||||
|
QueryWrapper<SystemMenu> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.orderByDesc(Arrays.asList("menu_sort", "id"));
|
||||||
|
|
||||||
|
List<SystemMenu> systemMenus = this.list(queryWrapper);
|
||||||
|
|
||||||
|
List<SystemMenuVo> lists = new ArrayList<>();
|
||||||
|
for (SystemMenu systemMenu : systemMenus) {
|
||||||
|
SystemMenuVo vo = new SystemMenuVo();
|
||||||
|
BeanUtils.copyProperties(systemMenu, vo);
|
||||||
|
|
||||||
|
vo.setCreateTime(TimeUtil.timestampToDate(systemMenu.getCreateTime()));
|
||||||
|
vo.setUpdateTime(TimeUtil.timestampToDate(systemMenu.getUpdateTime()));
|
||||||
|
lists.add(vo);
|
||||||
|
}
|
||||||
|
|
||||||
|
JSONArray jsonArray = JSONArray.parseArray(JSONArray.toJSONString(lists));
|
||||||
|
return ArrayUtil.listToTree(jsonArray, "id", "pid", "children");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 菜单详情
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param id 主键参数
|
||||||
|
* @return SysMenu
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public SystemMenuVo detail(Integer id) {
|
||||||
|
SystemMenu systemMenu = this.getOne(new QueryWrapper<SystemMenu>().eq("id", id));
|
||||||
|
Assert.notNull(systemMenu, "菜单已不存在!");
|
||||||
|
|
||||||
|
SystemMenuVo vo = new SystemMenuVo();
|
||||||
|
BeanUtils.copyProperties(systemMenu, vo);
|
||||||
|
vo.setCreateTime(TimeUtil.timestampToDate(systemMenu.getCreateTime()));
|
||||||
|
vo.setUpdateTime(TimeUtil.timestampToDate(systemMenu.getUpdateTime()));
|
||||||
|
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param sysMenuParam 参数
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void add(SysMenuParam sysMenuParam) {
|
||||||
|
SystemMenu model = new SystemMenu();
|
||||||
|
model.setPid(sysMenuParam.getPid());
|
||||||
|
model.setMenuType(sysMenuParam.getMenuType());
|
||||||
|
model.setMenuName(sysMenuParam.getMenuName());
|
||||||
|
model.setMenuIcon(sysMenuParam.getMenuIcon());
|
||||||
|
model.setMenuSort(sysMenuParam.getMenuSort());
|
||||||
|
model.setPerms(sysMenuParam.getPerms());
|
||||||
|
model.setIsDisable(sysMenuParam.getIsDisable());
|
||||||
|
model.setCreateTime(System.currentTimeMillis() / 1000);
|
||||||
|
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||||
|
this.save(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编辑菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param sysMenuParam 菜单
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void edit(SysMenuParam sysMenuParam) {
|
||||||
|
SystemMenu model = this.getOne(new QueryWrapper<SystemMenu>().eq("id", sysMenuParam.getId()));
|
||||||
|
Assert.notNull(model, "菜单已不存在!");
|
||||||
|
|
||||||
|
model.setMenuType(sysMenuParam.getMenuType());
|
||||||
|
model.setMenuName(sysMenuParam.getMenuName());
|
||||||
|
model.setMenuIcon(sysMenuParam.getMenuIcon());
|
||||||
|
model.setMenuSort(sysMenuParam.getMenuSort());
|
||||||
|
model.setPerms(sysMenuParam.getPerms());
|
||||||
|
model.setPid(sysMenuParam.getPid());
|
||||||
|
model.setIsDisable(sysMenuParam.getIsDisable());
|
||||||
|
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||||
|
this.updateById(model);
|
||||||
|
|
||||||
|
RedisUtil.del(SystemConfig.backstageRolesKey);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param id 主键参数
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void del(Integer id) {
|
||||||
|
SystemMenu model = this.getOne(new QueryWrapper<SystemMenu>().eq("id", id));
|
||||||
|
Assert.notNull(model, "菜单已不存在!");
|
||||||
|
|
||||||
|
this.removeById(id);
|
||||||
|
|
||||||
|
iSystemRoleMenuService.batchDeleteByMenuId(id);
|
||||||
|
RedisUtil.del(SystemConfig.backstageRolesKey);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,115 @@
|
||||||
|
package com.hxkj.admin.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||||
|
import com.hxkj.admin.config.SystemConfig;
|
||||||
|
import com.hxkj.admin.service.ISystemMenuService;
|
||||||
|
import com.hxkj.admin.service.ISystemRoleMenuService;
|
||||||
|
import com.hxkj.common.entity.system.SystemMenu;
|
||||||
|
import com.hxkj.common.entity.system.SystemRoleMenu;
|
||||||
|
import com.hxkj.common.mapper.system.SystemRoleMenuMapper;
|
||||||
|
import com.hxkj.common.utils.RedisUtil;
|
||||||
|
import com.hxkj.common.utils.ToolsUtil;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class ISystemRoleMenuServiceImpl extends MPJBaseServiceImpl<SystemRoleMenuMapper, SystemRoleMenu> implements ISystemRoleMenuService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
ISystemMenuService iSystemMenuService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据角色ID获取菜单ID
|
||||||
|
*
|
||||||
|
* @param roleId 角色ID
|
||||||
|
* @return List<Integer>
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<Integer> selectMenuIdsByRoleId(Integer roleId) {
|
||||||
|
List<Integer> menus = new LinkedList<>();
|
||||||
|
List<SystemRoleMenu> systemRoleMenus = this.list(new QueryWrapper<SystemRoleMenu>().eq("role_id", roleId));
|
||||||
|
for (SystemRoleMenu systemRoleMenu : systemRoleMenus) {
|
||||||
|
menus.add(systemRoleMenu.getMenuId());
|
||||||
|
}
|
||||||
|
return menus;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量写入角色菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param roleId 角色ID
|
||||||
|
* @param menuIds 菜单ID组
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void batchSaveByMenuIds(Integer roleId, String menuIds) {
|
||||||
|
if (menuIds != null && !menuIds.equals("")) {
|
||||||
|
List<SystemRoleMenu> arrayList = new ArrayList<>();
|
||||||
|
for (String menuId : menuIds.split(",")) {
|
||||||
|
SystemRoleMenu model = new SystemRoleMenu();
|
||||||
|
model.setRoleId(roleId);
|
||||||
|
model.setMenuId(Integer.parseInt(menuId));
|
||||||
|
arrayList.add(model);
|
||||||
|
}
|
||||||
|
this.saveBatch(arrayList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除角色菜单(根据角色ID)
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param roleId 角色ID
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void batchDeleteByRoleId(Integer roleId) {
|
||||||
|
this.remove(new QueryWrapper<SystemRoleMenu>().eq("role_id", roleId));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除角色菜单(根据菜单ID)
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param menuId 菜单ID
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void batchDeleteByMenuId(Integer menuId) {
|
||||||
|
this.remove(new QueryWrapper<SystemRoleMenu>().eq("menu_id", menuId));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 缓存角色菜单
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param roleId 角色ID
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void cacheRoleMenusByRoleId(Integer roleId) {
|
||||||
|
List<Integer> menuIds = new LinkedList<>();
|
||||||
|
List<String> menuArray = new LinkedList<>();
|
||||||
|
|
||||||
|
List<SystemRoleMenu> systemRoleMenus = this.list(new QueryWrapper<SystemRoleMenu>().eq("role_id", roleId));
|
||||||
|
for (SystemRoleMenu systemRoleMenu : systemRoleMenus) {
|
||||||
|
menuIds.add(systemRoleMenu.getMenuId());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (menuIds.size() > 0) {
|
||||||
|
List<SystemMenu> systemMenus = iSystemMenuService.list(new QueryWrapper<SystemMenu>()
|
||||||
|
.select("id,perms")
|
||||||
|
.in("id", menuIds)
|
||||||
|
.eq("is_disable", 0));
|
||||||
|
|
||||||
|
for (SystemMenu systemMenu : systemMenus) {
|
||||||
|
menuArray.add(systemMenu.getPerms().trim());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
RedisUtil.hSet(SystemConfig.backstageRolesKey, String.valueOf(roleId), ToolsUtil.listStrToString(menuArray, ","));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -6,16 +6,16 @@ import com.baomidou.mybatisplus.core.toolkit.Assert;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||||
import com.hxkj.admin.config.SystemConfig;
|
import com.hxkj.admin.config.SystemConfig;
|
||||||
import com.hxkj.admin.service.ISysAdminService;
|
import com.hxkj.admin.service.ISystemAdminService;
|
||||||
import com.hxkj.admin.service.ISysRoleMenuService;
|
import com.hxkj.admin.service.ISystemRoleMenuService;
|
||||||
import com.hxkj.admin.service.ISysRoleService;
|
import com.hxkj.admin.service.ISystemRoleService;
|
||||||
import com.hxkj.admin.validate.PageParam;
|
import com.hxkj.admin.validate.PageParam;
|
||||||
import com.hxkj.admin.validate.SysRoleParam;
|
import com.hxkj.admin.validate.SysRoleParam;
|
||||||
import com.hxkj.admin.vo.system.SysRoleVo;
|
import com.hxkj.admin.vo.system.SystemRoleVo;
|
||||||
import com.hxkj.common.core.PageResult;
|
import com.hxkj.common.core.PageResult;
|
||||||
import com.hxkj.common.entity.system.SysAdmin;
|
import com.hxkj.common.entity.system.SystemAdmin;
|
||||||
import com.hxkj.common.entity.system.SysRole;
|
import com.hxkj.common.entity.system.SystemRole;
|
||||||
import com.hxkj.common.mapper.system.SysRoleMapper;
|
import com.hxkj.common.mapper.system.SystemRoleMapper;
|
||||||
import com.hxkj.common.utils.RedisUtil;
|
import com.hxkj.common.utils.RedisUtil;
|
||||||
import com.hxkj.common.utils.TimeUtil;
|
import com.hxkj.common.utils.TimeUtil;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
|
|
@ -29,13 +29,13 @@ import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRole> implements ISysRoleService {
|
public class ISystemRoleServiceImpl extends MPJBaseServiceImpl<SystemRoleMapper, SystemRole> implements ISystemRoleService {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysAdminService iSysAdminService;
|
ISystemAdminService iSystemAdminService;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
ISysRoleMenuService iSysRoleMenuService;
|
ISystemRoleMenuService iSystemRoleMenuService;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -47,16 +47,16 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String getRoleNameById(Integer id) {
|
public String getRoleNameById(Integer id) {
|
||||||
QueryWrapper<SysRole> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<SystemRole> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.select("id", "name")
|
queryWrapper.select("id", "name")
|
||||||
.eq("id", id)
|
.eq("id", id)
|
||||||
.last("limit 1");
|
.last("limit 1");
|
||||||
|
|
||||||
SysRole sysRole = this.getOne(queryWrapper, false);
|
SystemRole systemRole = this.getOne(queryWrapper, false);
|
||||||
if (sysRole == null) {
|
if (systemRole == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
return sysRole.getName();
|
return systemRole.getName();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -67,22 +67,23 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
* @return PageResult<SysRoleListVo>
|
* @return PageResult<SysRoleListVo>
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public PageResult<SysRoleVo> lists(@Validated PageParam pageParam) {
|
public PageResult<SystemRoleVo> lists(@Validated PageParam pageParam) {
|
||||||
Integer page = pageParam.getPageNo();
|
Integer page = pageParam.getPageNo();
|
||||||
Integer limit = pageParam.getPageSize();
|
Integer limit = pageParam.getPageSize();
|
||||||
|
|
||||||
QueryWrapper<SysRole> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<SystemRole> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.orderByDesc(Arrays.asList("sort", "id"));
|
queryWrapper.orderByDesc(Arrays.asList("sort", "id"));
|
||||||
|
|
||||||
IPage<SysRole> iPage = this.page(new Page<>(page, limit), queryWrapper);
|
IPage<SystemRole> iPage = this.page(new Page<>(page, limit), queryWrapper);
|
||||||
|
|
||||||
List<SysRoleVo> roleVoArrayList = new ArrayList<>();
|
List<SystemRoleVo> roleVoArrayList = new ArrayList<>();
|
||||||
for (SysRole sysRole : iPage.getRecords()) {
|
for (SystemRole systemRole : iPage.getRecords()) {
|
||||||
SysRoleVo vo = new SysRoleVo();
|
SystemRoleVo vo = new SystemRoleVo();
|
||||||
BeanUtils.copyProperties(sysRole, vo);
|
BeanUtils.copyProperties(systemRole, vo);
|
||||||
|
|
||||||
vo.setCreateTime(TimeUtil.timestampToDate(sysRole.getCreateTime()));
|
vo.setMenus(new ArrayList<>());
|
||||||
vo.setUpdateTime(TimeUtil.timestampToDate(sysRole.getUpdateTime()));
|
vo.setCreateTime(TimeUtil.timestampToDate(systemRole.getCreateTime()));
|
||||||
|
vo.setUpdateTime(TimeUtil.timestampToDate(systemRole.getUpdateTime()));
|
||||||
roleVoArrayList.add(vo);
|
roleVoArrayList.add(vo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -97,14 +98,21 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
* @return SysRole
|
* @return SysRole
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public SysRole detail(Integer id) {
|
public SystemRoleVo detail(Integer id) {
|
||||||
SysRole sysRole = this.getOne(new QueryWrapper<SysRole>()
|
SystemRole systemRole = this.getOne(new QueryWrapper<SystemRole>()
|
||||||
.eq("id", id)
|
.eq("id", id)
|
||||||
.last("limit 1"));
|
.last("limit 1"));
|
||||||
|
|
||||||
Assert.notNull(sysRole, "角色已不存在!");
|
Assert.notNull(systemRole, "角色已不存在!");
|
||||||
|
|
||||||
return sysRole;
|
SystemRoleVo vo = new SystemRoleVo();
|
||||||
|
BeanUtils.copyProperties(systemRole, vo);
|
||||||
|
|
||||||
|
vo.setMenus(iSystemRoleMenuService.selectMenuIdsByRoleId(systemRole.getId()));
|
||||||
|
vo.setCreateTime(TimeUtil.timestampToDate(systemRole.getCreateTime()));
|
||||||
|
vo.setUpdateTime(TimeUtil.timestampToDate(systemRole.getUpdateTime()));
|
||||||
|
|
||||||
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -116,12 +124,12 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void add(SysRoleParam sysRoleParam) {
|
public void add(SysRoleParam sysRoleParam) {
|
||||||
Assert.isNull(this.getOne(new QueryWrapper<SysRole>()
|
Assert.isNull(this.getOne(new QueryWrapper<SystemRole>()
|
||||||
.select("id,name")
|
.select("id,name")
|
||||||
.eq("name", sysRoleParam.getName().trim())
|
.eq("name", sysRoleParam.getName().trim())
|
||||||
.last("limit 1")), "角色名称已存在!");
|
.last("limit 1")), "角色名称已存在!");
|
||||||
|
|
||||||
SysRole model = new SysRole();
|
SystemRole model = new SystemRole();
|
||||||
model.setName(sysRoleParam.getName().trim());
|
model.setName(sysRoleParam.getName().trim());
|
||||||
model.setRemark(sysRoleParam.getRemark());
|
model.setRemark(sysRoleParam.getRemark());
|
||||||
model.setIsDisable(sysRoleParam.getIsDisable());
|
model.setIsDisable(sysRoleParam.getIsDisable());
|
||||||
|
|
@ -129,7 +137,7 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||||
this.save(model);
|
this.save(model);
|
||||||
|
|
||||||
iSysRoleMenuService.batchSaveByMenuIds(sysRoleParam.getId(), sysRoleParam.getMenuIds());
|
iSystemRoleMenuService.batchSaveByMenuIds(model.getId(), sysRoleParam.getMenuIds());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -141,18 +149,18 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void edit(SysRoleParam sysRoleParam) {
|
public void edit(SysRoleParam sysRoleParam) {
|
||||||
Assert.notNull(this.getOne(new QueryWrapper<SysRole>()
|
Assert.notNull(this.getOne(new QueryWrapper<SystemRole>()
|
||||||
.select("id,name")
|
.select("id,name")
|
||||||
.eq("id", sysRoleParam.getId())
|
.eq("id", sysRoleParam.getId())
|
||||||
.last("limit 1")), "角色已不存在!");
|
.last("limit 1")), "角色已不存在!");
|
||||||
|
|
||||||
Assert.isNull(this.getOne(new QueryWrapper<SysRole>()
|
Assert.isNull(this.getOne(new QueryWrapper<SystemRole>()
|
||||||
.select("id,name")
|
.select("id,name")
|
||||||
.ne("id", sysRoleParam.getId())
|
.ne("id", sysRoleParam.getId())
|
||||||
.eq("name", sysRoleParam.getName().trim())
|
.eq("name", sysRoleParam.getName().trim())
|
||||||
.last("limit 1")), "角色名称已存在!");
|
.last("limit 1")), "角色名称已存在!");
|
||||||
|
|
||||||
SysRole model = new SysRole();
|
SystemRole model = new SystemRole();
|
||||||
model.setId(sysRoleParam.getId());
|
model.setId(sysRoleParam.getId());
|
||||||
model.setName(sysRoleParam.getName().trim());
|
model.setName(sysRoleParam.getName().trim());
|
||||||
model.setRemark(sysRoleParam.getRemark());
|
model.setRemark(sysRoleParam.getRemark());
|
||||||
|
|
@ -160,9 +168,9 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||||
this.updateById(model);
|
this.updateById(model);
|
||||||
|
|
||||||
iSysRoleMenuService.batchDeleteByRoleId(sysRoleParam.getId());
|
iSystemRoleMenuService.batchDeleteByRoleId(sysRoleParam.getId());
|
||||||
iSysRoleMenuService.batchSaveByMenuIds(sysRoleParam.getId(), sysRoleParam.getMenuIds());
|
iSystemRoleMenuService.batchSaveByMenuIds(sysRoleParam.getId(), sysRoleParam.getMenuIds());
|
||||||
iSysRoleMenuService.cacheRoleMenusByRoleId(sysRoleParam.getId());
|
iSystemRoleMenuService.cacheRoleMenusByRoleId(sysRoleParam.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -175,21 +183,21 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl<SysRoleMapper, SysRo
|
||||||
@Transactional
|
@Transactional
|
||||||
public void del(Integer id) {
|
public void del(Integer id) {
|
||||||
Assert.notNull(
|
Assert.notNull(
|
||||||
this.getOne(new QueryWrapper<SysRole>()
|
this.getOne(new QueryWrapper<SystemRole>()
|
||||||
.select("id", "name")
|
.select("id", "name")
|
||||||
.eq("id", id)
|
.eq("id", id)
|
||||||
.last("limit 1")),
|
.last("limit 1")),
|
||||||
"角色已不存在!");
|
"角色已不存在!");
|
||||||
|
|
||||||
Assert.isNull(iSysAdminService.getOne(new QueryWrapper<SysAdmin>()
|
Assert.isNull(iSystemAdminService.getOne(new QueryWrapper<SystemAdmin>()
|
||||||
.select("id", "role", "nickname")
|
.select("id", "role", "nickname")
|
||||||
.eq("role", id)
|
.eq("role", id)
|
||||||
.eq("is_delete", 0)),
|
.eq("is_delete", 0)),
|
||||||
"角色已被管理员使用,请先移除");
|
"角色已被管理员使用,请先移除");
|
||||||
|
|
||||||
this.removeById(id);
|
this.removeById(id);
|
||||||
iSysRoleMenuService.batchDeleteByRoleId(id);
|
iSystemRoleMenuService.batchDeleteByRoleId(id);
|
||||||
RedisUtil.hDel(SystemConfig.backstageRolesKey, id);
|
RedisUtil.hDel(SystemConfig.backstageRolesKey, String.valueOf(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -1,15 +1,20 @@
|
||||||
package com.hxkj.admin.validate;
|
package com.hxkj.admin.validate;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
import javax.validation.constraints.DecimalMax;
|
import javax.validation.constraints.DecimalMax;
|
||||||
import javax.validation.constraints.DecimalMin;
|
import javax.validation.constraints.DecimalMin;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页参数
|
* 分页参数
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class PageParam {
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@Accessors(chain = true)
|
||||||
|
public class PageParam implements Serializable {
|
||||||
|
|
||||||
// 当前分页
|
// 当前分页
|
||||||
@DecimalMin(value = "1", message = "pageNo参数必须大于0的数字")
|
@DecimalMin(value = "1", message = "pageNo参数必须大于0的数字")
|
||||||
|
|
|
||||||
|
|
@ -3,17 +3,22 @@ package com.hxkj.admin.validate;
|
||||||
import com.hxkj.common.validator.annotation.IDMust;
|
import com.hxkj.common.validator.annotation.IDMust;
|
||||||
import com.hxkj.common.validator.annotation.StringContains;
|
import com.hxkj.common.validator.annotation.StringContains;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
import org.hibernate.validator.constraints.Length;
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
import javax.validation.constraints.DecimalMin;
|
import javax.validation.constraints.DecimalMin;
|
||||||
import javax.validation.constraints.Max;
|
import javax.validation.constraints.Max;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统菜单参数
|
* 系统菜单参数
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class SysMenuParam {
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@Accessors(chain = true)
|
||||||
|
public class SysMenuParam implements Serializable {
|
||||||
|
|
||||||
public interface create{}
|
public interface create{}
|
||||||
public interface update{}
|
public interface update{}
|
||||||
|
|
|
||||||
|
|
@ -2,19 +2,25 @@ package com.hxkj.admin.validate;
|
||||||
|
|
||||||
import com.hxkj.common.validator.annotation.IDMust;
|
import com.hxkj.common.validator.annotation.IDMust;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
import org.hibernate.validator.constraints.Length;
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
import javax.validation.constraints.DecimalMin;
|
import javax.validation.constraints.DecimalMin;
|
||||||
import javax.validation.constraints.Max;
|
import javax.validation.constraints.Max;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class SysRoleParam {
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@Accessors(chain = true)
|
||||||
|
public class SysRoleParam implements Serializable {
|
||||||
|
|
||||||
public interface create{}
|
public interface create{}
|
||||||
public interface update{}
|
public interface update{}
|
||||||
|
public interface delete{}
|
||||||
|
|
||||||
@IDMust(message = "id参数必传且需大于0", groups = {update.class})
|
@IDMust(message = "id参数必传且需大于0", groups = {update.class, delete.class})
|
||||||
private Integer id;
|
private Integer id;
|
||||||
|
|
||||||
@NotNull(message = "缺少参数name", groups = {create.class, update.class})
|
@NotNull(message = "缺少参数name", groups = {create.class, update.class})
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ import lombok.Data;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class SysAdminVo implements Serializable {
|
public class SystemAdminVo implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -5,7 +5,7 @@ import lombok.Data;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class SysMenuVo implements Serializable {
|
public class SystemMenuVo implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -5,13 +5,14 @@ import lombok.Data;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class SysRoleVo implements Serializable {
|
public class SystemRoleVo implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
private Integer id;
|
private Integer id;
|
||||||
private String name;
|
private String name;
|
||||||
private String remark;
|
private String remark;
|
||||||
|
private Object menus;
|
||||||
private Integer sort;
|
private Integer sort;
|
||||||
private Integer isDisable;
|
private Integer isDisable;
|
||||||
private String createTime;
|
private String createTime;
|
||||||
|
|
@ -1,10 +1,7 @@
|
||||||
package com.hxkj.common.basics;
|
package com.hxkj.common.basics;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.hxkj.common.core.PageResult;
|
|
||||||
import com.hxkj.common.entity.system.SysAdmin;
|
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ import java.io.Serializable;
|
||||||
* 系统管理员实体
|
* 系统管理员实体
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class SysAdmin implements Serializable {
|
public class SystemAdmin implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
package com.hxkj.common.entity.system;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 系统配置实体
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class SystemConfig implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@TableId(value="id", type= IdType.AUTO)
|
||||||
|
private Integer id;
|
||||||
|
private String type;
|
||||||
|
private String name;
|
||||||
|
private String value;
|
||||||
|
private Long createTime;
|
||||||
|
private Long updateTime;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -10,7 +10,7 @@ import java.io.Serializable;
|
||||||
* 系统菜单实体
|
* 系统菜单实体
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class SysMenu implements Serializable {
|
public class SystemMenu implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -10,7 +10,7 @@ import java.io.Serializable;
|
||||||
* 系统角色实体
|
* 系统角色实体
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class SysRole implements Serializable {
|
public class SystemRole implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -14,12 +14,12 @@ import java.io.Serializable;
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = false)
|
@EqualsAndHashCode(callSuper = false)
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
public class SysRoleMenu implements Serializable {
|
public class SystemRoleMenu implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
@TableId(type = IdType.NONE)
|
@TableId(type = IdType.ASSIGN_UUID)
|
||||||
private Integer id;
|
private String id;
|
||||||
private Integer roleId;
|
private Integer roleId;
|
||||||
private Integer menuId;
|
private Integer menuId;
|
||||||
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
package com.hxkj.common.mapper.system;
|
package com.hxkj.common.mapper.system;
|
||||||
|
|
||||||
import com.hxkj.common.basics.BaseMapper;
|
import com.hxkj.common.basics.BaseMapper;
|
||||||
import com.hxkj.common.entity.system.SysAdmin;
|
import com.hxkj.common.entity.system.SystemAdmin;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统管理员
|
* 系统管理员
|
||||||
*/
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface SysAdminMapper extends BaseMapper<SysAdmin> {
|
public interface SystemAdminMapper extends BaseMapper<SystemAdmin> {
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
package com.hxkj.common.mapper.system;
|
||||||
|
|
||||||
|
import com.hxkj.common.basics.BaseMapper;
|
||||||
|
import com.hxkj.common.entity.system.SystemConfig;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 系统配置
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface SystemConfigMapper extends BaseMapper<SystemConfig> {
|
||||||
|
}
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
package com.hxkj.common.mapper.system;
|
package com.hxkj.common.mapper.system;
|
||||||
|
|
||||||
import com.hxkj.common.basics.BaseMapper;
|
import com.hxkj.common.basics.BaseMapper;
|
||||||
import com.hxkj.common.entity.system.SysMenu;
|
import com.hxkj.common.entity.system.SystemMenu;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统菜单
|
* 系统菜单
|
||||||
*/
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface SysMenuMapper extends BaseMapper<SysMenu> {
|
public interface SystemMenuMapper extends BaseMapper<SystemMenu> {
|
||||||
}
|
}
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
package com.hxkj.common.mapper.system;
|
package com.hxkj.common.mapper.system;
|
||||||
|
|
||||||
import com.hxkj.common.basics.BaseMapper;
|
import com.hxkj.common.basics.BaseMapper;
|
||||||
import com.hxkj.common.entity.system.SysRole;
|
import com.hxkj.common.entity.system.SystemRole;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统角色
|
* 系统角色
|
||||||
*/
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface SysRoleMapper extends BaseMapper<SysRole> {
|
public interface SystemRoleMapper extends BaseMapper<SystemRole> {
|
||||||
}
|
}
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
package com.hxkj.common.mapper.system;
|
package com.hxkj.common.mapper.system;
|
||||||
|
|
||||||
import com.hxkj.common.basics.BaseMapper;
|
import com.hxkj.common.basics.BaseMapper;
|
||||||
import com.hxkj.common.entity.system.SysRoleMenu;
|
import com.hxkj.common.entity.system.SystemRoleMenu;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 角色菜单
|
* 角色菜单
|
||||||
*/
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface SysRoleMenuMapper extends BaseMapper<SysRoleMenu> {
|
public interface SystemRoleMenuMapper extends BaseMapper<SystemRoleMenu> {
|
||||||
}
|
}
|
||||||
|
|
@ -1,7 +1,134 @@
|
||||||
package com.hxkj.common.utils;
|
package com.hxkj.common.utils;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.hxkj.common.entity.system.SystemConfig;
|
||||||
|
import com.hxkj.common.mapper.system.SystemConfigMapper;
|
||||||
|
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 数据库配置操作工具
|
* 数据库配置操作工具
|
||||||
*/
|
*/
|
||||||
public class ConfigUtil {
|
public class ConfigUtil {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据类型获取配置
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param type 类型
|
||||||
|
* @return Map<String, String>
|
||||||
|
*/
|
||||||
|
public static Map<String, String> get(String type) {
|
||||||
|
SystemConfigMapper model = SpringUtil.getBean(SystemConfigMapper.class);
|
||||||
|
|
||||||
|
List<SystemConfig> configs = model.selectList(
|
||||||
|
new QueryWrapper<SystemConfig>()
|
||||||
|
.select("id", "type", "name", "value")
|
||||||
|
.eq("type", type));
|
||||||
|
|
||||||
|
Map<String, String> map = new LinkedHashMap<>();
|
||||||
|
for (SystemConfig config : configs) {
|
||||||
|
map.put(config.getName(), config.getValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
return map;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据类型和名称获取配置
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param type 类型
|
||||||
|
* @param name 名称
|
||||||
|
* @return String
|
||||||
|
*/
|
||||||
|
public static String get(String type, String name) {
|
||||||
|
SystemConfigMapper model = SpringUtil.getBean(SystemConfigMapper.class);
|
||||||
|
|
||||||
|
SystemConfig config = model.selectOne(
|
||||||
|
new QueryWrapper<SystemConfig>()
|
||||||
|
.select("id", "type", "name", "value")
|
||||||
|
.eq("type", type)
|
||||||
|
.eq("name", name));
|
||||||
|
|
||||||
|
return config.getValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据类型和名称获取配置
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param type 类型
|
||||||
|
* @param name 名称
|
||||||
|
* @return String
|
||||||
|
*/
|
||||||
|
public static String get(String type, String name, String defaults) {
|
||||||
|
SystemConfigMapper model = SpringUtil.getBean(SystemConfigMapper.class);
|
||||||
|
|
||||||
|
SystemConfig config = model.selectOne(
|
||||||
|
new QueryWrapper<SystemConfig>()
|
||||||
|
.select("id", "type", "name", "value")
|
||||||
|
.eq("type", type)
|
||||||
|
.eq("name", name));
|
||||||
|
|
||||||
|
if (config == null) {
|
||||||
|
return defaults;
|
||||||
|
}
|
||||||
|
|
||||||
|
return config.getValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据类型和名称获取配置(JSON自定转Map)
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param type 类型
|
||||||
|
* @param name 名称
|
||||||
|
* @return String
|
||||||
|
*/
|
||||||
|
public static Map<String, Object> getMap(String type, String name) {
|
||||||
|
SystemConfigMapper model = SpringUtil.getBean(SystemConfigMapper.class);
|
||||||
|
|
||||||
|
SystemConfig config = model.selectOne(
|
||||||
|
new QueryWrapper<SystemConfig>()
|
||||||
|
.select("id", "type", "name", "value")
|
||||||
|
.eq("type", type)
|
||||||
|
.eq("name", name));
|
||||||
|
|
||||||
|
return ToolsUtil.jsonToMap(config.getValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置配置的值
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param type 类型
|
||||||
|
* @param name 名称
|
||||||
|
* @param val 值
|
||||||
|
*/
|
||||||
|
public static void set(String type, String name, String val) {
|
||||||
|
SystemConfigMapper model = SpringUtil.getBean(SystemConfigMapper.class);
|
||||||
|
|
||||||
|
SystemConfig config = model.selectOne(
|
||||||
|
new QueryWrapper<SystemConfig>()
|
||||||
|
.eq("type", type)
|
||||||
|
.eq("name", name));
|
||||||
|
|
||||||
|
if (config != null) {
|
||||||
|
config.setValue(val);
|
||||||
|
config.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||||
|
model.updateById(config);
|
||||||
|
} else {
|
||||||
|
SystemConfig systemConfig = new SystemConfig();
|
||||||
|
systemConfig.setType(type);
|
||||||
|
systemConfig.setName(name);
|
||||||
|
systemConfig.setValue(val);
|
||||||
|
systemConfig.setCreateTime(System.currentTimeMillis() / 1000);
|
||||||
|
systemConfig.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||||
|
model.insert(systemConfig);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue