attributes = get_params(); $form->store_id = get_saas_purchase_store_id(); $form->saas_id = get_saas_user_id(); return $this->asJson($form->search()); } /** * 添加购物车 */ public function actionAddCart() { if (\Yii::$app->request->isPost) { $post = post_params(); $form = new CartForm(); $form->store_id = get_saas_purchase_store_id(); $form->saas_id = get_saas_user_id(); if(isset($post['goods_list']) && !empty($post['goods_list'])){ $goods_list = $post['goods_list']; $error = 0; foreach ($goods_list as $gv){ $attr_list = $gv['attr_list']; $form->goods_id = $gv['goods_id']; foreach ($attr_list as $value){ $form->attr = $value['attr']; $form->num = $value['num']; $status = $form->save(); if($status['code'] != 0){ $error++; } } } if($error > 0){ return $this->asJson([ 'code' => 0, 'msg' => '添加成功,' . $error . "个失败", ]); }else{ return $this->asJson([ 'code' => 0, 'msg' => '添加成功' ]); } } if(isset($post['attr_list']) && !empty($post['attr_list'])){ $attr_list = $post['attr_list']; $form->goods_id = $post['goods_id']; $error = 0; foreach ($attr_list as $value){ $form->attr = $value['attr']; $form->num = $value['num']; $status = $form->save(); if($status['code'] != 0){ debug_log($status['msg']); debug_log($error); $error++; } } if($error > 0){ return $this->asJson([ 'code' => 0, 'msg' => '添加成功,' . $error . "个失败", ]); }else{ return $this->asJson([ 'code' => 0, 'msg' => '添加成功' ]); } }else{ $form->attributes = post_params(); return $this->asJson($form->save()); } } } public function actionUpdateCart() { if (\Yii::$app->request->isPost) { $post = post_params(); if (!isset($post['attr']) || empty($post['attr'])) { return $this->asJson([ 'code' => 1, 'msg' => '规格数据不能为空' ]); } if (!isset($post['cart_id'])) { return $this->asJson([ 'code' => 1, 'msg' => '缺少必要参数' ]); } if (!isset($post['num']) || $post['num'] <= 0) { return $this->asJson([ 'code' => 1, 'msg' => '缺少必要参数' ]); } $id = $post['cart_id']; $cart = PurchaseCart::findOne($id); if (!$cart) { return $this->asJson([ 'code' => 1, 'msg' => '数据不存在' ]); } $params_attr = json_decode($post['attr'], true); $attr = []; foreach ($params_attr as $item) { if (!empty($item['attr_id'])) { $attr[] = $item['attr_id']; } } sort($attr); $attr = json_encode($attr, JSON_UNESCAPED_UNICODE); $cart->attr = $attr; $cart->num = (int)$post['num']; if ($cart->save()) { return $this->asJson([ 'code' => 0, 'msg' => '规格修改成功' ]); } return $this->asJson([ 'code' => 1, 'msg' => '规格修改失败' ]); } } /** * 删除 */ public function actionDelete() { $form = new CartForm(); $form->attributes = post_params(); //$form->store_id = get_store_id(); $form->saas_id = get_saas_user_id(); return $this->asJson($form->del()); } }