修改:hpc任务失败,代码优化
This commit is contained in:
@@ -47,7 +47,8 @@ public class FinishedStatusHandler implements JobStatusHandler {
|
||||
@Override
|
||||
public void handle(SimulationJob simJob, HpcJobStatusInfo statusInfo) {
|
||||
log.info("任务id:{},Hpc任务详情:{}",simJob.getId(),JSON.toJSONString(statusInfo));
|
||||
if(Objects.equals(statusInfo.getJobStatus(),"Canceled")){
|
||||
if(Objects.equals(statusInfo.getJobStatus(),"Canceled")||
|
||||
Objects.equals(statusInfo.getJobStatus(),"Failed")){
|
||||
SimulationJob newDbJob = simulationJobService.lambdaQuery().eq(SimulationJob::getId, simJob.getId()).one();
|
||||
newDbJob.setJobStatus(statusInfo.getJobStatus());
|
||||
newDbJob.setStartTime(statusInfo.getStartTime());
|
||||
@@ -65,11 +66,18 @@ public class FinishedStatusHandler implements JobStatusHandler {
|
||||
AsyncCallbackRequest asyncCallbackRequest = new AsyncCallbackRequest();
|
||||
asyncCallbackRequest.setAsyncTaskId(newDbJob.getJobId());
|
||||
asyncCallbackRequest.setStatus("FAIL");
|
||||
asyncCallbackRequest.setResultJson("Hpc任务已取消");
|
||||
String statusMsg="";
|
||||
if(Objects.equals(statusInfo.getJobStatus(),"Canceled")){
|
||||
statusMsg="Hpc任务已取消";
|
||||
}
|
||||
if(Objects.equals(statusInfo.getJobStatus(),"Failed")){
|
||||
statusMsg="Hpc任务失败";
|
||||
}
|
||||
asyncCallbackRequest.setResultJson(statusMsg);
|
||||
SdmResponse sdmResponse = flowableFeignClient.asyncCallback(asyncCallbackRequest);
|
||||
log.info("Hpc任务取消,通知工作流返回:{}",JSON.toJSONString(sdmResponse));
|
||||
// 发送成功完成的消息
|
||||
sendMsg(newDbJob.getTenantId(),newDbJob.getCreatorId(),newDbJob.getJobName(),"Hpc任务已取消");
|
||||
sendMsg(newDbJob.getTenantId(),newDbJob.getCreatorId(),newDbJob.getJobName(),statusMsg);
|
||||
}
|
||||
if(Objects.equals(statusInfo.getJobStatus(),"Finished")){
|
||||
try {
|
||||
@@ -108,7 +116,7 @@ public class FinishedStatusHandler implements JobStatusHandler {
|
||||
@Override
|
||||
public List<String> getSupportedStatus() {
|
||||
// todo 抽取成枚举类
|
||||
return Arrays.asList("Finished","Canceled");
|
||||
return Arrays.asList("Finished","Canceled", "Failed");
|
||||
}
|
||||
|
||||
private void sendMsg(Long tenanId,Long userId,String jobName,String result){
|
||||
|
||||
@@ -42,7 +42,7 @@ public class ProcessStatusHandler implements JobStatusHandler{
|
||||
@Override
|
||||
public List<String> getSupportedStatus() {
|
||||
// todo 枚举类
|
||||
return Arrays.asList("Configuring", "Queued", "Running", "Failed");
|
||||
return Arrays.asList("Configuring", "Queued", "Running");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user