From 002b322741c9f9577e099356fe8201cea32f7bab Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期一, 11 九月 2023 12:53:25 +0800 Subject: [PATCH] modified: src/components/view/standard.vue --- src/components/view/standard.vue | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 104 insertions(+), 15 deletions(-) diff --git a/src/components/view/standard.vue b/src/components/view/standard.vue index 0b372ee..c60f440 100644 --- a/src/components/view/standard.vue +++ b/src/components/view/standard.vue @@ -7,15 +7,21 @@ <el-button type="primary" icon="el-icon-plus" style="background: #004EA2;" @click="bomAddModelVisible = true">鏂板</el-button> <el-button icon="el-icon-plus">鏂板鐗堟湰</el-button> - <el-button icon="el-icon-edit-outline">淇敼</el-button> - <el-button icon="el-icon-delete">鍒犻櫎</el-button> + <el-button @click="bomRightUp=true" icon="el-icon-edit-outline">淇敼</el-button> + <el-button @click="bomRightDl=true" icon="el-icon-delete">鍒犻櫎</el-button> </el-col> </el-row> </div> <div class="thing"> <div class="left"> - <el-input v-model="search" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable></el-input> - + <el-row> + <el-col :span="21"> + <el-input v-model="search" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable></el-input> + </el-col> + <el-col :span="2"> + <el-button size="mini" icon="el-icon-plus" @click="bomLeftAdd=true"></el-button> + </el-col> + </el-row> <el-tree :data="list" ref="tree" default-expand-all :props="{ children: 'children', label: 'name' }" node-key="id" :filter-node-method="filterNode" @node-click="handleNodeClick" highlight-current> <div class="custom-tree-node" slot-scope="{ node, data }"> @@ -55,7 +61,9 @@ <div class="contentTable" v-if="this.typeselect == 0"> <technology :tableType="tableType" :tableData="tableData"></technology> </div> - <div v-if="this.typeselect == 1">鎶�鏈寚鏍�</div> + <div v-if="this.typeselect == 1"> + <target :tableType="tableType" :tableData="tableData"></target> + </div> <div v-if="this.typeselect == 2"> <bom :tableType="tableType" :tableData="tableData"></bom> </div> @@ -67,12 +75,45 @@ <div class="bom-add-model"> <el-dialog title="BOM鏂板" :visible.sync="bomAddModelVisible" width="30%"> - <el-form> - - </el-form> + <div> + <!-- 鐗╂枡娓呭崟鏂板 --> + <bomClickAdd v-if="typeselect===2"/> + </div> <span slot="footer" class="dialog-footer"> <el-button @click="bomAddModelVisible = false">鍙� 娑�</el-button> <el-button type="primary" @click="bomAddModelVisible = false">纭� 瀹�</el-button> + </span> + </el-dialog> + <!-- 宸︿晶鐐瑰嚮+鎸夐挳 --> + <el-dialog title="BOM鏂板" :visible.sync="bomLeftAdd" width="29%"> + <el-form ref="leftAdd" :model="leftAdd"> + <el-form-item label="绫诲瀷"> + <el-cascader v-model="leftAdd.type" size="mini" style="width: 93%;" :options="formTypeOptions" :props="{ checkStrictly: true }" clearable></el-cascader> + </el-form-item> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="bomLeftAdd = false">鍙� 娑�</el-button> + <el-button type="primary" @click="bomLeftAdd = false">纭� 瀹�</el-button> + </span> + </el-dialog> + <!-- 鍙充笂渚х偣鍑讳慨鏀规寜閽� --> + <el-dialog title="BOM淇敼" :visible.sync="bomRightUp" width="30%"> + <el-form> + 淇敼 + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="bomRightUp = false">鍙� 娑�</el-button> + <el-button type="primary" @click="bomRightUp = false">纭� 瀹�</el-button> + </span> + </el-dialog> + <!-- 鍙充笂渚х偣鍑诲垹闄ゆ寜閽� --> + <el-dialog title="BOM鍒犻櫎" :visible.sync="bomRightDl" width="30%"> + <el-form> + 鍒犻櫎 + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="bomRightDl = false">鍙� 娑�</el-button> + <el-button type="primary" @click="bomRightDl = false">纭� 瀹�</el-button> </span> </el-dialog> </div> @@ -83,8 +124,9 @@ import technology from "./standard-table/technology.vue" import material from "./standard-table/material.vue" import bom from "./standard-table/bom.vue" +import bomClickAdd from '@/components/view/standard-box/bomClickAdd' export default { - components: { technology,material,bom }, + components: { technology,material,bom,bomClickAdd }, data() { return { @@ -96,14 +138,25 @@ checkTreeNode: {},// 鐐瑰嚮閫変腑鏍戣妭鐐� tableData: [], bomAddModelVisible: false,// 鎺у埗bom鏂板妯℃�佹鏄惁鏄剧ず + bomLeftAdd: false, + bomRightUp: false, + bomRightDl: false, + formTypeOptions: null, typeselect: 0, returntree: { id:28, }, version: {}, + leftAdd:{ + type: null, + father: null, + standard: null, + name: null, + specifications: null + }, VER: {}, verdata: {}, - character: 0, + character: 0 } }, // watch: { @@ -120,6 +173,9 @@ this.selectVersion() }, methods: { + startLeftAdd(){ + + }, selectDataList() { this.list.forEach(a => { a.code = '[1]' @@ -152,7 +208,7 @@ // console.log(val); this.typeselect = val - console.log(this.typeselect); + // console.log(this.typeselect); this.selectVersion() }, handleNodeClick(val) {//鏍戠殑鍊� @@ -187,12 +243,18 @@ } }).then(res => { let arr = res.data; - console.log(arr); - for(var i=0;i<arr.length;i++){ - arr[i].id = "0" + i; - } + this.formatData(arr) this.tableData = arr; }) + }, + formatData(data){ + let arr = data; + for(var i=0;i<arr.length;i++){ + arr[i].rowId = Math.random(); + if(arr[i].children != undefined){ + this.formatData(arr[i].children); + } + } }, verevent(val) { // console.log(val); @@ -234,6 +296,7 @@ }) }, getDefault(arr, index) { + console.log(arr); for (const item of arr) { if (item.children && item.children.length > 0) { // 鏈夊瓙鑺傜偣 @@ -283,7 +346,33 @@ this.tableData = productList break; } + }, + replaceProp(arr){ + for (let index = 0; index < arr.length; index++) { + let element = arr[index]; + element.label=element.name + element.value=element.name + // if() + } } + }, + watch:{ + leftAdd: { + handler(newVal, oldVal) { + console.log("鏂扮殑",newVal); + console.log("鏃х殑",oldVal); + }, + deep: true // 娣卞害鐩戝惉瀵硅薄鍐呴儴灞炴�х殑鍙樺寲锛屽彲閫夌殑 + }, + bomLeftAdd:{ + handler(newval,oldVal){ + if(newval){ + let treeOptions = JSON.parse(JSON.stringify(this.list)); + console.log(treeOptions); + + } + } + } } } </script> -- Gitblit v1.9.3