AccessServiceInterface.php 2.86 KB
Newer Older
1 2 3 4 5 6 7 8 9 10
<?php
/**
 * Created by PhpStorm.
 * User: zero
 * Date: 2020/5/26
 * Time: 15:17
 */

namespace Meibuyu\Micro\Service\Interfaces\User;

王源's avatar
王源 committed
11 12 13 14
/**
 * @deprecated 此接口废弃,在之后的版本会被删除
 * 请引入meibuyu/rpc组件,使用Meibuyu\Rpc\Service\Interfaces\User\AccessServiceInterface
 */
15 16
interface AccessServiceInterface
{
王源's avatar
王源 committed
17

王源's avatar
王源 committed
18 19
    /**
     * 判断用户是否在业务部门(包括子部门)
20
     * @param $userId
王源's avatar
王源 committed
21 22
     * @return mixed
     */
23
    public function isBusinessDepartment($userId);
王源's avatar
王源 committed
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

    /**
     * 获取用户领导的部门id数组
     * @param $userId
     * @return array
     */
    public function leadDeptIds($userId);

    /**
     * 获取用户领导的团队id数组
     * @param $userId
     * @return array
     */
    public function leadTeamIds($userId);

王源's avatar
王源 committed
39 40 41 42 43 44 45 46 47
    /**
     * 获取鉴权的团队
     * @param $userId
     * @param bool $tree 是否返回树状结构
     * @param bool $noBusiness
     * @return array 已进行keyBy('id')处理,返回树状结构时,keyBy无效
     */
    public function getTeams($userId, $tree = false, $noBusiness = true);

48 49 50 51 52 53 54 55 56
    /**
     * 获取鉴权的团队id数组
     * @param $userId
     * @param bool $checkBusiness 是否验证业务部门(验证时,不是业务部门返回空团队;不验证时,不是业务部门返回all),默认不验证
     * @return array|string 如果是全部团队返回'all'字符串
     * @author Zero
     */
    public function getTeamIds($userId, $checkBusiness = false);

王源's avatar
王源 committed
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
    /**
     * 获取鉴权的团队带用户
     * @param $userId
     * @param bool $tree 是否返回树状结构
     * @param bool $noBusiness
     * @return array 已进行keyBy('id')处理,返回树状结构时,keyBy无效
     */
    public function getTeamsWithUsers($userId, $tree = false, $noBusiness = true);

    /**
     * 获取鉴权的部门
     * @param $userId
     * @param bool $tree 是否返回树状结构
     * @param bool $withUser 是否带用户数据
     * @return array 已进行keyBy('id')处理,返回树状结构时,keyBy无效
     */
    public function getDepartments($userId, $tree = false, $withUser = false);

王源's avatar
王源 committed
75 76 77 78 79 80 81 82 83
    /**
     * 获取鉴权的岗位
     * @param $userId
     * @param bool $tree 是否返回树状结构
     * @param bool $withUser
     * @return array 已进行keyBy('id')处理,返回树状结构时,keyBy无效
     */
    public function getPositions($userId, $tree = false, $withUser = false);

84 85 86
    /**
     * 获取鉴权的用户id列表
     * @param int $userId 当前用户id
87
     * @return array|string 如果是全部用户返回'all'字符串
88 89 90
     */
    public function getUserIds($userId);

91 92 93 94 95 96 97 98 99
    /**
     * 获取鉴权的用户id列表
     * 不验证业务部门
     * @param int $userId 当前用户id
     * @return array|string 如果是全部用户返回'all'字符串
     * @author zero
     */
    public function getUserIdsWithoutBusiness($userId);

100
}