123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- <?php
- namespace app\sys\validate;
- use think\Validate;
- class Train extends Validate
- {
- // 验证规则
- protected $rule = [
- 'title' => 'require|max:80',
- 'type_id' => 'require',
- 'type' => 'in:video,image,audio,pdf',
- 'content' => 'require|max:800',
- 'des' => 'require|max:800',
- 'sumup_num' => 'require|number|gt:0',
- 'score_one' => 'gt:0|number',
- 'score_two' => 'gt:score_one|number',
- 'score_three' => 'gt:score_two|number',
- 'study_time' => 'requireCallback:time_check',
- 'comment_word_num' => 'requireCallback:word_check'
- ];
- // 错误消息
- protected $message = [
- 'title.require' => '请输入课件名称',
- 'title.max' => '课件名称最长80字符',
- 'type_id.require' => '请选择课件场景',
- 'type.in' => '未获取到课件类型',
- 'content.require' => '请输入内容',
- 'content.max' => '内容最长800字符',
- 'des.require' => '请输入简介',
- 'des.max' => '简介长800字符',
- 'sumup_num.require' => '请设置课程感悟字数',
- 'sumup_num.number' => '感悟字数格式为数字',
- 'sumup_num.gt' => '感悟字数不低于1个字',
- 'score_one.number' => '触发关键词格式为数字',
- 'score_one.gt' => '评审为“S”关键词个数不低于1个',
- 'score_two.number' => '触发关键词格式为数字',
- 'score_two.gt' => '评审为“SS”关键词个数高于“S”',
- 'score_three.number' => '触发关键词格式为数字',
- 'score_three.gt' => '评审为“SSS”关键词个数高于“SS”',
- 'study_time.requireCallback' => '请设置学习时常',
- 'comment_word_num.requireCallback' => '请设置完成评论字数',
- ];
- /**
- * 验证场景
- */
- protected $scene = [
- 'courseAddSave' => ['title','type_id','type','study_time','comment_word_num'],
- 'courseEditSave' => ['title','type_id','type','study_time','comment_word_num'],
- 'classAddSave' => ['title','score_one','score_two','score_three'],
- 'classEditSave' => ['title','score_one','score_two','score_three']
- ];
-
- /*
- * 检测学习时常
- */
- function time_check($value , $data)
- {
- if($data['time_check'] == 1){
- return true;
- }
- return false;
- }
-
- /*
- * 检测评论字数
- */
- function word_check($value , $data)
- {
- if($data['word_check'] == 1){
- return true;
- }
- return false;
- }
- }
|