Merge branch 'feature/new-sys' into 'release'
fix: 添加数据库驱动配置 See merge request workbench/y-code!9
This commit is contained in:
		
						commit
						3545a324a4
					
				
							
								
								
									
										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
	 吴骆婷
						吴骆婷