From 51d86d1eab51b44ff5d61ba66465fa618338608f Mon Sep 17 00:00:00 2001
From: lzhe <lzhe@example.com>
Date: 星期一, 20 五月 2024 12:20:26 +0800
Subject: [PATCH] 1

---
 src/views/configuration/custom/setField.vue |   56 +++++++
 src/layout/index.vue                        |    2 
 src/views/configuration/custom/addField.vue |  288 +++++++++++++++++++++++++++++++++++++++++
 src/views/configuration/custom/index.vue    |    3 
 src/config/route.js                         |   15 ++
 src/views/mdc/station-live.vue              |    1 
 6 files changed, 356 insertions(+), 9 deletions(-)

diff --git a/src/config/route.js b/src/config/route.js
index 8084d85..bf35fee 100644
--- a/src/config/route.js
+++ b/src/config/route.js
@@ -25,7 +25,20 @@
 // 		}]
 // 	}
 // ]
+const routes = [
+	{
+        name: "瀛楁璁剧疆",
+        path: "/configuration/custom/setField",
+        component: "configuration/custom/setField",
+        meta: {
+            icon: "el-icon-menu",
+            title: "瀛楁璁剧疆",
+            type: 'menu',
+            hidden: true
+        }
+	}
+]
 
-const routes = []
+//const routes = []
 
 export default routes;
