package com.hotwj.platform.resourceManagement.companyPermissionGrant.service;

import com.hotwj.platform.resourceManagement.companyPermissionGrant.domain.bo.HotCompanyPermissionGrantBo;
import com.hotwj.platform.resourceManagement.companyPermissionGrant.domain.vo.HotCompanyPermissionGrantVo;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;

import java.util.Collection;
import java.util.Set;

public interface IHotCompanyPermissionGrantService {

    HotCompanyPermissionGrantVo queryById(Long id);

    TableDataInfo<HotCompanyPermissionGrantVo> queryPageList(HotCompanyPermissionGrantBo bo, PageQuery pageQuery);

    Boolean insertByBo(HotCompanyPermissionGrantBo bo);

    Boolean updateByBo(HotCompanyPermissionGrantBo bo);

    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    Set<String> selectActivePermissionCodes(Long companyId, Long granteeUserId);
}
