From 7c2414e46c800c0d71926205593ac71d72d94502 Mon Sep 17 00:00:00 2001 From: ssongliu Date: Mon, 24 Oct 2022 18:46:48 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=8C=E6=88=90=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E7=8A=B6=E6=80=81=E5=8F=8A=E8=B0=83=E4=BC=98?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/service/database_test.go | 23 +- frontend/src/lang/modules/zh.ts | 1 + frontend/src/utils/util.ts | 2 +- .../src/views/database/mysql/create/index.vue | 19 +- .../views/database/mysql/setting/index.vue | 223 ++++++++++++------ go.mod | 2 +- 6 files changed, 167 insertions(+), 103 deletions(-) diff --git a/backend/app/service/database_test.go b/backend/app/service/database_test.go index e32985956..2637b2d63 100644 --- a/backend/app/service/database_test.go +++ b/backend/app/service/database_test.go @@ -2,43 +2,32 @@ package service import ( "database/sql" - "encoding/json" "fmt" "testing" - "github.com/1Panel-dev/1Panel/backend/app/dto" _ "github.com/go-sql-driver/mysql" ) func TestMysql(t *testing.T) { - connArgs := fmt.Sprintf("%s:%s@tcp(%s:%d)/?charset=utf8", "root", "Calong@2015", "localhost", 2306) + connArgs := fmt.Sprintf("%s:%s@tcp(%s:%d)/?charset=utf8", "root", "Calong@2015", "172.16.10.143", 3306) db, err := sql.Open("mysql", connArgs) if err != nil { fmt.Println(err) } defer db.Close() - rows, err := db.Query("show VARIABLES") + rows, err := db.Query("show master status") if err != nil { fmt.Println(err) } - variableMap := make(map[string]string) + masterRows := make([]string, 5) for rows.Next() { - var variableName, variableValue string - if err := rows.Scan(&variableName, &variableValue); err != nil { + if err := rows.Scan(&masterRows[0], &masterRows[1], &masterRows[2], &masterRows[3], &masterRows[4]); err != nil { fmt.Println(err) } - variableMap[variableName] = variableValue } - var info dto.MysqlConf - arr, err := json.Marshal(variableMap) - if err != nil { - fmt.Println(err) + for k, v := range masterRows { + fmt.Println(k, v) } - err = json.Unmarshal(arr, &info) - if err != nil { - fmt.Println(err) - } - fmt.Println(info) } diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts index 8c943b612..8cd0c3682 100644 --- a/frontend/src/lang/modules/zh.ts +++ b/frontend/src/lang/modules/zh.ts @@ -161,6 +161,7 @@ export default { loadBackup: '导入备份', setting: '数据库设置', remoteAccess: '远程访问', + changePassword: '改密', baseSetting: '基础设置', confChange: '配置修改', diff --git a/frontend/src/utils/util.ts b/frontend/src/utils/util.ts index c72385a2b..e000c3b20 100644 --- a/frontend/src/utils/util.ts +++ b/frontend/src/utils/util.ts @@ -111,7 +111,7 @@ export function computeSize(size: number): string { const num = 1024.0; if (size < num) return size + ' B'; - if (size < Math.pow(num, 2)) return (size / num).toFixed(2) + ' K'; + if (size < Math.pow(num, 2)) return (size / num).toFixed(2) + ' KB'; if (size < Math.pow(num, 3)) return (size / Math.pow(num, 2)).toFixed(2) + ' MB'; if (size < Math.pow(num, 4)) return (size / Math.pow(num, 3)).toFixed(2) + ' GB'; return (size / Math.pow(num, 4)).toFixed(2) + ' TB'; diff --git a/frontend/src/views/database/mysql/create/index.vue b/frontend/src/views/database/mysql/create/index.vue index d1f1df7e8..aad897250 100644 --- a/frontend/src/views/database/mysql/create/index.vue +++ b/frontend/src/views/database/mysql/create/index.vue @@ -27,13 +27,13 @@ - - + + - + @@ -60,6 +60,7 @@ import { addMysqlDB } from '@/api/modules/database'; const createVisiable = ref(false); const form = reactive({ name: '', + version: '', format: '', username: '', password: '', @@ -77,12 +78,16 @@ const rules = reactive({ type FormInstance = InstanceType; const formRef = ref(); -const acceptParams = (): void => { +interface DialogProps { + version: string; +} +const acceptParams = (params: DialogProps): void => { form.name = ''; + form.version = params.version; form.format = 'utf8mb4'; form.username = ''; form.password = ''; - form.permission = 'local'; + form.permission = 'localhost'; form.permissionIPs = ''; form.description = ''; createVisiable.value = true; @@ -93,8 +98,10 @@ const onSubmit = async (formEl: FormInstance | undefined) => { if (!formEl) return; formEl.validate(async (valid) => { if (!valid) return; + if (form.permission === 'ip') { + form.permission = form.permissionIPs; + } await addMysqlDB(form); - ElMessage.success(i18n.global.t('commons.msg.operationSuccess')); emit('search'); createVisiable.value = false; diff --git a/frontend/src/views/database/mysql/setting/index.vue b/frontend/src/views/database/mysql/setting/index.vue index 8bbb5dc79..dd293af85 100644 --- a/frontend/src/views/database/mysql/setting/index.vue +++ b/frontend/src/views/database/mysql/setting/index.vue @@ -1,5 +1,5 @@