<?php


namespace App\Http\Validators;

use App\Model\SupplierAccountModel;
use App\Model\SupplierChannelModel;
use Validator;

class SupplierExaminationValidator
{
    //保存相关的验证,别问我为什么不用laravel自带的form-request类
    //因为控制器那边已经被之前的人魔改的难用的一比,而且控制器那边还接收了一大堆统一变量
    public function checkSave($params)
    {
        $params = BatchTrim($params);
        //整理下请求数据
        $rules = [
            "supplier_name" => "required|max:100",
            "examine_time" => "required",
            "purchase_name" => "required",
            "sku_name" => "required",
            "brand_name" => "required",
            "amount" => "required|integer|min:1",
//            "unhealthy_amount" => "required|integer",
            "examine_result" => "required",
        ];
        $messages = $this->messages();
        $validator = Validator::make($params, $rules, $messages, $this->attributes());
        //判断联系方式的表单验证
        if ($validator->fails()) {
            return implode('|', $validator->errors()->all());
        }

        return null;
    }

    private function messages()
    {
        return [
            'required' => ':attribute 不能为空',
            'numeric' => ':attribute 必须为数字',
            'integer' => ':attribute 必须为整数',
        ];
    }

    public function attributes()
    {
        return [
            'supplier_name' => '供应商名称',
            'examine_time' => '检货时间',
            'purchase_name' => '采购员',
            'sku_name' => '型号',
            'brand_name' => '品牌',
            'amount' => '数量',
            'examine_amount' => '检测数量',
            'unhealthy_amount' => '不良数量',
            'unhealthy_content' => '不良现象',
            'examine_result' => '检验结果',
            'abnormal_level' => '异常等级',
            'handle_way' => '处理方式',
            'remark' => '备注',
        ];
    }
}