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/configuration/custom/addField.vue |  479 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 433 insertions(+), 46 deletions(-)

diff --git a/src/views/configuration/custom/addField.vue b/src/views/configuration/custom/addField.vue
index a0fe49c..822f9f2 100644
--- a/src/views/configuration/custom/addField.vue
+++ b/src/views/configuration/custom/addField.vue
@@ -3,30 +3,160 @@
 		<el-form :model="addFieldForm" :rules="addFieldRules" :disabled="mode=='show'" ref="dialogForm" label-width="100px" label-position="center">
 			<el-row>
 				<el-col :span="24">
-					<el-form-item label="瀛楁鍚嶇О" prop="code">
-						<el-input v-model="addFieldForm.test" placeholder="杈撳叆涓�涓鍚堥槄璇讳範鎯殑绠�鐭悕绉帮紝寤鸿4涓瓧绗︼紝鏈�澶氫笉瓒呰繃12瀛�" clearable></el-input>
+					<el-form-item label="瀛楁鍚嶇О" prop="fieldName">
+						<el-input v-model="addFieldForm.fieldName" placeholder="杈撳叆涓�涓鍚堥槄璇讳範鎯殑绠�鐭悕绉帮紝寤鸿4涓瓧绗︼紝鏈�澶氫笉瓒呰繃12瀛�" clearable></el-input>
 					</el-form-item>
 				</el-col>
 				<el-col :span="24">
 					<el-form-item label="鎻愮ず鏂囧瓧">
-						<el-input v-model="addFieldForm.test" placeholder="鎻忚堪鎻愮ず鐢ㄦ埛濡備綍濉啓瀛楁鍊硷紙渚嬪锛氳杈撳叆鍚嶅瓧锛�" clearable></el-input>
+						<el-input v-model="addFieldForm.fieldDescription" placeholder="鎻忚堪鎻愮ず鐢ㄦ埛濡備綍濉啓瀛楁鍊硷紙渚嬪锛氳杈撳叆鍚嶅瓧锛�" clearable></el-input>
 					</el-form-item>
 				</el-col>
 				<el-col :span="24">
-					<el-form-item label="瀛楁绫诲瀷" prop="deptId">
-						<el-select v-model="addFieldForm.test" style="width: 100%" @change="deptIdChange" placeholder="閫夋嫨绗﹀悎涓氬姟鐨勫瓧娈电被鍨�">
-							<el-option v-for="item in fieldTypeList" :key="item.id" :label="item.title" :value="item.id"/>
+					<el-form-item label="瀛楁绫诲瀷">
+						<el-select v-model="addFieldForm.fieldType" style="width: 100%" placeholder="閫夋嫨绗﹀悎涓氬姟鐨勫瓧娈电被鍨�">
+							<el-option v-for="item in fieldTypeList" :disabled="item.disabled" :key="item.id" :label="item.title" :value="item.id"/>
 						</el-select>
 					</el-form-item>
 				</el-col>
