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