예제 #1
0
 public function login()
 {
     $account = Input::get('account', '');
     $pass = Input::get('pass', '');
     try {
         $admin = SysUser::where('account', '=', $account)->where('is_del', '=', 0)->where('status', '=', 1)->first();
         if (empty($admin)) {
             throw new Exception("没有找到可用的用户", 10003);
         }
         if (!Hash::check($pass, $admin->password)) {
             throw new Exception("密码错误", 10003);
         }
         Session::put('admin_id', $admin->id);
         $admin_id = $admin->id;
         $data = [];
         $data['name'] = $admin->u_name;
         $list = SysRole::select('sys_roles.*')->join('sys_user_roles', function ($q) use($admin_id) {
             $q->on('sys_roles.id', '=', 'sys_user_roles.r_id')->where('sys_user_roles.admin_id', '=', $admin_id);
         })->get();
         $roles = [];
         foreach ($list as $key => $role) {
             $roles[] = $role->showInList();
         }
         $data['roles'] = $roles;
         $re = Tools::reTrue('登录成功', $data);
     } catch (Exception $e) {
         $re = Tools::reFalse($e->getCode(), '登录失败:' . $e->getMessage());
     }
     return Response::json($re);
 }
예제 #2
0
 public static function getTreeByRole($role_id = 0)
 {
     $role = SysRole::find($role_id);
     if (empty($role)) {
         throw new Exception("没有查找到角色数据", 10001);
     }
     $list = SysMenu::select('sys_menus.*', 'sys_role_menus.r_id AS checked')->leftJoin('sys_role_menus', function ($q) use($role_id) {
         $q->on('sys_menus.id', '=', 'sys_role_menus.m_id')->where('sys_role_menus.r_id', '=', $role_id);
     })->groupBy('sys_menus.id')->get();
     $re = SysMenu::makeTree($list);
     return $re['tree'];
 }
 public function postRoleUser($id)
 {
     $users = Input::get('users', '');
     try {
         SysUserRole::clearRoleUser($id);
         if (!empty($users)) {
             if (!is_array($users)) {
                 $role = SysRole::find($id);
                 if (empty($role)) {
                     throw new Exception("没有找到请求的角色", 1);
                 }
                 $users = explode(',', $users);
                 foreach ($users as $key => $user) {
                     if (!$user) {
                         continue;
                     }
                     $role->addUser($user);
                 }
             }
         }
         $re = Tools::reTrue('设置用户成功');
     } catch (Exception $e) {
         $re = Tools::reFalse($e->getCode(), '设置用户失败:' . $e->getMessage());
     }
     return Response::json($re);
 }
 public function listUserRole($id)
 {
     $per_page = Input::get('per_page', null);
     try {
         $admin = SysUser::find($id);
         if (empty($admin)) {
             throw new Exception("没有找到用户", 10001);
         }
         $query = SysRole::select('sys_roles.*')->join('sys_user_roles', function ($q) use($id) {
             $q->on('sys_roles.id', '=', 'sys_user_roles.r_id')->where('sys_user_roles.admin_id', '=', $id);
         });
         $list = $query->paginate($per_page);
         $data['rows'] = [];
         foreach ($list as $key => $role) {
             $data['rows'][] = $role->showInList();
         }
         $data['total'] = $list->getTotal();
         $re = Tools::reTrue('获取角色成功', $data, $list);
     } catch (Exception $e) {
         $re = Tools::reFalse($e->getCode(), '获取角色失败:' . $e->getMessage());
     }
     return Response::json($re);
 }