From ac81979579c4936cb5dd842dd7ea59a88977bbdd Mon Sep 17 00:00:00 2001 From: wkl505997900 <2313665567@qq.com> Date: Thu, 26 Oct 2023 17:30:04 +0800 Subject: [PATCH] add password and ssh_pkey judge logic --- src/views/assests/components/EditableCell.vue | 34 +++++++++++++------ src/views/assests/components/addMoreHost.vue | 10 +++++- vue.config.js | 32 ++++++----------- 3 files changed, 43 insertions(+), 33 deletions(-) diff --git a/src/views/assests/components/EditableCell.vue b/src/views/assests/components/EditableCell.vue index 28f0f62..5f4b347 100644 --- a/src/views/assests/components/EditableCell.vue +++ b/src/views/assests/components/EditableCell.vue @@ -21,7 +21,7 @@
- {{ countStar(form[formkey]) }} + {{ countStar() }} {{ value || ' ' }}
@@ -40,9 +40,27 @@ export default { formkey: { default: '', type: String + }, + record: { + default: null, + type: Object } }, data() { + const validatePassword = (rule, value, callback) => { + if (!this.record.ssh_pkey && (value.length === 0 || value.split(' ').join('').length === 0)) { + callback(new Error('password和ssh_pkey不能都为空!')); + } else { + callback(); + } + }; + const validateSshpkey = (rule, value, callback) => { + if (!this.record.password && (value.length === 0 || value.split(' ').join('').length === 0)) { + callback(new Error('password和ssh_pkey不能都为空!')); + } else { + callback(); + } + }; const validateUser = (rule, value, callback) => { if (value.length === 0 || value.split(' ').join('').length === 0) { callback(new Error('ssh_user不能为空!')); @@ -90,14 +108,14 @@ export default { cb(); }; return { - value: this.text, + value: this.text === 'undefined' ? '' : this.text, editable: false, rules: { host_ip: [{ required: true, pattern: /^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$/, message: '请输入IP地址在 0.0.0.0~255.255.255.255 区间内', trigger: 'change' }], ssh_port: [{required: true, message: '请输入端口'}, {validator: checkSSHPort}], ssh_user: [{ validator: validateUser, trigger: 'change' }], - password: [{ required: true, message: 'password不能为空', trigger: 'change' }], - ssh_pkey: [{ required: true, message: 'ssh_pkey不能为空', trigger: 'change' }], + password: [{ validator: validatePassword, trigger: 'change' }], + ssh_pkey: [{ validator: validateSshpkey, trigger: 'change' }], host_name: [{ validator: checkNameInput, trigger: 'change' }], host_group_name: [{ required: true, message: 'host_group_name不能为空', trigger: 'change' }], management: [{ validator: checkmanagement, trigger: 'change' }] @@ -106,11 +124,7 @@ export default { }, methods: { countStar(num) { - let str = '' - for (let i = 0; i < num.length; i++) { - str += '*' - } - return str + return '**********' }, handleChange(e) { const value = e.target.value; @@ -152,7 +166,7 @@ export default { created() { }, beforeDestroy() { - document.removeEventListener('mouseup', this.handleClickOutside) + document.removeEventListener('mouseup', this.handleClickOutside); }, mounted() { document.addEventListener('mouseup', this.handleClickOutside) diff --git a/src/views/assests/components/addMoreHost.vue b/src/views/assests/components/addMoreHost.vue index 818ffa6..efc930b 100644 --- a/src/views/assests/components/addMoreHost.vue +++ b/src/views/assests/components/addMoreHost.vue @@ -31,6 +31,7 @@ { const arr = Object.keys(item) - if (!arr.includes('host_ip') || !arr.includes('ssh_port') || !arr.includes('ssh_user') || !arr.includes('password') || !arr.includes('ssh_pkey') || !arr.includes('host_name') || !arr.includes('host_group_name') || !arr.includes('management')) { + if (!arr.includes('host_ip') || !arr.includes('ssh_port') || !arr.includes('ssh_user') || (!arr.includes('password') && !arr.includes('ssh_pkey')) || !arr.includes('host_name') || !arr.includes('host_group_name') || !arr.includes('management')) { this.removeFile(file); this.dataAllow = false; } diff --git a/vue.config.js b/vue.config.js index a93ea29..8740425 100644 --- a/vue.config.js +++ b/vue.config.js @@ -25,10 +25,7 @@ function getGitHash() { } const serverMap = { - serverIpBase: 'http://127.0.0.1', - serveiIp1: 'http://172.168.115.178', - serveiIp2: 'http://172.168.97.229', - serveiIp3: 'http://172.168.240.235' + serverIpBase: 'http://127.0.0.1' } // vue.config.js @@ -101,8 +98,7 @@ const vueConfig = { // If you want to turn on the proxy, please remove the mockjs /src/main.jsL11 proxy: { '/api/domain': { - // target: serverMap.serverIpBase + ':11114', - target: serverMap.serveiIp3 + ':11114', + target: serverMap.serverIpBase + ':11114', ws: false, changeOrigin: true, pathRewrite: { @@ -110,8 +106,7 @@ const vueConfig = { } }, '/api/host': { - // target: serverMap.serverIpBase + ':11114', - target: serverMap.serveiIp3 + ':11114', + target: serverMap.serverIpBase + ':11114', ws: false, changeOrigin: true, pathRewrite: { @@ -119,8 +114,7 @@ const vueConfig = { } }, '/api/confs': { - // target: serverMap.serverIpBase + ':11114', - target: serverMap.serveiIp3 + ':11114', + target: serverMap.serverIpBase + ':11114', ws: false, changeOrigin: true, pathRewrite: { @@ -128,8 +122,7 @@ const vueConfig = { } }, '/api/management': { - // target: serverMap.serverIpBase + ':11114', - target: serverMap.serveiIp3 + ':11114', + target: serverMap.serverIpBase + ':11114', ws: false, changeOrigin: true, pathRewrite: { @@ -137,8 +130,7 @@ const vueConfig = { } }, '/api/diag': { - // target: serverMap.serverIpBase + ':11113', - target: serverMap.serveiIp2 + ':11113', + target: serverMap.serverIpBase + ':11113', ws: false, changeOrigin: true, pathRewrite: { @@ -146,8 +138,7 @@ const vueConfig = { } }, '/api/check': { - // target: serverMap.serverIpBase + ':11112', - target: serverMap.serveiIp2 + ':11112', + target: serverMap.serverIpBase + ':11112', ws: false, changeOrigin: true, pathRewrite: { @@ -155,8 +146,7 @@ const vueConfig = { } }, '/api/vulnerability': { - // target: serverMap.serverIpBase + ':11116', - target: serverMap.serveiIp2 + ':11116', + target: serverMap.serverIpBase + ':11116', ws: false, changeOrigin: true, pathRewrite: { @@ -164,8 +154,7 @@ const vueConfig = { } }, '/api/gala-spider': { - // target: serverMap.serverIpBase + ':11115', - target: serverMap.serveiIp2 + ':11115', + target: serverMap.serverIpBase + ':11115', ws: false, changeOrigin: true, pathRewrite: { @@ -173,8 +162,7 @@ const vueConfig = { } }, '/api': { - // target: serverMap.serverIpBase + ':11111', - target: serverMap.serveiIp2 + ':11111', + target: serverMap.serverIpBase + ':11111', ws: false, changeOrigin: true, pathRewrite: { -- Gitee