public function run() { $ids = Yii::app()->request->getParam('id'); $sortOrder = Yii::app()->request->getParam('sortOrder'); $command = Yii::app()->request->getParam('command'); empty($ids) && $this->controller->message('error', Yii::t('admin', 'No Select')); if (!is_array($ids)) { $ids = array($ids); } $criteria = new CDbCriteria(); $criteria->addInCondition('id', $ids); switch ($command) { case 'sortOrder': //推荐内容排序 foreach ($ids as $id) { Recommend::model()->updateByPk($id, array('sort_order' => $sortOrder[$id])); } break; case 'unCommend': //取消推荐内容 Recommend::model()->deleteAll($criteria); break; default: throw new CHttpException(404, Yii::t('admin', 'Error Operation')); } $this->controller->message('success', Yii::t('admin', 'Batch Operate Success')); }
/** * 判断数据是否存在 * * return \$this->model */ public function loadModel() { if ($this->model === null) { if (isset($_GET['id'])) { $this->model = Recommend::model()->findbyPk($_GET['id']); } if ($this->model === null) { throw new CHttpException(404, Yii::t('common', 'The requested page does not exist.')); } } return $this->model; }
public function run() { $ids = Yii::app()->request->getParam('id'); $command = Yii::app()->request->getParam('command'); empty($ids) && $this->controller->message('error', Yii::t('admin', 'No Select')); if (!is_array($ids)) { $ids = array($ids); } $criteria = new CDbCriteria(); $criteria->addInCondition('id', $ids); switch ($command) { case 'delete': //删除 RecommendPosition::model()->deleteAll($criteria); //同时删除推荐的内容 $criteria_r = new CDbCriteria(); $criteria_r->addInCondition('position_id', $ids); Recommend::model()->deleteAll($criteria_r); break; default: $this->controller->message('error', Yii::t('admin', 'Error Operation')); } $this->controller->message('success', Yii::t('admin', 'Batch Operate Success')); }
/** * 批量操作 * */ public function actionBatch() { if ($this->method() == 'GET') { $command = trim($_GET['command']); $ids = intval($_GET['id']); } else { if ($this->method() == 'POST') { $command = trim($_POST['command']); $ids = $_POST['id']; } else { $this->message('errorBack', Yii::t('admin', 'Only POST Or GET')); } } empty($ids) && $this->message('error', Yii::t('admin', 'No Select')); switch ($command) { case 'sortOrder': //排序 $sortOrder = $_POST['sortOrder']; foreach ((array) $ids as $id) { $recModel = Recommend::model()->find('content_id=:id', array(':id' => $id)); if ($recModel) { $recModel->sort_order = $sortOrder[$id]; $recModel->save(); } } break; case 'Delete': foreach ((array) $ids as $id) { $reModel = RecommendPosition::model()->findByPk($id); if ($reModel) { $reModel->delete(); //同时删除推荐的内容 Recommend::model()->deleteAll('id=' . $id); } } break; case 'unCommend': //取消推荐 $uncommend = $_POST['unCommend']; foreach ((array) $ids as $id) { $recModel = Recommend::model()->find('content_id=:id', array(':id' => $id)); if ($recModel) { $recModel->delete(); } } break; default: throw new CHttpException(404, Yii::t('admin', 'Error Operation')); break; } $this->message('success', Yii::t('admin', 'Batch Operate Success'), $this->createUrl('index')); }