Example #1
0
 /**
  * 改变产品状态
  */
 public function actionSavestatus()
 {
     $request = \Yii::$app->request;
     $productId = intval($request->get('productId', ''));
     $userId = $request->_get('userId', 0);
     $usign = $request->_get('usign', '');
     if ($usign != EasyHelpers::encrypty($userId, \Yii::$app->params['key'])) {
         return ['code' => 5, 'msg' => '非法数据'];
     }
     if (!$productId) {
         return ['code' => 2, 'msg' => '数据非法'];
     }
     $status = $request->_get('status', 'waiting');
     if (!in_array($status, \Yii::$app->params['productStatus'])) {
         $status = 'waiting';
     }
     if ($status == 'online' && !Product::checkChangeable($productId)) {
         //return ['code' => 1, 'msg' => '系统下架商品不可上架'];
     }
     if ($status == 'online' && !MiaoCoin::getMiaoCoin($userId)) {
         return ['code' => 1, 'msg' => '瞄币不足,请先到账户信息页面进行充值'];
     }
     if ($status == 'online') {
         $product = Product::findOne(['productId' => $productId]);
         $ownId = $product ? $product['ownid'] : '';
         if ($userId != $ownId) {
             return ['code' => 6, 'msg' => '数据非法', 'data' => []];
         }
         $checkFN = \master\models\Store::checkFileNumberOnline($userId);
         if (!$checkFN) {
             return ['code' => 2, 'msg' => '模具空间不足'];
         }
     }
     $model = new Product();
     $res = $model->saveStatus($productId, $status);
     if ($res !== false) {
         return ['code' => 0, 'msg' => '操作成功'];
     } else {
         return ['code' => 2, 'msg' => '操作失败,请重试'];
     }
 }