Browse Source

🐛 修复 job 在 IDEA 报错的问题

YunaiV 1 năm trước cách đây
mục cha
commit
5eb30c7e85

+ 2 - 2
src/api/infra/jobLog/index.ts

@@ -7,8 +7,8 @@ export interface JobLogVO {
   handlerParam: string
   cronExpression: string
   executeIndex: string
-  beginTime: string
-  endTime: string
+  beginTime: Date
+  endTime: Date
   duration: string
   status: number
   createTime: string

+ 1 - 1
src/views/infra/job/JobDetail.vue

@@ -51,7 +51,7 @@ defineOptions({ name: 'InfraJobDetail' })
 
 const dialogVisible = ref(false) // 弹窗的是否展示
 const detailLoading = ref(false) // 表单的加载中
-const detailData = ref({}) // 详情数据
+const detailData = ref({} as JobApi.JobVO) // 详情数据
 const nextTimes = ref([]) // 下一轮执行时间的数组
 
 /** 打开弹窗 */

+ 8 - 2
src/views/infra/job/JobForm.vue

@@ -62,7 +62,10 @@ const formData = ref({
   name: '',
   handlerName: '',
   handlerParam: '',
-  cronExpression: ''
+  cronExpression: '',
+  retryCount: undefined,
+  retryInterval: undefined,
+  monitorTimeout: undefined
 })
 const formRules = reactive({
   name: [{ required: true, message: '任务名称不能为空', trigger: 'blur' }],
@@ -124,7 +127,10 @@ const resetForm = () => {
     name: '',
     handlerName: '',
     handlerParam: '',
-    cronExpression: ''
+    cronExpression: '',
+    retryCount: undefined,
+    retryInterval: undefined,
+    monitorTimeout: undefined
   }
   formRef.value?.resetFields()
 }

+ 3 - 3
src/views/infra/job/index.vue

@@ -65,7 +65,7 @@
         >
           <Icon icon="ep:download" class="mr-5px" /> 导出
         </el-button>
-        <el-button type="info" plain @click="handleJobLog" v-hasPermi="['infra:job:query']">
+        <el-button type="info" plain @click="handleJobLog()" v-hasPermi="['infra:job:query']">
           <Icon icon="ep:zoom-in" class="mr-5px" /> 执行日志
         </el-button>
       </el-form-item>
@@ -292,8 +292,8 @@ const openDetail = (id: number) => {
 }
 
 /** 跳转执行日志 */
-const handleJobLog = (id: number) => {
-  if (id > 0) {
+const handleJobLog = (id?: number) => {
+  if (id && id > 0) {
     push('/job/job-log?id=' + id)
   } else {
     push('/job/job-log')

+ 1 - 1
src/views/infra/job/logger/JobLogDetail.vue

@@ -40,7 +40,7 @@ defineOptions({ name: 'JobLogDetail' })
 
 const dialogVisible = ref(false) // 弹窗的是否展示
 const detailLoading = ref(false) // 表单的加载中
-const detailData = ref({}) // 详情数据
+const detailData = ref({} as JobLogApi.JobLogVO) // 详情数据
 
 /** 打开弹窗 */
 const open = async (id: number) => {