下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

收藏

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

加入购物车

下单全过程3

下单全过程3

下单全过程3

<?php

namespace App\Http\Requests\Api\V1;

use App\Models\ProductSku;

class CartItemRequest extends FormRequest
{
    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'sku_id' => [
                'required',//必须要有skuid
                function ($attribute,$value,$fail){
                    if (!$sku = ProductSku::find($value)){
                        return response()->json([
                            'code' => 422,
                            'error' => '该商品不存在'
                        ]);
                    }
                    if (!$sku->product->on_sale){
                        return response()->json([
                            'code' => 422,
                            'error' => '该商品未上架'
                        ]);
                    }

                    if ($sku->stock === 0){
                        return response()->json([
                            'code' => 422,
                            'error' => '该商品已售完'
                        ]);
                    }

                    if ($this->input('amount') > 0 && $sku->stock < $this->input('amount')){
                        return response()->json([
                            'code' => 422,
                            'error' => '该商品库存不足'
                        ]);
                    }
                }
            ],
            'amount' => ['required','integer','min:1']
        ];
    }

    public function attributes()
    {
        return [
            'amount' => '商品数量'
        ];
    }

    public function messages()
    {
        return [
            'sku_id.required' => '请选择商品'
        ];
    }
}

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

下单全过程3

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 1

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!