| @@ -164,7 +164,7 @@ public class JobController { | |||||||
|  |  | ||||||
|                 job.setParam(JSON.toJSONString(params)); |                 job.setParam(JSON.toJSONString(params)); | ||||||
|                 jobMapper.updateById(job); |                 jobMapper.updateById(job); | ||||||
|                 return Result.success(job); |                 return Result.success(JobDto.parseJob(job)); | ||||||
|             } |             } | ||||||
|         } catch (Exception e) { |         } catch (Exception e) { | ||||||
|             e.printStackTrace(); |             e.printStackTrace(); | ||||||
|   | |||||||
| @@ -127,8 +127,9 @@ public class JobService { | |||||||
|     public Result updateJobStatus(Integer jobId, JobStatusEnum status, String result) { |     public Result updateJobStatus(Integer jobId, JobStatusEnum status, String result) { | ||||||
|         System.out.println(status.getRemark()); |         System.out.println(status.getRemark()); | ||||||
|         Job job = jobMapper.selectById(jobId); |         Job job = jobMapper.selectById(jobId); | ||||||
|         if (job == null) |         if (job == null) { | ||||||
|             return Result.getResult(CommonError.CONTENT_NOT_FOUND); |             return Result.getResult(CommonError.CONTENT_NOT_FOUND); | ||||||
|  |         } | ||||||
|  |  | ||||||
|         switch (status) { |         switch (status) { | ||||||
|             case WAIT: |             case WAIT: | ||||||
| @@ -140,13 +141,15 @@ public class JobService { | |||||||
|             case FAIL: |             case FAIL: | ||||||
|             case TIMEOUT: |             case TIMEOUT: | ||||||
|                 if (!job.getStatus().equals(JobStatusEnum.RUNNING.getKey()) |                 if (!job.getStatus().equals(JobStatusEnum.RUNNING.getKey()) | ||||||
|                         && !job.getStatus().equals(JobStatusEnum.REQED.getKey())) |                         && !job.getStatus().equals(JobStatusEnum.REQED.getKey())){ | ||||||
|                     return Result.getResult(JobError.STATUS_UPDATE_FAIL); |                     return Result.getResult(JobError.STATUS_UPDATE_FAIL); | ||||||
|  |                 } | ||||||
|                 job.setCompleteTime(LocalDateTime.now()); |                 job.setCompleteTime(LocalDateTime.now()); | ||||||
|                 break; |                 break; | ||||||
|             case RUNNING: |             case RUNNING: | ||||||
|                 if (!job.getStatus().equals(JobStatusEnum.REQED.getKey())) |                 if (!job.getStatus().equals(JobStatusEnum.REQED.getKey())) { | ||||||
|                     return Result.getResult(JobError.STATUS_UPDATE_FAIL); |                     return Result.getResult(JobError.STATUS_UPDATE_FAIL); | ||||||
|  |                 } | ||||||
|                 job.setCreateTime(LocalDateTime.now()); |                 job.setCreateTime(LocalDateTime.now()); | ||||||
|                 break; |                 break; | ||||||
|         } |         } | ||||||
| @@ -205,24 +208,24 @@ public class JobService { | |||||||
|     } |     } | ||||||
|  |  | ||||||
|     /** |     /** | ||||||
|      * 等待运行,超时时间60秒 |      * 等待运行 | ||||||
|      */ |      */ | ||||||
|     private void waitRunning(Integer jobId) { |     private void waitRunning(Integer jobId) { | ||||||
|         //等待60秒,检查是否已运行 |         //等待120秒,检查是否已运行 | ||||||
|         taskExecutorUtil.schedule(() -> { |         taskExecutorUtil.schedule(() -> { | ||||||
|             Job job = jobMapper.selectById(jobId); |             Job job = jobMapper.selectById(jobId); | ||||||
|             if (job.getStatus().equals(JobStatusEnum.REQED.getKey())) { |             if (job.getStatus().equals(JobStatusEnum.REQED.getKey())) { | ||||||
|                 updateJobStatus(jobId, JobStatusEnum.FAIL); |                 updateJobStatus(jobId, JobStatusEnum.FAIL); | ||||||
|             } |             } | ||||||
|         }, 60, TimeUnit.SECONDS); |         }, 120, TimeUnit.SECONDS); | ||||||
|  |  | ||||||
|         //等待4小时,查看是否执行完成 |         //等待14小时,查看是否执行完成 | ||||||
|         taskExecutorUtil.schedule(() -> { |         taskExecutorUtil.schedule(() -> { | ||||||
|             Job job = jobMapper.selectById(jobId); |             Job job = jobMapper.selectById(jobId); | ||||||
|             if (job.getStatus().equals(JobStatusEnum.RUNNING.getKey())) { |             if (job.getStatus().equals(JobStatusEnum.RUNNING.getKey())) { | ||||||
|                 updateJobStatus(jobId, JobStatusEnum.TIMEOUT); |                 updateJobStatus(jobId, JobStatusEnum.TIMEOUT); | ||||||
|             } |             } | ||||||
|         }, 4, TimeUnit.HOURS); |         }, 14, TimeUnit.HOURS); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     private void sendEmail(Job job, JobStatusEnum status, String mail) { |     private void sendEmail(Job job, JobStatusEnum status, String mail) { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user