'require|checkName', 'discount'=>'require|float|egt:0', 'rank'=>'require|integer|egt:0', 'offline_user_level_id'=>'require', 'remark'=>'requireif:remark,""', 'condition'=>'requireif:condition,""', ]; protected $message = [ 'name.require' => '等级名称不能为空', // 'name.max' => '等级名称不能超过50个字符', 'discount.require' => '等级折扣必传', 'rank.require' => '等级权重必传', 'rank.egt' => '等级权重大于等于0', 'discount.egt' => '等级折扣大于等于0', 'offline_user_level_id.require' => '线下会员等级id必传', ]; protected $scene = [ 'getUserLevelLists' => ['level_name'], 'addUserLevel' => ['offline_user_level_id','name','discount','rank','remark','condition'], 'updateUserLevelInfo' => ['offline_user_level_id','name','discount','rank','remark','condition'], 'delUserLevel' => ['name'] ]; /** * @notes 检查等级名称是否存在 * @param $value * @param $rule * @param $data * @return bool|string * @author ljj * @date 2021/8/10 2:00 下午 */ public function checkName($value,$rule,$data) { if($value == 0) return true; $user_level = UserLevel::where('name', $value)->findOrEmpty(); if ($user_level->isEmpty()) { return true; }else{ return '已存在该会员等级名称'; } } /** * @notes * @return DistributionValidate * @author Tab * @date 2021/7/17 10:18 */ public function sceneUpdateUserLevelInfo() { return $this->remove('name', 'checkName'); } /** * @notes * @return DistributionValidate * @author Tab * @date 2021/7/17 10:18 */ public function sceneDelUserLevel() { return $this->remove('name', 'checkName')->remove('discount', 'require') ->remove('rank', 'require')->remove('offline_user_level_id', 'require'); } }