add.html 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <!DOCTYPE html>
  2. <html lang="zh" xmlns:th="http://www.thymeleaf.org" >
  3. <head>
  4. <th:block th:include="include :: header('新增定时任务')" />
  5. </head>
  6. <body class="white-bg">
  7. <div class="wrapper wrapper-content animated fadeInRight ibox-content">
  8. <form class="form-horizontal m" id="form-job-add">
  9. <input type="hidden" name="createBy" th:value="${@permission.getPrincipalProperty('loginName')}">
  10. <div class="form-group">
  11. <label class="col-sm-3 control-label is-required">任务名称:</label>
  12. <div class="col-sm-8">
  13. <input class="form-control" type="text" name="jobName" id="jobName" required>
  14. </div>
  15. </div>
  16. <div class="form-group">
  17. <label class="col-sm-3 control-label">任务分组:</label>
  18. <div class="col-sm-8">
  19. <select name="jobGroup" class="form-control m-b" th:with="type=${@dict.getType('sys_job_group')}">
  20. <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
  21. </select>
  22. </div>
  23. </div>
  24. <div class="form-group">
  25. <label class="col-sm-3 control-label is-required">调用目标字符串:</label>
  26. <div class="col-sm-8">
  27. <input class="form-control" type="text" name="invokeTarget" id="invokeTarget" required>
  28. <span class="help-block m-b-none"><i class="fa fa-info-circle"></i> Bean调用示例:ryTask.ryParams('ry')</span>
  29. <span class="help-block m-b-none"><i class="fa fa-info-circle"></i> Class类调用示例:com.ruoyi.quartz.task.RyTask.ryParams('ry')</span>
  30. <span class="help-block m-b-none"><i class="fa fa-info-circle"></i> 参数说明:支持字符串,布尔类型,长整型,浮点型,整型</span>
  31. </div>
  32. </div>
  33. <div class="form-group">
  34. <label class="col-sm-3 control-label is-required">cron表达式:</label>
  35. <div class="col-sm-8">
  36. <input class="form-control" type="text" name="cronExpression" id="cronExpression" required>
  37. </div>
  38. </div>
  39. <div class="form-group">
  40. <label class="col-sm-3 control-label">执行策略:</label>
  41. <div class="col-sm-8">
  42. <label class="radio-box"> <input type="radio" name="misfirePolicy" value="1" th:checked="true"/> 立即执行 </label>
  43. <label class="radio-box"> <input type="radio" name="misfirePolicy" value="2" /> 执行一次 </label>
  44. <label class="radio-box"> <input type="radio" name="misfirePolicy" value="3" /> 放弃执行 </label>
  45. </div>
  46. </div>
  47. <div class="form-group">
  48. <label class="col-sm-3 control-label">并发执行:</label>
  49. <div class="col-sm-8">
  50. <label class="radio-box"> <input type="radio" name="concurrent" value="0"/> 允许 </label>
  51. <label class="radio-box"> <input type="radio" name="concurrent" value="1" th:checked="true"/> 禁止 </label>
  52. </div>
  53. </div>
  54. <div class="form-group">
  55. <label class="col-sm-3 control-label">状态:</label>
  56. <div class="col-sm-8">
  57. <div class="radio-box" th:each="dict : ${@dict.getType('sys_job_status')}">
  58. <input type="radio" th:id="${dict.dictCode}" name="status" th:value="${dict.dictValue}" th:checked="${dict.default}">
  59. <label th:for="${dict.dictCode}" th:text="${dict.dictLabel}"></label>
  60. </div>
  61. </div>
  62. </div>
  63. <div class="form-group">
  64. <label class="col-sm-3 control-label">备注:</label>
  65. <div class="col-sm-8">
  66. <textarea id="remark" name="remark" class="form-control"></textarea>
  67. </div>
  68. </div>
  69. </form>
  70. </div>
  71. <th:block th:include="include :: footer" />
  72. <script type="text/javascript">
  73. var prefix = ctx + "monitor/job";
  74. $("#form-job-add").validate({
  75. onkeyup: false,
  76. rules:{
  77. cronExpression:{
  78. remote: {
  79. url: prefix + "/checkCronExpressionIsValid",
  80. type: "post",
  81. dataType: "json",
  82. data: {
  83. "cronExpression": function() {
  84. return $.common.trim($("#cronExpression").val());
  85. }
  86. },
  87. dataFilter: function(data, type) {
  88. return data;
  89. }
  90. }
  91. },
  92. },
  93. messages: {
  94. "cronExpression": {
  95. remote: "表达式不正确"
  96. }
  97. },
  98. focusCleanup: true
  99. });
  100. function submitHandler() {
  101. if ($.validate.form()) {
  102. $.operate.save(prefix + "/add", $('#form-job-add').serialize());
  103. }
  104. }
  105. </script>
  106. </body>
  107. </html>