diff --git a/Application/Admin/Event/MarketEvent.class.php b/Application/Admin/Event/MarketEvent.class.php index c46067bbc..4a4ca1938 100644 --- a/Application/Admin/Event/MarketEvent.class.php +++ b/Application/Admin/Event/MarketEvent.class.php @@ -7,6 +7,7 @@ class MarketEvent extends Controller { private $MarketDepartmentId = "1,2"; private $ManagerLevel = "4"; + private $DirectorLevel = "5"; /** * 获取所有市场部组id */ @@ -49,9 +50,78 @@ class MarketEvent extends Controller ->getField("acc.uid,mem.nickname,mem.real_name,gro.department_id,gro.market_percentage",true); return $market; } + /** + * 获取配置信息 + * @param [string] $key + * @return void + */ public function getConfig($key) { return $this->$key; } + public function isMarketAdminGroup($gid) + { + $where = [ + "department_id"=>['in',$this->MarketDepartmentId], + "id"=>$gid + ]; + return M('auth_group','sys_')->field("id,department_id,department_level")->where($where)->find(); + } + + public function isDepartmentLeder($department_id,$uid) + { + $gid = M("auth_group_access")->where("uid = '{$uid}'")->getField('group_id'); + return M('department','sys_')->where("id = '{$department_id}' and leader_group = '$gid'")->field("id")->find(); + } + + public function getDepartmentUserId($department_id) + { + $res = M("auth_group_access") + ->alias("acc") + ->field("acc.uid") + ->where(['gro.department_id'=>$department_id]) + ->join("sys_member as mem on acc.uid = mem.uid") + ->join("sys_auth_group as gro on acc.group_id = gro.id") + ->select(); + return array_column($res,'uid'); + } + + public function getAdminCompanyId() + { + if (!empty(session('user_auth_company_ids'))) { + return session('user_auth_company_ids'); + } + $userAuth = session('user_auth'); + $companyIds = 'all'; + $userAuth['data_president']= trim($userAuth['data_president'], ","); + if (!empty($userAuth['data_empower_type'])) {//数据权限 1 全部 2 部分数据 3 自己底下的会长 + //等于1默认全部数据,不进行筛选 + if (in_array($userAuth['data_empower_type'], [2, 3])) { + $companyIds = ''; + //自己创建的会长 + $myPromote_ids = M('promote', 'tab_') + ->field('GROUP_CONCAT(id) as promote_ids') + ->where(['admin_id' => $userAuth['uid']]) + ->find(); + $myPromote_ids = $myPromote_ids['promote_ids']; + if ($myPromote_ids) { + if ($userAuth['data_empower_type'] == 2) {//部分会长加上自己创建的会长 + + // $userAuth['data_president'] .= "," . $myPromote_ids; + } elseif ($userAuth['data_empower_type'] == 3) {//自己创建的会长和底下推广员 + $userAuth['data_president'] = $myPromote_ids; + } + } + $dbres = M('promote', 'tab_') + ->field('company_id') + ->where(['id' =>['in',$userAuth['data_president']],'level'=>1]) + ->group('company_id') + ->getField('company_id',true); + $companyIds = implode(",",$dbres); + } + } + session('user_auth_company_ids', $companyIds); + return $companyIds; + } } \ No newline at end of file