'require', 'title'=>'require|min:1|max:100', 'mobile' => 'require|mobile', 'type' => 'in:1,2', 'cate_id'=> 'require|checkCate', 'area_id'=> 'require', 'images'=>'require', 'content'=>'require', 'number' => 'require', ]; protected $message = [ 'id.require' => '供需信息id必传', 'title.require' => '请输入名称', 'title.min' => '名称长度至少1个字符', 'title.max' => '名称长度最多100个字符', 'mobile.require' => '联系方式参数缺失', 'mobile.mobile' => '请填写正确的手机号', 'type.require' => '类型type参数必传', 'cate_id.require' => '供应分类参数必传', 'area_id.require' => '所属地区参数必传', 'type.in' =>'类型type参数规则错误', 'images.require' => '请输入上传图片', 'number.require' => '地区信息必传', ]; protected $scene = [ 'supplyDemandRelease' => ['title','type','images','mobile','number','area_id','cate_id'], // 'info' => ['id'], // 'cate' => ['type'], 'submitSupplyDemand'=>['id'], 'delete'=>['id'] ]; /** * @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])->findOrEmpty(); if($info->isEmpty()){ return '传入的分类id:'.$v.'不存在!'; } } return true; } public function checkCate($scene, $rule, $data) { $info = SupplyDemandCate::where(['id'=>$data['cate_id']])->findOrEmpty(); if($info->isEmpty()){ return '传入的分类id不存在!'; } return true; } }