package com.ruoyi.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.domain.ModelTestTask; import com.ruoyi.mapper.ModelTestTaskMapper; import com.ruoyi.service.ModelTestTaskService; import com.ruoyi.web.request.ModelTestTaskSubmitRequest; import com.ruoyi.web.response.ModelTestResponse; import com.ruoyi.web.response.ModelTestUrlResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; /** * 车型试验Service业务层处理 * @author gxk */ @Service @Transactional public class ModelTestTaskServiceImpl extends ServiceImpl<ModelTestTaskMapper, ModelTestTask> implements ModelTestTaskService { @Autowired private ModelTestTaskMapper modelTestTaskMapper; @Autowired private StrategyModelTestTaskContext strategyModelTestTaskContext; /** * 查看车型试验任务详情 * * @param taskId * @return */ @Override public ModelTestResponse viewModelTestTask(Long taskId) { ModelTestTask modelTestTask = modelTestTaskMapper.selectById(taskId); return strategyModelTestTaskContext.getResource(modelTestTask.getTaskStatus()).doView(modelTestTask); } /** * 开始车型试验任务 * @param taskId */ @Override public void startModelTestTask(Long taskId) { ModelTestTask modelTestTask = modelTestTaskMapper.selectById(taskId); strategyModelTestTaskContext.getResource(modelTestTask.getTaskStatus()).doStartTest(modelTestTask); } /** * 确认车型试验任务 * @param taskId */ @Override public void confirmModelTestTask(Long taskId) { ModelTestTask modelTestTask = modelTestTaskMapper.selectById(taskId); strategyModelTestTaskContext.getResource(modelTestTask.getTaskStatus()).doConfirmTest(modelTestTask); } @Override public void submitModelTestTask(ModelTestTaskSubmitRequest request) { ModelTestTask modelTestTask = modelTestTaskMapper.selectById(request.getTaskId()); strategyModelTestTaskContext.getResource(modelTestTask.getTaskStatus()).doSubmitTest(modelTestTask, request.getImagesUrl()); } @Override public ModelTestUrlResponse taskViewModelTestTask(Long taskId) { ModelTestTask modelTestTask = modelTestTaskMapper.selectById(taskId); return strategyModelTestTaskContext.getResource(modelTestTask.getTaskStatus()).doTaskView(modelTestTask); } }