From c9da1b0da1178911e383ddcaebecd1e088fa6004 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期二, 05 九月 2023 16:37:07 +0800
Subject: [PATCH] 修改bug
---
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java | 23 ++++++++++++++++++-----
1 files changed, 18 insertions(+), 5 deletions(-)
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
index c1c4e18..d352830 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
@@ -3,7 +3,7 @@
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.exception.AuthException;
@@ -17,8 +17,10 @@
import com.yuanchu.limslaboratory.pojo.dto.RoleInfoDto;
import com.yuanchu.limslaboratory.pojo.dto.UpdateRoleMenuDto;
import com.yuanchu.limslaboratory.service.RoleManagerService;
+import com.yuanchu.limslaboratory.utils.ArrayListUtil;
import com.yuanchu.limslaboratory.utils.JsonUtil;
import com.yuanchu.limslaboratory.utils.MyUtil;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -32,6 +34,7 @@
* @Date 2023/8/23
*/
@Service
+@Slf4j
public class RoleManagerServiceImpl implements RoleManagerService {
@Resource
@@ -74,6 +77,7 @@
,createTime
));
});
+ roleMenuList.add(new RoleMenu(null,nextId,39L,true,false,false,false,createTime));
//roleMenuAddList.forEach(System.out::println);
int i = roleManageMapper.insertBatchRoleMenu(roleMenuList);
return insert>0&&i>0;
@@ -122,16 +126,24 @@
.set(RoleInfo::getUpdateTime,DateUtil.toLocalDateTime(DateUtil.date()))
.eq(RoleInfo::getId,dto.getRoleId());
int update = roleManageMapper.update(null, updateWrapper);
- //鍒犻櫎role_menu淇℃伅
- int deleteRoleMenuByRoleId = roleManageMapper.deleteRoleMenuByRoleId(dto.getRoleId());
+ List<RoleMenu> roleMenuByRoleId = roleManageMapper.getRoleMenuByRoleId(dto.getRoleId());
+ if (roleMenuByRoleId.size()>1){
+ //鍒犻櫎role_menu淇℃伅
+ update = roleManageMapper.deleteRoleMenuByRoleId(dto.getRoleId());
+ }
//娣诲姞鏈�鏂伴�夋嫨銆�
dto.getMenuData().forEach(l->{
l.setRoleId(dto.getRoleId());
l.setCreateTime(DateUtil.toLocalDateTime(DateUtil.date()));
l.setUpdateTime(DateUtil.toLocalDateTime(DateUtil.date()));
});
- int insertBatchRoleMenu = roleManageMapper.insertBatchRoleMenu(dto.getMenuData());
- return update>0&&deleteRoleMenuByRoleId>0&&insertBatchRoleMenu>0;
+ List<RoleMenu> collect = dto.getMenuData().stream().filter(l -> l.getAdded() == false && l.getDeleted() == false && l.getSelected() == false && l.getUpdated() == false).collect(Collectors.toList());
+ List<RoleMenu> roleMenuList = ArrayListUtil.compareNotEqualListBySingleValue(dto.getMenuData(), collect);
+ if(roleMenuList.size()>0){
+ return update>0&&roleManageMapper.insertBatchRoleMenu(roleMenuList)>0;
+ }else {
+ return update>0;
+ }
}
@Override
@@ -149,6 +161,7 @@
String type=null;
Map<String, Object> stringIntegerMap = roleManageMapper.selctInterFaceType(url);
if(Objects.isNull(stringIntegerMap)){
+ log.warn("娌℃湁====銆�"+url+"璇锋眰璧勬簮");
throw new AuthException("403","娌℃湁璇ヨ祫婧�");
}
String of = String.valueOf(stringIntegerMap.get("type"));
--
Gitblit v1.9.3