From b543a9502d873ed77ba4f61ae40e75de23fced4d Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Wed, 30 Jun 2021 17:28:39 +0800 Subject: [PATCH 01/12] =?UTF-8?q?=E8=B5=84=E6=BA=90=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/main/generate/CodeGen.java | 4 +- .../main/resources/application-dev.properties | 2 +- .../controller/TsResourceController.java | 57 ++++++++ .../slrs/sarResource/dao/TsResourceDao.java | 16 +++ .../slrs/sarResource/entity/TsResource.java | 53 ++++++++ .../service/ITsResourceService.java | 33 +++++ .../service/impl/TsResourceServiceImpl.java | 127 ++++++++++++++++++ .../sarRole/controller/TsRoleController.java | 15 +++ .../adc/da/slrs/sarRole/dao/TsRoleDao.java | 32 +++++ .../slrs/sarRole/entity/TsRoleResourceVO.java | 14 ++ .../slrs/sarRole/service/ITsRoleService.java | 7 + .../service/impl/TsRoleServiceImpl.java | 54 ++++++++ .../sarUser/controller/TsUserController.java | 8 ++ .../slrs/sarUser/service/ITsUserService.java | 3 + .../service/impl/TsUserServiceImpl.java | 19 +++ .../mapper/sarResource/TsResourceMapper.xml | 4 + .../mybatis/mapper/sarRole/TsRoleMapper.xml | 9 ++ 17 files changed, 454 insertions(+), 3 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml diff --git a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java index e17bf8a0..12658804 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java +++ b/adc-da-main/src/main/java/com/adc/da/main/generate/CodeGen.java @@ -23,11 +23,11 @@ public class CodeGen { // x.x.x.x:3306/xxxx --MYSQL // 192.168.10.140:1521:foton_slrs_test // foton_slrs_test@101.36.227.22 - private static final String DB_IP="101.36.227.22:33050/foton_slrs_test"; + private static final String DB_IP="192.168.10.47/foton_slrs_test"; private static final String DB_USER="root"; - private static final String DB_PWD="1q2w3e4r"; + private static final String DB_PWD="root"; /** diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..d89ffe27 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java new file mode 100644 index 00000000..3b573f32 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java @@ -0,0 +1,57 @@ +package com.adc.da.slrs.sarResource.controller; + + +import com.adc.da.base.web.BaseController; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.adc.da.slrs.sarResource.service.ITsResourceService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** +*

+ * 前端控制器 + *

+* +* @author zyl +* @since 2021-06-30 +*/ +@RestController +@Api(tags = "资源管理") +@RequestMapping("/sarResource/ts-resource") +public class TsResourceController extends BaseController { + @Autowired + private ITsResourceService tsResourceService; + + @ApiOperation("查询所有资源") + @GetMapping + public ResponseMessage> getAll(){ + List tsResources=tsResourceService.getAll(); + return Result.success(tsResources); + } + + @ApiOperation("添加资源") + @PostMapping("/add") + public ResponseMessage addResource(@RequestBody TsResource tsResource){ + return tsResourceService.addResource(tsResource); + } + + @ApiOperation("编辑资源") + @PutMapping + public ResponseMessage updateResource(@Validated(TsResource.update.class) @RequestBody TsResource tsResource){ + return tsResourceService.updateResource(tsResource); + } + + @ApiOperation("删除资源") + @DeleteMapping + public ResponseMessage delResource(@RequestParam Integer resourceId){ + return tsResourceService.delResource(resourceId); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java new file mode 100644 index 00000000..be0671ec --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/dao/TsResourceDao.java @@ -0,0 +1,16 @@ +package com.adc.da.slrs.sarResource.dao; + +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zyl + * @since 2021-06-30 + */ +public interface TsResourceDao extends BaseMapper { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java new file mode 100644 index 00000000..4cddc2ef --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/entity/TsResource.java @@ -0,0 +1,53 @@ +package com.adc.da.slrs.sarResource.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import javax.validation.constraints.NotNull; +import java.util.List; + +/** + *

+ * + *

+ * + * @author zyl + * @since 2021-06-30 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="TsResource对象", description="") +public class TsResource extends BaseEntity { + public interface update{ + } + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "路径") + private String href; + + @ApiModelProperty(value = "父节点ID") + private String parentId; + + @ApiModelProperty(value = "资源名称") + private String name; + + @TableId(type = IdType.UUID) + @NotNull(message = "id不能为空",groups = {update.class}) + @ApiModelProperty(value = "ID") + private String id; + + @TableField(exist = false) + @ApiModelProperty("子节点") + private List children; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java new file mode 100644 index 00000000..5a260a74 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java @@ -0,0 +1,33 @@ +package com.adc.da.slrs.sarResource.service; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author zyl + * @since 2021-06-30 + */ +public interface ITsResourceService extends IService { + + List getAll(); + + ResponseMessage addResource(TsResource tsResource); + + ResponseMessage updateResource(TsResource tsResource); + + ResponseMessage delResource(Integer resourceId); + + /** + * 通过Ids查询menu + * @param resourceIds :菜单Ids + * @return List + */ + List getResourceByIds(List resourceIds); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java new file mode 100644 index 00000000..2638878d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -0,0 +1,127 @@ +package com.adc.da.slrs.sarResource.service.impl; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; + +import com.adc.da.slrs.sarResource.dao.TsResourceDao; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.adc.da.slrs.sarResource.service.ITsResourceService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author zyl + * @since 2021-06-30 + */ +@Service +public class TsResourceServiceImpl extends ServiceImpl implements ITsResourceService { + @Autowired + private TsResourceDao dao; + /** + * 查询所有菜单 + */ + @Override + public List getAll() { + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.isNull("PARENT_ID"); + List TsResources=dao.selectList(TsResourceQueryWrapper); + for(TsResource TsResource:TsResources){ + TsResource.setChildren(recursionGetChildren((TsResource))); + } + return TsResources; + } + + /** + * 添加菜单 + * @param TsResource:菜单信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage addResource(TsResource TsResource) { + if(TsResource.getParentId()!=null){ + TsResource parent=dao.selectById(TsResource.getParentId()); + if(parent==null){ + return Result.error("该父菜单不存在"); + } + } + dao.insert(TsResource); + return Result.success(); + } + + /** + * 编辑菜单 + * @param TsResource:菜单信息 + * @return ResponseMessage + */ + @Override + public ResponseMessage updateResource(TsResource TsResource) { + TsResource oldResource=dao.selectById(TsResource.getId()); + if(oldResource==null){ + return Result.error("该菜单不存在"); + } + if(TsResource.getParentId()!=null){ + TsResource parent=dao.selectById(TsResource.getParentId()); + if(parent==null){ + return Result.error("父节点不存在"); + } + } + dao.updateById(TsResource); + return Result.success(); + } + + /** + * 删除菜单 + * @param ResourceId:菜单ID + * @return ResponseMessage + */ + @Override + public ResponseMessage delResource(Integer ResourceId) { + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.eq("parent_id",ResourceId); + List children=dao.selectList(TsResourceQueryWrapper); + if(children!=null&&children.size()>0){ + return Result.error("该菜单有子节点,无法删除"); + } + dao.deleteById(ResourceId); + return Result.success(); + } + + /** + * 通过Ids查询Resource + * @param resourceIds :菜单Ids + * @return List + */ + @Override + public List getResourceByIds(List resourceIds) { + if(resourceIds!=null&&resourceIds.size()>0){ + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.in("id",resourceIds); + return dao.selectList(TsResourceQueryWrapper); + } + return new ArrayList<>(); + } + + /** + * 递归调用获取子节点 + * @param parent:父节点 + * @return List + */ + private List recursionGetChildren(TsResource parent){ + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.eq("PARENT_ID",parent.getId()); + List children=dao.selectList(TsResourceQueryWrapper); + for(TsResource TsResource:children){ + TsResource.setChildren(recursionGetChildren((TsResource))); + } + return children; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java index aa22930a..d29f9159 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/controller/TsRoleController.java @@ -6,6 +6,7 @@ import com.adc.da.http.Result; import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; +import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.sys.entity.UserEO; import io.swagger.annotations.ApiOperation; @@ -92,4 +93,18 @@ public class TsRoleController extends BaseController { List menuIds=tsRoleService.getMenu(roleId); return Result.success(menuIds); } + + @ApiOperation("配置资源") + @PostMapping("/resource") + public ResponseMessage setResource(@Valid @RequestBody TsRoleResourceVO tsRoleResourceVO){ + return tsRoleService.setResource(tsRoleResourceVO); + } + + @ApiOperation("查询角色资源") + @GetMapping("/resource") + public ResponseMessage> getResource(@RequestParam String roleId){ + List resourceIds=tsRoleService.getResource(roleId); + return Result.success(resourceIds); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java index f742edf1..e3987b47 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/dao/TsRoleDao.java @@ -59,4 +59,36 @@ public interface TsRoleDao extends BaseMapper { * @return List */ List getMenuIdsByRoleIds(List roleIds); + + /** + * 通过角色ID查询绑定的资源ID + * @param roleId:角色ID + * @return List + */ + @Select("select resource_id from ts_role_resource where role_id=#{roleId}") + List getResourceIds(String roleId); + + + /** + * 添加资源 + * @param roleId:角色ID + * @param resourceId:权限ID + */ + @Insert("insert into ts_role_resource (role_id,resource_id) values (#{roleId},#{resourceId})") + void addResource(String roleId, String resourceId); + + /** + * 删除权限 + * @param roleId:角色ID + * @param resourceId:权限ID + */ + @Delete("delete from ts_role_resource where role_id=#{roleId} and resource_id=#{resourceId}") + void delResource(String roleId, String resourceId); + + /** + * 通过角色Id列表查询资源Id列表 + * @param roleIds:角色ID列表 + * @return List + */ + List getResourceIdsByRoleIds(List roleIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java new file mode 100644 index 00000000..6652ac28 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/entity/TsRoleResourceVO.java @@ -0,0 +1,14 @@ +package com.adc.da.slrs.sarRole.entity; + +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +public class TsRoleResourceVO { + @NotNull(message = "roleId不能为空") + private String roleId; + @NotNull(message = "resourceIds不能为空") + private List resourceIds; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java index 29eb5df8..1091a832 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/ITsRoleService.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarRole.service; import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; +import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; @@ -71,4 +72,10 @@ public interface ITsRoleService extends IService { * @return List */ List getMenuIdsByRoleIds(List roleIds); + + ResponseMessage setResource(TsRoleResourceVO tsRoleResourceVO); + + List getResource(String roleId); + + List getResourceIdsByRoleIds(List roleIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index b94f71cd..387675c5 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -8,6 +8,7 @@ import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.dao.TsRoleDao; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; +import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -197,5 +198,58 @@ public class TsRoleServiceImpl extends ServiceImpl implements return null; } + /** + * 配置资源 + * @param tsRoleResourceVO:资源ID + * @return ResponseMessage + */ + @Override + public ResponseMessage setResource(TsRoleResourceVO tsRoleResourceVO) { + TsRole role=tsRoleDao.selectById(tsRoleResourceVO.getRoleId()); + if(role==null){ + return Result.error("该角色不存在"); + } + List oldResourceIds=tsRoleDao.getResourceIds(tsRoleResourceVO.getRoleId()); + Map> updateMenuIds= ListUtil.difList(tsRoleResourceVO.getResourceIds(),oldResourceIds); + List insertIds=updateMenuIds.get("insert"); + List deleteIds=updateMenuIds.get("delete"); + if(insertIds!=null&&insertIds.size()>0){ + for(String menuId:insertIds){ + tsRoleDao.addResource(tsRoleResourceVO.getRoleId(),menuId); + } + } + if(deleteIds!=null&&deleteIds.size()>0){ + for(String menuId:deleteIds){ + tsRoleDao.delResource(tsRoleResourceVO.getRoleId(),menuId); + } + } + //修改首页自定义目录 +// List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); + return Result.success(); + } + + /** + * 查询角色资源 + * @param roleId:角色ID + * @return List + */ + @Override + public List getResource(String roleId) { + return tsRoleDao.getResourceIds(roleId); + } + + /** + * 通过角色Id列表查询菜单Id列表 + * @param roleIds:角色ID列表 + * @return List + */ + @Override + public List getResourceIdsByRoleIds(List roleIds) { + if(roleIds!=null&&roleIds.size()>0){ + return tsRoleDao.getResourceIdsByRoleIds(roleIds); + } + return null; + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java index f02253a2..8aec0495 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -4,6 +4,7 @@ package com.adc.da.slrs.sarUser.controller; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.slrs.sarMenu.entity.SarMenu; +import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; import io.swagger.annotations.ApiOperation; @@ -55,6 +56,13 @@ public class TsUserController extends BaseController { return Result.success(menus); } + @ApiOperation("查询当前登录用户资源") + @GetMapping("/resource") + public ResponseMessage> getResource(){ + List resources=tsUserService.getResource(); + return Result.success(resources); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 8d35fafe..7bb35bd1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.sarUser.service; import com.adc.da.http.ResponseMessage; import com.adc.da.slrs.sarMenu.entity.SarMenu; +import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.baomidou.mybatisplus.extension.service.IService; @@ -45,4 +46,6 @@ public interface ITsUserService extends IService { * @return List */ List getMenu(); + + List getResource(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 476b4917..8ef1a20a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -7,6 +7,8 @@ import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; import com.adc.da.slrs.sarPosition.entity.TsPosition; import com.adc.da.slrs.sarPosition.service.ITsPositionService; +import com.adc.da.slrs.sarResource.entity.TsResource; +import com.adc.da.slrs.sarResource.service.ITsResourceService; import com.adc.da.slrs.sarRole.service.ITsRoleService; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.dao.TsUserDao; @@ -43,6 +45,8 @@ public class TsUserServiceImpl extends ServiceImpl implements private ITsRoleService tsRoleService; @Autowired private ISarMenuService sarMenuService; + @Autowired + private ITsResourceService tsResourceService; /** * 通过机构ID查询人员 @@ -125,4 +129,19 @@ public class TsUserServiceImpl extends ServiceImpl implements List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); return sarMenuService.getMenuByIds(menuIds); } + + /** + * 查询当前登录的用户资源 + * @return List + */ + @Override + public List getResource() { + UserEO userEO=UserUtils.getUser(); + String userId= userEO.getUsid(); + System.out.println(userId); + List positionIds=tsUserDao.selectPositionIds(userId); + List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List resourceIds=tsRoleService.getResourceIdsByRoleIds(roleIds); + return tsResourceService.getResourceByIds(resourceIds); + } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml new file mode 100644 index 00000000..447de27f --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarResource/TsResourceMapper.xml @@ -0,0 +1,4 @@ + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml index a366fda3..e4ac1c0e 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarRole/TsRoleMapper.xml @@ -10,4 +10,13 @@ ) + From 349737cd670ede729d72c572671f2672216560d7 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 10:50:56 +0800 Subject: [PATCH 02/12] =?UTF-8?q?fetch:=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarMenu/controller/SarMenuController.java | 2 +- .../slrs/sarMenu/service/ISarMenuService.java | 4 +-- .../service/impl/SarMenuServiceImpl.java | 4 +-- .../entity/SarUserPersonalMenu.java | 3 ++ .../service/ISarUserPersonalMenuService.java | 10 ++++-- .../impl/SarUserPersonalMenuServiceImpl.java | 36 ++++++++++++++----- .../slrs/sarPosition/dao/TsPositionDao.java | 8 +++++ .../service/ITsPositionService.java | 7 ++++ .../service/impl/TsPositionServiceImpl.java | 10 ++++++ .../controller/TsResourceController.java | 4 +-- .../service/ITsResourceService.java | 2 +- .../service/impl/TsResourceServiceImpl.java | 2 +- .../service/impl/TsRoleServiceImpl.java | 15 +++++--- .../adc/da/slrs/sarUser/dao/TsUserDao.java | 7 ++++ .../slrs/sarUser/service/ITsUserService.java | 15 ++++++++ .../service/impl/TsUserServiceImpl.java | 31 +++++++++++++--- .../mybatis/mapper/sarUser/TsUserMapper.xml | 10 ++++++ 17 files changed, 139 insertions(+), 31 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java index 765bf2c4..a3cf165f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/controller/SarMenuController.java @@ -99,7 +99,7 @@ public class SarMenuController extends BaseController { @ApiOperation("删除菜单") @DeleteMapping - public ResponseMessage delMenu(@RequestParam Integer menuId){ + public ResponseMessage delMenu(@RequestParam String menuId){ return sarMenuEOService.delMenu(menuId); } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java index ddc99449..73fcc03b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/ISarMenuService.java @@ -54,10 +54,10 @@ public interface ISarMenuService extends IService { /** * 删除菜单 - * @param menuId:菜单ID + * @param menuId :菜单ID * @return ResponseMessage */ - ResponseMessage delMenu(Integer menuId); + ResponseMessage delMenu(String menuId); /** * 通过Ids查询menu diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java index 9fdd43c3..609f7e67 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenu/service/impl/SarMenuServiceImpl.java @@ -222,11 +222,11 @@ public class SarMenuServiceImpl extends ServiceImpl impleme /** * 删除菜单 - * @param menuId:菜单ID + * @param menuId :菜单ID * @return ResponseMessage */ @Override - public ResponseMessage delMenu(Integer menuId) { + public ResponseMessage delMenu(String menuId) { QueryWrapper sarMenuQueryWrapper=new QueryWrapper<>(); sarMenuQueryWrapper.eq("parent_id",menuId); List children=dao.selectList(sarMenuQueryWrapper); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java index c8005efd..76fab518 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/entity/SarUserPersonalMenu.java @@ -1,6 +1,8 @@ package com.adc.da.slrs.sarPersonalCenter.entity; import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -21,6 +23,7 @@ import lombok.experimental.Accessors; @ApiModel(value="SarUserPersonalMenu对象", description="") public class SarUserPersonalMenu extends BaseEntity { + @TableId(type = IdType.UUID) @ApiModelProperty("id") private String id; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java index 3ec6ace4..e29c294a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/ISarUserPersonalMenuService.java @@ -1,6 +1,7 @@ package com.adc.da.slrs.sarPersonalCenter.service; import com.adc.da.http.ResponseMessage; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -22,8 +23,11 @@ public interface ISarUserPersonalMenuService extends IService> updateUserPersonalMenu(SarUserPersonalMenuEO eo); - public void updateUserPersonalMenuForRole(List menus,String userId); - - + public void updateUserPersonalMenuForRole(List menus, String userId); + /** + * 更新用户权限 + * @param roleId:角色ID + */ + void setPersonalMenu(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java index 42b8052d..9cc0e392 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -2,14 +2,18 @@ package com.adc.da.slrs.sarPersonalCenter.service.impl; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenu; import com.adc.da.slrs.sarPersonalCenter.dao.SarUserPersonalMenuDao; import com.adc.da.slrs.sarPersonalCenter.entity.SarUserPersonalMenuEO; import com.adc.da.slrs.sarPersonalCenter.service.ISarUserPersonalMenuService; +import com.adc.da.slrs.sarUser.service.impl.TsUserServiceImpl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.*; @@ -24,7 +28,8 @@ import java.util.*; */ @Service public class SarUserPersonalMenuServiceImpl extends ServiceImpl implements ISarUserPersonalMenuService { - + @Autowired + private TsUserServiceImpl tsUserService; @Override public ResponseMessage> getUserPersonalMenu(SarUserPersonalMenuEO eo) { @@ -68,16 +73,15 @@ public class SarUserPersonalMenuServiceImpl extends ServiceImpl menuList,String userId) { - + public void updateUserPersonalMenuForRole(List menuList,String userId) { Set ids=new HashSet<>(); - for (SarUserPersonalMenu menu : menuList) { - if(menu.getMenuId()!=null&&menu.getMenuId().trim().length()>0){ + for (SarMenu menu : menuList) { + if(menu.getId()!=null&&menu.getId().trim().length()>0){ QueryWrapper queryWrapper=new QueryWrapper<>(); queryWrapper.eq("user_id",userId); - queryWrapper.eq("menu_id",menu.getMenuId()); + queryWrapper.eq("menu_id",menu.getId()); List menus = getBaseMapper().selectList(queryWrapper); if (menus.size()>0) { ids.add(menus.get(0).getId()); @@ -86,9 +90,9 @@ public class SarUserPersonalMenuServiceImpl extends ServiceImpl userIds=tsUserService.getUserIdsByRoleId(roleId); + for(String userId:userIds){ + List menus=tsUserService.getMenusByUserId(userId); + updateUserPersonalMenuForRole(menus,userId); + } + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java index e2cfd184..d5989e46 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/dao/TsPositionDao.java @@ -63,4 +63,12 @@ public interface TsPositionDao extends BaseMapper { * @return List */ List getRoleIdsByPositionIds(List positionIds); + + /** + * 通过roleId查询岗位ID列表 + * @param roleId:角色ID + * @return List + */ + @Select("select position_id from ts_position_role where role_id=#{roleId}") + List getPositionIdsByRoleId(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java index 5691afd3..79565b95 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/ITsPositionService.java @@ -66,4 +66,11 @@ public interface ITsPositionService extends IService { * @return List */ List getRoleIdsByPositionIds(List positionIds); + + /** + * 通过roleId查询岗位ID列表 + * @param roleId:角色ID + * @return List + */ + List getPositionIdsByRoleId(String roleId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java index ea291337..9ac99608 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPosition/service/impl/TsPositionServiceImpl.java @@ -147,4 +147,14 @@ public class TsPositionServiceImpl extends ServiceImpl + */ + @Override + public List getPositionIdsByRoleId(String roleId) { + return tsPositionDao.getPositionIdsByRoleId(roleId); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java index 3b573f32..3c7ad27e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java @@ -24,7 +24,7 @@ import java.util.List; */ @RestController @Api(tags = "资源管理") -@RequestMapping("/sarResource/ts-resource") +@RequestMapping("/api/sarResource/ts-resource") public class TsResourceController extends BaseController { @Autowired private ITsResourceService tsResourceService; @@ -50,7 +50,7 @@ public class TsResourceController extends BaseController { @ApiOperation("删除资源") @DeleteMapping - public ResponseMessage delResource(@RequestParam Integer resourceId){ + public ResponseMessage delResource(@RequestParam String resourceId){ return tsResourceService.delResource(resourceId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java index 5a260a74..0dfe5a24 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java @@ -22,7 +22,7 @@ public interface ITsResourceService extends IService { ResponseMessage updateResource(TsResource tsResource); - ResponseMessage delResource(Integer resourceId); + ResponseMessage delResource(String resourceId); /** * 通过Ids查询menu diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java index 2638878d..3c284b46 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -84,7 +84,7 @@ public class TsResourceServiceImpl extends ServiceImpl */ @Override - public ResponseMessage delResource(Integer ResourceId) { + public ResponseMessage delResource(String ResourceId) { QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); TsResourceQueryWrapper.eq("parent_id",ResourceId); List children=dao.selectList(TsResourceQueryWrapper); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 387675c5..ccd7b7ff 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -5,15 +5,18 @@ import com.adc.da.http.Result; import com.adc.da.slrs.sarMenu.dao.SarMenuDao; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; +import com.adc.da.slrs.sarPersonalCenter.service.ISarUserPersonalMenuService; import com.adc.da.slrs.sarRole.entity.TsRole; import com.adc.da.slrs.sarRole.dao.TsRoleDao; import com.adc.da.slrs.sarRole.entity.TsRoleMenuVO; import com.adc.da.slrs.sarRole.entity.TsRoleResourceVO; import com.adc.da.slrs.sarRole.service.ITsRoleService; +import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -28,13 +31,15 @@ import java.util.Map; * @author zyl * @since 2021-06-22 */ +@EnableAsync @Service public class TsRoleServiceImpl extends ServiceImpl implements ITsRoleService { @Autowired private TsRoleDao tsRoleDao; @Autowired private ISarMenuService sarMenuService; - + @Autowired + private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 * @return List @@ -170,8 +175,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } } - //修改首页自定义目录 -// List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); + sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); return Result.success(); } @@ -223,8 +227,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delResource(tsRoleResourceVO.getRoleId(),menuId); } } - //修改首页自定义目录 -// List menus=sarMenuService.getMenusByIds(tsRoleMenuVO.getMenuIds()); + return Result.success(); } @@ -252,4 +255,6 @@ public class TsRoleServiceImpl extends ServiceImpl implements } + + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java index 73962ead..260e3afd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java @@ -46,4 +46,11 @@ public interface TsUserDao extends BaseMapper { * @return List */ List getUserAndPosition(String institutionId); + + /** + * 通过岗位Id列表查询用户ID列表 + * @param positionIds:岗位ID列表 + * @return List + */ + List getUserIdsByPositionIds(List positionIds); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 7bb35bd1..00560dd3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -48,4 +48,19 @@ public interface ITsUserService extends IService { List getMenu(); List getResource(); + + /** + * 配置个人菜单 + * @param roleId :角色ID + * @return List + */ + public List getUserIdsByRoleId(String roleId); + + /** + * 通过用户ID查询菜单 + * @param userId:用户ID + * @return List + */ + public List getMenusByUserId(String userId); + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 8ef1a20a..2482934d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -5,7 +5,6 @@ import com.adc.da.http.Result; import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarMenu.entity.SarMenu; import com.adc.da.slrs.sarMenu.service.ISarMenuService; -import com.adc.da.slrs.sarPosition.entity.TsPosition; import com.adc.da.slrs.sarPosition.service.ITsPositionService; import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarResource.service.ITsResourceService; @@ -15,15 +14,12 @@ import com.adc.da.slrs.sarUser.dao.TsUserDao; import com.adc.da.slrs.sarUser.entity.UserPositionVO; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.sys.entity.UserEO; -import com.adc.da.util.LoginUserUtil; import com.adc.da.utils.util.ListUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.awt.*; import java.util.List; import java.util.Map; @@ -47,6 +43,8 @@ public class TsUserServiceImpl extends ServiceImpl implements private ISarMenuService sarMenuService; @Autowired private ITsResourceService tsResourceService; +// @Autowired +// private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 通过机构ID查询人员 @@ -123,7 +121,6 @@ public class TsUserServiceImpl extends ServiceImpl implements public List getMenu() { UserEO userEO=UserUtils.getUser(); String userId= userEO.getUsid(); - System.out.println(userId); List positionIds=tsUserDao.selectPositionIds(userId); List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); @@ -144,4 +141,28 @@ public class TsUserServiceImpl extends ServiceImpl implements List resourceIds=tsRoleService.getResourceIdsByRoleIds(roleIds); return tsResourceService.getResourceByIds(resourceIds); } + + /** + * 配置个人菜单 + * @param roleId :角色ID + * @return List + */ + @Override + public List getUserIdsByRoleId(String roleId) { + List positionIds=tsPositionService.getPositionIdsByRoleId(roleId); + return tsUserDao.getUserIdsByPositionIds(positionIds); + } + + /** + * 通过用户ID查询菜单 + * @param userId:用户ID + * @return List + */ + @Override + public List getMenusByUserId(String userId){ + List positionIds=tsUserDao.selectPositionIds(userId); + List roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds); + List menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds); + return sarMenuService.getMenuByIds(menuIds); + } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml index 67b94fdc..158d3b20 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml @@ -36,4 +36,14 @@ on up.position_id=p.id where u.institution_id=#{institutionId} + + From 03162b8e85f62f501baadd3e1fb75488edb325f6 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Thu, 1 Jul 2021 03:31:06 +0000 Subject: [PATCH 03/12] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index d89ffe27..0280f9bd 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root From af2bf00713f2326fba6022ac43dff2a6c1abad4e Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 14:05:27 +0800 Subject: [PATCH 04/12] =?UTF-8?q?fetch:=E8=A7=A3=E5=86=B3=E5=BE=AA?= =?UTF-8?q?=E7=8E=AF=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SarUserPersonalMenuServiceImpl.java | 2 ++ .../com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java | 2 ++ .../com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java | 2 ++ 3 files changed, 6 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java index 9cc0e392..b1b3ceae 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarPersonalCenter/service/impl/SarUserPersonalMenuServiceImpl.java @@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -29,6 +30,7 @@ import java.util.*; @Service public class SarUserPersonalMenuServiceImpl extends ServiceImpl implements ISarUserPersonalMenuService { @Autowired + @Lazy private TsUserServiceImpl tsUserService; @Override diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index ccd7b7ff..3db343a2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -16,6 +16,7 @@ import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -39,6 +40,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements @Autowired private ISarMenuService sarMenuService; @Autowired + @Lazy private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 2482934d..dc6b96fa 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -17,6 +17,7 @@ import com.adc.da.sys.entity.UserEO; import com.adc.da.utils.util.ListUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -38,6 +39,7 @@ public class TsUserServiceImpl extends ServiceImpl implements @Autowired private ITsPositionService tsPositionService; @Autowired + @Lazy private ITsRoleService tsRoleService; @Autowired private ISarMenuService sarMenuService; From d8cbcad8c9d41f5dd6c0a70614e67d0f88fdb145 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 14:19:41 +0800 Subject: [PATCH 05/12] =?UTF-8?q?fetch:=E5=BE=AA=E7=8E=AF=E4=BE=9D?= =?UTF-8?q?=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/slrs/sarRole/service/impl/TsRoleServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 3db343a2..17cd2d24 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -39,9 +39,9 @@ public class TsRoleServiceImpl extends ServiceImpl implements private TsRoleDao tsRoleDao; @Autowired private ISarMenuService sarMenuService; - @Autowired - @Lazy - private ISarUserPersonalMenuService sarUserPersonalMenuService; +// @Autowired +// @Lazy +// private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 * @return List @@ -177,7 +177,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } } - sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); +// sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); return Result.success(); } From 462062e6b57ee0b4a12fff3f655ed67691b9d665 Mon Sep 17 00:00:00 2001 From: root <8964602+zxylbj@user.noreply.gitee.com> Date: Thu, 1 Jul 2021 14:20:18 +0800 Subject: [PATCH 06/12] =?UTF-8?q?fetch:=E5=BE=AA=E7=8E=AF=E4=BE=9D?= =?UTF-8?q?=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/slrs/sarRole/service/impl/TsRoleServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java index 17cd2d24..3db343a2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarRole/service/impl/TsRoleServiceImpl.java @@ -39,9 +39,9 @@ public class TsRoleServiceImpl extends ServiceImpl implements private TsRoleDao tsRoleDao; @Autowired private ISarMenuService sarMenuService; -// @Autowired -// @Lazy -// private ISarUserPersonalMenuService sarUserPersonalMenuService; + @Autowired + @Lazy + private ISarUserPersonalMenuService sarUserPersonalMenuService; /** * 查询所有角色 * @return List @@ -177,7 +177,7 @@ public class TsRoleServiceImpl extends ServiceImpl implements tsRoleDao.delMenu(tsRoleMenuVO.getRoleId(),menuId); } } -// sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); + sarUserPersonalMenuService.setPersonalMenu(tsRoleMenuVO.getRoleId()); return Result.success(); } From e487fc3a7923f10e87625a7e5ed138b2225b962a Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 02:38:07 +0000 Subject: [PATCH 07/12] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..27f503d9 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -13,7 +13,10 @@ spring.application.name=FotonLAWSSystem application.code=20200101 application.center=1 #============================================== - +#Eruept +eureka.client.allow-redirects=true +eureka.client.register-with-eureka=true +eureka.client.service-url.defaultZone=http://101.36.227.25:8050/eureka/ #============================================== # 邮箱配置1 #============================================== From 6c56c8ba29d38ee5ca7b5849944b6cb2cbd2ab20 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:04:04 +0000 Subject: [PATCH 08/12] Update RestTemplateConfig.java --- .../src/main/java/com/adc/da/main/config/RestTemplateConfig.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java index 870c415d..856f4c98 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java @@ -23,6 +23,7 @@ public class RestTemplateConfig { private static final Logger logger = LoggerFactory.getLogger(RestTemplateConfig.class); @Bean + @LoadBalanced public RestTemplate restTemplate(ClientHttpRequestFactory factory){ RestTemplate restTemplate = new RestTemplate(factory); // 使用 utf-8 编码集的 conver 替换默认的 conver(默认的 string conver 的编码集为"ISO-8859-1") From 062d9487198ee65b3269dcaa7b97292f865c48f4 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:06:30 +0000 Subject: [PATCH 09/12] Update RestTemplateConfig.java --- .../src/main/java/com/adc/da/main/config/RestTemplateConfig.java | 1 + 1 file changed, 1 insertion(+) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java index 856f4c98..1ec6e874 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java @@ -6,6 +6,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.client.ClientHttpRequestFactory; import org.springframework.http.client.SimpleClientHttpRequestFactory; +import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.web.client.RestTemplate; From eb5f2a9e873962db831a0596a6e81e542e39a136 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:14:22 +0000 Subject: [PATCH 10/12] Update RestTemplateConfig.java --- .../src/main/java/com/adc/da/main/config/RestTemplateConfig.java | 1 - 1 file changed, 1 deletion(-) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java index 1ec6e874..b77dfe97 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/RestTemplateConfig.java @@ -24,7 +24,6 @@ public class RestTemplateConfig { private static final Logger logger = LoggerFactory.getLogger(RestTemplateConfig.class); @Bean - @LoadBalanced public RestTemplate restTemplate(ClientHttpRequestFactory factory){ RestTemplate restTemplate = new RestTemplate(factory); // 使用 utf-8 编码集的 conver 替换默认的 conver(默认的 string conver 的编码集为"ISO-8859-1") From 64e95dc4a6f758aafb7ae6d7355f884a91d50899 Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:28:49 +0000 Subject: [PATCH 11/12] Update application-dev.properties --- adc-da-main/src/main/resources/application-dev.properties | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 27f503d9..0280f9bd 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -13,10 +13,7 @@ spring.application.name=FotonLAWSSystem application.code=20200101 application.center=1 #============================================== -#Eruept -eureka.client.allow-redirects=true -eureka.client.register-with-eureka=true -eureka.client.service-url.defaultZone=http://101.36.227.25:8050/eureka/ + #============================================== # 邮箱配置1 #============================================== From 8e5b8bb239a069b72e9aee0c583643f209078d2c Mon Sep 17 00:00:00 2001 From: zxy-lbj <15192043237@163.com> Date: Fri, 2 Jul 2021 03:29:41 +0000 Subject: [PATCH 12/12] Update application.properties --- adc-da-main/src/main/resources/application.properties | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/adc-da-main/src/main/resources/application.properties b/adc-da-main/src/main/resources/application.properties index 4cb8be56..fb1168dc 100644 --- a/adc-da-main/src/main/resources/application.properties +++ b/adc-da-main/src/main/resources/application.properties @@ -28,16 +28,19 @@ logging.level.org.springframework=info # 请求前缀 restPath=/api #server.servlet.context-path=/api - +#Eruept +eureka.client.allow-redirects=true +eureka.client.register-with-eureka=true +eureka.client.service-url.defaultZone=http://101.36.227.25:8050/eureka/ #是否将自己注册到Eureka Server上,默认为true -eureka.client.register-with-eureka=false +#eureka.client.register-with-eureka=false ##是否从Eureka Server上获取注册信息,默认为true -eureka.client.fetch-registry=false +#eureka.client.fetch-registry=false #eureka.client.service-url.defaultZone=http://10.5.116.172:8672/eureka/ #eureka.client.service-url.defaultZone=http://127.0.0.1:8671/eureka/ #eureka.client.service-url.defaultZone=http://10.5.116.172:8672/eureka/ -eureka.client.service-url.defaultZone=http://127.0.0.1:8761/eureka/ +#eureka.client.service-url.defaultZone=http://127.0.0.1:8761/eureka/ # 请求连接的超时时间 默认的时间为 1 秒 ribbon.ConnectTimeout=500000 # 请求处理的超时时间