Пример #1
0
 /**
  * Creates a new Coupon model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     //if(!Yii::$app->user->can('createYourAuth')) throw new ForbiddenHttpException(Yii::t('app', 'No Auth'));
     $model = new Coupon();
     $model->loadDefaultValues();
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         return $this->redirect(['view', 'id' => $model->id]);
     } else {
         return $this->render('create', ['model' => $model]);
     }
 }
Пример #2
0
 /**
  * Displays a single CouponType model.
  * @param integer $id
  * @return mixed
  */
 public function actionSend($id)
 {
     //if(!Yii::$app->user->can('viewYourAuth')) throw new ForbiddenHttpException(Yii::t('app', 'No Auth'));
     if (Yii::$app->request->post()) {
         if (isset(Yii::$app->request->post('CouponType')['users'])) {
             $strUser = Yii::$app->request->post('CouponType')['users'];
             $arrayUser = explode(',', $strUser);
             foreach ($arrayUser as $user) {
                 $user = User::find()->where(['username' => $user])->one();
                 $userId = isset($user) ? $user->id : null;
                 $couponType = CouponType::findOne($id);
                 if ($userId) {
                     $coupon = new Coupon();
                     $coupon->user_id = $userId;
                     $coupon->coupon_type_id = $id;
                     $coupon->money = $couponType->money;
                     $coupon->min_amount = $couponType->min_amount;
                     $coupon->started_at = $couponType->started_at;
                     $coupon->ended_at = $couponType->ended_at;
                     $coupon->user_id = $userId;
                     $coupon->save();
                 }
             }
         } elseif (isset(Yii::$app->request->post('CouponType')['numbers']) && Yii::$app->request->post('CouponType')['numbers'] > 0) {
             for ($i = 0; $i < Yii::$app->request->post('CouponType')['numbers']; $i++) {
                 $couponType = CouponType::findOne($id);
                 $coupon = new Coupon();
                 $coupon->coupon_type_id = $id;
                 $coupon->money = $couponType->money;
                 $coupon->min_amount = $couponType->min_amount;
                 $coupon->started_at = $couponType->started_at;
                 $coupon->ended_at = $couponType->ended_at;
                 $coupon->sn = Yii::$app->security->generateRandomString(8);
                 $coupon->save();
             }
         }
         return $this->redirect(['coupon/index']);
     } else {
         $model = $this->findModel($id);
         if ($model->type == CouponType::COUPON_TYPE_AMOUNT) {
             $arrayUserId = ArrayHelper::map(Order::find()->where('amount > :amount', [':amount' => $model->min_goods_amount])->all(), 'user_id', 'user_id');
             $arrayUserName = ArrayHelper::map(User::find()->where(['id' => $arrayUserId])->all(), 'id', 'username');
             $model->users = implode(',', $arrayUserName);
         }
         return $this->render('sendForm', ['model' => $model]);
     }
 }