| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 | 
							- <?php
 
- namespace App\Models;
 
- use App\Models\BaseModel;
 
- /**
 
-  *  @description 权限表
 
-  *  @author  wangzhoudong  <admin@yijinba.com>;
 
-  *  @version    1.0
 
-  *  @date 2015-11-13
 
-  *
 
-  */
 
- class AdminAccessModel extends BaseModel
 
- {
 
-     /**
 
-      * 数据表名
 
-      * 
 
-      * @var string
 
-      *
 
-      */
 
-     protected $table = 'admin_access';
 
-     /**
 
-                 主键
 
-      */
 
-     protected $primaryKey = 'id';
 
-     //分页
 
-     protected $perPage = PAGE_NUMS;
 
-     
 
-     /**
 
-      * 可以被集体附值的表的字段
 
-      *
 
-      * @var string
 
-      */
 
-     protected $fillable = [
 
-         'role_id',
 
-         'menu_id'
 
-     ];
 
-     
 
-     public function menus() {
 
-         return $this->hasOne('App\Models\AdminMenusModel','id','menu_id');
 
-     }
 
-     
 
-     public $timestamps = false;
 
-     /**
 
-      * 取得用户组的权限信息
 
-      * 
 
-      * @param intval $groupId
 
-      * @return array
 
-      */
 
-     public function getRoleAccessMenu($roleIds,$isMenu = false)
 
-     {
 
-         if(is_string($roleIds)) {
 
-             $roleIds = explode(',', $roleIds);
 
-         }
 
-         $info = $this->select('admin_menus.id',
 
-                                'admin_menus.pid',
 
-                               'admin_menus.path',
 
-                             'admin_menus.name',
 
-                              'admin_menus.ico',
 
-                              'admin_menus.display',
 
-                             'admin_menus.sort')
 
-                      ->leftJoin('admin_menus', 'admin_access.menu_id', '=', 'admin_menus.id')
 
-                      ->leftjoin("admin_roles","admin_access.role_id","=","admin_roles.id")
 
-                     ->whereIn('role_id',$roleIds)
 
-                     ->where("admin_roles.status",1);
 
-         if($isMenu) {
 
-             $info = $info->where("admin_menus.display",1);
 
-         }
 
-         $info = $info
 
-                      ->orderBy('admin_menus.sort', 'desc')->orderBy('admin_menus.id', 'asc')
 
-                      ->groupby(\DB::raw("admin_menus.id"))
 
-                      ->get();
 
-         return $info->toArray();
 
-     }
 
- }
 
 
  |