package com.huihe.exam.task; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.huihe.exam.core.Result; import com.huihe.exam.mapper.ScheduleMapper; import com.huihe.exam.service.OnlineTestService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; @Component("com.huihe.exam.task.ExamInitializeTask") @Scope("prototype") public class ExamInitializeTask extends AbstractTask { private final Logger log = LoggerFactory.getLogger(ExamInitializeTask.class); @Autowired OnlineTestService service; @Autowired ScheduleMapper mapper; public ExamInitializeTask(){ super(); } @Override public void run(){ try { JSONObject param = JSON.parseObject(getTask().getParam()); Result result = service.cacheQuestion(param.getString("id"), param.getString("examType")); if(result.getCode() == 200){ success(); } else { error(); } } catch (Exception e) { log.error(e.getMessage()); error(); } } @Override public void doing(){ log.info("【{}:{}】任务开始执行...", this.getTask().getTaskName(), this.getTask().getId()); if(this.getTask().getExecTm() == 1){ mapper.setTaskFlag(TASK_DOING, this.getTask().getId()); } else if(this.getTask().getExecTm() > 1) { mapper.setTaskFlag(TASK_WAITING, this.getTask().getId()); } } @Override public void success(){ SchedulerTask task = this.getTask(); String taskId = task.getId(); log.info("【{}:{}】任务执行成功...", this.getTask().getTaskName(), this.getTask().getId()); mapper.setTaskFlag(TASK_SUCCESS, taskId); stop(); } @Override public void error(){ log.info("【{}:{}】任务执行出错...", this.getTask().getTaskName(), this.getTask().getId()); mapper.setTaskFlag(TASK_ERROR, this.getTask().getId()); stop(); } }
點擊查看更多內容
1人點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優(yōu)質文章
正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