<?php namespace App\Http\Requests\Api;

use App\Http\Requests\BaseRequest;
/**
 * 产品验证器
 * 
 */
class Product extends BaseRequest
{
    /**
     * 获取应用于请求的规则
     *
     * @return array
     */
    public function rules()
    {
        // 编辑时排除ID
        // 返回结果
        return      [
            // 有时候我们希望某个字段在第一次验证失败后就停止运行验证规则，只需要将 bail 添加到规则中：
            // 验证字段，验证规则，提示信息
            // 'name'          => 'string|max:20',
            'id'            => 'required|integer|gt:0',
            'page'          => 'integer|gte:0',
            'limit'         => 'integer|gte:0',
            'class_id'      => 'required|integer|gt:0',
            'code'          => 'required',
            'shop_name'     => 'required',
        ];
    }

    // 场景列表
    protected   $scenes         = [
        'get_list'                      => ['page','limit'],
        'get_detail'                    => ['id'],
        'get_sku'                       => ['id'],
        'get_product'                   => ['class_id'],
        'get_product_by_code'           => ['code', 'shop_name'],
	];

    /**
     * 获取已定义验证规则的错误消息
     *
     * @return array
     */
    public function messages()
    {
        return [
            'id.required'   		    => '请选择产品',
            'id.integer'   		        => '产品ID格式错误',
            'id.gt'   		            => '产品ID格式错误',
            'page.integer'   		    => '页码格式错误',
            'page.gte'   		        => '页码格式错误',
            'limit.integer'   		    => '取数格式错误',
            'limit.gte'   		        => '取数格式错误',
            'class_id.required'         => '请选择产品分类',
            'class_id.integer'          => '产品分类ID格式错误',
            'class_id.gt'               => '产品分类ID格式错误',
        ];
    }

}
