package com.nova.sankuai.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.nova.sankuai.domain.entity.RolePermission; import com.nova.sankuai.infra.mapper.RolePermissionMapper; import com.nova.sankuai.service.IRolePermissionService; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.stream.Collectors; /** *

* description *

* * @author denglb 2021/11/18 */ @Service @AllArgsConstructor public class RolePermissionServiceImpl extends ServiceImpl implements IRolePermissionService { private RolePermissionMapper rolePermissionMapper; @Override @Transactional(rollbackFor = Exception.class) public void assignPermissions(List permissionIds, Long roleId) { rolePermissionMapper.deleteByRoleId(roleId); if (permissionIds.size() > 0) { permissionIds = permissionIds.stream().distinct().collect(Collectors.toList()); rolePermissionMapper.assignPermissions(permissionIds, roleId); } } }