user(); if (!$user) return $this->error(ErrorCode::ERROR_POWER); $validator = Validator::make($request->all(), [ 'appid' => 'required', ], [ 'appid.required' => 'appid不存在', ] ); if ($validator->fails()) { return $this->validatorError($validator->messages()->all(), ErrorCode::CLIENT_WRONG_PARAMS); } $appid = $request->input('appid'); $goods = S1CartInfoModel::where('appid',$appid)->where('wx_user_id',$user->id)->with('goods')->orderBy('created_at','desc')->paginate(); return $this->api($goods); } /** * @api {post} /api/car/update 编辑 * @apiDescription 编辑(修改购物车商品数量) * @apiGroup Car * @apiParam {int} id 商品id * @apiParam {int} number 购买数量 * @apiPermission none * @apiVersion 0.1.0 * @apiSuccessExample {json} Success-Response: * HTTP/1.1 200 OK * { "status": true, "status_code": 0, "message": "", "data": 2005 } * @apiErrorExample {json} Error-Response: * HTTP/1.1 400 Bad Request */ public function update(Request $request) { $user = \Auth::guard('api')->user(); if (!$user) return $this->error(ErrorCode::ERROR_POWER); $validator = Validator::make($request->all(), [ 'id' => 'required', 'number' => 'required', ], [ 'id.required' => '商品不存在', 'number.required' => '购买数量不能为空', ] ); if ($validator->fails()) { return $this->validatorError($validator->messages()->all(),ErrorCode::CLIENT_WRONG_PARAMS); } $id = $request->input('id'); $number = $request->input('number'); // 检查购买数量是否大于库存量剩余量 $goods = S1GoodsInfoModel::find($id); if (empty($goods)) return $this->error(ErrorCode::GOODS_NOT_EXIST); $stock = $goods->stock - $goods->sale_number; if($number>$stock) return $this->error(ErrorCode::GOODS_MAX); if($number<1) return $this->error(ErrorCode::GOODS_MIN); $cat_goods = S1CartInfoModel::where('wx_user_id',$user->id)->where('s1_goods_id',$id)->first(); if(empty($cat_goods)) return $this->error(ErrorCode::CAT_ERROR); $cat_goods->goods_num = $number; $ok = $cat_goods->save(); if($ok) return $this->api(ErrorCode::OP_SUCCESS); return $this->error(ErrorCode::OP_ERROR); } /** * @api {get} /api/car/delete 删除 * @apiDescription 删除 * @apiGroup Car * @apiParam {int} ids 主键id 数组 * @apiPermission none * @apiVersion 0.1.0 * @apiSuccessExample {json} Success-Response: * HTTP/1.1 200 OK { "status": true, "status_code": 0, "message": "", "data": 2005 } * @apiErrorExample {json} Error-Response: * HTTP/1.1 400 Bad Request */ public function delete(Request $request) { $user = \Auth::guard('api')->user(); if (!$user) return $this->error(ErrorCode::ERROR_POWER); $validator = Validator::make($request->all(), [ 'ids' => 'required', ], [ 'ids.required' => '主键id数组不存在', ] ); if ($validator->fails()) { return $this->validatorError($validator->messages()->all(),ErrorCode::CLIENT_WRONG_PARAMS); } $ids = $request->input('ids'); $ids = json_decode($ids,true); //对JSON格式的字符串进行编码 $ok = S1CartInfoModel::destroy($ids); if($ok) return $this->api(''); return $this->error(ErrorCode::OP_ERROR); } }