From dcf9c9e0410fe1186239e3f8d6f7bdc789c08010 Mon Sep 17 00:00:00 2001 From: lzhe <lzhe@example.com> Date: 星期三, 05 六月 2024 18:00:39 +0800 Subject: [PATCH] 1 --- src/views/notification/editconfiguration.vue | 76 ++++++++++++++++++++++++-------------- 1 files changed, 48 insertions(+), 28 deletions(-) diff --git a/src/views/notification/editconfiguration.vue b/src/views/notification/editconfiguration.vue index b069299..cb6daff 100644 --- a/src/views/notification/editconfiguration.vue +++ b/src/views/notification/editconfiguration.vue @@ -4,7 +4,7 @@ <span>閫氱煡绫诲瀷 {{addBusinessForm.name}}</span> <span> 鏈嶅姟鍟� - <el-select style="width: 80%" v-model="serviceproviders" disabled> + <el-select style="width: 80%" v-model="serviceproviders" :disabled="mode != 'add'"> <el-option v-for="item in addBusinessForm.providerInfos" :key="item.id" :label="item.name" :value="item.id"/> </el-select> </span> @@ -12,7 +12,7 @@ <el-form :model="addBusinessForm" :rules="addBusinessRules" :disabled="mode=='show'" ref="dialogForm" label-width="140px" label-position="center"> <el-row> <el-col :span="24"> - <el-form-item label="璇疯緭鍏ラ厤缃悕绉�" prop="notifyTemplateName"> + <el-form-item label="璇疯緭鍏ラ厤缃悕绉�" prop="pname"> <el-input v-model="addBusinessForm.pname" placeholder="妯$増鍚嶇О" clearable></el-input> </el-form-item> </el-col> @@ -57,7 +57,7 @@ serviceproviders: "", mode: "add", titleMap: { - add: '鏂板', + add: '鏂板閰嶇疆', edit: '缂栬緫閰嶇疆', show: '鏌ョ湅' }, @@ -73,7 +73,7 @@ }, //楠岃瘉瑙勫垯 addBusinessRules: { - notifyTemplateName:[{required: true, message: '璇疯緭鍏ユā鐗堝悕绉�'}] + pname:[{required: true, message: '璇疯緭鍏ユā鐗堝悕绉�'}] }, } }, @@ -91,29 +91,57 @@ this.addBusinessForm.configuration[index].value.splice(index1,1); }, //鏄剧ず - open(mode='add'){ + open(mode='add',obj){ + if(mode == 'add') { + this.addBusinessForm = obj; + this.$nextTick(()=> { + this.serviceproviders = this.addBusinessForm.providerInfos[0].id; + }) + var setArr = []; + obj.properties.forEach(item=> { + setArr.push({pname:item.name,value: "",name: item.name}) + }) + this.addBusinessForm.configuration = setArr; + } this.mode = mode; this.visible = true; return this }, //琛ㄥ崟鎻愪氦鏂规硶 businessSubmit(){ - var obj = Object.assign({},this.addBusinessForm); - obj.notifyType = obj.notifyType; - obj.id = obj.notifyTemplateId; - obj.business = obj.businessKey; - obj.name = obj.notifyTemplateName; - obj.provider = obj.providerType; - obj.type = obj.notifyType; - var template = JSON.parse(obj.template); - for(var key in template) { - template[key] = obj[key]; + var configuration = {}; + this.addBusinessForm.configuration.forEach(item=> { + configuration[item.name] = item.value; + }) + var obj = { + configuration: configuration, } - obj.template = JSON.stringify(template); + if(this.mode == 'edit') { + obj.id = this.addBusinessForm.configEntity.id; + obj.name = this.addBusinessForm.configEntity.name; + obj.provider = this.addBusinessForm.configEntity.provider; + obj.type = this.addBusinessForm.configEntity.type; + if(this.addBusinessForm.configEntity.type == "email") { //閭欢 + var newArr = []; + configuration.properties.forEach(item=> { + var formattedObject = {}; + item.forEach(item => { + formattedObject[item.name] = item.value; + }); + newArr.push(formattedObject); + }) + configuration.properties = newArr; + } + } + if(this.mode == 'add') { //鏂板 + obj.name = this.addBusinessForm.pname; + obj.provider = this.serviceproviders; + obj.type = this.addBusinessForm.id; + } this.$refs.dialogForm.validate(async (valid) => { if (valid) { this.isSaveing = true; - this.$HTTP.put("/api/blade-notify/business-notify/modify",obj).then(res=> { + this.$HTTP.put("/api/blade-notify/notifier/config",obj).then(res=> { this.isSaveing = false; if(res.code == 200) { this.$emit('success', this.addBusinessForm, this.mode); @@ -165,19 +193,11 @@ } }) }) - console.log(data.configuration,data) - // for(var key in res.data.configEntity.configuration) { - // res.data.configEntity.configuration['name'] = key; - // res.data.configEntity.configuration['value'] = res.data.configEntity.configuration[key]; - // res.data.configEntity.configuration['type'] = res.data.id; - // } //鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘� Object.assign(this.addBusinessForm,data); - - // this.$nextTick(()=> { - // this.serviceproviders = this.addBusinessForm.providerInfos[0].id; - // }) - // console.log(this.addBusinessForm) + this.$nextTick(()=> { + this.serviceproviders = this.addBusinessForm.providerInfos[0].id; + }) } }, components: { -- Gitblit v1.9.3