示例#1
0
 /**
  * @var User $user
  *
  * @param $id
  * @return string
  * @throws ErrorException
  */
 public function actionRepeat($id)
 {
     $user = Yii::$app->user->identity;
     $order = Order::findOne($id);
     $db = Yii::$app->db;
     if ($order->user_id === $user->getId()) {
         if ($user->money >= $order->sum) {
             $user->debitMoney($order->sum);
             $transaction = $db->beginTransaction();
             try {
                 $user->save();
                 $id = Api::setTaskByNetwork($order);
                 if ($id !== NULL) {
                     $order->status = Order::PROCESSED;
                     $order->foreign_id = $id;
                     $order->save(false);
                     $transaction->commit();
                     Yii::$app->session->setFlash('message', ['type' => 'success', 'message' => 'Задание отправлено на повторное выполнение']);
                 } else {
                     throw new ErrorException();
                 }
             } catch (ErrorException $e) {
                 $transaction->rollBack();
             }
         }
     } else {
         throw new ErrorException('Что-то не так');
     }
     return $this->redirect(Yii::$app->urlManager->createUrl('task/order/view-all'));
 }
示例#2
0
文件: Instagram.php 项目: apuc/api
 static function setTask($model)
 {
     self::checkToken();
     if ($model->service_id === Service::SUBSCRIBER_INSTAGRAM) {
         return self::setSubscriberTask(Api::getQueryParams($model));
     }
     return self::setLikeTask(Api::getQueryParams($model));
 }
示例#3
0
 public function deleteTask($id)
 {
     $model = $this->findModel($id);
     if (isset($model->foreign_id)) {
         if (Api::deleteTaskByNetwork($model)) {
             return true;
         }
     }
     return false;
 }
示例#4
0
 /**
  * @var \common\modules\statistics\models\Order $model
  * @param $id
  * @return \yii\web\Response
  * @throws Exception
  * @throws NotFoundHttpException
  */
 public function actionApply($id)
 {
     $model = $this->findModel($id);
     $id = Api::setTaskByNetwork($model);
     if ($id !== NULL) {
         $model->status = Order::PROCESSED;
         $model->foreign_id = $id;
         $model->save(false);
     }
     return $this->redirect(['index']);
 }
示例#5
0
文件: Twitter.php 项目: apuc/api
 static function setTask($model)
 {
     self::checkToken();
     if ($model->service_id === Service::FAVORITE_TWITTER) {
         return self::setFavoritesTask(Api::getQueryParams($model));
     }
     if ($model->service_id === Service::SUBSCRIBER_TWITTER) {
         return self::setSubscriberTask(Api::getQueryParams($model));
     }
     return self::setRetwitTask(Api::getQueryParams($model));
 }
示例#6
0
文件: VK.php 项目: apuc/api
 public static function setTask($model)
 {
     self::checkToken();
     $query = Api::getQueryParams($model);
     $query['token'] = self::$token;
     $curl = curl_init();
     curl_setopt($curl, CURLOPT_URL, 'https://like4u.ru/tasks.json');
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
     curl_setopt($curl, CURLOPT_POST, true);
     curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($query));
     $result = curl_exec($curl);
     curl_close($curl);
     $resultObj = json_decode($result);
     $id = $resultObj->id ? $resultObj->id : false;
     return $id;
 }