You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

para_manage.tmpl 7.2 kB

4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. {{template "base/head" .}}
  2. <div class="modelarts">
  3. <div class="repository release modelarts train_job view container">
  4. {{template "repo/header" .}}
  5. <div class="ui container">
  6. <div class="ui grid">
  7. {{template "repo/modelarts/navbar" .}}
  8. <!-- 右侧 -->
  9. <div class="ui thirteen wide column">
  10. <div class="ui column stackable grid">
  11. <div class="column">
  12. <h2>{{.i18n.Tr "repo.modelarts.train_job_para_admin"}}</h2>
  13. </div>
  14. </div>
  15. <div class="ui divider"></div>
  16. <div class="ui grid">
  17. <div class="row">
  18. <div class="ui sixteen wide column">
  19. <div class="ui sixteen wide column">
  20. <div class="ui two column stackable grid">
  21. <div class="column">
  22. </div>
  23. <div class="column right aligned">
  24. <div class="ui right dropdown type jump item">
  25. <span class="text">
  26. {{.i18n.Tr "repo.issues.filter_sort"}}<i class="dropdown icon"></i>
  27. </span>
  28. </div>
  29. </div>
  30. </div>
  31. </div>
  32. <!-- 任务展示 -->
  33. <div class="dataset list">
  34. {{range .Para_manage}}
  35. <div class="ui grid stackable item">
  36. <div class="row">
  37. <!-- 任务名 -->
  38. <div class="five wide column">
  39. <a class="title" href="{{$.Link}}/{{.JobID}}">
  40. <span class="fitted">{{svg "octicon-tasklist" 16}}</span>
  41. <span class="fitted">{{.JobName}}</span>
  42. </a>
  43. </div>
  44. <!-- 引擎类型-->
  45. <div class="four wide column job-status" id="{{.JobID}}" data-repopath="{{$.RepoRelPath}}" data-jobid="{{.JobID}}">
  46. {{.Status}}
  47. </div>
  48. <!-- 创建时间 -->
  49. <div class="three wide column">
  50. <span class="ui text center">{{svg "octicon-clock" 16}} {{TimeSinceUnix .CreatedUnix $.Lang}}</span>
  51. </div>
  52. <!-- 编辑 -->
  53. <div class="two wide column">
  54. <a class="title" href="{{$.Link}}/{{.JobID}}/edit">
  55. <span class="fitted">编辑</span>
  56. </a>
  57. </div>
  58. <!-- 删除 -->
  59. <div class="two wide column">
  60. <div class="ui text center clipboard">
  61. <form id="delForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/del" method="post">
  62. {{$.CsrfTokenHtml}}
  63. <a class="fitted" onclick="assertDelete(this)" style="font-size:16px; font-weight:bold">删除</a>
  64. </form>
  65. </div>
  66. </div>
  67. </div>
  68. </div>
  69. {{end}} {{template "base/paginate" .}}
  70. </div>
  71. </div>
  72. </div>
  73. </div>
  74. </div>
  75. </div>
  76. </div>
  77. </div>
  78. <!-- 确认模态框 -->
  79. <div id="deletemodel">
  80. <div class="ui basic modal">
  81. <div class="ui icon header">
  82. <i class="trash icon"></i> 删除任务
  83. </div>
  84. <div class="content">
  85. <p>你确认删除该任务么?此任务一旦删除不可恢复。</p>
  86. </div>
  87. <div class="actions">
  88. <div class="ui red basic inverted cancel button">
  89. <i class="remove icon"></i> 取消操作
  90. </div>
  91. <div class="ui green basic inverted ok button">
  92. <i class="checkmark icon"></i> 确定操作
  93. </div>
  94. </div>
  95. </div>
  96. </div>
  97. </div>
  98. {{template "base/footer" .}}
  99. <script>
  100. // 删除时用户确认
  101. function assertDelete(obj) {
  102. if (obj.style.color == "rgb(204, 204, 204)") {
  103. return
  104. } else {
  105. var delId = obj.parentNode.id
  106. flag = 1;
  107. $('.ui.basic.modal')
  108. .modal({
  109. onDeny: function() {
  110. flag = false
  111. },
  112. onApprove: function() {
  113. document.getElementById(delId).submit()
  114. flag = true
  115. },
  116. onHidden: function() {
  117. if (flag == false) {
  118. $('.alert').html('您已取消操作').removeClass('alert-success').addClass('alert-danger').show().delay(1500).fadeOut();
  119. }
  120. }
  121. })
  122. .modal('show')
  123. }
  124. }
  125. // 加载任务状态
  126. $(document).ready(function() {
  127. $(".job-status").each((index, job) => {
  128. const jobID = job.dataset.jobid;
  129. const repoPath = job.dataset.repopath;
  130. if (job.textContent.trim() == 'STOPPED') {
  131. return
  132. }
  133. $.get(`/api/v1/repos/${repoPath}/modelarts/train-job/${jobID}`, (data) => {
  134. const jobID = data.JobID
  135. const status = data.JobStatus
  136. $('#' + jobID).text(status)
  137. // console.log(data)
  138. }).fail(function(err) {
  139. console.log(err);
  140. });
  141. });
  142. });
  143. </script>