public function actionUpdate() { $params = $this->getParams(); $accountId = $this->getAccountId(); Yii::$app->response->format = \yii\web\Response::FORMAT_JSON; if (empty($params['activity']['_id'])) { throw new BadRequestHttpException('activityId params missing'); } //Existing activity has been onshelve, can't change status to onshelve. $bar = ActivityBar::findOne(['status' => 'Y', 'isDeleted' => false, 'accountId' => $accountId]); if (!empty($bar) && (string) $bar['_id'] != $params['activity']['_id'] && $params['activity']['status'] == 'Y') { return ['code' => 1000]; } if ($params['activity']['_id'] != 'create') { $mongoId = ActivityBar::updateBar($params['activity']); $isTrue = ActivityPrize::updatePrize($params['prizes'], $mongoId); if (!$isTrue) { return ['code' => 500, 'activityId' => $mongoId]; } } return ['code' => 200]; }