From dd2554435b9ced61e2a6a06627145fca3bf2685b Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期一, 04 九月 2023 17:17:17 +0800 Subject: [PATCH] 修改bug --- user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java | 28 ++++++++++++++++++++++------ 1 files changed, 22 insertions(+), 6 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 42b669d..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,9 +3,10 @@ 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; import com.yuanchu.limslaboratory.mapper.MenuMapper; import com.yuanchu.limslaboratory.mapper.RoleManageMapper; import com.yuanchu.limslaboratory.pojo.Menu; @@ -16,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; @@ -31,6 +34,7 @@ * @Date 2023/8/23 */ @Service +@Slf4j public class RoleManagerServiceImpl implements RoleManagerService { @Resource @@ -73,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; @@ -121,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 @@ -147,6 +160,10 @@ public Map<String, Object> getUrlType(String url) { 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")); switch (of) { case "0": @@ -165,7 +182,6 @@ break; } stringIntegerMap.put("type",type); - System.out.println(type); return stringIntegerMap; } -- Gitblit v1.9.3