Merge pull request #6769 from dataease/pr@dev@fixSql

Pr@dev@fix sql
This commit is contained in:
taojinlong 2023-11-20 04:43:15 -06:00 committed by GitHub
commit 775c42f833
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 34 additions and 14 deletions

View File

@ -99,6 +99,17 @@
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.3.1</version>
<exclusions>
<exclusion>
<artifactId>jsqlparser</artifactId>
<groupId>com.github.jsqlparser</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.github.jsqlparser</groupId>
<artifactId>jsqlparser</artifactId>
<version>4.6</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
@ -331,6 +342,12 @@
<artifactId>ashot</artifactId>
<version>1.5.4</version>
</dependency>
<dependency>
<groupId>io.dataease</groupId>
<artifactId>dataease-plugin-common</artifactId>
<version>1.18.11</version>
<scope>compile</scope>
</dependency>
</dependencies>

View File

@ -17,7 +17,7 @@ public class ApiDefinition {
private List<DatasetTableFieldDTO> fields;
private ApiDefinitionRequest request;
private String dataPath;
private Integer queryTimeout;
private Integer apiQueryTimeout = 30;
private String status;
private List<Map<String,String>> data = new ArrayList<>();
private List<JSONObject> jsonFields = new ArrayList<>();

View File

@ -40,7 +40,7 @@ public class ApiProvider extends Provider {
@Override
public List<String[]> getData(DatasourceRequest datasourceRequest) throws Exception {
ApiDefinition apiDefinition = checkApiDefinition(datasourceRequest);
String response = execHttpRequest(apiDefinition, apiDefinition.getQueryTimeout() == null || apiDefinition.getQueryTimeout()<=0 ? 30 : apiDefinition.getQueryTimeout());
String response = execHttpRequest(apiDefinition, apiDefinition.getApiQueryTimeout() == null || apiDefinition.getApiQueryTimeout()<=0 ? 30 : apiDefinition.getApiQueryTimeout());
return fetchResult(response, apiDefinition);
}
@ -68,7 +68,7 @@ public class ApiProvider extends Provider {
List<String[]> dataList = new ArrayList<>();
List<TableField> fieldList = new ArrayList<>();
ApiDefinition apiDefinition = checkApiDefinition(datasourceRequest);
String response = execHttpRequest(apiDefinition, apiDefinition.getQueryTimeout() == null || apiDefinition.getQueryTimeout()<=0 ? 30 : apiDefinition.getQueryTimeout());
String response = execHttpRequest(apiDefinition, apiDefinition.getApiQueryTimeout() == null || apiDefinition.getApiQueryTimeout()<=0 ? 30 : apiDefinition.getApiQueryTimeout());
fieldList = getTableFields(apiDefinition);
result.put("fieldList", fieldList);

View File

@ -97,7 +97,8 @@ public class JdbcProvider extends DefaultJdbcProvider {
}
String schemaPattern = "%";
if (datasourceRequest.getDatasource().getType().equalsIgnoreCase(DatasourceTypes.oracle.name())) {
schemaPattern = databaseMetaData.getUserName();
OracleConfiguration oracleConfiguration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), OracleConfiguration.class);
schemaPattern = oracleConfiguration.getSchema();
}
ResultSet resultSet = databaseMetaData.getColumns(null, schemaPattern, tableNamePattern, "%");
while (resultSet.next()) {
@ -121,9 +122,11 @@ public class JdbcProvider extends DefaultJdbcProvider {
list.add(tableField);
}
} else {
System.out.println(database);
if (database != null) {
if (tableName.equals(datasourceRequest.getTable()) && database.equalsIgnoreCase(getDatabase(datasourceRequest))) {
TableField tableField = getTableFiled(resultSet, datasourceRequest);
System.out.println(new Gson().toJson(tableField));
list.add(tableField);
}
} else {

View File

@ -2865,9 +2865,8 @@ public class DataSetTableService {
visitBinaryExpression(likeExpression,
(likeExpression.isNot() ? " NOT" : "") + (likeExpression.isCaseInsensitive() ? " ILIKE " : " LIKE "));
String escape = likeExpression.getEscape();
if (escape != null) {
buffer.append(" ESCAPE '").append(escape).append('\'');
if (likeExpression.getEscape() != null) {
buffer.append(" ESCAPE '").append(likeExpression.getEscape()).append('\'');
}
}

View File

@ -82,12 +82,13 @@ public class DataSetTableTaskService {
}
datasetTableTaskMapper.insert(datasetTableTask);
} else {
datasetTableTask.setStatus(TaskStatus.Underway.name());
datasetTableTask.setStatus(null);
datasetTableTask.setLastExecTime(null);
datasetTableTask.setLastExecStatus(null);
datasetTableTaskMapper.updateByPrimaryKeySelective(datasetTableTask);
}
scheduleService.deleteSchedule(datasetTableTask);
scheduleService.addSchedule(datasetTableTask);
// simple

View File

@ -566,7 +566,7 @@ export default {
this.tData.forEach(item => {
if (item.id === this.form.type) {
item.children.forEach(child => {
if (this.formType === 'modify' && child.id === this.form.id) {
if (child.id === this.form.id) {
return
}
const configuration = JSON.parse(child.configuration)

View File

@ -530,7 +530,7 @@
prop="apiQueryTimeout"
>
<el-input
v-model="apiItem.queryTimeout"
v-model="apiItem.apiQueryTimeout"
autocomplete="off"
type="number"
:min="0"
@ -855,7 +855,7 @@ export default {
acquireIncrement: 5,
idleConnectionTestPeriod: 5,
connectTimeout: 5,
queryTimeout: 30
apiQueryTimeout: 30
},
apiConfiguration: []
}
@ -1022,7 +1022,7 @@ export default {
name: '',
url: '',
method: 'GET',
queryTimeout: 30,
apiQueryTimeout: 30,
request: {
headers: [{}],
arguments: [],
@ -1040,7 +1040,7 @@ export default {
url: '',
method: 'GET',
dataPath: '',
queryTimeout: 30,
apiQueryTimeout: 30,
request: {
headers: [],
arguments: [],

View File

@ -886,7 +886,7 @@ export default {
this.tData.forEach((item) => {
if (item.id === this.form.type) {
item.children.forEach((child) => {
if (this.formType === 'modify' && child.id === this.form.id) {
if (child.id === this.form.id) {
return
}
const configuration = JSON.parse(child.configuration)