+				<!-- 鍙橀噺1 杈撳叆妗� -->
+				<el-col :span="24" v-if="addFieldForm.fieldType == '1'">
+					<el-form-item label="榛樿鍊�">
+						<el-input v-model="addFieldForm.defaultValue" placeholder="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧" clearable></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '1'">
+					<el-form-item label="鏂囧瓧闀垮害">
+						<el-input-number v-model="addFieldForm.maxlength" :min="0" :max="200" label="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '1'">
+					<el-form-item label="杈撳叆鏍煎紡">
+						<el-select v-model="addFieldForm.formatName" style="width: 100%" placeholder="閫夋嫨杈撳叆妗嗕笉鍚岀殑杈撳叆鏍煎紡">
+							<el-option v-for="item in inputTypeList" :key="item.id" :label="item.title" :value="item.id"/>
+						</el-select>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺2 鏁板瓧杈撳叆妗�-->
+				<el-col :span="24" v-if="addFieldForm.fieldType == '2'">
+					<el-form-item label="榛樿鍊�">
+						<el-input-number v-model="addFieldForm.defaultValue" :precision="addFieldForm.saveDecimalNum" @change="handleChange" :min="0" :max="999" label="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '2'">
+					<el-form-item label="鏍煎紡">
+						<el-radio v-model="addFieldForm.format" label="0">鏁板��</el-radio>
+						<el-radio v-model="addFieldForm.format" label="1">鐧惧垎姣�</el-radio>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '2'">
+					<el-form-item label="淇濈暀灏忔暟浣�">
+						<el-input-number v-model="addFieldForm.saveDecimalNum" @change="handleChange" :min="0" :max="10" label="鏈�澶氫笉瓒呰繃4浣嶅皬鏁�"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '2'" v-show="addFieldForm.format == '0'">
+					<el-form-item label="鏄剧ず鍗冨垎绗�">
+						<el-checkbox v-model="addFieldForm.isShowPercentage"></el-checkbox>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '2'">
+					<el-form-item label="闄愬畾鍊艰寖鍥�">
+						<el-input-number v-model="addFieldForm.rangeMin" :min="0" :max="9999"></el-input-number>
+						<span>-</span>
+						<el-input-number v-model="addFieldForm.rangeMax" :min="0" :max="9999"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺3 澶氳鏂囨湰-->
+				<el-col :span="24" v-if="addFieldForm.fieldType == '3'">
+					<el-form-item label="榛樿鍊�">
+						<el-input v-model="addFieldForm.defaultValue" type="textarea" placeholder="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧" clearable></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '3'">
+					<el-form-item label="鏂囧瓧闀垮害">
+						<el-input-number v-model="addFieldForm.maxlength" :min="0" :max="200" label="璇疯緭鍏ユ枃瀛楁渶闀块檺鍒跺瓧鏁�"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺4 鏃ユ湡閫夋嫨鍣�-->
+				<el-col :span="24" v-if="addFieldForm.fieldType == '4'">
+					<el-form-item label="榛樿鍊�">
+						<el-date-picker :editable="true" v-model="addFieldForm.defaultValue" style="width: 100%" :format="addFieldForm.dateFormat" :value-format="addFieldForm.dateFormat" :type="addFieldForm.dateType" placeholder="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧" @change="dateChange"></el-date-picker>
+					</el-form-item>
+				</el-col> 
+				<el-col :span="24"  v-if="addFieldForm.fieldType == '4'">
+					<el-form-item label="鏃ユ湡鏍煎紡">
+						<el-select v-model="addFieldForm.type" style="width: 100%" placeholder="璇疯緭鍏ユ枃瀛楁渶闀块檺鍒跺瓧鏁�" @change="typeDateChange">
+							<el-option v-for="item in dateFormatList" :key="item.id" :label="item.title" :value="item.id"/>
+						</el-select>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺5 鍗曢�夋寜閽�-->
+				<el-col :span="24" v-if="addFieldForm.fieldType == '5'">
+					<el-form-item label="閫夐」" class="specialItem">
+						<el-radio-group v-model="addFieldForm.selectOption" class="specialRadio">
+							<el-radio :label="item.value" style="margin-right: 0px;" v-for="(item,index) in addFieldForm.radioList">
+								<el-input v-model="item.label" clearable></el-input>
+								<span class="remove-btn" @click="removeRadio(index)">鍒犻櫎</span>
+							</el-radio>
+						</el-radio-group>
+						<div class="add-btn" @click="addRadio">娣诲姞閫夐」</div>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.fieldType == '5'">
+					<el-form-item label="鎺掑簭鏂瑰紡">
+						<el-radio v-model="addFieldForm.direction" label="0">妯悜鎺掑垪</el-radio>
+						<el-radio v-model="addFieldForm.direction" label="1">绾靛悜鎺掑垪</el-radio>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺6 澶氶�夋寜閽�-->
+				<el-col :span="24" v-if="addFieldForm.fieldType == '6'">
+					<el-form-item label="閫夐」" class="specialItem">
+						<el-checkbox-group v-model="addFieldForm.selectBoxOption" class="specialCheck">
+							<el-checkbox :label="item.value" :value="item.value" v-for="(item,index) in addFieldForm.checkboxList">
+								<el-input v-model="item.label" clearable></el-input>
+								<span class="remove-btn" @click="removeCheckbox(index)">鍒犻櫎</span>
+							</el-checkbox>
+						</el-checkbox-group>
+						<!-- <div v-for="(item,index) in addFieldForm.checkboxList" class="fieldContent">
+							<el-checkbox v-model="item.check" style="margin-right: 15px;"></el-checkbox>
+							<el-input v-model="item.input" clearable></el-input>
+							<span class="remove-btn" @click="removeCheckbox(index)">鍒犻櫎</span>
+						</div> -->
+						<div class="add-btn" @click="addCheckbox">娣诲姞閫夐」</div>
+					</el-form-item>
+				</el-col> 
+				<el-col :span="24" v-if="addFieldForm.fieldType == '6'">
+					<el-form-item label="鎺掑簭鏂瑰紡">
+						<el-radio v-model="addFieldForm.direction" label="0">妯悜鎺掑垪</el-radio>
+						<el-radio v-model="addFieldForm.direction" label="1">绾靛悜鎺掑垪</el-radio>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺7 涓嬫媺閫夋嫨鍣�-->
+				<el-col :span="24" v-if="addFieldForm.fieldType == '7'">
+					<el-form-item label="閫夐」" class="specialItem">
+						<div v-for="(item,index) in addFieldForm.selectList" class="fieldContent">
+							<el-input v-model="item.label" clearable></el-input>
+							<span class="remove-btn" @click="removeSelect(index)">鍒犻櫎</span>
+						</div>
+						<div class="add-btn" @click="addSelect">娣诲姞閫夐」</div>
+					</el-form-item>
+				</el-col> 
+				<!-- 鍙橀噺8 涓氬姟瀛楁-浜哄憳-娌℃湁-->
+				<!-- 鍙橀噺9 榛樿-娌℃湁 -->
 				<el-col :span="24">
 					<el-form-item label="缂栬緫椤垫樉绀�">
