diff --git a/like-admin/src/main/java/com/hxkj/admin/LikeAdminInterceptor.java b/like-admin/src/main/java/com/hxkj/admin/LikeAdminInterceptor.java index ca6cb1e8..e219f066 100644 --- a/like-admin/src/main/java/com/hxkj/admin/LikeAdminInterceptor.java +++ b/like-admin/src/main/java/com/hxkj/admin/LikeAdminInterceptor.java @@ -85,7 +85,7 @@ public class LikeAdminInterceptor implements HandlerInterceptor { // 免权限验证接口 List notAuthUri = Arrays.asList(SystemConfig.notLoginUri); - if (notAuthUri.contains(request.getRequestURI())) { + if (notAuthUri.contains(request.getRequestURI()) || Integer.parseInt(uid) == 1) { return HandlerInterceptor.super.preHandle(request, response, handler); } diff --git a/like-admin/src/main/java/com/hxkj/admin/controller/system/SysAdminController.java b/like-admin/src/main/java/com/hxkj/admin/controller/system/SysAdminController.java index ce2a10a6..7006e4e5 100644 --- a/like-admin/src/main/java/com/hxkj/admin/controller/system/SysAdminController.java +++ b/like-admin/src/main/java/com/hxkj/admin/controller/system/SysAdminController.java @@ -3,8 +3,7 @@ package com.hxkj.admin.controller.system; import com.hxkj.admin.service.ISysAdminService; import com.hxkj.admin.validate.PageParam; import com.hxkj.admin.validate.SysAdminParam; -import com.hxkj.admin.vo.system.SysAdminDetailVo; -import com.hxkj.admin.vo.system.SysAdminListVo; +import com.hxkj.admin.vo.system.SysAdminVo; import com.hxkj.common.core.AjaxResult; import com.hxkj.common.core.PageResult; import com.hxkj.common.validator.annotation.IDMust; @@ -30,7 +29,7 @@ public class SysAdminController { @GetMapping("/lists") public Object lists(@Validated PageParam pageParam, @RequestParam Map params) { - PageResult list = iSysAdminService.lists(pageParam, params); + PageResult list = iSysAdminService.lists(pageParam, params); return AjaxResult.success(list); } @@ -42,7 +41,7 @@ public class SysAdminController { */ @GetMapping("/detail") public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) { - SysAdminDetailVo vo = iSysAdminService.detail(id); + SysAdminVo vo = iSysAdminService.detail(id); return AjaxResult.success(vo); } diff --git a/like-admin/src/main/java/com/hxkj/admin/controller/system/SysMenuController.java b/like-admin/src/main/java/com/hxkj/admin/controller/system/SysMenuController.java index 075c255d..688aa690 100644 --- a/like-admin/src/main/java/com/hxkj/admin/controller/system/SysMenuController.java +++ b/like-admin/src/main/java/com/hxkj/admin/controller/system/SysMenuController.java @@ -3,6 +3,7 @@ package com.hxkj.admin.controller.system; import com.alibaba.fastjson.JSONArray; import com.hxkj.admin.service.ISysMenuService; import com.hxkj.admin.validate.SysMenuParam; +import com.hxkj.admin.vo.system.SysMenuVo; import com.hxkj.common.core.AjaxResult; import com.hxkj.common.entity.system.SysMenu; import com.hxkj.common.validator.annotation.IDMust; @@ -38,8 +39,8 @@ public class SysMenuController { */ @GetMapping("/detail") public Object detail(@Validated @IDMust() @RequestParam("id") Integer id) { - SysMenu sysMenu = iSysMenuService.detail(id); - return AjaxResult.success(sysMenu); + SysMenuVo vo = iSysMenuService.detail(id); + return AjaxResult.success(vo); } /** diff --git a/like-admin/src/main/java/com/hxkj/admin/controller/system/SysRoleController.java b/like-admin/src/main/java/com/hxkj/admin/controller/system/SysRoleController.java index 8e42d842..d40ff3c7 100644 --- a/like-admin/src/main/java/com/hxkj/admin/controller/system/SysRoleController.java +++ b/like-admin/src/main/java/com/hxkj/admin/controller/system/SysRoleController.java @@ -3,7 +3,7 @@ package com.hxkj.admin.controller.system; import com.hxkj.admin.service.ISysRoleService; import com.hxkj.admin.validate.PageParam; import com.hxkj.admin.validate.SysRoleParam; -import com.hxkj.admin.vo.system.SysRoleListVo; +import com.hxkj.admin.vo.system.SysRoleVo; import com.hxkj.common.core.AjaxResult; import com.hxkj.common.core.PageResult; import com.hxkj.common.validator.annotation.IDMust; @@ -28,7 +28,7 @@ public class SysRoleController { */ @GetMapping("/lists") public Object lists(@Validated PageParam pageParam) { - PageResult lists = iSysRoleService.lists(pageParam); + PageResult lists = iSysRoleService.lists(pageParam); return AjaxResult.success(lists); } diff --git a/like-admin/src/main/java/com/hxkj/admin/service/ISysAdminService.java b/like-admin/src/main/java/com/hxkj/admin/service/ISysAdminService.java index 03e7b842..9424d88d 100644 --- a/like-admin/src/main/java/com/hxkj/admin/service/ISysAdminService.java +++ b/like-admin/src/main/java/com/hxkj/admin/service/ISysAdminService.java @@ -2,8 +2,7 @@ package com.hxkj.admin.service; import com.hxkj.admin.validate.PageParam; import com.hxkj.admin.validate.SysAdminParam; -import com.hxkj.admin.vo.system.SysAdminDetailVo; -import com.hxkj.admin.vo.system.SysAdminListVo; +import com.hxkj.admin.vo.system.SysAdminVo; import com.hxkj.common.basics.BaseService; import com.hxkj.common.core.PageResult; import com.hxkj.common.entity.system.SysAdmin; @@ -31,7 +30,7 @@ public interface ISysAdminService extends BaseService { * @param pageParam 分页参数 * @return PageResult */ - PageResult lists(PageParam pageParam, Map params); + PageResult lists(PageParam pageParam, Map params); /** * 管理员详情 @@ -40,7 +39,7 @@ public interface ISysAdminService extends BaseService { * @param id 主键参数 * @return SysAdmin */ - SysAdminDetailVo detail(Integer id); + SysAdminVo detail(Integer id); /** * 新增管理员 diff --git a/like-admin/src/main/java/com/hxkj/admin/service/ISysMenuService.java b/like-admin/src/main/java/com/hxkj/admin/service/ISysMenuService.java index 797278ec..60faf649 100644 --- a/like-admin/src/main/java/com/hxkj/admin/service/ISysMenuService.java +++ b/like-admin/src/main/java/com/hxkj/admin/service/ISysMenuService.java @@ -2,6 +2,7 @@ package com.hxkj.admin.service; import com.alibaba.fastjson.JSONArray; import com.hxkj.admin.validate.SysMenuParam; +import com.hxkj.admin.vo.system.SysMenuVo; import com.hxkj.common.basics.BaseService; import com.hxkj.common.entity.system.SysMenu; @@ -24,7 +25,7 @@ public interface ISysMenuService extends BaseService { * @param id 主键 * @return SysMenu */ - SysMenu detail(Integer id); + SysMenuVo detail(Integer id); /** * 新增菜单 diff --git a/like-admin/src/main/java/com/hxkj/admin/service/ISysRoleService.java b/like-admin/src/main/java/com/hxkj/admin/service/ISysRoleService.java index ea13fde5..65973a88 100644 --- a/like-admin/src/main/java/com/hxkj/admin/service/ISysRoleService.java +++ b/like-admin/src/main/java/com/hxkj/admin/service/ISysRoleService.java @@ -2,7 +2,7 @@ package com.hxkj.admin.service; import com.hxkj.admin.validate.PageParam; import com.hxkj.admin.validate.SysRoleParam; -import com.hxkj.admin.vo.system.SysRoleListVo; +import com.hxkj.admin.vo.system.SysRoleVo; import com.hxkj.common.basics.BaseService; import com.hxkj.common.core.PageResult; import com.hxkj.common.entity.system.SysRole; @@ -27,7 +27,7 @@ public interface ISysRoleService extends BaseService { * @param pageParam 参数 * @return PageResult */ - PageResult lists(@Validated PageParam pageParam); + PageResult lists(@Validated PageParam pageParam); /** * 角色详情 diff --git a/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysAdminServiceImpl.java b/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysAdminServiceImpl.java index 82f6ef6f..23fd9c6e 100644 --- a/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysAdminServiceImpl.java +++ b/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysAdminServiceImpl.java @@ -11,8 +11,7 @@ import com.hxkj.admin.service.ISysAdminService; import com.hxkj.admin.service.ISysRoleService; import com.hxkj.admin.validate.PageParam; import com.hxkj.admin.validate.SysAdminParam; -import com.hxkj.admin.vo.system.SysAdminDetailVo; -import com.hxkj.admin.vo.system.SysAdminListVo; +import com.hxkj.admin.vo.system.SysAdminVo; import com.hxkj.common.core.PageResult; import com.hxkj.common.entity.system.SysAdmin; import com.hxkj.common.mapper.system.SysAdminMapper; @@ -54,7 +53,7 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl */ @Override - public PageResult lists(PageParam pageParam, Map params) { + public PageResult lists(PageParam pageParam, Map params) { Integer page = pageParam.getPageNo(); Integer limit = pageParam.getPageSize(); @@ -75,11 +74,12 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl iPage = this.page(new Page<>(page, limit), queryWrapper); - List adminVoArrayList = new ArrayList<>(); + List adminVoArrayList = new ArrayList<>(); for (SysAdmin sysAdmin : iPage.getRecords()) { - SysAdminListVo vo = new SysAdminListVo(); + SysAdminVo vo = new SysAdminVo(); BeanUtils.copyProperties(sysAdmin, vo); + vo.setAvatar(UrlUtil.toAbsoluteUrl(sysAdmin.getAvatar())); vo.setRole(iSysRoleService.getRoleNameById(sysAdmin.getRole())); vo.setCreateTime(TimeUtil.timestampToDate(sysAdmin.getCreateTime())); vo.setUpdateTime(TimeUtil.timestampToDate(sysAdmin.getUpdateTime())); @@ -98,7 +98,7 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl() .select(SysAdmin.class, info-> !info.getColumn().equals("salt") && @@ -111,10 +111,14 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl() + .select(field) + .eq("id", sysAdminParam.getId()) + .eq("is_delete", 0) + .last("limit 1")), "账号不存在了!"); + Assert.isNull(this.getOne(new QueryWrapper() .select(field) .eq("is_delete", 0) @@ -181,22 +193,27 @@ public class ISysAdminServiceImpl extends MPJBaseServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.select(SysMenu.class, info-> - !info.getColumn().equals("salt") && - !info.getColumn().equals("is_delete") && - !info.getColumn().equals("delete_time")) - .orderByDesc(Arrays.asList("menu_sort", "id")); + queryWrapper.orderByDesc(Arrays.asList("menu_sort", "id")); List sysMenus = this.list( queryWrapper); - List lists = new ArrayList<>(); + List lists = new ArrayList<>(); for (SysMenu sysMenu : sysMenus) { - SysMenuListVo vo = new SysMenuListVo(); + SysMenuVo vo = new SysMenuVo(); BeanUtils.copyProperties(sysMenu, vo); vo.setCreateTime(TimeUtil.timestampToDate(sysMenu.getCreateTime())); @@ -60,10 +58,16 @@ public class ISysMenuServiceImpl extends MPJBaseServiceImpl().eq("id", id)); - Assert.notNull(model, "菜单已不存在!"); - return model; + public SysMenuVo detail(Integer id) { + SysMenu sysMenu = this.getOne(new QueryWrapper().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; } /** @@ -107,6 +111,8 @@ public class ISysMenuServiceImpl extends MPJBaseServiceImpl().eq("id", id)); Assert.notNull(model, "菜单已不存在!"); + this.removeById(id); + + RedisUtil.del(SystemConfig.backstageRolesKey); } } diff --git a/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleMenuServiceImpl.java b/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleMenuServiceImpl.java index 90d06bc5..a1a81144 100644 --- a/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleMenuServiceImpl.java +++ b/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleMenuServiceImpl.java @@ -3,10 +3,10 @@ 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.SysMenuMapper; import com.hxkj.common.mapper.system.SysRoleMenuMapper; import com.hxkj.common.utils.RedisUtil; import com.hxkj.common.utils.ToolsUtil; @@ -21,7 +21,7 @@ import java.util.List; public class ISysRoleMenuServiceImpl extends MPJBaseServiceImpl implements ISysRoleMenuService { @Resource - SysMenuMapper sysMenuMapper; + ISysMenuService iSysMenuService; /** * 批量写入角色菜单 @@ -73,7 +73,7 @@ public class ISysRoleMenuServiceImpl extends MPJBaseServiceImpl 0) { - List sysMenus = sysMenuMapper.selectList(new QueryWrapper() + List sysMenus = iSysMenuService.list(new QueryWrapper() .select("id,perms") .in("id", menuIds) .eq("is_disable", 0)); diff --git a/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleServiceImpl.java b/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleServiceImpl.java index 34f9a39a..518317c0 100644 --- a/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleServiceImpl.java +++ b/like-admin/src/main/java/com/hxkj/admin/service/impl/ISysRoleServiceImpl.java @@ -6,12 +6,14 @@ import com.baomidou.mybatisplus.core.toolkit.Assert; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.base.MPJBaseServiceImpl; import com.hxkj.admin.config.SystemConfig; +import com.hxkj.admin.service.ISysAdminService; import com.hxkj.admin.service.ISysRoleMenuService; import com.hxkj.admin.service.ISysRoleService; import com.hxkj.admin.validate.PageParam; import com.hxkj.admin.validate.SysRoleParam; -import com.hxkj.admin.vo.system.SysRoleListVo; +import com.hxkj.admin.vo.system.SysRoleVo; import com.hxkj.common.core.PageResult; +import com.hxkj.common.entity.system.SysAdmin; import com.hxkj.common.entity.system.SysRole; import com.hxkj.common.mapper.system.SysRoleMapper; import com.hxkj.common.utils.RedisUtil; @@ -29,6 +31,9 @@ import java.util.List; @Service public class ISysRoleServiceImpl extends MPJBaseServiceImpl implements ISysRoleService { + @Resource + ISysAdminService iSysAdminService; + @Resource ISysRoleMenuService iSysRoleMenuService; @@ -62,21 +67,18 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl */ @Override - public PageResult lists(@Validated PageParam pageParam) { + public PageResult lists(@Validated PageParam pageParam) { Integer page = pageParam.getPageNo(); Integer limit = pageParam.getPageSize(); QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select(SysRole.class, info-> - !info.getColumn().equals("is_delete") && - !info.getColumn().equals("delete_time")) - .orderByDesc(Arrays.asList("sort", "id")); + queryWrapper.orderByDesc(Arrays.asList("sort", "id")); IPage iPage = this.page(new Page<>(page, limit), queryWrapper); - List roleVoArrayList = new ArrayList<>(); + List roleVoArrayList = new ArrayList<>(); for (SysRole sysRole : iPage.getRecords()) { - SysRoleListVo vo = new SysRoleListVo(); + SysRoleVo vo = new SysRoleVo(); BeanUtils.copyProperties(sysRole, vo); vo.setCreateTime(TimeUtil.timestampToDate(sysRole.getCreateTime())); @@ -158,11 +160,9 @@ public class ISysRoleServiceImpl extends MPJBaseServiceImpl() - .select("id,name") + .select("id", "name") .eq("id", id) .last("limit 1")), "角色已不存在!"); + Assert.isNull(iSysAdminService.getOne(new QueryWrapper() + .select("id", "role", "nickname") + .eq("role", id) + .eq("is_delete", 0)), + "角色已被管理员使用,请先移除"); + this.removeById(id); - RedisUtil.hDel(SystemConfig.backstageRolesKey, String.valueOf(id)); iSysRoleMenuService.batchDeleteByRoleId(id); + RedisUtil.hDel(SystemConfig.backstageRolesKey, id); } } diff --git a/like-admin/src/main/java/com/hxkj/admin/validate/SysAdminParam.java b/like-admin/src/main/java/com/hxkj/admin/validate/SysAdminParam.java index 0bcef127..2e79a039 100644 --- a/like-admin/src/main/java/com/hxkj/admin/validate/SysAdminParam.java +++ b/like-admin/src/main/java/com/hxkj/admin/validate/SysAdminParam.java @@ -39,7 +39,7 @@ public class SysAdminParam implements Serializable { @Length(min = 2, max = 30, message = "昵称必须在2~30个字符内", groups = {create.class, update.class}) private String nickname; - @NotEmpty(message = "密码不能为空", groups = {create.class, update.class}) + @NotEmpty(message = "密码不能为空", groups = {create.class}) @Length(min = 6, max = 18, message = "密码必须在6~18个字符内", groups = {create.class, update.class}) private String password; diff --git a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminDetailVo.java b/like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminDetailVo.java deleted file mode 100644 index d809dd59..00000000 --- a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminDetailVo.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hxkj.admin.vo.system; - -import lombok.Data; - -import java.io.Serializable; - -@Data -public class SysAdminDetailVo implements Serializable { - - private static final long serialVersionUID = 1L; - - private Integer id; - private String username; - private String nickname; - private String avatar; - private Integer role; - private Integer isDisable; - -} diff --git a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminListVo.java b/like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminVo.java similarity index 89% rename from like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminListVo.java rename to like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminVo.java index 41f398bc..25e9cf25 100644 --- a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminListVo.java +++ b/like-admin/src/main/java/com/hxkj/admin/vo/system/SysAdminVo.java @@ -5,7 +5,7 @@ import lombok.Data; import java.io.Serializable; @Data -public class SysAdminListVo implements Serializable { +public class SysAdminVo implements Serializable { private static final long serialVersionUID = 1L; diff --git a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysMenuListVo.java b/like-admin/src/main/java/com/hxkj/admin/vo/system/SysMenuVo.java similarity index 66% rename from like-admin/src/main/java/com/hxkj/admin/vo/system/SysMenuListVo.java rename to like-admin/src/main/java/com/hxkj/admin/vo/system/SysMenuVo.java index dd51464a..e24d72e9 100644 --- a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysMenuListVo.java +++ b/like-admin/src/main/java/com/hxkj/admin/vo/system/SysMenuVo.java @@ -2,8 +2,12 @@ package com.hxkj.admin.vo.system; import lombok.Data; +import java.io.Serializable; + @Data -public class SysMenuListVo { +public class SysMenuVo implements Serializable { + + private static final long serialVersionUID = 1L; private Integer id; private Integer pid; @@ -12,7 +16,7 @@ public class SysMenuListVo { private String menuIcon; private Integer menuSort; private String perms; - private Boolean isDisable; + private Integer isDisable; private String createTime; private String updateTime; diff --git a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysRoleListVo.java b/like-admin/src/main/java/com/hxkj/admin/vo/system/SysRoleVo.java similarity index 58% rename from like-admin/src/main/java/com/hxkj/admin/vo/system/SysRoleListVo.java rename to like-admin/src/main/java/com/hxkj/admin/vo/system/SysRoleVo.java index 89b58b2c..3cb758de 100644 --- a/like-admin/src/main/java/com/hxkj/admin/vo/system/SysRoleListVo.java +++ b/like-admin/src/main/java/com/hxkj/admin/vo/system/SysRoleVo.java @@ -2,21 +2,19 @@ package com.hxkj.admin.vo.system; import lombok.Data; +import java.io.Serializable; + @Data -public class SysRoleListVo { +public class SysRoleVo implements Serializable { + + private static final long serialVersionUID = 1L; private Integer id; - private String name; - private String remark; - private Integer sort; - - private Boolean isDisable; - + private Integer isDisable; private String createTime; - private String updateTime; } diff --git a/like-common/src/main/java/com/hxkj/common/config/ThreadPoolConfig.java b/like-common/src/main/java/com/hxkj/common/config/ThreadPoolConfig.java new file mode 100644 index 00000000..eff4ed87 --- /dev/null +++ b/like-common/src/main/java/com/hxkj/common/config/ThreadPoolConfig.java @@ -0,0 +1,38 @@ +package com.hxkj.common.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableAsync; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.util.concurrent.Executor; + +/** + * 异步线程池配置 + */ +@Configuration +@EnableAsync +public class ThreadPoolConfig { + + @Bean("taskExecutor") + public Executor asyncServiceExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + // 设置核心线程数 + executor.setCorePoolSize(5); + // 设置最大线程数 + executor.setMaxPoolSize(20); + // 配置队列大小 + executor.setQueueCapacity(Integer.MAX_VALUE); + // 设置线程活跃时间(秒) + executor.setKeepAliveSeconds(60); + // 设置默认线程名称 + executor.setThreadNamePrefix("LIKE"); + // 等待所有任务结束后再关闭线程 + executor.setWaitForTasksToCompleteOnShutdown(true); + // 执行初始化 + executor.initialize(); + // 返回构建对象 + return executor; + } + +} diff --git a/like-common/src/main/java/com/hxkj/common/entity/system/SysRoleMenu.java b/like-common/src/main/java/com/hxkj/common/entity/system/SysRoleMenu.java index 81384843..b6fe0b3d 100644 --- a/like-common/src/main/java/com/hxkj/common/entity/system/SysRoleMenu.java +++ b/like-common/src/main/java/com/hxkj/common/entity/system/SysRoleMenu.java @@ -1,5 +1,7 @@ package com.hxkj.common.entity.system; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; @@ -16,6 +18,8 @@ public class SysRoleMenu implements Serializable { private static final long serialVersionUID = 1L; + @TableId(type = IdType.NONE) + private Integer id; private Integer roleId; private Integer menuId; diff --git a/like-common/src/main/java/com/hxkj/common/utils/SpringUtil.java b/like-common/src/main/java/com/hxkj/common/utils/SpringUtil.java index eacc1566..fdbdbb26 100644 --- a/like-common/src/main/java/com/hxkj/common/utils/SpringUtil.java +++ b/like-common/src/main/java/com/hxkj/common/utils/SpringUtil.java @@ -1,4 +1,70 @@ package com.hxkj.common.utils; -public class SpringUtil { +import org.springframework.beans.BeansException; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.stereotype.Component; + +@Component +public class SpringUtil implements ApplicationContextAware { + + private static ApplicationContext applicationContext; + + /** + * 设置容器对象 + * + * @author fzr + * @param applicationContext applicationContext + */ + @Override + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { + if(SpringUtil.applicationContext == null) { + SpringUtil.applicationContext = applicationContext; + } + } + + /** + * 获取applicationContext + * + * @author fzr + * @return ApplicationContext + */ + public static ApplicationContext getApplicationContext(){ + return applicationContext; + } + + /** + * 通过name获取Bean + * + * @author fzr + * @param name 名称 + * @return Object + */ + public static Object getBean(String name){ + return getApplicationContext().getBean(name); + } + + /** + * 通过class获取Bean. + * + * @author fzr + * @param clazz 类 + * @return + */ + public static T getBean(Class clazz){ + return getApplicationContext().getBean(clazz); + } + + /** + * 通过name和Clazz返回指定的Bean + * + * @author fzr + * @param name 名称 + * @param clazz 类 + * @return + */ + public static T getBean(String name, Class clazz){ + return getApplicationContext().getBean(name, clazz); + } + }