From a93a3f1532d33849187dcd1a372c315ec4511e04 Mon Sep 17 00:00:00 2001 From: wu <731351411@qq.com> Date: 星期一, 04 十二月 2023 09:04:01 +0800 Subject: [PATCH] 理片笼逻辑和界面更改 --- springboot-vue3/src/main/java/com/example/springboot/service/impl/RoleServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 53 insertions(+), 0 deletions(-) diff --git a/springboot-vue3/src/main/java/com/example/springboot/service/impl/RoleServiceImpl.java b/springboot-vue3/src/main/java/com/example/springboot/service/impl/RoleServiceImpl.java new file mode 100644 index 0000000..719188d --- /dev/null +++ b/springboot-vue3/src/main/java/com/example/springboot/service/impl/RoleServiceImpl.java @@ -0,0 +1,53 @@ +package com.example.springboot.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.example.springboot.entity.vo.RoleVo; +import com.example.springboot.mapper.RoleMapper; +import com.example.springboot.service.RoleService; +import com.example.springboot.entity.Role; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +@Service +@Slf4j +public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements RoleService { + @Autowired + private RoleMapper roleDao; + + @Override + public Set<Role> selectRolesByParentId(Set<Role> roles, Long id) { + List<Role> list = lambdaQuery().eq(Role::getParentId, id).eq(Role::getState, 1).list(); + roles.addAll(list); + for (Role role : list) { + Set<Role> roles1 = selectRolesByParentId(roles, role.getId()); + roles.addAll(roles1); + } + return roles; + } + + @Override + public List<Role> selectRoles(Long id, Boolean contain) { + HashSet<Role> roles = new HashSet<>(); + if (contain) { + roles.add(roleDao.selectById(id)); + } + selectRolesByParentId(roles, id); + return new ArrayList<>(roles); + } + + @Override + public IPage<Role> selectPage(RoleVo roleVO) { + return lambdaQuery() + .like(StrUtil.isNotBlank(roleVO.getName()), Role::getName, roleVO.getName()) + .page(new Page<>(roleVO.getPageNum(), roleVO.getPageSize())); + } +} \ No newline at end of file -- Gitblit v1.8.0