Bladeren bron

修复删除权限组时,删除权限组下权限报错的bug

wuxw 7 jaren geleden
bovenliggende
commit
217d02a32b

+ 4 - 0
OrderService/src/main/java/com/java110/order/dao/IPrivilegeDAO.java

@@ -1,5 +1,6 @@
 package com.java110.order.dao;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -45,4 +46,7 @@ public interface IPrivilegeDAO {
      * @return
      */
     public boolean deletePrivilegeRel(Map info);
+
+
+    public List<Map> queryPrivilegeRel(Map info);
 }

+ 11 - 0
OrderService/src/main/java/com/java110/order/dao/impl/PrivilegeDAOImpl.java

@@ -95,5 +95,16 @@ public class PrivilegeDAOImpl extends BaseServiceDao implements IPrivilegeDAO {
         return true;
     }
 
+    /**
+     * 查询权限组下权限
+     * @param info
+     * @return
+     */
+    @Override
+    public List<Map> queryPrivilegeRel(Map info) {
+        logger.debug("查询权限组下权限信息入参:{}",info);
+        return sqlSessionTemplate.selectList("privilegeDAOImpl.queryPrivilegeRel",info);
+    }
+
 
 }

+ 10 - 2
OrderService/src/main/java/com/java110/order/smo/impl/PrivilegeSMOImpl.java

@@ -14,6 +14,9 @@ import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * 用户权限处理类
  * Created by Administrator on 2019/4/1.
@@ -116,8 +119,13 @@ public class PrivilegeSMOImpl implements IPrivilegeSMO {
         JSONObject privilegeGroupObj = JSONObject.parseObject(privilegeGroupInfo);
         //删除权限组
         privilegeDAOImpl.deletePrivilegeGroup(privilegeGroupObj);
-        //删除权限组和权限关系
-        privilegeDAOImpl.deletePrivilegeRel(privilegeGroupObj);
+
+        List<Map> privileges = privilegeDAOImpl.queryPrivilegeRel(privilegeGroupObj);
+
+        if(privileges !=null && privileges.size()>0) {
+            //删除权限组和权限关系
+            privilegeDAOImpl.deletePrivilegeRel(privilegeGroupObj);
+        }
 
         return new ResponseEntity<String>("成功", HttpStatus.OK);
 

+ 1 - 1
WebService/src/main/java/com/java110/web/components/DeletePrivilegeGroupComponent.java

@@ -7,7 +7,7 @@ import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Component;
 
-@Component("deletePrivilegeGroupComponent")
+@Component("deletePrivilegeGroup")
 public class DeletePrivilegeGroupComponent {
 
     @Autowired

+ 17 - 0
java110-config/src/main/resources/mapper/center/PrivilegeDAOImplMapper.xml

@@ -45,4 +45,21 @@
         UPDATE p_privilege_rel a SET a.`status_cd` = '1'
         WHERE a.`pg_id` = #{pgId}
     </update>
+
+    <select id="queryPrivilegeRel" parameterType="Map" resultType="Map">
+        SELECT
+            pp.`name`,
+            pp.`domain`,
+            pp.`p_id` pId,
+            pp.`description`,
+            pp.`create_time` createTime
+        FROM
+            p_privilege pp,
+            p_privilege_rel ppr
+        WHERE ppr.`p_id` = pp.`p_id`
+            AND ppr.`status_cd` = '0'
+            AND pp.`status_cd` = '0'
+            AND ppr.`pg_id` = #{pgId}
+
+    </select>
 </mapper>