diff --git a/src/main/java/com/weilab/biology/service/JobService.java b/src/main/java/com/weilab/biology/service/JobService.java index 25550ba..f043bb6 100644 --- a/src/main/java/com/weilab/biology/service/JobService.java +++ b/src/main/java/com/weilab/biology/service/JobService.java @@ -23,6 +23,7 @@ import org.springframework.transaction.annotation.Transactional; import java.io.BufferedInputStream; import java.io.File; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.List; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; @@ -90,7 +91,7 @@ public class JobService { public Result submit(String dataStr, BufferedInputStream dataStream, JSONObject param, String mail, Integer type) { Job job = new Job("", JSON.toJSONString(param), mail, JobStatusEnum.WAIT.getKey(), LocalDateTime.now(), type); jobMapper.insert(job); - sendEmail(job.getJobId(), JobStatusEnum.WAIT, mail); + sendEmail(job, JobStatusEnum.WAIT, mail); try { //将请求数据写入本地文件,之后向python传递文件路径参数 @@ -160,7 +161,7 @@ public class JobService { job.setStatus(status.getKey()); jobMapper.updateById(job); - sendEmail(jobId, status, job.getMail()); + sendEmail(job, status, job.getMail()); runNextJob(); return getJobInfo(jobId); @@ -226,27 +227,35 @@ public class JobService { }, 4, TimeUnit.HOURS); } - private void sendEmail(Integer jobId, JobStatusEnum status, String mail) { + private void sendEmail(Job job, JobStatusEnum status, String mail) { + // 多个参数 + String param1 = job.getRequestTime().format(DateTimeFormatter.ofPattern("yyyy_MM_dd_")) + job.getJobId(); + String param2 = job.getJobId().toString(); + + String content = null; switch (status) { case WAIT: - content = String.format(RECEIVED_EMAIL_CONTENT, jobId); + content = RECEIVED_EMAIL_CONTENT; break; case SUCCESS: - content = String.format(SUCCESS_EMAIL_CONTENT, jobId); + content = SUCCESS_EMAIL_CONTENT; break; case FAIL: - content = String.format(FAIL_EMAIL_CONTENT, jobId); + content = FAIL_EMAIL_CONTENT; break; case TIMEOUT: - content = String.format(TIMEOUT_EMAIL_CONTENT, jobId); + content = TIMEOUT_EMAIL_CONTENT; break; case RUNNING: - content = String.format(START_RUNNING_EMAIL_CONTENT, jobId); + content = START_RUNNING_EMAIL_CONTENT; break; } - if (content != null) - mailUtil.send(mail, SUBJECT, content); + + + if (content != null) { + mailUtil.send(mail, SUBJECT, String.format(content, param1, param2)); + } } }