'require|checkUserServiceInfo', 'user_id' => 'require|checkUserInfo', 'name' => 'require|length:1,60', 'status' => 'requireIf:status,0|in:0,1', 'audit_status'=>'requireIf:audit_status,0|in:0,1,2', 'sort' => 'egt:0', 'type' =>'require|in:1,2,3', 'pay_status' => 'requireIf:pay_status,true|in:1,0', 'mobile' => 'require|mobile', 'cate_id'=>'require|checkCateCode', 'area_id' => 'require|checkArea', 'money' => 'require|float|egt:0', 'agricultural_service'=>'requireIf:agricultural_service,true', 'disclaimer'=>'require', 'driver_image'=>'require', 'driving_image'=>'require', 'agricultural_image'=>'require', 'mechanical_cate_id'=>'require', ]; protected $message = [ 'id.require' => ' 分类id不能为空', 'user_id.require' => '请选择用户', 'name.require' => '分类名称不能为空', 'name.length' => '分类长度须在1-60位字符', 'sort.egt' => '排序值不正确', 'type.require' => '类型不能为空', 'type.in' => '类型值type参数规则错误', 'pay_status.requireIf' => '请选择支付状态', 'pay_status.in' => '支付状态值错误', 'mobile.require' => '联系方式参数缺失', 'mobile.mobile' => '请填写正确的手机号', 'cate_id.require' => '分类信息必传', 'area_id.require' => '地区信息必传', 'money.require' =>'服务费用必传', 'money.float' =>'服务费参数错误', 'money.egt' =>'服务费参数规则错误', 'disclaimer.require' =>'免责条款必传', 'driver_image.require' => '请上传驾驶证图片', 'driving_image.require' => '请上传行驶证图片', 'agricultural_image.require' => '请上传农机图片', 'mechanical_cate_id.require' => '机械分类必传', ]; public function sceneEditContent(){ return $this->only(['agricultural_service']); } public function sceneDisclaimer(){ return $this->only(['disclaimer']); } public function sceneMechanical(){ return $this->only(['type']); } public function sceneAddMechanicalCate(){ return $this->only(['name','type']); } public function sceneEditCate(){ return $this->only(['name']); } /** * @notes 列表 * @return ArticleCateValidate * @author heshihu * @date 2022/2/10 15:11 */ public function sceneUserService() { return $this->only(['type','pay_status']); } /** * @notes 添加场景 * @return ArticleCateValidate * @author heshihu * @date 2022/2/10 15:11 */ public function sceneAdd() { return $this->remove(['id','disclaimer']) ->remove('id', 'require|checkUserServiceInfo') ->remove('disclaimer', 'require'); } /** * @notes 详情场景 * @return ArticleCateValidate * @author heshihu * @date 2022/2/21 17:55 */ public function sceneDetail() { return $this->only(['id']); } public function sceneCateDetail(){ return $this->only(['id'])->remove('id', 'checkUserServiceInfo');; } /** * @notes 更改状态场景 * @return ArticleCateValidate * @author heshihu * @date 2022/2/21 18:02 */ public function sceneStatus() { return $this->only(['id', 'status']); } public function sceneAudit(){ return $this->only(['id', 'audit_status']); } public function sceneEdit() { return $this ->remove('type', 'require'); } /** * @notes 获取所有农耕分类场景 * @return ArticleCateValidate * @author heshihu * @date 2022/2/15 10:05 */ public function sceneSelect() { // return $this->only(['type']); } /** * @notes 删除场景 * @return ArticleCateValidate * @author heshihu * @date 2022/2/21 17:52 */ public function sceneDelete() { return $this->only(['id']) ->append('id', 'checkUserServiceInfo'); } /** * @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 = AgriculturalMachineryServiceCategory::where(['id'=>$v,'type'=>$data['type']])->findOrEmpty(); if($info->isEmpty()){ return '传入的分类id:'.$v.'不存在!'; } } return true; } /** * @notes 场景相关校验 * @param $scene * @param $rule * @param $data * @return bool|string * @author 段誉 * @date 2022/9/15 14:37 */ 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; } /** * @notes 检查指定服务信息是否存在 * @param $value * @return bool|string * @author heshihu * @date 2022/2/10 15:10 */ public function checkUserServiceInfo($value) { $category = UserService::findOrEmpty($value); if ($category->isEmpty()) { return '服务信息不存在'; } return true; } public function checkUserInfo($value,$data) { $category = User::findOrEmpty($value); if ($category->isEmpty()) { return '用户信息不存在'; } return true; } /** * @notes 删除时验证农耕分类是否已使用 * @param $value * @return bool|string * @author heshihu * @date 2022/2/22 14:45 */ public function checkDeleteArticleCate($value) { // $article = Article::where('cid', $value)->findOrEmpty(); // if (!$article->isEmpty()) { // return '农耕分类已使用,请先删除绑定该农耕分类的农耕服务'; // } return true; } }