From 75f7b3e923759b543c068c4651b779aabcb6d18f Mon Sep 17 00:00:00 2001 From: 王震 <10952869+daywangzhen@user.noreply.gitee.com> Date: 星期五, 01 九月 2023 17:09:24 +0800 Subject: [PATCH] 基础数据 --- src/components/view/technology.vue | 351 ++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 244 insertions(+), 107 deletions(-) diff --git a/src/components/view/technology.vue b/src/components/view/technology.vue index 681f965..4bd43a6 100644 --- a/src/components/view/technology.vue +++ b/src/components/view/technology.vue @@ -126,14 +126,14 @@ <el-option label="婀挎彃鎷旂數杩炴帴鍣�" :value="2"></el-option> <el-option label="鍒嗘敮缁勪欢" :value="3"></el-option> </el-select> - <span>宸ュ簭锛�</span> + <!-- <span>宸ュ簭锛�</span> <el-select v-model="search.name" size="small" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 30px;"> <el-option v-for="(a, ai) in process" key="ai" :label="a.name" :value="a.id"></el-option> </el-select> <span>璁惧缁勶細</span> <el-select v-model="search.name" size="small" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 30px;"> <el-option v-for="(a, ai) in product" key="ai" :label="a.name" :value="a.id"></el-option> - </el-select> + </el-select> --> <el-button size="mini" @click="clean()"><span>閲� 缃�</span></el-button> <el-button size="mini" type="primary" style="background: #004EA2;"><span>鏌� 璇�</span></el-button> @@ -141,12 +141,15 @@ <div class="thing"> <div class="left"> <el-input v-model="search.technology" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable @input="(val)=>$refs.tree.filter(val)"></el-input> - <el-tree :data="list" ref="tree" :props="{children: 'children',label: 'name'}" node-key="id" default-expand-all - @node-click="handleNodeClick" highlight-current @node-expand="nodeOpen" @node-collapse="nodeClose" :filter-node-method="filterNode" - :key="upIndex"> - <div class="custom-tree-node" slot-scope="{ node, data }"> - <span><i :class="`node_i ${data.code != '[2]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i> - {{data.code}} {{ data.name }}</span> + <el-tree + :data="towTree" ref="tree" + :props="{children: 'children',label: 'father'}" + node-key="id" default-expand-all + @node-click="handleNodeClick" + > + <div class="custom-tree-node" slot-scope="{ node, data }"> + <span><i :class="`node_i ${data.code != '[2]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i> + {{data.name}}{{data.father}}</span> <el-button type="text" size="mini" @click.stop="remove(node, data)"> <i class="el-icon-delete"></i> </el-button> @@ -162,7 +165,7 @@ </el-table-column> <el-table-column prop="name" label="宸ヨ壓鍚嶇О"> </el-table-column> - <el-table-column prop="ask" label="璁惧缁�"> + <el-table-column prop="device_group" label="璁惧缁�"> </el-table-column> <el-table-column label="鎿嶄綔" width="130"> <template slot-scope="scope"> @@ -176,6 +179,45 @@ <el-dialog title="缂栬緫璁板綍鍐呭" :visible.sync="upDia" width="500px"> <div class="body"> <el-row style="line-height: 46px;"> + <el-col :span="4" style="font-size: 14px;text-align: right;">绫诲瀷:</el-col> + <el-col :span="16" :offset="1"> + <template> + <el-select v-model="upData.type" placeholder="璇烽�夋嫨绫诲瀷" style="width: 310px;"> + <el-option label="姗¤兌杩炴帴鍣�" :value="0"></el-option> + <el-option label="閲戝睘杩炴帴鍣�" :value="1"></el-option> + <el-option label="婀挎彃鎷旂數杩炴帴鍣�" :value="2"></el-option> + <el-option label="鍒嗘敮缁勪欢" :value="3"></el-option> + </el-select> + </template> + </el-col> + </el-row> + <el-row style="line-height: 46px;"> + <el-col :span="4" style="font-size: 14px;text-align: right;">宸ュ簭:</el-col> + <el-col :span="16" :offset="1"> + <el-select v-model="upData.father" style="width: 310px;" placeholder="璇烽�夋嫨"> + <el-option + v-for="item in procedure" + :key="item" + :label="item" + :value="item"> + </el-option> + </el-select> + </el-col> + </el-row> + <el-row style="line-height: 46px;"> + <el-col :span="4" style="font-size: 14px;text-align: right;">鍏冧欢:</el-col> + <el-col :span="16" :offset="1"> + <el-select v-model="upData.ele" style="width: 310px;" multiple placeholder="璇烽�夋嫨"> + <el-option + v-for="item in element" + :key="item.index" + :label="item.name" + :value="item.id"> + </el-option> + </el-select> + </el-col> + </el-row> + <el-row style="line-height: 46px;"> <el-col :span="4" style="font-size: 14px;text-align: right;">宸ヨ壓鍚嶇О:</el-col> <el-col :span="16" :offset="1"> <el-input v-model="upData.name" size="small" clearable></el-input> @@ -184,7 +226,7 @@ <el-row style="line-height: 46px;"> <el-col :span="4" style="font-size: 14px;text-align: right;">璁惧缁�:</el-col> <el-col :span="16" :offset="1"> - <el-input v-model="upData.ask" size="small" clearable></el-input> + <el-input v-model="upData.device_group" size="small" clearable></el-input> </el-col> </el-row> </div> @@ -200,38 +242,48 @@ <el-form ref="form" :model="form" label-width="80px"> <el-form-item label="绫诲瀷"> <template> - <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> + <el-select v-model="form.type" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> + <el-option label="姗¤兌杩炴帴鍣�" :value="0"></el-option> + <el-option label="閲戝睘杩炴帴鍣�" :value="1"></el-option> + <el-option label="婀挎彃鎷旂數杩炴帴鍣�" :value="2"></el-option> + <el-option label="鍒嗘敮缁勪欢" :value="3"></el-option> </el-select> </template> </el-form-item> <el-form-item label="宸ュ簭"> <template> - <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> + <el-select v-model="form.father" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;" > <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> + v-for="item in procedure" + :key="item" + :label="item" + :value="item"> + </el-option> + </el-select> + </template> + </el-form-item> + <el-form-item label="璁惧缁�"> + <template> + <el-select v-model="form.deviceGroup" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;" > + <el-option + v-for="item in equipment" + :key="item.index" + :label="item.father" + :value="item.father"> </el-option> </el-select> </template> </el-form-item> <el-row> <el-col :span="10"> - <el-form-item label="宸ヨ壓鍚嶇О"> + <el-form-item label="鍏冧欢"> <template> - <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 200px;"> + <el-select v-model="form.elementId" placeholder="璇烽�夋嫨绫诲瀷" style="width: 200px;" > <el-option - v-for="item in options" + v-for="item in element" :key="item.value" - :label="item.label" - :value="item.value"> + :label="item.name" + :value="item.id"> </el-option> </el-select> </template> @@ -239,7 +291,7 @@ </el-col> <el-col :span="10" :offset="2"> - <el-form-item label="鍏冧欢"> + <el-form-item label="宸ヨ壓鍚嶇О"> <el-input v-model="form.name" style="width: 200px;"></el-input> </el-form-item> </el-col> @@ -247,7 +299,7 @@ </el-form> </div> <span slot="footer" class="dialog-footer"> - <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button> + <el-button type="primary" @click="Neworder">纭� 瀹�</el-button> <el-button @click="dialogVisible = false">鍙� 娑�</el-button> </span> </el-dialog> @@ -258,12 +310,16 @@ <el-form-item label="绫诲瀷"> <template> <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> - <el-option + <!-- <el-option v-for="item in options" :key="item.value" - :label="item.label" + :label="item." :value="item.value"> - </el-option> + </el-option> --> + <el-option label="姗¤兌杩炴帴鍣�" :value="0"></el-option> + <el-option label="閲戝睘杩炴帴鍣�" :value="1"></el-option> + <el-option label="婀挎彃鎷旂數杩炴帴鍣�" :value="2"></el-option> + <el-option label="鍒嗘敮缁勪欢" :value="3"></el-option> </el-select> </template> </el-form-item> @@ -271,9 +327,9 @@ <template> <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> <el-option - v-for="item in options" + v-for="item in procedure" :key="item.value" - :label="item.label" + :label="item.j" :value="item.value"> </el-option> </el-select> @@ -321,72 +377,142 @@ technology: null }, options:{}, - form:{}, + form:{ + type:'', + father:'', + name:'', + elementId:'', + deviceGroup:'' + }, + search:{ + type:'', + }, + treetrunk:[], process: [], product: [], - list: [{ - id: 0, - name: "鎻掑ご", - children: [{ - id: 5, - name: "宸ヨ壓" - }] - }, { - id: 1, - name: "鎴愬搧" - }, { - id: 2, - name: "鍗婃垚鍝�" - }], - value:{}, + procedure:[], + checkTreeNode:'', + towTree:[], + value:"", modifyevent:false, dialogVisible:false, checkTreeNode: {}, - tableData: [{ - id: 1, - name: "宸ュ簭", - unit: "dajskda", - stand: "12348", - ask: "564165" - }, { - id: 2, - name: "浣滀笟浜哄憳", - unit: "dajskda", - stand: "12348", - ask: "564165" - }, { - id: 3, - name: "瑙勬牸", - unit: "dajskda", - stand: "12348", - ask: "564165" - }, { - id: 4, - name: "瑙勬牸", - unit: "dajskda", - stand: "12348", - ask: "564165" - }, { - id: 5, - name: "瑙勬牸", - unit: "dajskda", - stand: "12348", - ask: "564165" - }], + tableData: [], upIndex: 0, selects: [], upDia: false, + element:[], + equipment:[0], upData: { - id: 0, - name: null, - ask: null + name:'', + device_group:'', + ele:'', + father:'', + type:'', + }, + newdata:{ + type:'' } } }, mounted() { - this.selectDataList() + this.selectAllTechTem() + this.chooseTech() + this.chooseDevGroup() + this.chooseElement() }, methods: { + + Neworder() { + this.dialogVisible = false + this.addTechTemp() + }, + addTechTemp() { + // console.log(this.$api.url.addTechTemp); + this.$axios.post(this.$api.url.addTechTemp, + + { + deviceGroup:this.form.deviceGroup, + elementId:this.form.elementId, + father:this.form.father, + name:this.form.name, + type:this.form.type + }, + { + headers: { + "Content-Type": "application/json" + } + } + ).then(res=>{ + console.log(res); + }) + }, + + //鍏冧欢 + chooseElement() { + this.$axios.get(this.$api.url.chooseElement).then(res =>{ + this.element = res.data + console.log(this.element); + }) + }, + //璁惧 + chooseDevGroup() { + this.$axios.get(this.$api.url.chooseDevGroup).then(res =>{ + this.equipment = res.data; + // console.log(this.equipment); + }) + }, + + //宸ュ簭 + chooseTech() { + this.$axios.get(this.$api.url.chooseTech).then(res =>{ + this.procedure = res.data; + console.log(this.procedure); + }) + }, + //鍒犻櫎 + delTechById() { + this.$axios.post(this.$api.url.delTechById,{ + id:this.upData.id + }) + }, + //缂栬緫 + writeTechById() { + this.$axios.post(this.$api.url.writeTechById,{ + deviceGroup:this.upData.device_group, + elementId:this.upData.ele[0], + father:this.upData.father, + name:this.upData.name, + type:this.upData.type, + // id:this.this.upData.id, + }, { + headers: { + "Content-Type": "application/json" + } + }) + }, + selectAllTechTem() { + this.$axios.get(this.$api.url.selectAllTechTem,{ + params:{type: 0} + }).then(res => { + // let list = res.data; + // list.forEach(i => { + // if (i.name === undefined) { + // i.name = i.children[0].name; + // i.id = i.children[0].id; + // i.children = undefined; + // } + // }); + this.towTree = res.data; + }); + }, + selectAllTechNam() { + this.$axios.get(this.$api.url.selectAllTechNam,{ + params:{father:this.checkTreeNode.name} + }).then(res => { + this.tableData = res.data; + }); + }, addend(){ this.dialogVisible = true }, @@ -407,22 +533,26 @@ children.splice(index, 1); }).catch(e => {}) }, - selectDataList() { - this.list.forEach(a => { - a.code = '[1]' - if (a.children != undefined) { - a.children.forEach(b => { - b.code = '[2]' - }) - } - }) - this.upIndex++ - }, - handleNodeClick(data) { + // selectDataList() { + // this.list.forEach(a => { + // a.code = '[1]' + // if (a.children != undefined) { + // a.children.forEach(b => { + // b.code = '[2]' + // }) + // } + // }) + // this.upIndex++ + // }, + handleNodeClick(data, node) { this.checkTreeNode = data - if (data.code == '[2]') { - console.log(data); - } + this.treetrunk = node + console.log(this.treetrunk); + console.log(this.checkTreeNode); + this.selectAllTechNam() + // if (data.code == '[2]') { + // console.log(data); + // } }, nodeOpen(data, node, el) { $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder-opened') @@ -448,20 +578,27 @@ rows.splice(index, 1); }, upContent(ob) { - this.upData = this.HaveJson(ob) + this.upData = ob + console.log(this.upData); this.upDia = true }, + + + submitUpData() { - this.tableData.forEach(a => { - if (a.id == this.upData.id) { - a.name = this.upData.name - a.ask = this.upData.ask - } - }) + // this.tableData.forEach(a => { + // if (a.id == this.upData.id) { + // a.name = this.upData.name + // a.ask = this.upData.device_group + // } + // }) + this.writeTechById() + this.$message.success('淇敼鎴愬姛') this.upIndex++ this.upDia = false } } } + </script> \ No newline at end of file -- Gitblit v1.9.3