Skip to content

Commit 2f9f9b5

Browse files
committed
able to show data rows from mysql
1 parent ed58adc commit 2f9f9b5

File tree

2 files changed

+39
-11
lines changed

2 files changed

+39
-11
lines changed

console/atest-ui/src/views/DataManager.vue

Lines changed: 37 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,31 +2,58 @@
22
import { ref } from 'vue'
33
import { API } from './net'
44
import { Cache } from './cache'
5+
import { ElMessage } from 'element-plus'
56
6-
const sqlQuery = ref('')
7+
const sqlQuery = ref('select * from t_sys_global_config')
78
const queryResult = ref([])
9+
const columns = ref([])
810
911
const executeQuery = async () => {
1012
Cache.SetCurrentStore('mysql');
1113
12-
API.DataQuery(sqlQuery.value, (data) => {
13-
queryResult.value = data.data
14+
API.DataQuery(sqlQuery.value, (data) => {
15+
const result = []
16+
const cols = new Set()
17+
18+
data.items.forEach(e => {
19+
const obj = {}
20+
e.data.forEach(item => {
21+
obj[item.key] = item.value
22+
cols.add(item.key)
23+
})
24+
result.push(obj)
1425
})
26+
27+
queryResult.value = result
28+
columns.value = Array.from(cols)
29+
}, (e) => {
30+
ElMessage({
31+
showClose: true,
32+
message: e.message,
33+
type: 'error'
34+
});
35+
})
1536
}
1637
</script>
1738

1839
<template>
1940
<div>
2041
<el-form @submit.prevent="executeQuery">
21-
<el-form-item>
22-
<el-input v-model="sqlQuery" placeholder="Enter SQL query"></el-input>
23-
</el-form-item>
24-
<el-form-item>
25-
<el-button type="primary" @click="executeQuery">Execute</el-button>
26-
</el-form-item>
42+
<el-row :gutter="10">
43+
<el-col :span="20">
44+
<el-form-item>
45+
<el-input v-model="sqlQuery" placeholder="Enter SQL query"></el-input>
46+
</el-form-item>
47+
</el-col>
48+
<el-col :span="4">
49+
<el-form-item>
50+
<el-button type="primary" @click="executeQuery">Execute</el-button>
51+
</el-form-item>
52+
</el-col>
53+
</el-row>
2754
</el-form>
2855
<el-table :data="queryResult">
29-
<el-table-column v-for="(value, key) in queryResult[0]" :key="key" :prop="key" :label="key"></el-table-column>
56+
<el-table-column v-for="col in columns" :key="col" :prop="col" :label="col"></el-table-column>
3057
</el-table>
3158
</div>
3259
</template>

console/atest-ui/src/views/net.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -773,7 +773,7 @@ var SBOM = (callback: (d: any) => void) => {
773773
.then(callback)
774774
}
775775

776-
var DataQuery = (query: string, callback: (d: any) => void) => {
776+
var DataQuery = (query: string, callback: (d: any) => void, errHandler: (d: any) => void) => {
777777
const requestOptions = {
778778
method: 'POST',
779779
headers: {
@@ -786,6 +786,7 @@ var DataQuery = (query: string, callback: (d: any) => void) => {
786786
fetch(`/api/v1/data/query`, requestOptions)
787787
.then(DefaultResponseProcess)
788788
.then(callback)
789+
.catch(errHandler)
789790
}
790791

791792
export const API = {

0 commit comments

Comments
 (0)