package com.engine.salary.mapper.auth;

import com.engine.salary.entity.auth.dto.AuthTreeDTO;
import com.engine.salary.entity.auth.dto.SobOptAuth;
import com.engine.salary.entity.auth.dto.TaxEmpOptAuth;
import com.engine.salary.entity.auth.dto.TaxOptAuth;
import com.engine.salary.entity.auth.param.AuthTreeQueryParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface AuthMapper {

    List<TaxEmpOptAuth> getTaxEmpOptAuth(@Param("uid") Long uid, @Param("page") String page);

    List<TaxOptAuth> getTaxOptAuth(@Param("uid") Long uid, @Param("page") String page);

    List<SobOptAuth> getSobOptAuth(@Param("uid") Long uid, @Param("page") String page);

    List<Long> getLimitSobs(@Param("uid") Long uid);

    List<Long> getLimitTaxAgents(@Param("uid") Long uid);

    List<String> getOptsByPage(@Param("uid") Long uid, @Param("page") String page);

    AuthTreeDTO authTree(AuthTreeQueryParam param);
}