public function actionCreate()
 {
     $post = Yii::$app->request->post();
     if ($post) {
         if (Yii::$app->user->isGuest) {
             return Json::encode(['message' => '请先登录']);
         }
         if (Kiwi::getCustomerSeller()->find()->where(['customer_id' => Yii::$app->user->id])->one()->status != 1) {
             return Json::encode(['message' => '您还不是销售,或者审核未通过,请去用户中心页面申请']);
         }
         if (Kiwi::getCustomerSales()->find()->where(['user_id' => Yii::$app->user->id, 'item_id' => $post['item_id']])->all()) {
             return Json::encode(['message' => '您已经申请过此商品,请耐心等候审核']);
         }
         $model = Kiwi::getCustomerSales(['user_id' => Yii::$app->user->id]);
         $model->item_id = $post['item_id'];
         $itemModel = Kiwi::getItem()->findOne(['item_id' => $model->item_id]);
         $model->status = 0;
         $model->price = $itemModel->original_price;
         if ($model->save()) {
             return Json::encode(['message' => '申请销售成功']);
         } else {
             return Json::encode(['message' => '申请销售失败,若多次出现请联系管理员']);
         }
     }
 }
Example #2
0
 /**
  * Creates a new Item model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = Kiwi::getItem();
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         return $this->redirect(['view', 'id' => $model->item_id]);
     } else {
         return $this->render('create', ['model' => $model]);
     }
 }
Example #3
0
 public function updateItemStock()
 {
     foreach ($this->orderItems as $orderItem) {
         $item = Kiwi::getItem()->findOne(['item_id' => $orderItem->item_id]);
         $item->stock_qty = $item->stock_qty - $orderItem->qty;
         if (!$item->save()) {
             throw new Exception('update item fail');
         }
     }
 }
Example #4
0
 /**
  * @param $event CartEvent
  */
 public function validate($event)
 {
     //@TODO need to move to cart model the have error message
     $item = Kiwi::getItem()->findOne($event->item_id);
     if (!$item || intval($event->qty) != $event->qty) {
         $event->isValid = false;
         return;
     }
     if ($event->qty <= 0 || $item->max_sale_qty && $event->qty > $item->max_sale_qty || $item->min_sale_qty && $event->qty < $item->min_sale_qty) {
         $event->isValid = false;
         return;
     }
 }
Example #5
0
 public function getItem()
 {
     return $this->hasOne(Kiwi::getItem(), ['item_id' => 'item_id']);
 }