diff --git a/src/layout/index.vue b/src/layout/index.vue
index e60cd99..6672cb4 100644
--- a/src/layout/index.vue
+++ b/src/layout/index.vue
@@ -286,7 +286,7 @@
 			},
 			handleSelect(key, keyPath) {
 				var MENU = this.$TOOL.data.get("MENU");
-				var foundRoute = this.findRouteByPath(MENU, key);  
+				var foundRoute = this.findRouteByPath(MENU, key);
 				//http://116.63.148.72:8080/xxl-job-admin
 				var TOKEN = this.$TOOL.cookie.get("TOKEN");
 				if(key == '/i/浠诲姟璋冨害') {
diff --git a/src/views/configuration/custom/addField.vue b/src/views/configuration/custom/addField.vue
new file mode 100644
index 0000000..cb570dd
--- /dev/null
+++ b/src/views/configuration/custom/addField.vue
@@ -0,0 +1,288 @@
+<template>
+	<el-dialog :title="titleMap[mode]" v-model="visible" :width="800" destroy-on-close @closed="$emit('closed')">
+		<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.code" placeholder="杈撳叆涓�涓鍚堥槄璇讳範鎯殑绠�鐭悕绉帮紝寤鸿4涓瓧绗︼紝鏈�澶氫笉瓒呰繃12瀛�" clearable></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="鎻愮ず鏂囧瓧" prop="dictValue">
+						<el-input v-model="addFieldForm.dictValue" 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-select>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺1 杈撳叆妗� -->
+				<el-col :span="24">
+					<el-form-item label="榛樿鍊�">
+						<el-input v-model="addFieldForm.dictValue" placeholder="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧" clearable></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="鏂囧瓧闀垮害">
+						<el-date-picker v-model="addFieldForm.num" style="width: 100%" type="date" placeholder="璇疯緭鍏ユ枃瀛楁渶闀块檺鍒跺瓧鏁�"></el-date-picker>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="杈撳叆鏍煎紡">
+						<el-select v-model="addFieldForm.test" style="width: 100%" @change="deptIdChange" 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">
+					<el-form-item label="榛樿鍊�">
+						<el-input-number v-model="addFieldForm.num" @change="handleChange" :min="1" :max="10" label="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="鏍煎紡">
+						<el-radio v-model="addFieldForm.radio" label="1">鏁板��</el-radio>
+						<el-radio v-model="addFieldForm.radio" label="2">鐧惧垎姣�</el-radio>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="淇濈暀灏忔暟浣�">
+						<el-input-number v-model="addFieldForm.num" @change="handleChange" :min="1" :max="10" label="鏈�澶氫笉瓒呰繃4浣嶅皬鏁�"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="鏄剧ず鍗冨垎绗�">
+						<el-checkbox v-model="addFieldForm.check"></el-checkbox>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="闄愬畾鍊艰寖鍥�">
+						<el-input-number v-model="addFieldForm.num" @change="handleChange" :min="1" :max="10"></el-input-number>
+						<span>-</span>
+						<el-input-number v-model="addFieldForm.num" @change="handleChange" :min="1" :max="10"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺3 澶氳鏂囨湰-->
+				<el-col :span="24">
+					<el-form-item label="榛樿鍊�">
+						<el-input v-model="addFieldForm.test" placeholder="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧" clearable></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="鏂囧瓧闀垮害">
+						<el-input-number v-model="addFieldForm.num" @change="handleChange" :min="1" :max="10" label="璇疯緭鍏ユ枃瀛楁渶闀块檺鍒跺瓧鏁�"></el-input-number>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺4 鏃ユ湡閫夋嫨鍣�-->
+				<el-col :span="24">
+					<el-form-item label="榛樿鍊�">
+						<el-date-picker v-model="addFieldForm.test" style="width: 100%" type="date" placeholder="绯荤粺榛樿鎻愪緵鐨勫�硷紝鍙笉濉紝璁剧疆榛樿鍊间細鏇挎崲鎻愮ず鏂囧瓧"></el-date-picker>
+					</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 dateFormatList" :key="item.id" :label="item.title" :value="item.id"/>
+						</el-select>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺5 鍗曢�夋寜閽�-->
+				<el-col :span="24">
+					<el-form-item label="閫夐」">
+						<div>
+							<el-radio v-model="addFieldForm.radio" label="1"></el-radio>
+							<el-input v-model="addFieldForm.test" clearable></el-input>
+							<span class="remove-btn">鍒犻櫎</span>
+						</div>
+						<div class="add-btn">娣诲姞閫夐」</div>
+					</el-form-item>
+				</el-col> 
+				<el-col :span="24">
+					<el-form-item label="鎺掑簭鏂瑰紡">
+						<el-radio v-model="addFieldForm.radio" label="1">妯悜鎺掑垪</el-radio>
+						<el-radio v-model="addFieldForm.radio" label="2">绾靛悜鎺掑垪</el-radio>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺6 澶氶�夋寜閽�-->
+				<el-col :span="24">
+					<el-form-item label="閫夐」">
+						<div>
+							<el-checkbox v-model="addFieldForm.check"></el-checkbox>
+							<el-input v-model="addFieldForm.test" clearable></el-input>
+							<span class="remove-btn">鍒犻櫎</span>
+						</div>
+						<div class="add-btn">娣诲姞閫夐」</div>
+					</el-form-item>
+				</el-col> 
+				<el-col :span="24">
+					<el-form-item label="鎺掑簭鏂瑰紡">
+						<el-radio v-model="addFieldForm.radio" label="1">妯悜鎺掑垪</el-radio>
+						<el-radio v-model="addFieldForm.radio" label="2">绾靛悜鎺掑垪</el-radio>
+					</el-form-item>
+				</el-col>
+				<!-- 鍙橀噺7 涓嬫媺閫夋嫨鍣�-->
+				<el-col :span="24">
+					<el-form-item label="閫夐」">
+						<div>
+							<el-input v-model="addFieldForm.test" clearable></el-input>
+							<span class="remove-btn">鍒犻櫎</span>
+						</div>
+						<div class="add-btn">娣诲姞閫夐」</div>
+					</el-form-item>
+				</el-col> 
+				<!-- 鍙橀噺8 涓氬姟瀛楁-浜哄憳-->
+				<!-- 娌℃湁 -->
+				<el-col :span="24">
+					<el-form-item label="缂栬緫椤垫樉绀�">
+						<el-checkbox v-model="addFieldForm.check">鏄剧ず</el-checkbox>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="鏌ョ湅椤垫樉绀�">
+						<el-checkbox v-model="addFieldForm.check">鏄剧ず</el-checkbox>
+					</el-form-item>
+				</el-col>
+			</el-row>
+		</el-form>
+		<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="fieldSubmitAgain">淇濆瓨骞剁户缁坊鍔�</el-button>
+		</template>
+	</el-dialog>
+</template>
+
+<script>
+	export default {
+		emits: ['success', 'closed'],
+		data() {
+			return {
+				inputTypeList: [  //杈撳叆鏍煎紡
+					{title: "鏃�",id:1},
+					{title: "鎵嬫満鍙风爜",id:1},
+					{title: "鐢佃瘽鍙风爜",id:1},
+					{title: "閭",id:1}
+				],
+				fieldTypeList: [  //瀛楁绫诲瀷
+					{title: "杈撳叆妗�",id:1},
+					{title: "鏁板瓧杈撳叆妗�",id:2},
+					{title: "澶氳鏂囨湰",id:3},
+					{title: "鏃ユ湡閫夋嫨鍣�",id:4},
+					{title: "鍗曢�夋寜閽�",id:5},
+					{title: "澶氶�夋寜閽�",id:6},
+					{title: "涓嬫媺閫夋嫨鍣�",id:7},
+					{title: "涓氬姟瀛楁-浜哄憳",id:8},
+					{title: "榛樿",id:9}
+				],
+				dateFormatList: [  //鏃ユ湡鏍煎紡
+					{title: "骞�-鏈�",id:1},
+					{title: "骞�-鏈�-鏃�",id:2},
+					{title: "骞�-鏈�-鏃� 鏃讹細鍒�",id:3},
+					{title: "骞�-鏈�-鏃� 鏃讹細鍒嗭細绉�",id:4}
+				],
+				deptIdList: [],
+				mode: "add",
+				titleMap: {
+					add: '娣诲姞鑷畾涔夊瓧娈�',
+					edit: '淇敼',
+					show: '鏌ョ湅'
+				},
+				visible: false,
+				isSaveing: false,
+				//琛ㄥ崟鏁版嵁
+				addFieldForm: {
+					radio: '1',
+					num: 0,
+					test: "",
+					check: false,
+					code: "",
+					dictValue: "",
+					sort: "",
+					isSealed: false,
+					remark: "",
+					dictKey: "-1",
+					$isSealed: "鍚�"
+				},
+				//楠岃瘉瑙勫垯
+				addFieldRules: {
+					code:[{required: true, message: '璇疯緭鍏ュ瓧鍏哥紪鍙�'}],
+					dictValue:[{required: true, message: '璇疯緭鍏ュ瓧鍏稿悕绉�'}],
+					sort:[{required: true, message: '璇疯緭鍏ュ瓧鍏告帓搴�'}]
+				}
+			}
+		},
+		mounted() {
+			
+		},
+		methods: {
+			deptIdChange() {
+
+			},
+			//鏄剧ず
+			open(mode='add'){
+				this.mode = mode;
+				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;
+					}
+				})
+			},
+			fieldSubmitAgain() {
+
+			},
+			//琛ㄥ崟娉ㄥ叆鏁版嵁
+			setData(data){
+				console.log(data)
+				//鍙互鍜屼笂闈竴鏍峰崟涓敞鍏ワ紝涔熷彲浠ュ儚涓嬮潰涓�鏍风洿鎺ュ悎骞惰繘鍘�
+				if(data.isSealed == "1") {
+					data.isSealed = true;
+				}else {
+					data.isSealed = false;
+				}
+				Object.assign(this.addFieldForm, data);
+			}
+		}
+	}
+</script>
+
+<style scoped>
+.remove-btn {
+	margin-left: 10px;
+    color: red;
+    cursor: pointer;
+}
+.add-btn {
+	margin-left: 30px;
+    color: #3b8e8e;
+	cursor: pointer;
+}
+</style>
diff --git a/src/views/configuration/custom/index.vue b/src/views/configuration/custom/index.vue
index 3fe3070..4e85584 100644
--- a/src/views/configuration/custom/index.vue
+++ b/src/views/configuration/custom/index.vue
@@ -55,8 +55,7 @@
 	    },
 		methods: {
 			goSetField() {
-				console.log(this.$route,this.$router)
-				//this.$router.push({path: "/setField"})
+				this.$router.push({path: '/configuration/custom/setField'});
 			}
 		}
 	}