-						<el-checkbox v-model="addFieldForm.test" disabled></el-checkbox>
+						<el-checkbox v-model="addFieldForm.updateShow"></el-checkbox>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-if="addFieldForm.updateShow">
+					<el-form-item label="鏀寔缂栬緫">
+						<el-radio v-model="addFieldForm.supportUpdate" label="1">鏄�</el-radio>
+						<el-radio v-model="addFieldForm.supportUpdate" label="0">鍚�</el-radio>
 					</el-form-item>
 				</el-col>
 				<el-col :span="24">
 					<el-form-item label="鏌ョ湅椤垫樉绀�">
-						<el-checkbox v-model="addFieldForm.test" disabled></el-checkbox>
+						<el-checkbox v-model="addFieldForm.viewShow"></el-checkbox>
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -34,6 +164,7 @@
 		<template #footer>
 			<el-button @click="visible=false" >鍙� 娑�</el-button>
 			<el-button v-if="mode!='show'" type="primary" :loading="isSaveing" @click="fieldSubmit">淇濆瓨</el-button>
+			<el-button v-if="mode!='show'" type="primary" :loading="isSaveing" @click="saveSubmit">淇濆瓨骞剁户缁坊鍔�</el-button>
 		</template>
 	</el-dialog>
 </template>
@@ -43,6 +174,30 @@
 		emits: ['success', 'closed'],
 		data() {
 			return {
+				dialogData: {},
+				inputTypeList: [  //杈撳叆鏍煎紡
+					{title: "鏃�",id: "1"},
+					{title: "鎵嬫満鍙风爜",id: "mobile"},
+					{title: "鐢佃瘽鍙风爜",id: "telephone"},
+					{title: "閭",id: "email"}
+				],
+				fieldTypeList: [  //瀛楁绫诲瀷
+					{title: "杈撳叆妗�",id: "1"},
+					{title: "鏁板瓧杈撳叆妗�",id: "2"},
+					{title: "澶氳鏂囨湰",id: "3"},
+					{title: "鏃ユ湡閫夋嫨鍣�",id: "4"},
+					{title: "鍗曢�夋寜閽�",id: "5"},
+					{title: "澶氶�夋寜閽�",id: "6"},
+					{title: "涓嬫媺閫夋嫨鍣�",id: "7"},
+					{title: "涓氬姟瀛楁-浜哄憳",id: "9"},
+					{title: "榛樿",id: "10",disabled: true}
+				],
+				dateFormatList: [  //鏃ユ湡鏍煎紡
+					{title: "骞�-鏈�",id: "yyyy-MM"},
+					{title: "骞�-鏈�-鏃�",id: "yyyy-MM-dd"},
+					{title: "骞�-鏈�-鏃� 鏃讹細鍒�",id: "yyyy-MM-dd HH:mm"},
+					{title: "骞�-鏈�-鏃� 鏃讹細鍒嗭細绉�",id: "yyyy-MM-dd HH:mm:ss"}
+				],
 				mode: "add",
 				titleMap: {
 					add: '娣诲姞鑷畾涔夊瓧娈�',
@@ -53,13 +208,38 @@
 				isSaveing: false,
 				//琛ㄥ崟鏁版嵁
 				addFieldForm: {
-					test: ""
+					fieldName: "",
+					fieldDescription: "",
+					defaultValue: "",
+					maxlength: 20,
+					updateShow: false,
+					viewShow: true,
+					fieldType: "1",  //瀛楁绫诲瀷锛岄粯璁よ緭鍏ユ
+					formatName: "",
+					supportUpdate: "1",
+					saveDecimalNum: 0,
+					format: "0",
+					isShowPercentage: false,
+					rangeMin: 0,
+					rangeMax: 0,
+					type: "yyyy-MM",
+					dateType: "month",
+					dateFormat: "YYYY-MM",
+					val: {
+						label: "骞�-鏈�",
+						value: "month",
+						format: "yyyy-MM"
+					},
+					direction: "0",
+					radioList: [],
+					selectOption: "",
+					selectBoxOption: [],
+					checkboxList: [],
+					selectList: []
 				},
 				//楠岃瘉瑙勫垯
 				addFieldRules: {
-					code:[{required: true, message: '璇疯緭鍏ュ瓧鍏哥紪鍙�'}],
-					dictValue:[{required: true, message: '璇疯緭鍏ュ瓧鍏稿悕绉�'}],
-					sort:[{required: true, message: '璇疯緭鍏ュ瓧鍏告帓搴�'}]
+					fieldName:[{required: true, message: '璇疯緭鍏ュ瓧娈靛悕绉�'}]
 				}
 			}
 		},
@@ -67,8 +247,191 @@
 			
 		},
 		methods: {
-			deptIdChange() {
-
+			dateChange(val) {
+				console.log(val)
+				this.addFieldForm.defaultValue = val;
+			},
+			typeDateChange(val) {
+				this.addFieldForm.defaultValue = "";
+				if(val == "yyyy-MM") {
+					this.addFieldForm.dateType = "month";
+					this.addFieldForm.dateFormat = "YYYY-MM";
+					this.addFieldForm.val = {
+						label: "骞�-鏈�",
+						value: "month",
+						format: val
+					};
+				}else if(val == "yyyy-MM-dd") {
+					this.addFieldForm.dateType = "date";
+					this.addFieldForm.dateFormat = "YYYY-MM-DD";
+					this.addFieldForm.val = {
+						label: "骞�-鏈�-鏃�",
+						value: "date",
+						format: val
+					};
+				}else if(val == "yyyy-MM-dd HH:mm") {
+					this.addFieldForm.dateType = "datetime";
+					this.addFieldForm.dateFormat = "YYYY-MM-DD HH-mm";
+					this.addFieldForm.val = {
+						label: "骞�-鏈�-鏃� 鏃讹細鍒�",
+						value: "datetime",
+						format: val
+					};
+				}else if(val == "yyyy-MM-dd HH:mm:ss") {
+					this.addFieldForm.dateType = "datetime";
+					this.addFieldForm.dateFormat = "YYYY-MM-DD HH-mm-ss";
+					this.addFieldForm.val = {
+						label: "骞�-鏈�-鏃� 鏃讹細鍒嗭細绉�",
+						value: "datetime",
+						format: val
+					};
+				}
+			},
+			fieldSubmit() {  //淇濆瓨
+				this.saveSubmit('closeDialog');
+			},
+			saveSubmit(isClose) {  //淇濆瓨骞剁户缁�
+				var obj = {
+					businessType: 1,
+					fieldDescription: this.addFieldForm.fieldDescription,
+					fieldName: this.addFieldForm.fieldName,
+					fieldType: this.addFieldForm.fieldType,
+					supportUpdate: this.addFieldForm.supportUpdate,
+					systemField: 0,
+					updateShow: this.addFieldForm.updateShow?"1":"0",
+					viewShow: this.addFieldForm.viewShow?"1":"0",
+				}
+				if(this.addFieldForm.fieldType == "1") {  //瀛楁绫诲瀷
+					obj.defaultValue = this.addFieldForm.defaultValue;  //榛樿鍊�
+					var propertyJson = {  //闀垮害銆佹牸寮�
+						maxlength: this.addFieldForm.maxlength,
+						formatName: this.addFieldForm.formatName == "1"?"":this.addFieldForm.formatName
+					}
+					obj.propertyJson = JSON.stringify(propertyJson);
+				}
+				if(this.addFieldForm.fieldType == "2") {  //瀛楁绫诲瀷
+					obj.defaultValue = this.addFieldForm.defaultValue;  //榛樿鍊�
+					var propertyJson = {
+						format: this.addFieldForm.format,
+						saveDecimalNum: this.addFieldForm.saveDecimalNum,
+						isShowPercentage: this.addFieldForm.isShowPercentage,
+						rangeMin: this.addFieldForm.rangeMin,
+						rangeMax: this.addFieldForm.rangeMax
+					}
+					obj.propertyJson = JSON.stringify(propertyJson);
+				}
+				if(this.addFieldForm.fieldType == "3") {  //瀛楁绫诲瀷
+					obj.defaultValue = this.addFieldForm.defaultValue;  //榛樿鍊�
+					var propertyJson = {
+						maxlength: this.addFieldForm.maxlength
+					}
+					obj.propertyJson = JSON.stringify(propertyJson);
+				}
+				if(this.addFieldForm.fieldType == "4") {  //瀛楁绫诲瀷
+					obj.defaultValue = this.addFieldForm.defaultValue;  //榛樿鍊�
+					var propertyJson = {
+						type: this.addFieldForm.type,
+						val: this.addFieldForm.val
+					}
+					obj.propertyJson = JSON.stringify(propertyJson);
+				}
+				if(this.addFieldForm.fieldType == "5") {  //鍗曢�夋寜閽�
+					var propertyJson = {
+						selectOption: this.addFieldForm.selectOption,
+						options: this.addFieldForm.radioList,
+						direction: this.addFieldForm.direction
+					}
+					obj.propertyJson = JSON.stringify(propertyJson);
+				}
+				if(this.addFieldForm.fieldType == "6") {  //澶氶�夋寜閽�
+					var propertyJson = {
+						selectOption: this.addFieldForm.selectBoxOption,
+						options: this.addFieldForm.checkboxList,
+						direction: this.addFieldForm.direction
+					}
+					obj.propertyJson = JSON.stringify(propertyJson);
+				}
+				if(this.addFieldForm.fieldType == "7") {  //涓嬫媺閫夋嫨鍣�
+					var propertyJson = {
+						options: this.addFieldForm.selectList
+					}
+					obj.propertyJson = JSON.stringify(propertyJson);
+				}
+				obj.businessType = this.$route.query.type;
+				var that = this;
+				if(this.mode == "edit") {
+					var url = "/api/blade-system/custom-template-field/update";
+					var method = "put";
+					obj.id  = this.dialogData.id;
+				}else {
+					var url = "/api/blade-system/custom-template-field/insert";
+					var method = "post";
+				}
+				this.$HTTP[method](url,obj).then(res=> {
+					if(res.code == 200) {
+						that.$message.success("鎻愪氦鎴愬姛");
+						that.$emit("success",obj);
+						if(isClose == "closeDialog") {
+							that.visible = false;
+						}
+					}else {
+						that.$message.error(res.msg);
+					}
+				})
+			},
+			removeRadio(index) {
+				this.addFieldForm.radioList.splice(index,1);
+			},
+			addRadio() {
+				var flag = false;
+				if(this.addFieldForm.radioList.length > 0) {
+					this.addFieldForm.radioList.forEach(item=> {
+						if(item.label == "") {
+							flag = true;
+						}
+					})
+				}
+				if(flag) {
+					this.$message.error("璇疯緭鍏ヤ笂涓�涓嚜瀹氫箟閫夐」鐨勫唴瀹�");
+					return;
+				}
+				this.addFieldForm.radioList.push({label: "",value: "radiosSelect" + (this.addFieldForm.radioList.length + 1),parentId: 0});
+			},
+			removeCheckbox(index) {
+				this.addFieldForm.checkboxList.splice(index,1);
+			},
+			addCheckbox() {
+				var flag = false;
+				if(this.addFieldForm.checkboxList.length > 0) {
+					this.addFieldForm.checkboxList.forEach(item=> {
+						if(item.label == "") {
+							flag = true;
+						}
+					})
+				}
+				if(flag) {
+					this.$message.error("璇疯緭鍏ヤ笂涓�涓嚜瀹氫箟閫夐」鐨勫唴瀹�");
+					return;
+				}
+				this.addFieldForm.checkboxList.push({label: "",value: "checkboxSelect" + (this.addFieldForm.checkboxList.length + 1),parentId: 0});
+			},
+			removeSelect(index) {
+				this.addFieldForm.selectList.splice(index,1);
+			},
+			addSelect() {
+				var flag = false;
+				if(this.addFieldForm.selectList.length > 0) {
+					this.addFieldForm.selectList.forEach(item=> {
+						if(item.label == "") {
+							flag = true;
+						}
+					})
+				}
+				if(flag) {
+					this.$message.error("璇疯緭鍏ヤ笂涓�涓嚜瀹氫箟閫夐」鐨勫唴瀹�");
+					return;
+				}
+				this.addFieldForm.selectList.push({label: "",value: "select" + (this.addFieldForm.selectList.length + 1),parentId: 0});
 			},
 			//鏄剧ず
 			open(mode='add'){
@@ -76,44 +439,68 @@
 				this.visible = true;
 				return this
 			},
-			//琛ㄥ崟鎻愪氦鏂规硶
-			fieldSubmit(){
-				var obj = Object.assign({},this.addFieldForm);
-				if(obj.isSealed === true) {
-					obj.$isSealed = "鏄�";
-					obj.isSealed = "1";
-				}else {
-					obj.$isSealed = "鍚�";
-					obj.isSealed = "0";
-				}
-				this.$refs.dialogForm.validate(async (valid) => {
-					if (valid) {
-						this.isSaveing = true;
-						this.$HTTP.post("/api/blade-system/dict/submit",obj).then(res=> {
-							this.isSaveing = false;
-							if(res.code == 200) {
-								this.$emit('success', this.addFieldForm, this.mode);
-								this.visible = false;
-								this.$message.success("鎿嶄綔鎴愬姛");
-							}else {
-								this.$alert(res.message, "鎻愮ず", {type: 'error'});
-							}
-						})
-					}else{
-						return false;
-					}
-				})
-			},
 			//琛ㄥ崟娉ㄥ叆鏁版嵁
 			setData(data){
-				console.log(data)
-				//鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘�
-				//Object.assign(this.addFieldForm, data);
+				this.dialogData = data;
+				this.$HTTP.get(`/api/blade-system/custom-template-field/get/${data.id}`).then(res=> {
+					if(res.code == 200) {
+						res.data.fieldType = String(res.data.fieldType);
+						res.data.format = res.data.format == "0"?"0":"1";
+						res.data.direction = String(res.data.direction);
+						res.data.updateShow = res.data.updateShow == "1"?true:false;
+						res.data.viewShow = res.data.viewShow == "1"?true:false;
+						res.data.supportUpdate = String(res.data.supportUpdate);
+						if(res.data.fieldType != "10") {
+							this.addFieldForm = Object.assign(res.data,JSON.parse(res.data.propertyJson));
+						}else {
+							this.addFieldForm = res.data;
+						}
+						this.addFieldForm.format = String(this.addFieldForm.format);
+						if(res.data.fieldType == "5") {
+							this.addFieldForm.radioList = this.addFieldForm.options;
+						}
+						if(res.data.fieldType == "6") {
+							this.addFieldForm.checkboxList = this.addFieldForm.options;
+							this.addFieldForm.selectBoxOption = this.addFieldForm.selectOption;
+						}
+						if(res.data.fieldType == "7") {
+							this.addFieldForm.selectList = this.addFieldForm.options;
+						}
+					}
+				})
 			}
 		}
 	}
 </script>
 
 <style scoped>
-
+.add-btn {
+	color: #409eff;
+	cursor: pointer;
+}
+.specialItem /deep/ .el-form-item__content{
+	display: flex;
+	flex-direction: column;
+    align-items: flex-start;
+}
+.specialRadio,.specialCheck {
+	display: flex;
+	flex-direction: column;
+    align-items: flex-start;
+}
+.specialRadio label,.specialCheck label{
+	margin-bottom: 8px;
+}
+.fieldContent {
+	display: flex;
+    align-items: flex-start;
+	margin-bottom: 8px;
+}
+.remove-btn {
+	min-width: 60px;
+    display: inline-block;
+    margin-left: 12px;
+    color: red;
+    cursor: pointer;
+}
 </style>

--
Gitblit v1.9.3