'require|min:1|max:64', 'mobile' => 'require|mobile', 'type' => 'require|in:1,2,3', 'cate_id'=>'require|checkCateCode', 'agricultural_machinery_model'=>'require', 'image'=>'require', 'driver_image'=>'require', 'driving_image'=>'require', 'agricultural_image'=>'require', 'area_id' => 'require|checkArea', 'mechanical_cate_id'=>'require', 'images'=>'require', 'money' => 'require|float|egt:0', 'log_type'=> 'require|in:0,1,2,3', ]; protected $message = [ 'name.require' => '请输入名称', 'name.min' => '名称长度至少1个字符', 'name.max' => '名称长度最多64个字符', 'mobile.require' => '联系方式参数缺失', 'mobile.mobile' => '请填写正确的手机号', 'type.require' => '类型type参数必传', 'cate_id.require' => '分类信息必传', 'type.in' =>'类型type参数规则错误', 'image.require' => '请上传图片', 'images.require' => '请上传服务图片', 'agricultural_machinery_model.require' => '农机型号必传', 'area_id.require' => '地区信息必传', 'mechanical_cate_id.require' => '机械分类必传', 'money.require' =>'服务费用必传', 'money.float' =>'服务费参数错误', 'money.egt' =>'服务费参数规则错误', 'driver_image.require' => '请上传驾驶证图片', 'driving_image.require' => '请上传行驶证图片', 'agricultural_image.require' => '请上传农机图片', 'log_type.in' =>'类型log_type参数规则错误', ]; protected $scene = [ 'agricultural_machinery_operator' => ['name','mobile','type','cate_id','area_id','mechanical_cate_id','agricultural_machinery_model','driver_image','driving_image','agricultural_image'], // 'info' => ['type'], // 'cate'=>['type'], 'serviceRenew'=>['type'], 'log'=>['log_type'], 'mechanical'=>['type'], ]; /** * @notes 场景相关校验 * @param $scene * @param $rule * @param $data * @return bool|string * @author 段誉 * @date 2022/9/15 14:37 */ public function checkCateCode($scene, $rule, $data) { $cate_id_arr = explode(',',$data['cate_id']); foreach($cate_id_arr as $v){ $info = ServiceCategory::where(['id'=>$v,'type'=>$data['type']])->findOrEmpty(); if($info->isEmpty()){ return '传入的分类id:'.$v.'不存在!'; } } return true; } public function checkArea($scene, $rule, $data) { $area_id_arr = explode(',',$data['area_id']); foreach($area_id_arr as $v){ $info = AssetArea::where(['id'=>$v,'status'=>1])->findOrEmpty(); if($info->isEmpty()){ return '传入的地区id:'.$v.'不存在!'; } } return true; } }