fix: 添加数据库驱动配置
This commit is contained in:
parent
15160e4d18
commit
3307392d58
7
components.d.ts
vendored
7
components.d.ts
vendored
@ -10,9 +10,6 @@ declare module 'vue' {
|
||||
ABreadcrumb: typeof import('ant-design-vue/es')['Breadcrumb']
|
||||
ABreadcrumbItem: typeof import('ant-design-vue/es')['BreadcrumbItem']
|
||||
AButton: typeof import('ant-design-vue/es')['Button']
|
||||
ACheckbox: typeof import('ant-design-vue/es')['Checkbox']
|
||||
ACheckboxGroup: typeof import('ant-design-vue/es')['CheckboxGroup']
|
||||
ACol: typeof import('ant-design-vue/es')['Col']
|
||||
AConfigProvider: typeof import('ant-design-vue/es')['ConfigProvider']
|
||||
ADropdown: typeof import('ant-design-vue/es')['Dropdown']
|
||||
AFloatButton: typeof import('ant-design-vue/es')['FloatButton']
|
||||
@ -26,13 +23,9 @@ declare module 'vue' {
|
||||
APagination: typeof import('ant-design-vue/es')['Pagination']
|
||||
APopconfirm: typeof import('ant-design-vue/es')['Popconfirm']
|
||||
ARadio: typeof import('ant-design-vue/es')['Radio']
|
||||
ARadioButton: typeof import('ant-design-vue/es')['RadioButton']
|
||||
ARadioGroup: typeof import('ant-design-vue/es')['RadioGroup']
|
||||
ARangePicker: typeof import('ant-design-vue/es')['RangePicker']
|
||||
ARow: typeof import('ant-design-vue/es')['Row']
|
||||
ASelect: typeof import('ant-design-vue/es')['Select']
|
||||
ASpace: typeof import('ant-design-vue/es')['Space']
|
||||
ASpin: typeof import('ant-design-vue/es')['Spin']
|
||||
ASwitch: typeof import('ant-design-vue/es')['Switch']
|
||||
ATable: typeof import('ant-design-vue/es')['Table']
|
||||
RouterLink: typeof import('vue-router')['RouterLink']
|
||||
|
@ -55,7 +55,56 @@
|
||||
:options="tableTypes"
|
||||
/>
|
||||
</a-form-item>
|
||||
|
||||
<a-form-item label="数据库特殊配置" name="is_other_database">
|
||||
<a-switch
|
||||
v-model:checked="formData.is_other_database"
|
||||
:checkedValue="1"
|
||||
:unCheckedValue="0"
|
||||
@change="isOtherChange"
|
||||
/>
|
||||
</a-form-item>
|
||||
<template v-if="formData.is_other_database">
|
||||
<a-form-item label="数据库驱动" name="drive_type">
|
||||
<a-radio-group v-model:value="formData.drive_type">
|
||||
<a-radio :value="1">MySQL</a-radio>
|
||||
<a-radio :value="2">Click House</a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-item>
|
||||
<a-form-item label="数据库地址" name="database_address">
|
||||
<a-input
|
||||
placeholder="请输入数据库地址"
|
||||
v-model:value="formData.database_address"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="数据库端口" name="database_port">
|
||||
<a-input-number
|
||||
placeholder="请输入数据库端口"
|
||||
v-model:value="formData.database_port"
|
||||
style="width: 200px"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="数据库名称" name="database_name">
|
||||
<a-input
|
||||
placeholder="请输入数据库名称"
|
||||
v-model:value="formData.database_name"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="数据库用户" name="database_username">
|
||||
<a-input
|
||||
placeholder="请输入数据库用户"
|
||||
v-model:value="formData.database_username"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="数据库密码" name="database_password">
|
||||
<a-space>
|
||||
<a-input
|
||||
placeholder="请输入数据库密码"
|
||||
v-model:value="formData.database_password"
|
||||
/>
|
||||
</a-space>
|
||||
</a-form-item>
|
||||
</template>
|
||||
|
||||
</a-form>
|
||||
</a-modal>
|
||||
</template>
|
||||
@ -104,6 +153,13 @@ const formData = ref({
|
||||
// show_type_id: undefined,
|
||||
original_sql: undefined,
|
||||
table: undefined,
|
||||
is_other_database: 0,
|
||||
drive_type: 1,
|
||||
database_address: undefined,
|
||||
database_port: undefined,
|
||||
database_name: undefined,
|
||||
database_username: undefined,
|
||||
database_password: undefined,
|
||||
});
|
||||
|
||||
watch(
|
||||
@ -121,6 +177,13 @@ watch(
|
||||
// show_type_id: newVal.show_type_id,
|
||||
original_sql: newVal.original_sql,
|
||||
table: newVal.table,
|
||||
drive_type: newVal.drive_type,
|
||||
is_other_database: newVal.is_other_database,
|
||||
database_address: newVal.database_address,
|
||||
database_port: newVal.database_port,
|
||||
database_name: newVal.database_name,
|
||||
database_username: newVal.database_username,
|
||||
database_password: newVal.database_password,
|
||||
};
|
||||
}
|
||||
}
|
||||
@ -132,6 +195,15 @@ const toGetDbTable = () => {
|
||||
});
|
||||
};
|
||||
|
||||
const isOtherChange = (val) => {
|
||||
formData.value.drive_type = val ? 1 : undefined
|
||||
formData.value.database_address = undefined
|
||||
formData.value.database_port = undefined
|
||||
formData.value.database_name = undefined
|
||||
formData.value.database_username = undefined
|
||||
formData.value.database_password = undefined
|
||||
}
|
||||
|
||||
const resetFormData = () => {
|
||||
formData.value = {
|
||||
project_id: undefined,
|
||||
@ -141,6 +213,13 @@ const resetFormData = () => {
|
||||
// show_type_id: undefined,
|
||||
original_sql: undefined,
|
||||
table: undefined,
|
||||
is_other_database: 0,
|
||||
drive_type: undefined,
|
||||
database_address: undefined,
|
||||
database_port: undefined,
|
||||
database_name: undefined,
|
||||
database_username: undefined,
|
||||
database_password: undefined,
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -59,6 +59,12 @@
|
||||
>
|
||||
</a-space>
|
||||
</a-form-item>
|
||||
<a-form-item label="数据库驱动" name="drive_type">
|
||||
<a-radio-group v-model:value="formData.drive_type">
|
||||
<a-radio :value="1">MySQL</a-radio>
|
||||
<a-radio :value="2">Click House</a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-modal>
|
||||
</template>
|
||||
@ -98,12 +104,6 @@ const formRules = {
|
||||
database_name: [
|
||||
{ required: true, message: "请输入数据库名称", trigger: "submit" },
|
||||
],
|
||||
database_username: [
|
||||
{ required: true, message: "请输入数据库用户", trigger: "submit" },
|
||||
],
|
||||
database_password: [
|
||||
{ required: true, message: "请输入数据库密码", trigger: "submit" },
|
||||
],
|
||||
};
|
||||
|
||||
const formRef = ref();
|
||||
@ -116,6 +116,7 @@ const formData = ref({
|
||||
database_name: undefined,
|
||||
database_username: undefined,
|
||||
database_password: undefined,
|
||||
drive_type: 1,
|
||||
});
|
||||
|
||||
watch(
|
||||
@ -138,6 +139,7 @@ const toCheckDbConnect = () => {
|
||||
database_address: formData.value.database_address,
|
||||
database_username: formData.value.database_username,
|
||||
database_password: formData.value.database_password,
|
||||
drive_type: formData.value.drive_type,
|
||||
}).then((res) => {
|
||||
message.success(res.message);
|
||||
});
|
||||
@ -149,8 +151,6 @@ const validateConnect = () => {
|
||||
database_name: "请输入数据库名称",
|
||||
database_port: "请输入数据库端口",
|
||||
database_address: "请输入数据库地址",
|
||||
database_username: "请输入数据库用户",
|
||||
database_password: "请输入数据库密码",
|
||||
};
|
||||
for (const key in fields) {
|
||||
if (!formData.value[key]) {
|
||||
@ -171,6 +171,7 @@ const resetFormData = () => {
|
||||
database_name: undefined,
|
||||
database_username: undefined,
|
||||
database_password: undefined,
|
||||
drive_type: 1,
|
||||
};
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user