diff --git a/src/views/configuration/custom/setField.vue b/src/views/configuration/custom/setField.vue
index 3d88e3c..622a21e 100644
--- a/src/views/configuration/custom/setField.vue
+++ b/src/views/configuration/custom/setField.vue
@@ -8,27 +8,69 @@
 -->
 <template>
 	<div class="aposcope-main">
-	    123
+	    <div class="title">璁″垝瀛楁</div>
+		<el-button type="primary" @click="addField" style="margin: 4px 0px 10px;">娣诲姞鑷畾涔夊瓧娈�</el-button>
+		<div class="field-table">
+			<el-table ref="multipleTableRef" :data="tableData" border style="width: 100%" class="multipleTableRef">
+				<el-table-column prop="fieldName" label="瀛楁鍚�"></el-table-column>
+				<el-table-column prop="fieldDescription" label="鎻愮ず鏂囧瓧"></el-table-column>
+				<el-table-column prop="fieldTypeLabel" label="瀛楁绫诲瀷"></el-table-column>
+				<el-table-column prop="systemFieldLabel" label="鍩虹瀛楁"></el-table-column>
+				<el-table-column fixed="right" label="鎿嶄綔">
+					<template #default="scope">
+						<el-button type="text" size="small" @click="table_edit(scope.row, scope.$index)">缂栬緫</el-button>
+						<el-button text type="primary" size="small" @click="table_del(scope.row, scope.$index)">鍒犻櫎</el-button>
+					</template>
+				</el-table-column>
+			</el-table>
+		</div>
 	</div>
