diff --git a/core/core-frontend/src/api/dataset.ts b/core/core-frontend/src/api/dataset.ts
index 796cf88402..d8b5c469fd 100644
--- a/core/core-frontend/src/api/dataset.ts
+++ b/core/core-frontend/src/api/dataset.ts
@@ -16,6 +16,7 @@ export interface EnumValue {
displayId?: string
sortId?: string
sort?: string
+ resultMode?: number
searchText: string
filter?: Array<{}>
}
diff --git a/core/core-frontend/src/custom-component/v-query/Component.vue b/core/core-frontend/src/custom-component/v-query/Component.vue
index 36fbdfa107..a036a0bfef 100644
--- a/core/core-frontend/src/custom-component/v-query/Component.vue
+++ b/core/core-frontend/src/custom-component/v-query/Component.vue
@@ -423,7 +423,17 @@ const queryData = () => {
requiredName = next.name
}
- if (
+ if (next.displayType === '8') {
+ const { conditionValueF, conditionValueS, conditionType } = next
+ if (conditionType === 0) {
+ requiredName = conditionValueF === '' ? next.name : ''
+ } else {
+ requiredName = [conditionValueF || '', conditionValueS || ''].filter(ele => ele !== '')
+ .length
+ ? next.name
+ : ''
+ }
+ } else if (
(Array.isArray(next.selectValue) && !next.selectValue.length) ||
(next.selectValue !== 0 && !next.selectValue)
) {
diff --git a/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue b/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue
index dae6c1674e..9d4e98f5e3 100644
--- a/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue
+++ b/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue
@@ -922,6 +922,7 @@ const parameterCompletion = () => {
conditionValueF: '',
conditionValueOperatorS: 'like',
conditionValueS: '',
+ resultMode: 0,
defaultConditionValueOperatorF: 'eq',
defaultConditionValueF: '',
defaultConditionValueOperatorS: 'like',
@@ -1850,6 +1851,13 @@ defineExpose({
+
条件类型
diff --git a/core/core-frontend/src/custom-component/v-query/Select.vue b/core/core-frontend/src/custom-component/v-query/Select.vue
index 4ae900a494..f0728dfaf8 100644
--- a/core/core-frontend/src/custom-component/v-query/Select.vue
+++ b/core/core-frontend/src/custom-component/v-query/Select.vue
@@ -25,6 +25,7 @@ interface SelectConfig {
displayType: string
showEmpty: boolean
id: string
+ resultMode: number
displayId: string
sort: string
sortId: string
@@ -50,6 +51,7 @@ const props = defineProps({
default: () => {
return {
selectValue: '',
+ resultMode: 0,
defaultValue: '',
displayType: '',
defaultValueCheck: false,
@@ -219,7 +221,10 @@ const displayTypeChange = () => {
const handleFieldIdDefaultChange = (val: string[]) => {
loading.value = true
- getEnumValue(val)
+ getEnumValue({
+ fieldIds: val,
+ resultMode: config.value.resultMode || 0
+ })
.then(res => {
options.value = (res || [])
.filter(ele => ele !== null)
@@ -501,6 +506,7 @@ const setOptions = (num: number) => {
displayId: displayId || field.id,
sort,
sortId,
+ resultMode: config.value.resultMode || 0,
searchText: searchText.value,
filter: getCascadeFieldId()
})
diff --git a/core/core-frontend/src/custom-component/v-query/Tree.vue b/core/core-frontend/src/custom-component/v-query/Tree.vue
index 0b29fb690c..79d255a21a 100644
--- a/core/core-frontend/src/custom-component/v-query/Tree.vue
+++ b/core/core-frontend/src/custom-component/v-query/Tree.vue
@@ -16,6 +16,7 @@ interface SelectConfig {
selectValue: any
defaultMapValue: any
defaultValue: any
+ resultMode: number
checkedFieldsMap: object
displayType: string
id: string
@@ -39,6 +40,7 @@ const props = defineProps({
selectValue: '',
defaultValue: '',
displayType: '',
+ resultMode: 0,
defaultValueCheck: false,
multiple: false,
checkedFieldsMap: {},
@@ -176,7 +178,10 @@ const loading = ref(false)
const getTreeOption = debounce(() => {
loading.value = true
- getFieldTree(props.config.treeFieldList.map(ele => ele.id))
+ getFieldTree({
+ fieldIds: props.config.treeFieldList.map(ele => ele.id),
+ resultMode: config.value.resultMode || 0
+ })
.then(res => {
treeOptionList.value = dfs(res)
})
diff --git a/core/core-frontend/src/views/visualized/data/datasource/form/index.vue b/core/core-frontend/src/views/visualized/data/datasource/form/index.vue
index 79a3500da5..b662c737b9 100644
--- a/core/core-frontend/src/views/visualized/data/datasource/form/index.vue
+++ b/core/core-frontend/src/views/visualized/data/datasource/form/index.vue
@@ -135,6 +135,25 @@ const getDatasourceTypes = () => {
})
}
getDatasourceTypes()
+const loadDsPlugin = data => {
+ data.forEach(item => {
+ const { name, category, type, icon, extraParams, staticMap } = item
+ const node = {
+ name,
+ category,
+ type,
+ icon,
+ extraParams,
+ isPlugin: true,
+ staticMap
+ }
+
+ const index = typeList.findIndex(ele => ele === node.catalog)
+ if (index !== -1) {
+ databaseList[index].push(node)
+ }
+ })
+}
const getLatestUseTypes = () => {
latestUse({}).then(res => {
@@ -726,6 +745,10 @@ defineExpose({
@finish="complete"
ref="creatDsFolder"
>
+