package com.springboot.cloud.sysadmin.organization.service;

/*
 **********************************************
 *      DATE           PERSON       REASON
 *    2020-12-29          FXY        Created
 **********************************************
 */


import com.springboot.cloud.sysadmin.organization.entity.po.application.ApplicationPopedom;
import com.springboot.cloud.sysadmin.organization.entity.po.company.CompanyRolePopedom;
import com.springboot.cloud.sysadmin.organization.entity.po.company.CompanyRoleUser;
import com.springboot.cloud.sysadmin.organization.entity.po.company.CompanyUser;
import com.springboot.cloud.sysadmin.organization.entity.vo.Popedom;

import java.util.List;

public interface CompanyService {
    /**
     *  得到用户所有的角色
     * @param companyId
     * @param userId
     * @return
     */
    public List<CompanyRoleUser> getCompanyRoleUser(String companyId, String userId);

    /**
     * 得到用户所有的角色
     */
    public List<CompanyRoleUser> getCompanyRoleUser(String userId);

    /**
     *  得到角色资源
     * @param companyId
     * @param roleId
     * @return
     */
    public List<CompanyRolePopedom> getCompanyRolePopedom(String companyId, String roleId);

    /**
     * 得到角色资源
     * @param companyId
     * @param roleIds
     * @return
     */
    public List<CompanyRolePopedom> getCompanyRolePopedom(String companyId,List<String> roleIds);


    /**
     * 得到用户资源
     * @return
     */
    public List<ApplicationPopedom> getCompanyUserPopedom(String companyId,String userId);

    /**
     * 得到公司所有资源
     * @param companyId
     * @return
     */
    public List<ApplicationPopedom> getCompanyAllPopedom(String companyId);

    /**
     * 得到所有公司资源
     */
    public List<Popedom> getAllPopedom();

    /**
     * 得到用户对应的所有公司
     */
    public List<CompanyUser> getUserAllCompany(String userId);
}
