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