+	<save-dialog v-if="dialog.save" ref="saveDialog" @success="addFieldSuccess" @closed="dialog.save=false"></save-dialog>
 </template>
 <script>
+	import saveDialog from './addField'
 	export default {
 		name: "custom",
 		data(){
 			return {
-				
+				tableData: [],
+				dialog: {
+					save: false
+				}
 			}
 		},
 		created(){
 			
 		},
 		mounted(){
-			//this.getMenuList();
+			this.getTableData();
 		},
 		components: {
-
+			saveDialog
 	    },
 		methods: {
+			addFieldSuccess() {
+
+			},
+			addField() {
+				this.dialog.save = true
+				this.$nextTick(() => {
+					this.$refs.saveDialog.open()
+				})
+			},
+			table_edit() {
+
+			},
+			table_del() {
+
+			},
+			getTableData() {
+				this.$HTTP.get(`/api/blade-system/custom-template-field/list?businessType=1`).then(res=> {
+					if(res.code == 200) {
+						this.tableData = res.data;
+					}
+				})
+			}
 		}
 	}
 </script>
@@ -40,4 +82,10 @@
 	padding:20px;
 	background: #fff;
 }
+.title {
+	font-size: 16px;
+    font-weight: 700;
+    margin: 0px 0px 14px;
+    color: #000;
+}
 </style>
diff --git a/src/views/mdc/station-live.vue b/src/views/mdc/station-live.vue
index 65a95a1..8da8d3c 100644
--- a/src/views/mdc/station-live.vue
+++ b/src/views/mdc/station-live.vue
@@ -505,7 +505,6 @@
 						interval: 1440/6,  //姣忛殧澶氬皯鍒嗛挓鏄剧ず涓�涓埢搴�
 						axisLabel: {
 							formatter: (value)=> {
-								//console.log(value,111)
 								if(value == 0) {
 									return "00:00:00";
 								}else if(value == 240) {

--
Gitblit v1.9.3