From cb44cab30ca6b51d4488c66d7db911deecf4dbea Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期一, 11 九月 2023 09:35:53 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.0.22:9001/r/mom-before --- src/components/view/record-content.vue | 413 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 295 insertions(+), 118 deletions(-) diff --git a/src/components/view/record-content.vue b/src/components/view/record-content.vue index 4861c07..62ecc41 100644 --- a/src/components/view/record-content.vue +++ b/src/components/view/record-content.vue @@ -111,42 +111,46 @@ <div class="record_content"> <div class="title"> <el-row> - <el-col :span="12" style="line-height: 32px;">璁板綍鍐呭缁存姢</el-col> + <el-col :span="12" style="line-height: 32px;">鐢熶骇璁板綍缁存姢</el-col> <el-col :span="12" style="text-align: right;"> <el-button type="primary" icon="el-icon-plus" style="background: #004EA2;" @click="addend">鏂板</el-button> - <el-button icon="el-icon-edit-outline" @click="modify">淇敼</el-button> + <!-- <el-button icon="el-icon-edit-outline" @click="modify">淇敼</el-button> --> <el-button icon="el-icon-delete" @click="dels">鍒犻櫎</el-button> </el-col> </el-row> - </div> + </div> <div class="choose"> <span>绫诲瀷锛�</span> - <el-select v-model="search.type" size="small" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 30px;"> + <el-select v-model="search.type" size="small" @change="TYpe" placeholder="璇烽�夋嫨" style="width: 224px;margin-right: 30px;"> <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> - <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> <el-button size="mini" @click="clean()"><span>閲� 缃�</span></el-button> <el-button size="mini" type="primary" style="background: #004EA2;"><span>鏌� - 璇�</span></el-button> + 璇�</span></el-button> --> + <!-- :style="{height: scrollerHeight,overflow:'auto',display: 'flex'}" --> + </div> <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" + <el-input v-model="search.technology" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable @input="query"></el-input> + <el-tree :data="list" ref="tree" + style="height: 500px;overflow-y: auto;" + :props="{children: 'children',label: 'name'}" node-key="name" default-expand-all + @node-click="handleNodeClick" highlight-current :key="upIndex"> <div class="custom-tree-node" slot-scope="{ node, data }"> - <span><i :class="`node_i ${data.code != '[3]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i> - {{data.code}} {{ data.name }}</span> - <el-button type="text" size="mini" @click.stop="remove(node, data)"> + <span><i :class="`node_i ${data.code != '[2]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i> + {{ data.cord }}{{ data.name }}</span> + <!-- <el-button type="text" size="mini" @click.stop="remove(node, data)"> <i class="el-icon-delete"></i> - </el-button> + </el-button> --> </div> </el-tree> </div> @@ -157,16 +161,16 @@ </el-table-column> <el-table-column type="index" label="搴忓彿" width="70"> </el-table-column> - <el-table-column prop="name" label="鍚嶇О"> + <el-table-column prop="name" label="璁板綍鍐呭"> </el-table-column> <el-table-column prop="unit" label="鍗曚綅"> </el-table-column> - <el-table-column prop="thing" label="澶囨敞"> + <el-table-column prop="note" label="澶囨敞"> </el-table-column> <el-table-column label="鎿嶄綔" width="130"> <template slot-scope="scope"> <span class="table_do" @click="upContent(scope.row)">缂栬緫 </span> - <span class="table_do" @click="deleteRow(scope.$index, tableData)">鍒犻櫎</span> + <span class="table_do" @click="deleteRow(scope.$index, scope.row)">鍒犻櫎</span> </template> </el-table-column> </el-table> @@ -175,7 +179,56 @@ <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="4" style="font-size: 14px;text-align: right;">绫诲瀷:</el-col> + <el-col :span="16" :offset="1"> + <template> + <el-select v-model="edit.type" disabled 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"> + <template> + <el-select v-model="edit.techFather" + placeholder="璇烽�夋嫨" + <el-select v-model="edit.techFather" + placeholder="璇烽�夋嫨" + disabled + @change="workevent" + style="width: 310px;"> + <el-option + v-for="item in process" + :key="item.name" + :label="item.name" + :value="item.name"> + </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"> + <template> + <el-select v-model="edit.techName" disabled placeholder="璇烽�夋嫨" style="width: 310px;"> + <el-option + v-for="item in craftapi" + :key="item.id" + :label="item.name" + :value="item.id"> + </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-input v-model="upData.name" size="small" clearable></el-input> </el-col> @@ -189,7 +242,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.thing" size="small" clearable></el-input> + <el-input v-model="upData.note" size="small" clearable></el-input> </el-col> </el-row> </div> @@ -199,58 +252,58 @@ </span> </el-dialog> <!-- 鏂板寮圭獥 --> - <el-dialog title="宸ュ簭鏂板" :visible.sync="dialogVisible" width="35%"> + <el-dialog title="鐢熶骇璁板綍鏂板" :visible.sync="dialogVisible" width="35%"> <div> <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" @change="edittype" 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.work" + @change="workevent" + placeholder="璇烽�夋嫨" style="width: 480px;"> <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> + v-for="item in process" + :key="item.name" + :label="item.name" + :value="item.name"> </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.craft" placeholder="璇烽�夋嫨" style="width: 480px;"> <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> + v-for="item in craftapi" + :key="item.id" + :label="item.name" + :value="item.id"> </el-option> </el-select> </template> </el-form-item> <el-form-item label="璁板綍"> - <el-input v-model="form.name"></el-input> + <el-input v-model="form.record"></el-input> </el-form-item> <el-form-item label="澶囨敞"> - <el-input v-model="form.vvvv"></el-input> + <el-input v-model="form.remarks"></el-input> </el-form-item> <el-form-item label="鍗曚綅"> - <el-input v-model="form.aaaa"></el-input> + <el-input v-model="form.unit"></el-input> </el-form-item> </el-form> </div> <span slot="footer" class="dialog-footer"> - <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button> + <el-button type="primary" @click="add">纭� 瀹�</el-button> <el-button @click="dialogVisible = false">鍙� 娑�</el-button> </span> </el-dialog> @@ -261,7 +314,7 @@ <el-form ref="form" :model="form" label-width="80px"> <el-form-item label="绫诲瀷"> <template> - <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> + <el-select v-model="value" placeholder="璇烽�夋嫨" style="width: 480px;"> <el-option v-for="item in options" :key="item.value" @@ -273,7 +326,7 @@ </el-form-item> <el-form-item label="宸ュ簭"> <template> - <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> + <el-select v-model="value" placeholder="璇烽�夋嫨" style="width: 480px;"> <el-option v-for="item in options" :key="item.value" @@ -285,7 +338,7 @@ </el-form-item> <el-form-item label="宸ヨ壓鍚嶇О"> <template> - <el-select v-model="value" placeholder="璇烽�夋嫨绫诲瀷" style="width: 480px;"> + <el-select v-model="value" placeholder="璇烽�夋嫨" style="width: 480px;"> <el-option v-for="item in options" :key="item.value" @@ -296,13 +349,13 @@ </template> </el-form-item> <el-form-item label="璁板綍"> - <el-input v-model="form.name"></el-input> + <el-input v-model="form.record"></el-input> </el-form-item> <el-form-item label="澶囨敞"> - <el-input v-model="form.vvvv"></el-input> + <el-input v-model="form.remarks"></el-input> </el-form-item> <el-form-item label="鍗曚綅"> - <el-input v-model="form.aaaa"></el-input> + <el-input v-model="form.unit"></el-input> </el-form-item> </el-form> </div> @@ -320,88 +373,158 @@ return { search: { type: 0, - name: 2, - technology: 2 + technology: null }, options:[], value:{}, - form:{}, + craftapi:[], + form:{ + type:'', + work:'', + craft:'', + name:'', + record:'', + remarks:'', + unit:'', + }, modifyVisible:false, dialogVisible:false, - process: [], - list: [{ - id: 0, - name: "鍘熸潗鏂�", - children: [{ - id: 3, - name: "宸ヨ壓", - children: [{ - id: 6, - name: "璁惧1" - }] - }] - }, { - id: 1, - name: "鎴愬搧", - children: [{ - id: 4, - name: "宸ヨ壓" - }] - }, { - id: 2, - name: "鍗婃垚鍝�", - children: [{ - id: 5, - name: "宸ヨ壓" - }] - }], + process: {}, + list: [], checkTreeNode: {}, - tableData: [{ - id: 1, - name: "璐ㄩ噺杩芥函鍙�", - unit: "鍗曚綅", - thing: "dajskda" - }, { - id: 2, - name: "浣滀笟浜哄憳", - unit: "鍗曚綅", - thing: "dajskda" - }, { - id: 3, - name: "瑙勬牸", - unit: "鍗曚綅", - thing: "dajskda" - }, { - id: 4, - name: "瑙勬牸", - unit: "鍗曚綅", - thing: "dajskda" - }, { - id: 5, - name: "瑙勬牸", - unit: "鍗曚綅", - thing: "dajskda" - }], + tableData: [], upIndex: 0, selects: [], + delete:[], + typeselect:0, upDia: false, - upData: { - id: 0, - name: null, - unit: null, - thing: null - } + checkTreeNode:{ + id:'', + }, + upData:{ + name:'', + unit:'', + note:'', + }, + edit:{ + name:'', + note:'', + techFather:'', + techName:'', + type:'', + unit:'', + }, } }, mounted() { - this.selectDataList() + this.selectAllleft() + this.selectjilu() }, methods: { + delQueById() { + this.$axios.get(this.$api.url.delQueById,) + }, + childrenClick() {}, + TYpe(val) { + this.typeselect = val + console.log(this.typeselect); + this.selectAllleft() + }, + edittype(val) { + // this.typeselect = '' + this.typeselect = val + this.chooseTechFath() + }, + //鏂板 + workevent(val){ + console.log(val); + let idx = this.process.findIndex(el => el.name === val) + this.craftapi = this.process[idx].children + console.log( this.craftapi); + }, + chooseTechFath() { + this.$axios.get(this.$api.url.chooseTechFath,{ + params:{type:this.typeselect} + }).then(res => { + this.process = res.data; + console.log(this.process); + }, { + headers: { + "Content-Type": "application/json" + } + }).then(res =>{ + + }) + }, + addRecord() { + this.$axios.post(this.$api.url.addRecord,{ + name:this.form.record, + note:this.form.remarks, + techTemId:this.form.craft, + unit:this.form.unit, + } + , { + headers: { + "Content-Type": "application/json" + } + } + ) + }, + add() { + this.dialogVisible = false + this.addRecord() + this.selectjilu() + this.form = {}; + }, + query() { + this.selectAllleft() + }, + //涓讳綋宸� + selectAllleft() { + this.$axios.get(this.$api.url.selectAllleft,{ + params:{type:this.typeselect,message:this.search.technology} + }).then(res => { + this.list = res.data; + this.selectDataList() + this.$nextTick(() => { + this.$refs.tree.setCurrentKey(this.list[0].children[0].name) // 榛樿閫変腑鑺傜偣绗竴涓� + }) + console.log("======="); + console.log(this.list); + let one=this.list.filter(item=>{ + return item.children.length>0 + })[0] + console.log(one); + let name=one.children[0].id + console.log(name); + this.selectjiluStart(name) + this.selectDataList(); + }); + }, + //榛樿 + selectjiluStart(name) { + this.$axios.get(this.$api.url.selectjilu,{ + params:{id:name} + }).then(res => { + this.tableData = res.data; + console.log(this.tableData); + }) + }, + //selectjilu checkTreeNode + selectjilu() { + this.$axios.get(this.$api.url.selectjilu,{ + params:{id:this.checkTreeNode.id} + }).then(res => { + this.tableData = res.data; + console.log(this.tableData); + }) + }, modify(){ this.modifyVisible = true }, addend(){ this.dialogVisible = true + this.chooseTechFath() }, filterNode(value, data) { if (!value) return true; @@ -435,6 +558,7 @@ }, handleNodeClick(data) { this.checkTreeNode = data + this.selectjilu() if(data.code=='[3]'){ console.log(data); } @@ -457,25 +581,78 @@ } } }) + let cc = this.selects.map(el => { + return el.id + }) + this.delete = cc.join(',') + console.log(this.delete); + this.delAllRecord() this.$message.success('鍒犻櫎瀹屾垚') }, - deleteRow(index, rows) { - rows.splice(index, 1); + //鎵归噺鍒犻櫎 + delAllRecord() { + this.$axios.post(this.$api.url.delAllRecord,{ + ids:this.delete + }) }, + + //鍒犻櫎 + delQueByIdapi() { + this.$axios.post(this.$api.url.delQueByIdapi,{ + id:this.upData.id + }) + }, + deleteRow(index, rows) { + this.tableData.splice(index,1) + this.upData.id = rows.id + this.delQueByIdapi() + // this.selectjilu() + }, + //缂栬緫 upContent(ob) { - this.upData = this.HaveJson(ob) + this.upData = ob + // console.log(this.upData); + this.selecRecord() + // this.chooseTechFath() this.upDia = true }, - submitUpData() { - this.tableData.forEach(a => { - if (a.id == this.upData.id) { - a.name = this.upData.name - a.unit = this.upData.unit - a.thing = this.upData.thing + selecRecord() { + this.$axios.get(this.$api.url.selecRecord,{ + params:{ + id:this.upData.id } + }).then(res => { + this.edit = res.data[0] }) + }, + writeRecordById() { + // console.log(this.upData.id); + this.$axios.post(this.$api.url.writeRecordById + '?id=' + this.upData.id,{ + name:this.upData.name, + note:this.upData.note, + techTemId:this.edit.id, + unit:this.upData.unit + }, { + headers: { + "Content-Type": "application/json" + } + }).then(res => { + this.selectjilu() + }) + }, + submitUpData() { + this.writeRecordById() this.$message.success('淇敼鎴愬姛') + this.upDia = false + // this.tableData.forEach(a => { + // if (a.id == this.upData.id) { + // a.name = this.upData.name + // a.unit = this.upData.unit + // a.thing = this.upData.thing + // } + // }) + // console.log(this.upData); } } } -- Gitblit v1.9.3