From e5dc84e412ddd9c38582736b0e5ed66dffc54b48 Mon Sep 17 00:00:00 2001 From: wangpengfei <1928057482@qq.com> Date: Thu, 1 Aug 2024 08:41:08 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8F=9C=E5=8D=95=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yxt/portal/apiadmin/SysFunctionRest.java | 218 ----------- .../com/yxt/portal/apiadmin/SysMenuRest.java | 7 + .../portal/biz/sysfunction/SysFunction.java | 54 --- .../biz/sysfunction/SysFunctionDto.java | 54 --- .../biz/sysfunction/SysFunctionMapper.java | 74 ---- .../biz/sysfunction/SysFunctionMapper.xml | 103 ------ .../biz/sysfunction/SysFunctionQuery.java | 53 --- .../biz/sysfunction/SysFunctionService.java | 344 ------------------ .../biz/sysfunction/SysFunctionTreeVo.java | 50 --- .../portal/biz/sysfunction/SysFunctionVo.java | 59 --- .../ButtonPermissionQuery.java | 5 +- .../ButtonPermissionVo.java | 2 +- .../yxt/portal/biz/sysmenu/SysMenuMapper.java | 1 + .../yxt/portal/biz/sysmenu/SysMenuMapper.xml | 27 +- .../portal/biz/sysmenu/SysMenuService.java | 14 + .../yxt/portal/biz/sysrole/SysRoleMapper.java | 3 + .../portal/biz/sysrole/SysRoleService.java | 3 + .../portal/biz/syssource/SysSourceMapper.java | 2 - .../portal/biz/syssource/SysSourceMapper.xml | 6 +- .../biz/syssource/SysSourceService.java | 5 +- 20 files changed, 61 insertions(+), 1023 deletions(-) delete mode 100644 src/main/java/com/yxt/portal/apiadmin/SysFunctionRest.java delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunction.java delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionDto.java delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.java delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.xml delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionQuery.java delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionService.java delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionTreeVo.java delete mode 100644 src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionVo.java rename src/main/java/com/yxt/portal/biz/{sysfunction => sysmenu}/ButtonPermissionQuery.java (83%) rename src/main/java/com/yxt/portal/biz/{sysfunction => sysmenu}/ButtonPermissionVo.java (88%) diff --git a/src/main/java/com/yxt/portal/apiadmin/SysFunctionRest.java b/src/main/java/com/yxt/portal/apiadmin/SysFunctionRest.java deleted file mode 100644 index 243aa8f..0000000 --- a/src/main/java/com/yxt/portal/apiadmin/SysFunctionRest.java +++ /dev/null @@ -1,218 +0,0 @@ -package com.yxt.portal.apiadmin; - -import cn.hutool.core.bean.BeanUtil; -import com.yxt.portal.biz.sysfunction.*; -import com.yxt.portal.biz.syssource.SysSource; -import com.yxt.portal.biz.syssource.SysSourceVo; -//import com.yxt.user.biz.syssourcefunction.SysSourceFunction; -import com.yxt.portal.biz.syssource.SysSourceService; -//import com.yxt.user.biz.syssourcefunction.SysSourceFunctionService; -import com.yxt.common.base.utils.StringUtils; -import com.yxt.common.core.query.PagerQuery; -import com.yxt.common.core.result.ResultBean; -import com.yxt.common.core.vo.PagerVo; -import io.swagger.annotations.Api; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; -import java.util.Map; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunctionFeignFallback.java
- * Class: com.yxt.user.biz.sysfunction.SysFunctionRest
- * Description: 功能.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@Api(tags = "功能") -@RestController -@RequestMapping("apiadmin/sysfunction") -public class SysFunctionRest { - - @Autowired - private SysFunctionService sysFunctionService; - @Autowired - private SysSourceService sysSourceService; -// @Autowired -// private SysSourceFunctionService sysSourceFunctionService; - - - public ResultBean> listPage(@RequestBody PagerQuery pq) { - ResultBean rb = ResultBean.fireFail(); - PagerVo pv = sysFunctionService.listPageVo(pq); - return rb.success().setData(pv); - } - - - public ResultBean> listAll(@RequestBody SysFunctionQuery query) { - ResultBean rb = ResultBean.fireFail(); - List list = sysFunctionService.listAllVo(query); - return rb.success().setData(list); - } - - - public ResultBean> listAllByRoleSid(SysFunctionQuery query) { - ResultBean rb = ResultBean.fireFail(); - List list = sysFunctionService.listAllByRoleSid(query); - return rb.success().setData(list); - } - - - public ResultBean> listAllVoForSource(@RequestBody SysFunctionQuery query) { - ResultBean rb = ResultBean.fireFail(); - List list = sysFunctionService.listAllVoForSource(query); - return rb.success().setData(list); - } - - - public ResultBean> list() { - ResultBean rb = ResultBean.fireFail(); - List list = sysFunctionService.listVo(); - return rb.success().setData(list); - } - - - public ResultBean save(SysFunctionDto dto) { - ResultBean rb = ResultBean.fireFail(); - String sourceSid = dto.getSourceSid(); - if (StringUtils.isBlank(sourceSid)) { - return ResultBean.fireFail().setMessage("资源不能为空"); - } else { - SysSourceVo sysSourceVo = sysSourceService.fetchBySidVo(sourceSid); - if (sysSourceVo.getSid() == null) { - return ResultBean.fireFail().setMessage("资源不存在"); - } - } - String pSid = dto.getParentSid(); - if (StringUtils.isBlank(pSid)) { - return ResultBean.fireFail().setMessage("菜单父级sid不能为空"); - } else { - if (!"0".equals(pSid)) { - SysFunction sysFunction = sysFunctionService.fetchBySid(pSid); - if (StringUtils.isBlank(sysFunction.getSid())) { - return ResultBean.fireFail().setMessage("菜单父级不存在!"); - } - } - } - sysFunctionService.saveOrUpdateDto(dto); - return rb.success(); - } - - - public ResultBean update(SysFunctionDto dto, String sid) { - SysFunction sysFunction = sysFunctionService.fetchBySid(sid); - if (sysFunction.getSid() == null) { - return ResultBean.fireFail().setMessage("功能不存在!"); - } - ResultBean rb = ResultBean.fireFail(); - sysFunctionService.updateBySid(dto.toMap(), sid); -// SysSourceFunction sysSourceFunction1 = sysSourceFunctionService.fetchByFunctionSid(sid); -// sysSourceFunctionService.delByFunctionSid(sid); -// SysSourceFunction sysSourceFunction = new SysSourceFunction(); -// sysSourceFunction.setFunctionRootSid(sysSourceFunction1.getFunctionRootSid()); -// sysSourceFunction.setFunctionSid(sid); -// sysSourceFunction.setSourceSid(dto.getSourceSid()); -// sysSourceFunctionService.insert(sysSourceFunction); - return rb.success(); - } - - - public ResultBean updateIsEnable(String sid, Integer isEnable) { - ResultBean rb = ResultBean.fireFail(); - SysFunction sysFunction = sysFunctionService.fetchBySid(sid); - if (sysFunction == null) { - //查询资源是否存在 - SysSource sysSource = sysSourceService.fetchBySid(sid); - if (sysSource == null) { - return ResultBean.fireFail().setMessage("功能不存在!"); - } else { - //将该资源下的所有功能关闭 -// List sids = sysSourceFunctionService.selectBySourceSid(sid); -// if (sids.size() != 0) { -// sysFunctionService.updateBySourceSid(isEnable, sids); -// } - - } - } else { - sysFunction.setIsEnable(isEnable); - sysFunctionService.updateById(sysFunction); - } - - return rb.success(); - } - - - public ResultBean del(String ids) { - ResultBean rb = ResultBean.fireFail(); - sysFunctionService.delByIds(ids); - return rb.success(); - } - - - public ResultBean delBySids(String sids) { - ResultBean rb = ResultBean.fireFail(); - String[] sidsArr = sids.split(","); -// for (String functionSid : sidsArr) { -// sysSourceFunctionService.delByFunctionSid(functionSid); -// } - sysFunctionService.delBySids(sidsArr); - return rb.success(); - } - - - public ResultBean fetch(String id) { - ResultBean rb = ResultBean.fireFail(); - SysFunctionVo vo = sysFunctionService.fetchByIdVo(id); - return rb.success().setData(vo); - } - - - public ResultBean fetchBySid(String sid) { - ResultBean rb = ResultBean.fireFail(); - SysFunction entity = sysFunctionService.fetchBySid(sid); - SysFunctionVo vo = new SysFunctionVo(); - BeanUtil.copyProperties(entity, vo); -// SysSourceFunction sysSourceFunction = sysSourceFunctionService.fetchByFunctionSid(sid); -// vo.setSourceSid(sysSourceFunction.getSourceSid()); - if ("0".equals(entity.getParentSid())) { - vo.setParentSid("0"); - vo.setParentName("顶级功能"); - } else { - SysFunction sysFunction = sysFunctionService.fetchBySid(entity.getParentSid()); - vo.setParentSid(sysFunction.getSid()); - vo.setParentName(sysFunction.getName()); - } - return rb.success().setData(vo); - } - - - public ResultBean>> getFunctionAuthorization(String roleSid) { - ResultBean rb = ResultBean.fireFail(); - List> list=sysFunctionService.getFunctionAuthorization(roleSid); - return rb.success().setData(list); - } - - - public ResultBean>> getFunctionAuthorizationApp(String roleSid) { - ResultBean rb = ResultBean.fireFail(); - List> list=sysFunctionService.getFunctionAuthorizationApp(roleSid); - return rb.success().setData(list); - } - - - public ResultBean> getButtonPermissions(ButtonPermissionQuery query) { - ResultBean> rb = ResultBean.fireFail(); - return rb.success().setData(sysFunctionService.getButtonPermissions(query)); - } - //getFunctionAuthorization(){ - // } -} diff --git a/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java b/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java index 798381a..95c02c3 100644 --- a/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java +++ b/src/main/java/com/yxt/portal/apiadmin/SysMenuRest.java @@ -375,4 +375,11 @@ public class SysMenuRest { BeanUtil.copyProperties(sysMenu, vo); return rb.success().setData(vo); }*/ + + @ApiOperation("查询按钮的权限") + @PostMapping("/getButtonPermissions") + public ResultBean> getButtonPermissions(@RequestBody ButtonPermissionQuery query){ + ResultBean> rb = ResultBean.fireFail(); + return rb.success().setData(sysMenuService.getButtonPermissions(query)); + } } diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunction.java b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunction.java deleted file mode 100644 index c3a49e7..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunction.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.yxt.portal.biz.sysfunction; - -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.yxt.common.core.domain.BaseEntity; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunction.java
- * Class: com.yxt.anrui.portal.api.sysfunction.SysFunction
- * Description: 功能.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@ApiModel(value = "功能", description = "功能") -@TableName("sys_function") -@Data -public class SysFunction extends BaseEntity { - private static final long serialVersionUID = 1L; - - - @ApiModelProperty("功能名称") - private String name; - - @ApiModelProperty("层级") - private Integer level; - - @ApiModelProperty("父级sid") - private String parentSid; - - @ApiModelProperty("接口地址") - private String actionUrl; - - @ApiModelProperty("模块名称") - private String controllerName; - - @ApiModelProperty("移动端按钮id") - private String funId; - - @ApiModelProperty("前端控制按钮的id") - @JsonProperty("cId") - private String cId; - - @ApiModelProperty("是否手机端权限0否,1是") - private String phoneFunction; -} diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionDto.java b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionDto.java deleted file mode 100644 index 655e5f4..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionDto.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.yxt.portal.biz.sysfunction; - - -import com.fasterxml.jackson.annotation.JsonProperty; -import com.yxt.common.core.dto.Dto; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunctionDto.java
- * Class: com.yxt.anrui.portal.api.sysfunction.SysFunctionDto
- * Description: 功能 数据传输对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@ApiModel(value = "功能 数据传输对象", description = "功能 数据传输对象") -@Data -public class SysFunctionDto implements Dto { - - - @ApiModelProperty("功能名称") - private String name; - - @ApiModelProperty("层级") - private Integer level; - - @ApiModelProperty("父级sid") - private String parentSid; - - @ApiModelProperty("接口地址") - private String actionUrl; - - @ApiModelProperty("模块名称") - private String controllerName; - @ApiModelProperty("模块sid") - private String sourceSid; - - @ApiModelProperty("移动端按钮id") - private String funId; - @ApiModelProperty("前端控制按钮的id") - @JsonProperty("cId") - private String cId; - @ApiModelProperty("是否手机端权限0否,1是") - private String phoneFunction; - @ApiModelProperty("备注") - private String remarks ; -} \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.java b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.java deleted file mode 100644 index 02123e1..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.yxt.portal.biz.sysfunction; - -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Constants; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; -import org.apache.ibatis.annotations.Select; - -import java.util.List; -import java.util.Map; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunctionMapper.java
- * Class: com.yxt.anrui.portal.biz.sysfunction.SysFunctionMapper
- * Description: 功能.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@Mapper -public interface SysFunctionMapper extends BaseMapper { - - //@Update("update sys_function set name=#{msg} where id=#{id}") - //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); - - IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); - - List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); - - @Select("select * from sys_function") - List selectListVo(); - - List listAllParentByRoleSid(String roleSid, String sid); - - List getChildrensForFunctionTree(@Param(Constants.WRAPPER) QueryWrapper qw); - - List selectChildernList(String sid); - - int updateBySourceSid(@Param("isEnable") Integer isEnable, @Param("list") List list); - - /** - * 该资源下的功能是否可用 状态为1的功能 - * - * @param isEnable 是否可用,1可用,0不可用 - * @param sourceSid 资源sid - * @return - */ - int selectBySourceSid(@Param("isEnable") int isEnable, @Param("sourceSid") String sourceSid); - - List getButtonPermissions(@Param("query") ButtonPermissionQuery query); - - List> getSourceAuthorization(@Param("roleSid") String roleSid); - - @Select("SELECT sm.name,sm.sid,sm.pageUrl FROM sys_menu sm LEFT JOIN sys_source_menu ssm ON sm.sid=ssm.menuSid where ssm.sourceSid=#{sourceSid}") - List> getMenuAuthorization(@Param("sourceSid") String sourceSid); - - @Select("SELECT sf.name,sf.sid FROM sys_function sf WHERE sf.actionUrl= #{pageUrl}") - List> getFunctionAuthorization(@Param("pageUrl") String pageUrl); - - @Select("SELECT sf.name,sf.sid,IF(IFNULL(srf.id,0)<=0,1,0) checked FROM sys_function sf " + - " LEFT JOIN sys_role_function srf ON srf.functionSid=sf.sid " + - " WHERE sf.actionUrl= #{pageUrl} AND srf.roleSid = #{roleSid} ") - List> getFunctionByRoleSid(@Param("pageUrl") String pageUrl, @Param("roleSid") String roleSid); - - List> getSourceAuthorizationApp(@Param("roleSid") String roleSid); -} \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.xml b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.xml deleted file mode 100644 index 8ff500b..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionMapper.xml +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - - - - - - - - - - UPDATE sys_function - SET isEnable = #{isEnable} WHERE sid IN - - #{item} - - - - - - - - - - \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionQuery.java b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionQuery.java deleted file mode 100644 index d7ab88b..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionQuery.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.yxt.portal.biz.sysfunction; - - -import com.fasterxml.jackson.annotation.JsonProperty; -import com.yxt.common.core.query.Query; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunctionQuery.java
- * Class: com.yxt.anrui.portal.api.sysfunction.SysFunctionQuery
- * Description: 功能 查询条件.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@ApiModel(value = "功能 查询条件", description = "功能 查询条件") -@Data -public class SysFunctionQuery implements Query { - - - @ApiModelProperty("功能名称") - private String name; - - @ApiModelProperty("层级") - private Integer level; - - @ApiModelProperty("父级sid") - private String parentSid; - @ApiModelProperty("角色sid") - private String roleSid; - - @ApiModelProperty("接口地址") - private String actionUrl; - - @ApiModelProperty("模块名称") - private String controllerName; - - @ApiModelProperty("移动端按钮id") - private String funId; - @ApiModelProperty("前端控制按钮的id") - @JsonProperty("cId") - private String cId; - - @ApiModelProperty("是否手机端权限0否,1是") - private String phoneFunction; -} diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionService.java b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionService.java deleted file mode 100644 index 71178e3..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionService.java +++ /dev/null @@ -1,344 +0,0 @@ -package com.yxt.portal.biz.sysfunction; - -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.yxt.portal.biz.syssource.SysSourceService; -import com.yxt.common.base.service.MybatisBaseService; -import com.yxt.common.base.utils.PagerUtil; -import com.yxt.common.core.query.PagerQuery; -import com.yxt.common.core.vo.PagerVo; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunctionService.java
- * Class: com.yxt.user.biz.sysfunction.SysFunctionService
- * Description: 功能 业务逻辑.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@Service -public class SysFunctionService extends MybatisBaseService { - @Autowired - private SysSourceService sysSourceService; -// @Autowired -// private SysSourceFunctionService sysSourceFunctionService; - - public PagerVo listPage(PagerQuery pq) { - SysFunctionQuery query = pq.getParams(); - QueryWrapper qw = createQueryWrapper(query); - IPage page = PagerUtil.queryToPage(pq); - IPage pagging = baseMapper.selectPage(page, qw); - PagerVo p = PagerUtil.pageToVo(pagging, null); - return p; - } - - public List listAll(SysFunctionQuery query) { - QueryWrapper qw = createQueryWrapper(query); - return baseMapper.selectList(qw); - } - - private QueryWrapper createQueryWrapper(SysFunctionQuery query) { - // todo: 这里根据具体业务调整查询条件 - // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); - QueryWrapper qw = new QueryWrapper<>(); - - - if (StringUtils.isNotBlank(query.getName())) { - qw.eq("name", query.getName()); - } - - if (query.getLevel() != null) { - qw.eq("level", query.getLevel()); - } - - if (StringUtils.isNotBlank(query.getParentSid())) { - qw.eq("parentSid", query.getParentSid()); - } - - if (StringUtils.isNotBlank(query.getActionUrl())) { - qw.eq("actionUrl", query.getActionUrl()); - } - - if (StringUtils.isNotBlank(query.getControllerName())) { - qw.eq("controllerName", query.getControllerName()); - } - - if (StringUtils.isNotBlank(query.getFunId())) { - qw.eq("funId", query.getFunId()); - } - - if (query.getPhoneFunction() != null) { - qw.eq("phoneFunction", query.getPhoneFunction()); - } - return qw; - } - - public PagerVo listPageVo(PagerQuery pq) { - SysFunctionQuery query = pq.getParams(); - QueryWrapper qw = createQueryWrapper(query); - IPage page = PagerUtil.queryToPage(pq); - IPage pagging = baseMapper.selectPageVo(page, qw); - PagerVo p = PagerUtil.pageToVo(pagging, null); - return p; - } - - public List listAllVo(SysFunctionQuery query) { - QueryWrapper qw = new QueryWrapper<>(); - qw.eq("func.parentSid", "0"); - List sysFunctionVos = baseMapper.selectListAllVo(qw); - for (SysFunctionVo s : sysFunctionVos) { - getChildrens(s); - } - return sysFunctionVos; - } - - private void getChildrens(SysFunctionVo s) { - String sid = s.getSid(); - QueryWrapper qw = new QueryWrapper<>(); - if (StringUtils.isNotBlank(sid)) { - qw.eq("func.parentSid", sid); - } - List sysFunctionVos = baseMapper.selectListAllVo(qw); - if (!sysFunctionVos.isEmpty()) { - for (SysFunctionVo sfv : sysFunctionVos) { - getChildrens(sfv); - } - } - s.setChildren(sysFunctionVos); - } - - public List listVo() { - return baseMapper.selectListVo(); - } - - public void saveOrUpdateDto(SysFunctionDto dto) { - SysFunction entity = new SysFunction(); - dto.fillEntity(entity); -// SysSourceFunction sysSourceFunction = new SysSourceFunction(); -// sysSourceFunction.setFunctionSid(entity.getSid()); -// sysSourceFunction.setSourceSid(dto.getSourceSid()); -// setRootSid(entity, sysSourceFunction); -// sysSourceFunctionService.save(sysSourceFunction); - this.saveOrUpdate(entity); - } - -// private void setRootSid(SysFunction entity, SysSourceFunction sysSourceFunction) { -// String pSid = entity.getParentSid(); -// if ("0".equals(pSid)) { -// sysSourceFunction.setFunctionRootSid(entity.getSid()); -// } else { -// SysFunction sysFunction = this.fetchBySid(pSid); -// String pSid1 = sysFunction.getParentSid(); -// if ("0".equals(pSid1)) { -// sysSourceFunction.setFunctionRootSid(sysFunction.getSid()); -// } -// setRootSid(sysFunction, sysSourceFunction); -// } -// } - - public SysFunctionVo fetchByIdVo(String id) { - SysFunction entity = this.fetchById(id); - SysFunctionVo vo = new SysFunctionVo(); - BeanUtil.copyProperties(entity, vo); - return vo; - } - - public List listAllByRoleSid(SysFunctionQuery query) { - List sysFunctionVos = baseMapper.listAllParentByRoleSid(query.getRoleSid(), "0"); - for (SysFunctionVo s : sysFunctionVos) { - getChildrensByRoleSid(s, query.getRoleSid()); - } - return sysFunctionVos; - } - - private void getChildrensByRoleSid(SysFunctionVo s, String roleSid) { - List sysFunctionVos = baseMapper.listAllParentByRoleSid(roleSid, s.getSid()); - if (!sysFunctionVos.isEmpty()) { - for (SysFunctionVo sfv : sysFunctionVos) { - getChildrensByRoleSid(sfv, roleSid); - } - } - s.setChildren(sysFunctionVos); - } - - public List listAllVoForSource(SysFunctionQuery query) { - String name = query.getName(); - List sysSourceVos = sysSourceService.listFunctionTreeVo(name); - for (SysFunctionTreeVo s : sysSourceVos) { -// List sysFunctionVoList = sysSourceFunctionService.fetchRootFunctionBySourceSid(s.getSourceSid()); -// for (SysFunctionTreeVo sysFunctionTreeVo : sysFunctionVoList) { -// if (StringUtils.isNotBlank(sysFunctionTreeVo.getRemarks())){ -// sysFunctionTreeVo.setName(sysFunctionTreeVo.getName() + "(" + sysFunctionTreeVo.getRemarks() + ")"); -// } -// } -// s.setChildren(sysFunctionVoList); - s.setIsSource("1"); - //判断该资源下的功能是否有可用的状态 - int isEnable = 1; - int count = baseMapper.selectBySourceSid(isEnable, s.getSourceSid()); - if (count == 0) { - s.setIsEnable("0"); - } else { - s.setIsEnable("1"); - } -// if (!sysFunctionVoList.isEmpty()) { -//// sysFunctionVoList = getChildrensForFunctionTree(sysFunctionVoList); -// getChildList(sysFunctionVoList); -// } - } - return sysSourceVos; - } - - public void getChildList(List list) { - list.forEach(str -> { - String sid = str.getSid(); - List listChildren = baseMapper.selectChildernList(sid); - str.setChildren(listChildren); - getChildList(listChildren); - }); - } - - private List getChildrensForFunctionTree(List sysFunctionVoList) { - List list = new ArrayList<>(); - for (SysFunctionTreeVo s : sysFunctionVoList) { - SysFunction sysFunction = fetchBySid(s.getFunctionRootSid()); - SysFunctionTreeVo sysFunctionTreeVo = new SysFunctionTreeVo(); - BeanUtil.copyProperties(sysFunction, sysFunctionTreeVo); - /*sysFunctionTreeVo.setParentName("顶级功能");*/ - list.add(sysFunctionTreeVo); - } - for (SysFunctionTreeVo s : list) { - getChildrensForFunctionTree(s, s.getSid()); - } - return list; - } - - private void getChildrensForFunctionTree(SysFunctionTreeVo s, String sid) { - QueryWrapper qw = new QueryWrapper<>(); - if (StringUtils.isNotBlank(sid)) { - qw.eq("func.parentSid", sid); - } - List sysMenuVos = baseMapper.getChildrensForFunctionTree(qw); - if (!sysMenuVos.isEmpty()) { - for (SysFunctionTreeVo smv : sysMenuVos) { - /*SysFunction sysFunction = fetchBySid(sid); - smv.setParentName(sysFunction.getName());*/ - getChildrensForFunctionTree(smv, smv.getSid()); - } - } - s.setChildren(sysMenuVos); - } - - public int updateBySourceSid(Integer isEnable, List sids) { - return baseMapper.updateBySourceSid(isEnable, sids); - } - - public List getButtonPermissions(ButtonPermissionQuery query) { - List buttonPermissions = baseMapper.getButtonPermissions(query); - return buttonPermissions; - } - - public List> getFunctionAuthorization(String roleSid) { - List> list = new ArrayList<>(); - List> lsources = baseMapper.getSourceAuthorization(roleSid); - lsources.forEach(f -> { - Map map = new HashMap<>(); - map.put("name", f.get("sourceName").toString()); - map.put("sid", f.get("sid").toString()); - map.put("checked", "1"); - list.add(map); - }); - - list.forEach(f -> { - List> list2 = new ArrayList<>(); - String sid = f.get("sid").toString(); - List> lmenus = baseMapper.getMenuAuthorization(sid); - lmenus.forEach(ff -> { - Map map = new HashMap<>(); - if (ff.get("pageUrl") != null && com.yxt.common.base.utils.StringUtils.isNotBlank(ff.get("pageUrl").toString())) { - String pageUrl = ff.get("pageUrl").toString(); - List> lfuncs = baseMapper.getFunctionAuthorization(pageUrl); - List> functionByRoleSid = baseMapper.getFunctionByRoleSid(pageUrl, roleSid); - if (lfuncs.size() > 0){ - map.put("name", ff.get("name")); - String sids = ff.get("sid").toString(); - map.put("sid", sids); - map.put("checked", "1"); - map.put("children", new ArrayList<>()); - for (Map lfunc : lfuncs) { - for (Map funByRole : functionByRoleSid) { - if (lfunc.get("sid").equals(funByRole.get("sid"))) { - lfunc.put("checked", "0"); - } - } - lfunc.put("children", new ArrayList<>()); - } - map.put("children", lfuncs); - list2.add(map); - } - } - }); - f.put("children", list2); - }); - return list; - } - - public List> getFunctionAuthorizationApp(String roleSid) { - List> list = new ArrayList<>(); - List> lsources = baseMapper.getSourceAuthorizationApp(roleSid); - lsources.forEach(f -> { - Map map = new HashMap<>(); - map.put("name", f.get("sourceName").toString()); - map.put("sid", f.get("sid").toString()); - map.put("checked", "1"); - list.add(map); - }); - - list.forEach(f -> { - List> list2 = new ArrayList<>(); - String sid = f.get("sid").toString(); - List> lmenus = baseMapper.getMenuAuthorization(sid); - lmenus.forEach(ff -> { - Map map = new HashMap<>(); - if (ff.get("pageUrl") != null && com.yxt.common.base.utils.StringUtils.isNotBlank(ff.get("pageUrl").toString())) { - String pageUrl = ff.get("pageUrl").toString(); - List> lfuncs = baseMapper.getFunctionAuthorization(pageUrl); - List> functionByRoleSid = baseMapper.getFunctionByRoleSid(pageUrl, roleSid); - if (lfuncs.size() > 0){ - map.put("name", ff.get("name")); - String sids = ff.get("sid").toString(); - map.put("sid", sids); - map.put("checked", "1"); - map.put("children", new ArrayList<>()); - for (Map lfunc : lfuncs) { - for (Map funByRole : functionByRoleSid) { - if (lfunc.get("sid").equals(funByRole.get("sid"))) { - lfunc.put("checked", "0"); - } - } - lfunc.put("children", new ArrayList<>()); - } - map.put("children", lfuncs); - list2.add(map); - } - } - }); - f.put("children", list2); - }); - return list; - } -} \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionTreeVo.java b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionTreeVo.java deleted file mode 100644 index ac939f0..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionTreeVo.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.yxt.portal.biz.sysfunction; - - -import com.yxt.common.core.vo.Vo; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.List; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunctionTreeVo.java
- * Description: 功能表 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@ApiModel(value = "功能表 视图数据对象", description = "功能表 视图数据对象") -@Data -public class SysFunctionTreeVo implements Vo { - @ApiModelProperty("功能名称") - private String name; - @ApiModelProperty("资源sid") - private String sourceSid; - @ApiModelProperty("上级sid") - private String parentSid; - @ApiModelProperty("sid") - private String sid; - @ApiModelProperty("资源名称") - private String sourceName; - @ApiModelProperty("url地址") - private String actionUrl; - @ApiModelProperty("功能根路径sid") - private String functionRootSid; - @ApiModelProperty("子功能") - private List children; - @ApiModelProperty("是否可用") - private String isEnable; - @ApiModelProperty("功能列表用,是否是资源层级1是,0不是") - private String isSource = "0"; - @ApiModelProperty("父级名称") - private String parentName; - @ApiModelProperty("说明") - private String remarks; -} diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionVo.java b/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionVo.java deleted file mode 100644 index 8c9ee90..0000000 --- a/src/main/java/com/yxt/portal/biz/sysfunction/SysFunctionVo.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.yxt.portal.biz.sysfunction; - - -import com.fasterxml.jackson.annotation.JsonProperty; -import com.yxt.common.core.vo.Vo; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.List; - -/** - * Project: anrui_portal(门户建设)
- * File: SysFunctionVo.java
- * Class: com.yxt.anrui.portal.api.sysfunction.SysFunctionVo
- * Description: 功能 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2021-08-03 00:24:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ -@ApiModel(value = "功能 视图数据对象", description = "功能 视图数据对象") -@Data -public class SysFunctionVo implements Vo { - @ApiModelProperty("功能名称") - private String name; - @ApiModelProperty("父级sid") - private String parentSid; - @ApiModelProperty("父级名称") - private String parentName; - @ApiModelProperty("接口地址") - private String actionUrl; - @ApiModelProperty("模块名称") - private String controllerName; - @ApiModelProperty("是否手机端权限0否,1是") - private String phoneFunction; - @ApiModelProperty("sid") - private String sid; - @ApiModelProperty("子集数据") - private List children; - @ApiModelProperty("是否选中 1未选中,0选中") - private String checked; - @ApiModelProperty("资源名称") - private String sourceName; - @ApiModelProperty("资源SId") - private String sourceSid; - @ApiModelProperty("是否可用") - private Integer isEnable; - @ApiModelProperty("移动端按钮id") - private String funId; - @ApiModelProperty("前端控制按钮的id") - @JsonProperty("cId") - private String cId; - @ApiModelProperty("说明") - private String remarks; -} diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/ButtonPermissionQuery.java b/src/main/java/com/yxt/portal/biz/sysmenu/ButtonPermissionQuery.java similarity index 83% rename from src/main/java/com/yxt/portal/biz/sysfunction/ButtonPermissionQuery.java rename to src/main/java/com/yxt/portal/biz/sysmenu/ButtonPermissionQuery.java index 487ab59..fa030fa 100644 --- a/src/main/java/com/yxt/portal/biz/sysfunction/ButtonPermissionQuery.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/ButtonPermissionQuery.java @@ -1,4 +1,4 @@ -package com.yxt.portal.biz.sysfunction; +package com.yxt.portal.biz.sysmenu; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -16,4 +16,7 @@ public class ButtonPermissionQuery { private String url; @ApiModelProperty("type") private String type; + private String sourceSid; + private String orgSid; + } diff --git a/src/main/java/com/yxt/portal/biz/sysfunction/ButtonPermissionVo.java b/src/main/java/com/yxt/portal/biz/sysmenu/ButtonPermissionVo.java similarity index 88% rename from src/main/java/com/yxt/portal/biz/sysfunction/ButtonPermissionVo.java rename to src/main/java/com/yxt/portal/biz/sysmenu/ButtonPermissionVo.java index 07b7150..d7ab8d8 100644 --- a/src/main/java/com/yxt/portal/biz/sysfunction/ButtonPermissionVo.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/ButtonPermissionVo.java @@ -1,4 +1,4 @@ -package com.yxt.portal.biz.sysfunction; +package com.yxt.portal.biz.sysmenu; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.java b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.java index 7033979..933f167 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.java @@ -81,4 +81,5 @@ public interface SysMenuMapper extends BaseMapper { * @return */ List fetchRootMenuBySourceSid(@Param("sourceSid") String sourceSid); + List getButtonPermissions(@Param("query") ButtonPermissionQuery query); } \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml index 751ab2a..d8793cf 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuMapper.xml @@ -166,5 +166,30 @@ WHERE a.sourceSid = #{sourceSid} and b.orgSid =#{orgSid} AND menu.psid='0' and menu.isDelete!=1 ORDER BY menu.sortNo ASC - + \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java index 25135bd..e3777db 100644 --- a/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java +++ b/src/main/java/com/yxt/portal/biz/sysmenu/SysMenuService.java @@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.portal.biz.sysorgregister.SysOrgRegisterService; +import com.yxt.portal.biz.sysrole.SysRoleService; import com.yxt.portal.biz.sysroleauthorize.SysMenuRoleVo; import com.yxt.portal.biz.sysroleauthorize.SysRoleAuthorize; import com.yxt.portal.biz.sysroleauthorize.SysRoleAuthorizeService; @@ -12,6 +13,8 @@ import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.vo.PagerVo; +import com.yxt.portal.biz.sysuserrole.SysUserRole; +import com.yxt.portal.biz.sysuserrole.SysUserRoleService; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -47,6 +50,8 @@ public class SysMenuService extends MybatisBaseService { SysOrgRegisterService sysOrgRegisterService; @Autowired SysRoleAuthorizeService sysRoleAuthorizeService; + @Autowired + SysRoleService sysRoleService; public PagerVo listPage(PagerQuery pq) { SysMenuQuery query = pq.getParams(); @@ -452,4 +457,13 @@ public class SysMenuService extends MybatisBaseService { public List fetchRootMenuBySourceSid(String sid) { return baseMapper.fetchRootMenuBySourceSid(sid); } + public List getButtonPermissions(ButtonPermissionQuery query) { + //判断是不是通用的单位管理员 + Integer count=sysRoleService.selectCount(query.getUserSid(),query.getOrgSid()); + if(count==0){ + query.setType("1"); + } + List buttonPermissions = baseMapper.getButtonPermissions(query); + return buttonPermissions; + } } \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysrole/SysRoleMapper.java b/src/main/java/com/yxt/portal/biz/sysrole/SysRoleMapper.java index 58d10a4..a11565e 100644 --- a/src/main/java/com/yxt/portal/biz/sysrole/SysRoleMapper.java +++ b/src/main/java/com/yxt/portal/biz/sysrole/SysRoleMapper.java @@ -67,4 +67,7 @@ public interface SysRoleMapper extends BaseMapper { List selectByRole(@Param("list") List roleSidList, @Param("menuSid") String menuSid,@Param("userSid") String userSid); List selectByMobileRole(@Param("list") List roleSidList, @Param("menuSid") String menuSid,@Param("userSid") String userSid); + @Select("select count(a.sid) from sys_role a left join sys_user_role b on b.roleSid =a.sid where a.orgSid =#{userSid} and b.userSid=#{orgSid}") + Integer selectCount(@Param("userSid") String userSid,@Param("orgSid") String orgSid); + } \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/sysrole/SysRoleService.java b/src/main/java/com/yxt/portal/biz/sysrole/SysRoleService.java index c464fe6..bab417b 100644 --- a/src/main/java/com/yxt/portal/biz/sysrole/SysRoleService.java +++ b/src/main/java/com/yxt/portal/biz/sysrole/SysRoleService.java @@ -188,4 +188,7 @@ public class SysRoleService extends MybatisBaseService { public List selectByMobileRole(List roleSidList, String menuSid, String userSid) { return baseMapper.selectByMobileRole(roleSidList,menuSid,userSid); } + public Integer selectCount(String userSid,String orgSid) { + return baseMapper.selectCount(userSid,orgSid); + } } \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java index 5349d80..d9425ee 100644 --- a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java +++ b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.yxt.portal.biz.sysfunction.SysFunctionTreeVo; import com.yxt.portal.biz.sysmenu.SysMenuTreeVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -50,5 +49,4 @@ public interface SysSourceMapper extends BaseMapper { */ List listMenuTreeVo(@Param("sourceSid") String sourceSid); - List listFunctionTreeVo(String name); } \ No newline at end of file diff --git a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml index 38d7bb9..f722ea5 100644 --- a/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml +++ b/src/main/java/com/yxt/portal/biz/syssource/SysSourceMapper.xml @@ -31,11 +31,7 @@ left join sys_source_role sourceRole on source.sid = sourceRole.sorceSid and sourceRole.roleSid = #{param1} - +