From fb5fd21a5515976a50e31c02bbea69a17833fbd5 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 14 十一月 2023 14:34:48 +0800
Subject: [PATCH] 实现角色管理中的设置权限的功能
---
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java | 2 +-
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleSv.java | 18 ++++++++++++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleCtrl.java | 35 +++++++++++++++++++++++++++++++++++
3 files changed, 54 insertions(+), 1 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleCtrl.java
index 9cc6bd7..544e773 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleCtrl.java
@@ -186,6 +186,41 @@
}
+
+ /**
+ * 璁剧疆瑙掕壊鏉冮檺
+ * @param id 瑙掕壊ID
+ * @return 鏄惁鎴愬姛
+ */
+ @Operation(summary = "璁剧疆瑙掕壊鏉冮檺", description = "鎻愪氦瑙掕壊ID锛屽強鎵�閫夋嫨鐨勬潈闄怚D闆嗗悎锛堟暟缁勶級")
+ @ApiResponses(value = {
+ @ApiResponse(
+ responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+ description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�",
+ content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+ schema = @Schema(implementation = Boolean.class))}
+ )
+ })
+ @GetMapping(path = "setPrivs", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+ @SsoAop("-1")//@SsoAop(power = "-1")
+ public BaseResponse<Boolean> setPrivileges(@Parameter(description = "瀹炰綋id", required = true) Long id,
+ @Parameter(description = "鏉冮檺id鏁扮粍") Long[] privIds){
+ Long[] privIds_lg = null ;
+ if(privIds != null && privIds.length > 0){
+ privIds_lg = new Long[privIds.length] ;
+ int index = 0 ;
+ for(Long privId : privIds){
+ privIds_lg[index++] = privId ;
+ }
+ }
+ try {
+ this.sv.setRoles(id, privIds_lg);
+ } catch (Exception e) {
+ log.error("淇濆瓨鐢ㄦ埛寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ return BaseResponseUtils.buildSuccess(true) ;
+ }
/**
* 鍒犻櫎瑙掕壊
* @param id 瑙掕壊ID
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleSv.java
index 52f7cec..f0b9702 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleSv.java
@@ -5,6 +5,7 @@
import com.dy.pipIrrGlobal.daoBa.BaRoleMapper;
import com.dy.pipIrrGlobal.daoBa.BaRolePrivilegeMapper;
import com.dy.pipIrrGlobal.pojoBa.BaRole;
+import com.dy.pipIrrGlobal.pojoBa.BaRolePrivilege;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -95,6 +96,23 @@
}
/**
+ * 璁剧疆瑙掕壊鏉冮檺
+ * @param roleId 瑙掕壊id
+ * @param priviIds 閫夋嫨鐨勬潈闄恑d闆嗗悎
+ * @return 鎻掑叆瑙掕壊涓庢潈闄愬叧鑱旇褰曟暟閲�
+ */
+ public int setRoles(Long roleId, Long[] priviIds){
+ this.rolePrivDao.deleteByRoleId(roleId) ;
+ int count = 0 ;
+ if(priviIds != null && priviIds.length > 0){
+ for(Long privId : priviIds){
+ count += this.rolePrivDao.insertSelective(new BaRolePrivilege(roleId, privId)) ;
+ }
+ }
+ return count ;
+ }
+
+ /**
* 淇濆瓨淇敼瀹炰綋
* @param id 瀹炰綋ID
* @return 褰卞搷璁板綍鏁伴噺
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java
index a83b6cf..5fa25fa 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/user/UserCtrl.java
@@ -252,7 +252,7 @@
@GetMapping(path = "setRoles", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
@SsoAop("-1")//@SsoAop(power = "-1")
public BaseResponse<Boolean> setRoles(@Parameter(description = "瀹炰綋id", required = true) String id,
- @Parameter(description = "瑙掕壊id鏁扮粍闆嗗悎") String[] roleIds){
+ @Parameter(description = "瑙掕壊id鏁扮粍") String[] roleIds){
Long[] roleId_lg = null ;
if(roleIds != null && roleIds.length > 0){
roleId_lg = new Long[roleIds.length] ;
--
Gitblit v1.8.0