package cc.mrbird.febs.system.service.impl; import cc.mrbird.febs.system.entity.UserDataPermission; import cc.mrbird.febs.system.mapper.UserDataPermissionMapper; import cc.mrbird.febs.system.service.IUserDataPermissionService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringPool; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; /** * @author MrBird */ @Service("userDataPermissionService") @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) public class UserDataPermissionServiceImpl extends ServiceImpl implements IUserDataPermissionService { @Override @Transactional(rollbackFor = Exception.class) public void deleteByDeptIds(List deptIds) { this.baseMapper.delete(new LambdaQueryWrapper().in(UserDataPermission::getDeptId, deptIds)); } @Override @Transactional(rollbackFor = Exception.class) public void deleteByUserIds(String[] userIds) { List list = Arrays.asList(userIds); this.baseMapper.delete(new LambdaQueryWrapper().in(UserDataPermission::getUserId, list)); } @Override public String findByUserId(String userId) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(UserDataPermission::getUserId, userId); return this.baseMapper.selectList(wrapper).stream().map(permission -> String.valueOf(permission.getDeptId())).collect(Collectors.joining(StringPool.COMMA)); } }