protected function userStatus($operate, $data)
 {
     $table = 'users';
     $Data = new DataController();
     if (empty($data) || empty($data)) {
         return false;
     }
     $operate = strtolower($operate);
     //操作对state的改变
     //操作不存在报错
     if (empty($this->_status[$operate])) {
         return false;
     } else {
         extract($this->_status[$operate]);
     }
     if (!is_array($before_state)) {
         $before_state = explode(',', $before_state);
     }
     $data = $Data->parameter($data, $table);
     $user = M($table)->where($data)->find();
     if (!$user) {
         return false;
     }
     if (in_array($user['state'], $before_state)) {
         $user['state'] = $after_state;
         //修改成功
         $result = M($table)->save($user);
         if ($result) {
             return true;
         }
     }
     return true;
 }
 /**
  * 修改数据库里的属性
  * @param  string $operate 操作名
  * @param  array $data    数据
  * @return bool          是否成功
  */
 public function articleState($operate, $data)
 {
     if (empty($operate) || empty($data)) {
         return false;
     }
     $table = self::$article_table[$data['type_id']];
     $id = $data['id'];
     if (empty($id) || empty($table)) {
         return false;
     }
     $Data = new DataController();
     $operate = strtolower($operate);
     //操作不存在,返回false
     if (empty($this->_status[$operate])) {
         return false;
     } else {
         extract($this->_status[$operate]);
         if (!is_array($before_state)) {
             $before_state = explode(',', $before_state);
         }
     }
     $data = $Data->parameter($data, $table);
     $article = M($table)->where($data)->find();
     if (!$article) {
         return false;
     }
     if (in_array($article['state'], $before_state)) {
         $article['state'] = $after_state;
         //修改成功
         $result = M($table)->save($article);
         if ($result) {
             return true;
         }
     }
     return false;
 }
 /**
  *  管理员的状态
  */
 public function adminStatus($operate, $data)
 {
     if (empty($data) || empty($operate)) {
         return false;
     }
     $table = 'admin';
     //操作不存在报错
     if (empty($this->_status[$operate])) {
         returnJson(404);
     } else {
         extract($this->_status[$operate]);
     }
     $Data = new DataController();
     $before_state = !is_array($before_state) ? explode(',', $before_state) : $before_state;
     $data = $Data->parameter($data, $table);
     $admin = M($table)->where($data)->find();
     if (!$admin) {
         return false;
     }
     if ($operate == 'unlock') {
         S('adminLogin:'******'stunum'], null);
     }
     if (in_array($admin['state'], $before_state)) {
         $admin['state'] = $after_state;
         //修改成功
         $result = M($table)->save($admin);
         if ($result) {
             return true;
         }
     }
     return false;
 }
 /**
  * 改变状态参数
  * @param  string $operate 操作名
  * @param  array  $data    需修改的属性
  * @param  string $table   修改元素所在的表
  * @return bool          是否修改成功
  */
 protected function changeState($operate, $data, $table)
 {
     if (empty($operate) || empty($data)) {
         $this->_error = 'empty parameter';
         return false;
     }
     $Data = new DataController();
     //操作不存在,返回false
     if (empty($this->_status[$operate])) {
         $this->_error = 'error operate';
         return false;
     } else {
         //$before_state 和 $after_state
         extract($this->_status[$operate]);
         if (!is_array($before_state)) {
             $before_state = explode(',', $before_state);
         }
     }
     $data = $Data->parameter($data, $table);
     $data = M($table)->where($data)->find();
     if (!$data) {
         $this->_error = 'Dismatch ' . $table;
         return false;
     }
     if (in_array($data['state'], $before_state)) {
         $data['state'] = $after_state;
         $data['updated_time'] = date('Y-m-d H:i:s');
         //修改成功
         $result = M($table)->save($data);
         if ($result) {
             return true;
         }
     }
     $this->_error = "Can\\'t change the {$table} state!";
     return false;
 }