dataease-dm/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskLogService.java

120 lines
5.2 KiB
Java
Raw Normal View History

package io.dataease.service.dataset;
import com.google.gson.Gson;
2021-07-08 09:14:55 +08:00
import io.dataease.base.domain.DatasetTableTask;
import io.dataease.base.domain.DatasetTableTaskLog;
import io.dataease.base.domain.DatasetTableTaskLogExample;
import io.dataease.base.mapper.DatasetTableTaskLogMapper;
2021-07-08 09:14:55 +08:00
import io.dataease.base.mapper.DatasetTableTaskMapper;
import io.dataease.base.mapper.ext.ExtDataSetTaskMapper;
2021-07-08 09:14:55 +08:00
import io.dataease.base.mapper.ext.query.GridExample;
import io.dataease.controller.sys.base.BaseGridRequest;
import io.dataease.controller.sys.base.ConditionEntity;
2021-07-08 09:14:55 +08:00
import io.dataease.dto.dataset.DataSetTaskDTO;
import io.dataease.dto.dataset.DataSetTaskLogDTO;
2021-07-08 09:14:55 +08:00
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
/**
* @Author gin
* @Date 2021/3/4 1:26 下午
*/
@Service
public class DataSetTableTaskLogService {
@Resource
private DatasetTableTaskLogMapper datasetTableTaskLogMapper;
@Resource
private ExtDataSetTaskMapper extDataSetTaskMapper;
public DatasetTableTaskLog save(DatasetTableTaskLog datasetTableTaskLog) {
if (StringUtils.isEmpty(datasetTableTaskLog.getId())) {
datasetTableTaskLog.setId(UUID.randomUUID().toString());
datasetTableTaskLog.setCreateTime(System.currentTimeMillis());
datasetTableTaskLogMapper.insert(datasetTableTaskLog);
} else {
2021-03-25 18:18:44 +08:00
datasetTableTaskLogMapper.updateByPrimaryKeySelective(datasetTableTaskLog);
}
return datasetTableTaskLog;
}
public void delete(String id) {
datasetTableTaskLogMapper.deleteByPrimaryKey(id);
}
2021-07-08 09:14:55 +08:00
public List<DataSetTaskLogDTO> list(BaseGridRequest request) {
ConditionEntity entity = new ConditionEntity();
entity.setField("task_id");
entity.setOperator("not null");
List<ConditionEntity> conditionEntities = request.getConditions();
if(CollectionUtils.isEmpty(conditionEntities)){
conditionEntities = new ArrayList<>();
}
conditionEntities.add(entity);
request.setConditions(conditionEntities);
2021-07-08 09:14:55 +08:00
GridExample gridExample = request.convertExample();
return extDataSetTaskMapper.list(gridExample);
}
2021-03-10 18:13:27 +08:00
public void deleteByTaskId(String taskId){
DatasetTableTaskLogExample datasetTableTaskLogExample = new DatasetTableTaskLogExample();
DatasetTableTaskLogExample.Criteria criteria = datasetTableTaskLogExample.createCriteria();
criteria.andTaskIdEqualTo(taskId);
datasetTableTaskLogMapper.deleteByExample(datasetTableTaskLogExample);
}
public List<DatasetTableTaskLog> getByTableId(String datasetId){
DatasetTableTaskLogExample datasetTableTaskLogExample = new DatasetTableTaskLogExample();
DatasetTableTaskLogExample.Criteria criteria = datasetTableTaskLogExample.createCriteria();
criteria.andTableIdEqualTo(datasetId);
return datasetTableTaskLogMapper.selectByExampleWithBLOBs(datasetTableTaskLogExample);
}
2021-05-28 16:37:37 +08:00
public List<DatasetTableTaskLog> select(DatasetTableTaskLog datasetTableTaskLog){
2021-07-08 09:14:55 +08:00
DatasetTableTaskLogExample example = getDatasetTableTaskLogExample(datasetTableTaskLog);
example.setOrderByClause("create_time desc");
return datasetTableTaskLogMapper.selectByExampleWithBLOBs(example);
}
public DataSetTaskDTO lastExecStatus(DataSetTaskDTO dataSetTaskDTO){
DatasetTableTaskLogExample example = new DatasetTableTaskLogExample();
DatasetTableTaskLogExample.Criteria criteria = example.createCriteria();
if(StringUtils.isNotEmpty(dataSetTaskDTO.getTableId())){
criteria.andTableIdEqualTo(dataSetTaskDTO.getTableId());
}
if(StringUtils.isNotEmpty(dataSetTaskDTO.getId())){
criteria.andTaskIdEqualTo(dataSetTaskDTO.getId());
}
example.setOrderByClause("create_time desc");
2021-07-08 09:14:55 +08:00
List<DatasetTableTaskLog> datasetTableTaskLogs = datasetTableTaskLogMapper.selectByExampleWithBLOBs(example);
if(CollectionUtils.isNotEmpty(datasetTableTaskLogs)){
dataSetTaskDTO.setLastExecStatus(datasetTableTaskLogs.get(0).getStatus());
dataSetTaskDTO.setLastExecTime(datasetTableTaskLogs.get(0).getCreateTime());
2021-07-23 10:54:44 +08:00
dataSetTaskDTO.setMsg(datasetTableTaskLogs.get(0).getInfo());
2021-07-08 09:14:55 +08:00
}
return dataSetTaskDTO;
}
private DatasetTableTaskLogExample getDatasetTableTaskLogExample(DatasetTableTaskLog datasetTableTaskLog) {
2021-05-28 16:37:37 +08:00
DatasetTableTaskLogExample example = new DatasetTableTaskLogExample();
DatasetTableTaskLogExample.Criteria criteria = example.createCriteria();
if(StringUtils.isNotEmpty(datasetTableTaskLog.getStatus())){
criteria.andStatusEqualTo(datasetTableTaskLog.getStatus());
}
if(StringUtils.isNotEmpty(datasetTableTaskLog.getTableId())){
criteria.andTableIdEqualTo(datasetTableTaskLog.getTableId());
}
if(StringUtils.isNotEmpty(datasetTableTaskLog.getTaskId())){
criteria.andTaskIdEqualTo(datasetTableTaskLog.getTaskId());
}
2021-07-08 09:14:55 +08:00
return example;
2021-05-28 16:37:37 +08:00
}
2021-07-08 09:14:55 +08:00
}