Skip to content

Commit 4d4d40b

Browse files
committed
Merge branch 'develop' into release-v4.9.0
2 parents a15a713 + 6de98f4 commit 4d4d40b

30 files changed

Lines changed: 1330 additions & 938 deletions

File tree

apps/daas/src/views/login/Login.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ export default {
138138
show-icon
139139
:closable="false"
140140
/>
141-
<form class="rounded-lg">
141+
<form class="rounded-xl">
142142
<input
143143
v-model="form.email"
144144
class="input"

packages/api/src/core/metadata-instances.ts

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { isPlainObj } from '@tap/shared'
21
import { requestClient, type PageFetchResult } from '../request'
32

43
const BASE_URL = '/api/MetadataInstances'
@@ -89,17 +88,11 @@ export function getOriginalData(qualified_name: string, target?: string) {
8988
}
9089
}
9190

92-
export function fetchMetadataInstances(params: any = {}, filter?: any) {
93-
if (Array.isArray(params)) {
94-
filter = typeof filter === 'object' ? JSON.stringify(filter) : filter
95-
const qs = filter ? `?filter=${encodeURIComponent(filter)}` : ''
96-
return requestClient.get(`${BASE_URL}/${params.join('/')}${qs}`)
97-
}
98-
const config = { params }
99-
if (isPlainObj(filter)) {
100-
Object.assign(config, filter)
101-
}
102-
return requestClient.get(BASE_URL, config)
91+
export function fetchMetadataInstances(filter?: object, config?: any) {
92+
return requestClient.get(BASE_URL, {
93+
params: { filter: filter ? JSON.stringify(filter) : undefined },
94+
...config,
95+
})
10396
}
10497

10598
export function getTables(connectionId: string) {

packages/business/src/components/SchemaProgress.vue

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,8 @@ import {
33
CircleCheckFilled,
44
CircleCloseFilled,
55
Loading,
6-
WarningFilled,
76
} from '@element-plus/icons-vue'
87
import dayjs from 'dayjs'
9-
import { h } from 'vue'
108
import { ErrorMessage } from './error-message'
119
1210
export default {
@@ -87,7 +85,8 @@ export default {
8785
<ElButton
8886
v-if="
8987
data.loadFieldsStatus !== 'finished' &&
90-
data.loadFieldsStatus !== 'loading'
88+
data.loadFieldsStatus !== 'loading' &&
89+
data.loadFieldErrMsg
9190
"
9291
text
9392
type="primary"

packages/business/src/views/api-application/ListSelect.vue

Lines changed: 70 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -1,89 +1,83 @@
1-
<script>
1+
<script setup lang="ts">
22
import { fetchApps } from '@tap/api'
33
import AsyncSelect from '@tap/form/src/components/infinite-select/InfiniteSelect.vue'
4+
import { reactive, watch } from 'vue'
45
5-
export default {
6-
name: 'ListSelect',
7-
components: { AsyncSelect },
8-
props: {
9-
value: {
10-
type: [String, Number],
11-
},
12-
label: {
13-
type: String,
14-
},
15-
params: {
16-
type: Object,
17-
default: () => {
18-
return {}
19-
},
20-
},
21-
format: {
22-
type: Function,
23-
},
24-
},
25-
emits: ['change', 'update:label', 'update:value'],
26-
data() {
27-
return {
28-
form: {
29-
label: '',
30-
value: '',
31-
},
32-
}
33-
},
34-
watch: {
35-
value: {
36-
handler(v) {
37-
this.form.value = v
38-
this.form.label = this.label
39-
},
40-
immediate: true,
41-
},
42-
},
43-
methods: {
44-
handleChange(opt) {
45-
const { label } = opt
46-
this.form.label = label
47-
this.$emit('update:value', this.form.value)
48-
this.$emit('update:label', this.form.label)
49-
this.$emit('change', this.form.value, opt)
50-
},
6+
interface Props {
7+
value?: string | number
8+
label?: string
9+
params?: Record<string, any>
10+
format?: (items: any[]) => any[]
11+
}
5112
52-
async getData(filter = {}) {
53-
const { page, size } = filter
54-
const params = {
55-
where: {
56-
item_type: 'app',
57-
},
58-
order: 'createTime DESC',
59-
limit: size,
60-
skip: (page - 1) * size,
61-
}
13+
const props = withDefaults(defineProps<Props>(), {
14+
params: () => ({}),
15+
})
6216
63-
const { label } = filter.where || {}
64-
if (label) {
65-
Object.assign(params.where, {
66-
value: label,
67-
})
68-
}
17+
const emit = defineEmits<{
18+
(e: 'change', value: string | number | undefined, opt: any): void
19+
(e: 'update:label', label: string): void
20+
(e: 'update:value', value: string | number | undefined): void
21+
}>()
6922
70-
const res = await fetchApps(Object.assign(params, this.params))
23+
const form = reactive({
24+
label: '',
25+
value: '' as string | number | undefined,
26+
})
7127
72-
res.items = res.items.map((t) => {
73-
return {
74-
label: t.value,
75-
value: t.id,
76-
data: t,
77-
}
78-
})
28+
watch(
29+
() => props.value,
30+
(v) => {
31+
form.value = v
32+
form.label = props.label || ''
33+
},
34+
{ immediate: true },
35+
)
7936
80-
if (this.format) {
81-
res.items = this.format(res.items)
82-
}
37+
const handleChange = (opt: any) => {
38+
const { label } = opt
39+
form.label = label
40+
emit('update:value', form.value)
41+
emit('update:label', form.label)
42+
emit('change', form.value, opt)
43+
}
8344
84-
return res
45+
const getData = async (filter: any = {}) => {
46+
const { page, size } = filter
47+
const params = {
48+
where: {
49+
item_type: 'app',
8550
},
86-
},
51+
order: 'createTime DESC',
52+
limit: size,
53+
skip: (page - 1) * size,
54+
}
55+
56+
const { label } = filter.where || {}
57+
if (label) {
58+
Object.assign(params.where, {
59+
value: label,
60+
})
61+
}
62+
63+
const res = await fetchApps(Object.assign(params, props.params))
64+
65+
let items = res.items.map((t: any) => {
66+
return {
67+
label: t.value,
68+
value: t.id,
69+
data: t,
70+
}
71+
})
72+
73+
if (props.format) {
74+
items = props.format(items)
75+
}
76+
77+
return {
78+
...res,
79+
items,
80+
}
8781
}
8882
</script>
8983

0 commit comments

Comments
 (0)