Пример #1
0
 public static function createPrize($params, $activityId)
 {
     $accountId = Token::getAccountId();
     if (empty($accountId)) {
         throw new ServerErrorHttpException("Fail to get account's id");
     }
     for ($i = 0; $i < count($params); $i++) {
         unset($params[$i]['_id']);
         //remove default _id, create MongoId
         $params[$i]['activityId'] = $activityId;
         $params[$i]['accountId'] = $accountId;
         $params[$i]['points'] = (int) $params[$i]['points'];
         $params[$i]['quantity'] = (int) $params[$i]['quantity'];
         $prize = new ActivityPrize();
         if (!empty($params[$i]['startDate'])) {
             $params[$i]['startDate'] = MongodbUtil::msTimetamp2MongoDate($params[$i]['startDate']);
             $params[$i]['endDate'] = MongodbUtil::msTimetamp2MongoDate($params[$i]['endDate']);
         }
         $prize->attributes = $params[$i];
         if (!$prize->save()) {
             LogUtil::error(['message' => 'save activity-prize failed', 'error' => $prize->errors], 'activityPrize');
             // throw new ServerErrorHttpException('save activityPrize failed');
             return false;
         }
         unset($prize);
     }
     return true;
 }