Schedule.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | Niucloud-admin 企业快速开发的saas管理平台
  4. // +----------------------------------------------------------------------
  5. // | 官方网址:https://www.niucloud.com
  6. // +----------------------------------------------------------------------
  7. // | niucloud团队 版权所有 开源版本可自由商用
  8. // +----------------------------------------------------------------------
  9. // | Author: Niucloud Team
  10. // +----------------------------------------------------------------------
  11. namespace app\validate\sys;
  12. use app\service\core\schedule\CoreScheduleService;
  13. use think\facade\Lang;
  14. use think\Validate;
  15. /**
  16. * Class Schedule
  17. */
  18. class Schedule extends Validate
  19. {
  20. //用户名或密码的规范可能是从数据库中获取的
  21. protected $rule = [
  22. 'key' => 'require|unique:sys_schedule|checkKeyType',
  23. ];
  24. protected $message = [
  25. 'key.require' => 'validate_schedule.schedule_require',
  26. 'key.unique' => 'validate_schedule.schedule_unique',
  27. ];
  28. protected $scene = [
  29. 'add' => ['key'],
  30. 'edit' => [],
  31. ];
  32. /**
  33. * 自定义验证 任务类型
  34. * @param $value
  35. * @param $rule
  36. * @param array $data
  37. * @return Lang|true
  38. */
  39. protected function checkKeyType($value, $rule, $data = [])
  40. {
  41. $temp = array_column((new CoreScheduleService())->getTemplateList(), null, 'key');
  42. return isset($temp[$value]) ? true : get_lang("validate_schedule.not_exit_schedule_type");
  43. }
  44. }