From c327574106f470c72638e9f34c7f8cd26d78a2bf Mon Sep 17 00:00:00 2001 From: ludc Date: 星期三, 24 一月 2024 23:48:36 +0800 Subject: [PATCH] 分类授权,数据授权接口修改 --- Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/ClassifyAuthServiceImpl.java | 27 ++++++++++++++++++++------- 1 files changed, 20 insertions(+), 7 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/ClassifyAuthServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/ClassifyAuthServiceImpl.java index 124a39c..7bdaf05 100644 --- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/ClassifyAuthServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/ClassifyAuthServiceImpl.java @@ -2,10 +2,12 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.vci.ubcs.code.feign.ICodeClassifyClient; import com.vci.ubcs.starter.web.util.VciBaseUtil; +import com.vci.ubcs.system.dto.ClassifyAuthDTO; import com.vci.ubcs.system.entity.ClassifyAuth; import com.vci.ubcs.system.entity.Menu; import com.vci.ubcs.system.mapper.ClassifyAuthMapper; @@ -44,17 +46,28 @@ /** * 鍒嗙被鎺堟潈淇濆瓨鎺ュ彛 - * @param classifyAuthList + * @param classifyAuthListDTO * @return */ @Override @Transactional(rollbackFor = Exception.class) - public R submit(List<ClassifyAuth> classifyAuthList) { - if(classifyAuthList.isEmpty()){ + public R submit(ClassifyAuthDTO classifyAuthListDTO) throws ServiceException{ + // 鏄竻绌烘巿鏉冨垪琛� + if(classifyAuthListDTO.getIsCLear()){ + if(Func.isEmpty(classifyAuthListDTO.getClassifyId())){ + return R.fail("娓呯┖鎺堟潈鍒楄〃鏃讹紝鏈幏鍙栫殑鍒嗙被id"); + } + this.classifyAuthMapper.delete(Wrappers.<ClassifyAuth>update() + .lambda().eq(ClassifyAuth::getClassifyId, classifyAuthListDTO.getClassifyId()) + ); + return R.success("鎺堟潈鍒楄〃娓呯┖鎴愬姛"); + } + + if(!classifyAuthListDTO.getIsCLear() && classifyAuthListDTO.getClassifyAuthList().isEmpty()){ R.fail("鎺堟潈鍒楄〃涓嶈兘涓虹┖锛�"); } // 鍒ら噸锛屾煡鐪嬫槸鍚﹀瓨鍦ㄥ悓涓�涓猚lassid涓嬮厤缃簡鐩稿悓鐨勮鑹� - Map<String, Long> roleidCounts = classifyAuthList.stream() + Map<String, Long> roleidCounts = classifyAuthListDTO.getClassifyAuthList().stream() .collect(Collectors.groupingBy(ClassifyAuth::getRoleId, Collectors.counting())); // 妫�鏌ユ槸鍚︽湁roleid鍑虹幇娆℃暟澶т簬1鐨勬儏鍐� @@ -65,17 +78,17 @@ } // 濡傛灉浼犺繃鏉ョ殑闆嗗悎涓鍒嗙被id涓嬪垹闄や簡閮ㄥ垎瑙掕壊鐨勬巿鏉冿紝灏遍渶瑕佸皢璇ュ簱涓璫lassifyId涓嬩笉瀛樺湪鐨勬暟鎹垹鎺� - List<String> roleIds = classifyAuthList.stream().map(ClassifyAuth::getRoleId).collect(Collectors.toList()); + List<String> roleIds = classifyAuthListDTO.getClassifyAuthList().stream().map(ClassifyAuth::getRoleId).collect(Collectors.toList()); // 鍒犻櫎 LambdaUpdateWrapper<ClassifyAuth> updateWrapper = Wrappers.<ClassifyAuth>update() - .lambda().eq(ClassifyAuth::getClassifyId, classifyAuthList.get(0).getClassifyId()) + .lambda().eq(ClassifyAuth::getClassifyId, classifyAuthListDTO.getClassifyAuthList().get(0).getClassifyId()) .notIn(ClassifyAuth::getRoleId, roleIds); try { this.classifyAuthMapper.delete(updateWrapper); }catch (Exception e){ throw new ServiceException("鍒嗙被鎺堟潈杩囩▼涓嚭鐜伴敊璇紝閿欒鍘熷洜锛�"+e.getMessage()); } - return R.status(saveOrUpdateBatch(classifyAuthList)); + return R.status(saveOrUpdateBatch(classifyAuthListDTO.getClassifyAuthList())); } /** -- Gitblit v1.9.3