Merge pull request #12580 from dataease/pr@dev@fixExportdata
Pr@dev@fix exportdata
This commit is contained in:
commit
1e7eefa274
@ -21,4 +21,6 @@ public class DatasetTaskGridRequest extends KeywordRequest {
|
||||
private String id;
|
||||
|
||||
private Long userId;
|
||||
|
||||
private String datasetId;
|
||||
}
|
||||
|
||||
@ -5,12 +5,18 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.net.URLDecoder;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class PgConfiguration extends JdbcConfiguration {
|
||||
|
||||
private String driver = "org.postgresql.Driver";
|
||||
private String extraParams = "";
|
||||
private List<String> illegalParameters = Arrays.asList("socketFactory", "socketFactoryArg", "sslfactory", "sslfactoryarg", "loggerLevel", "loggerFile", "allowUrlInLocalInfile", "allowLoadLocalInfileInPath");
|
||||
|
||||
|
||||
public String getJdbc() {
|
||||
if (StringUtils.isEmpty(extraParams.trim())) {
|
||||
@ -27,6 +33,11 @@ public class PgConfiguration extends JdbcConfiguration {
|
||||
.replace("SCHEMA", getSchema().trim());
|
||||
}
|
||||
} else {
|
||||
for (String illegalParameter : illegalParameters) {
|
||||
if (getExtraParams().toLowerCase().contains(illegalParameter.toLowerCase()) || URLDecoder.decode(getExtraParams()).contains(illegalParameter.toLowerCase())) {
|
||||
throw new RuntimeException("Illegal parameter: " + illegalParameter);
|
||||
}
|
||||
}
|
||||
return "jdbc:postgresql://HOSTNAME:PORT/DATABASE?EXTRA_PARAMS"
|
||||
.replace("HOSTNAME", getHost().trim())
|
||||
.replace("PORT", getPort().toString().trim())
|
||||
|
||||
@ -23,6 +23,8 @@ public interface ExtDataSetTaskMapper {
|
||||
|
||||
List<DataSetTaskDTO> userTaskList(DatasetTaskGridRequest request);
|
||||
|
||||
String datasetPrivileges(DatasetTaskGridRequest request);
|
||||
|
||||
List<DataSetTaskDTO> taskWithTriggers(DatasetTaskGridRequest request);
|
||||
|
||||
List<DataSetTaskDTO> findByPanelId(@Param("panelId") String panelId);
|
||||
|
||||
@ -136,9 +136,12 @@
|
||||
|
||||
</select>
|
||||
|
||||
<select id="datasetPrivileges" resultType="String" parameterType="io.dataease.controller.dataset.request.DatasetTaskGridRequest">
|
||||
SELECT get_auths(#{datasetId}, 'dataset', #{userId})
|
||||
</select>
|
||||
|
||||
<select id="userTaskList" resultMap="TaskResult" parameterType="io.dataease.controller.dataset.request.DatasetTaskGridRequest">
|
||||
SELECT dataset_table.name as table_name, get_auths(dataset_table_task.table_id,'dataset', #{userId}) as
|
||||
`privileges`,dataset_table_task.* , qrtz_triggers.NEXT_FIRE_TIME
|
||||
SELECT dataset_table.name as table_name,dataset_table_task.* , qrtz_triggers.NEXT_FIRE_TIME
|
||||
FROM dataset_table_task
|
||||
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
||||
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME and qrtz_triggers.TRIGGER_STATE != 'PAUSED'
|
||||
|
||||
@ -145,6 +145,8 @@ public class DorisQueryProvider extends QueryProvider {
|
||||
if (f.getDeExtractType() == 1) {
|
||||
if (f.getDeType() == 2 || f.getDeType() == 3) {
|
||||
fieldName = String.format(DorisConstants.UNIX_TIMESTAMP, originField) + "*1000";
|
||||
} else if (f.getDeType().equals(DeTypeConstants.DE_STRING)) {
|
||||
fieldName = String.format(DorisConstants.CAST, originField, DorisConstants.VARCHAR);
|
||||
} else {
|
||||
fieldName = originField;
|
||||
}
|
||||
|
||||
@ -271,7 +271,12 @@ public class DataSetTableTaskService {
|
||||
return extDataSetTaskMapper.taskList(request);
|
||||
} else {
|
||||
request.setUserId(AuthUtils.getUser().getUserId());
|
||||
return extDataSetTaskMapper.userTaskList(request);
|
||||
List<DataSetTaskDTO> dataSetTaskDTOS = extDataSetTaskMapper.userTaskList(request);
|
||||
dataSetTaskDTOS.forEach(dataSetTaskDTO -> {
|
||||
request.setDatasetId(dataSetTaskDTO.getId());
|
||||
dataSetTaskDTO.setPrivileges(extDataSetTaskMapper.datasetPrivileges(request));
|
||||
});
|
||||
return dataSetTaskDTOS;
|
||||
}
|
||||
}
|
||||
|
||||
@ -312,10 +317,10 @@ public class DataSetTableTaskService {
|
||||
record.setStatus(datasetTableTask.getStatus());
|
||||
datasetTableTaskMapper.updateByExampleSelective(record, datasetTableTaskExample);
|
||||
|
||||
if(datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Pending.name())){
|
||||
if (datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Pending.name())) {
|
||||
scheduleService.pauseTrigger(datasetTableTask);
|
||||
}
|
||||
if(datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Underway.name())){
|
||||
if (datasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Underway.name())) {
|
||||
scheduleService.resumeTrigger(datasetTableTask);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user