/**
  * 登陆,如果失败,返回失败原因(用户名或者密码不正确),如果成功,返回用户信息,
  * 附带返回系统服务器时间戳
  */
 public function login()
 {
     //查user表
     $User = M('User');
     check_error($User);
     $user = $User->field(array('id' => 'userId', 'username' => 'userName', 'name', 'role_id' => 'roleId', 'role'))->where(array('username' => safe_post_param('username'), '_string' => "`password`=MD5('" . safe_post_param('password') . "')"))->find();
     if (!empty($user)) {
         //根据权限查菜单
         $Menu = M('Menu');
         check_error($Menu);
         $menu = $Menu->join('`role_privilege` on `menu`.`id`=`role_privilege`.`menu_id`')->join('`user` on `user`.`role_id`=`role_privilege`.`role_id`')->field(array('`menu`.`id`', 'level', 'label', 'icon', 'widget', 'show', 'big_icon'))->where("`user`.`id`='" . $user['userId'] . "'")->order('`level` ASC')->select();
         check_error($Menu);
         //保存session
         session('logined', true);
         session('user', $user);
         session('menu', $menu);
         //设置返回数据
         $data = array();
         $data['serverTime'] = time();
         $data['user'] = $user;
         $data['menu'] = $menu;
         //保存日志
         R('Log/adduserlog', array('登录', '登录成功', '成功'));
         //返回结果:用户数据+服务器时间
         return_value_json(true, 'data', $data);
     } else {
         //保存日志
         R('Log/adduserlog', array('登录', '登录失败:用户名或者密码不正确', '失败:权限不够', '用户名:' . safe_post_param('username')));
         return_value_json(false, 'msg', '用户名或者密码不正确');
     }
 }
Esempio n. 2
0
 /**
  * reorder操作根据POST['data']数据更新数据库里的sequence字段的值。
  * POST['data'] 的格式为 ID:旧:新,ID:旧:新,ID:旧:新,....
  */
 public function reorder()
 {
     if (!$this->isPost()) {
         return_value_json(false, 'msg', '非法的调用');
     }
     //数据检查
     $data = safe_post_param('data');
     if (empty($data)) {
         return_value_json(false, 'msg', '系统出错:重新排序内容为空');
     }
     $oldnews = explode(",", $data);
     $Driver = M('Driver');
     foreach ($oldnews as $oldnew) {
         $a = explode(":", $oldnew);
         if (count($a) != 3) {
             continue;
         }
         $data = array('sequence' => $a[2]);
         $Driver->where("`id`='" . $a[0] . "'")->data($data)->save();
     }
     //保存日志
     R('Log/adduserlog', array('调整司机排列顺序', '调整司机排列顺序成功', '成功', ''));
     return_value_json(true);
 }