diff --git a/nezha-fronted/src/components/common/language/en.js b/nezha-fronted/src/components/common/language/en.js index 28f4f1a59..a1e44fa43 100644 --- a/nezha-fronted/src/components/common/language/en.js +++ b/nezha-fronted/src/components/common/language/en.js @@ -191,7 +191,9 @@ const en = { account:'Account', port:'Port', upload:'Upload', - clickToUpload:'Upload' + clickToUpload:'Upload', + clickToCover:'Cover', + sshKeyWasConfig:'SSH-KEY has been configured' }, editAssetTab:{ title:'Create Asset', diff --git a/nezha-fronted/src/components/page/asset/asset.vue b/nezha-fronted/src/components/page/asset/asset.vue index 079d7dc35..19d9dff84 100644 --- a/nezha-fronted/src/components/page/asset/asset.vue +++ b/nezha-fronted/src/components/page/asset/asset.vue @@ -539,6 +539,8 @@ } }, flushData() { + this.addUnitShow=false; + this.editUnitShow=false; this.getSingleAsset(); this.getAssetData(); this.getIDCOptionData(); diff --git a/nezha-fronted/src/components/page/asset/assetAddUnit.vue b/nezha-fronted/src/components/page/asset/assetAddUnit.vue index 21af03e9f..078336936 100644 --- a/nezha-fronted/src/components/page/asset/assetAddUnit.vue +++ b/nezha-fronted/src/components/page/asset/assetAddUnit.vue @@ -617,12 +617,12 @@
- -
- {{assetData.state==1 ? $t('asset.createAssetTab.inStore'): $t('asset.createAssetTab.outStore')}} + {{assetData.state==1 ? $t('asset.createAssetTab.inStock'): $t('asset.createAssetTab.notInStock')}}
{{assetViewData.moduleNum}}
@@ -639,12 +639,12 @@
- - @@ -858,7 +862,9 @@ idcId: [ {required: true, message: this.$t('validate.required'), trigger: 'blur'} ] - } + }, + uploadFileList:[], + formData:null } }, /*computed: { @@ -946,6 +952,7 @@ this.assetData.accounts[0].user = response.data.list[0].accounts[0].user this.assetData.accounts[0].pwd = response.data.list[0].accounts[0].pwd this.assetData.accounts[0].port = response.data.list[0].accounts[0].port + this.assetData.accounts[0].cert = response.data.list[0].accounts[0].privateKey this.idcSelectedData.location = response.data.list[0].idc.location this.idcSelectedData.principal = response.data.list[0].idc.principal this.idcSelectedData.tel = response.data.list[0].idc.tel @@ -1016,6 +1023,15 @@ } }) }, + changeLoginType:function(loginType){ + this.assetData.accounts[0].authType = loginType; + if(loginType == 1){//密码登录 + this.clearFile(); + } + if(loginType == 2){//公钥登录 + this.assetData.accounts[0].pwd=''; + } + }, editData(data, item, mark) { let obj = { id: '', @@ -1038,23 +1054,27 @@ form.append("sn", this.assetData.sn); form.append("host", this.assetData.host); form.append("state", this.assetData.state); - form.append("purchaseDate", this.assetData.purchaseDate); + form.append("purchaseDate", !this.assetData.purchaseDate?'':this.assetData.purchaseDate); form.append("idcId", this.assetData.idcId); form.append("cabinetId", this.assetData.cabinetId); form.append("modelId", modelId); form.append("accounts[0].id", this.assetData.accounts[0].id); form.append("accounts[0].authType", this.assetData.accounts[0].authType); form.append("accounts[0].user", this.assetData.accounts[0].user); - form.append("accounts[0].pwd", this.assetData.accounts[0].pwd); form.append("accounts[0].port", this.assetData.accounts[0].port); - form.append("cert", this.assetData.accounts[0].file); + form.append("accounts[0].pwd", this.assetData.accounts[0].pwd); + if(this.assetData.accounts[0].authType==2&&this.uploadFileList.length>0){ + + form.append('cert',this.uploadFileList[0].raw); + } this.$refs.assetEditForm.validate((valid) => { if (valid) { - this.$put('asset', form).then(res => { + this.$put('asset', form,{'Content-Type': 'multipart/form-data'}).then(res => { const h = this.$createElement; if (res.code === 200) { this.$message({duration: 2000, type: 'success', message: this.$t("tip.saveSuccess")}); + this.clearFile(); this.pageObj.id = ''; this.$emit('refreshData', 'true'); this.sendStateData('close'); @@ -1066,6 +1086,7 @@ return false; } }); + } else { if (data === 'model') { item.vendorCode = this.vendorCode @@ -1127,6 +1148,16 @@ }) } }, + uploadFile:function(file){ + + }, + clearFile:function(){ + if(this.$refs.upload){ + this.$refs.upload.clearFiles(); + } + this.uploadFileList=[]; + this.assetData.accounts[0].privateKey=''; + }, addNewData(type) { if (type === 'IDC') { const h = this.$createElement; @@ -1442,8 +1473,11 @@ this.tempData = '' } }, - handleChange(file) { - this.assetData.accounts[0].file = file.raw + handleChange(file,fileList) { + if (fileList.length > 0) { + this.uploadFileList = [fileList[fileList.length - 1]] + } + this.assetData.accounts[0].file = this.uploadFileList[0]; }, editPopoverClose(data) { if (data === 'type') { @@ -1531,4 +1565,21 @@ margin-bottom: 18px; background-color: #DCDFE6; } +/*去除上传文件动画start*/ +/*.upload-demo {*/ +/* display: flex;*/ +/*}*/ +/deep/ .el-list-enter-active, +/deep/ .el-list-leave-active { + transition: none; +} + +/deep/ .el-list-enter, +/deep/ .el-list-leave-active { + opacity: 0; +} +/deep/ .el-upload-list { + height: 40px; +} +/*去除上传文件动画end*/ diff --git a/nezha-fronted/src/http.js b/nezha-fronted/src/http.js index d378816c8..49ae10496 100644 --- a/nezha-fronted/src/http.js +++ b/nezha-fronted/src/http.js @@ -1,9 +1,10 @@ import axios from 'axios' import router from './router' -import qs from 'qs' //引入数据格式化 +import qs from 'qs' +import he from "element-ui/src/locale/lang/he"; //引入数据格式化 //axios.defaults.baseURL = 'http://localhost:8088/nz-admin'; -//axios.defaults.baseURL = 'http://192.168.41.69:8080/nz-admin'; +// axios.defaults.baseURL = 'http://192.168.41.101:8088/nz-admin'; axios.defaults.baseURL = 'http://192.168.40.247:8080/nz-admin'; axios.interceptors.request.use(config => { @@ -46,9 +47,9 @@ export function get(url, params) { }) } -export function post(url, params) { +export function post(url, params,headers) { return new Promise((resolve, reject) => { - axios.post(url, params).then(response => { + axios.post(url, params,{headers:headers}).then(response => { resolve(response.data) }).catch(err => { resolve(err.response.data); @@ -56,9 +57,9 @@ export function post(url, params) { }) } -export function put(url, params) { +export function put(url, params,headers) { return new Promise((resolve, reject) => { - axios.put(url, params).then(response => { + axios.put(url, params,{headers:headers}).then(response => { resolve(response.data) }).catch(err => { console.info(err)