From 27dd70096d181051200ec5febf11c99d1940f835 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期三, 13 九月 2023 16:52:18 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.0.22:9001/r/mom-before --- src/components/view/technology.vue | 13 src/components/view/laboratoryManagement.vue | 206 +++++++++++++------- src/components/view/mbom.vue | 122 +++++++----- src/components/view/equipmentmaintain.vue | 55 +++++ src/main.js | 8 src/components/view/Technicalindex.vue | 127 ++++++++---- src/components/view/technical.vue | 20 + src/components/view/standard-table/technology.vue | 1 src/view/index.vue | 9 src/assets/api/controller.js | 1 10 files changed, 375 insertions(+), 187 deletions(-) diff --git a/src/assets/api/controller.js b/src/assets/api/controller.js index 36976e0..57cf222 100644 --- a/src/assets/api/controller.js +++ b/src/assets/api/controller.js @@ -156,6 +156,7 @@ delQueById:"/techniqueModel/delQueById",//鍒犻櫎 delAllQue:"/techniqueModel/delAllQue",//鎵归噺鍒犻櫎 selecQueById:"/techniqueModel/selecQueById",//缂栬緫 + writeQueById:"/techniqueModel/writeQueById",//缂栬緫浼犲弬 } const url = { diff --git a/src/components/view/Technicalindex.vue b/src/components/view/Technicalindex.vue index 03d8f56..96f7f9f 100644 --- a/src/components/view/Technicalindex.vue +++ b/src/components/view/Technicalindex.vue @@ -281,51 +281,92 @@ export default { data() { return { - search: { - type: 0, - technology: null, - }, - // handleClose:[], - checkTreeNode: { - id: '', - }, - higherlevel: [], - value: {}, - options: [], - process: [], - filterNode: [], - list: [], - form: { - father: '', - work: '', - name: '', - unit: '', - project: '', - }, - children: [], - modifyevent: false, - dialogVisible: false, - tableData: [], - typeselect: 0, - upData: {}, - upDia: false, - craftapi: [], - edit: { - techFather: '', - techName: '', - father: '', - name: '', - unit: '', - id: '' - } - } - }, - mounted() { + search:{ + type:0, + technology:null, + }, + // handleClose:[], + checkTreeNode :{ + id:'', + }, + higherlevel:[], + value:{}, + options:[], + process:[], + filterNode:[], + list: [], + form:{ + father:'', + work:'', + name:'', + unit:'', + project:'', + }, + children:[], + modifyevent:false, + dialogVisible:false, + tableData: [], + typeselect:0, + upData:{}, + upDia:false, + craftapi:[], + edit:{ + techFather:'', + techName:'', + father:'', + name:'', + unit:'', + id:'', + + }, + isAllSelect:false, + } + + }, + mounted() { this.selectAllleft() this.selectAllright() }, - methods: { - handleClose() { + methods:{ + // 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 + // 鍏ㄩ��/鍙栨秷閫夋搷浣� + selectAll(val) { + this.isAllSelect = !this.isAllSelect; + let data = this.tableData; + this.toggleSelect(data, this.isAllSelect, "all"); + }, + //閫夋嫨鏌愯 + selectTr(selection, row) { + console.log(selection,row); + this.$set(row, "isChecked", !row.isChecked); + this.$nextTick(() => { + this.isAllSelect = row.isChecked; + this.toggleSelect(row, row.isChecked, "tr"); + }); + }, + //閫掑綊瀛愮骇 + toggleSelect(data, flag, type) { + if (type === "all") { + console.log('222'); + if (data.length > 0) { + data.forEach((item) => { + this.toggleSelection(item, flag); + if (item.children && item.children.length > 0) { + this.toggleSelect(item.children, flag, type); + } + }); + } + } else { + if (data.children && data.children.length > 0) { + data.children.forEach((item) => { + item.isChecked = !item.isChecked; + this.$refs.multipleTable.toggleRowSelection(item, flag); + this.toggleSelect(item, flag, type); + }); + } + } + }, + handleClose(){ }, selectDataList() { @@ -693,4 +734,4 @@ height: 30px; border-radius: 2px; } -</style> \ No newline at end of file +</style> diff --git a/src/components/view/equipmentmaintain.vue b/src/components/view/equipmentmaintain.vue index 0defcf5..30759c4 100644 --- a/src/components/view/equipmentmaintain.vue +++ b/src/components/view/equipmentmaintain.vue @@ -262,11 +262,13 @@ <div class="right"> <el-table :data="tableData" - style="width: 100%;margin-bottom: 20px;" + style="width: 100%;margin-bottom: 20px;height: 600px;overflow: auto;" row-key="name" border + @select="selectTr" @selection-change="handleSelectionChange" default-expand-all + ref="multipleTable" :tree-props="{children: 'children', hasChildren: 'hasChildren'}"> <el-table-column type="selection" @@ -317,7 +319,7 @@ width="200px"> <template slot-scope="scope" style="text-align: center;"> <div v-if="!scope.row.children"> - <el-button type="text" size="mini" @click="childrenClick(scope.row)">缂栬緫</el-button> + <!-- <el-button type="text" size="mini" @click="childrenClick(scope.row)">缂栬緫</el-button> --> <el-button type="text" size="mini" @click="deleteRow(scope.$index, scope.row)">鍒犻櫎</el-button> </div> </template> @@ -568,9 +570,6 @@ console.log(this.upData.id); this.delQueById() }, - handleSelectionChange(val) { - this.selects = val - }, //鎵归噺鍒犻櫎 delAllQue() { this.$axios.post(this.$api.url.delAllQue,{ @@ -608,6 +607,52 @@ // // filterNode(){ // }, + handleSelectionChange(val) { + this.deleteList = []; + val.forEach((v) => { + if (v.id !== undefined) { + this.deleteList.push(v.id); + } + }); + }, + // 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 + // 鍏ㄩ��/鍙栨秷閫夋搷浣� + selectAll(val) { + this.isAllSelect = !this.isAllSelect; + let data = this.tableData; + this.toggleSelect(data, this.isAllSelect, "all"); + }, + //閫夋嫨鏌愯 + selectTr(selection, row) { + console.log(selection,row); + this.$set(row, "isChecked", !row.isChecked); + this.$nextTick(() => { + this.isAllSelect = row.isChecked; + this.toggleSelect(row, row.isChecked, "tr"); + }); + }, + //閫掑綊瀛愮骇 + toggleSelect(data, flag, type) { + if (type === "all") { + console.log('222'); + if (data.length > 0) { + data.forEach((item) => { + this.toggleSelection(item, flag); + if (item.children && item.children.length > 0) { + this.toggleSelect(item.children, flag, type); + } + }); + } + } else { + if (data.children && data.children.length > 0) { + data.children.forEach((item) => { + item.isChecked = !item.isChecked; + this.$refs.multipleTable.toggleRowSelection(item, flag); + this.toggleSelect(item, flag, type); + }); + } + } + }, } } diff --git a/src/components/view/laboratoryManagement.vue b/src/components/view/laboratoryManagement.vue index 5fb48be..38548d3 100644 --- a/src/components/view/laboratoryManagement.vue +++ b/src/components/view/laboratoryManagement.vue @@ -1,8 +1,8 @@ <template> - <div> + <div class="laboratoryMangement"> <el-row> <el-col :span="12" class="top_left_name">璁惧缁存姢</el-col> - <el-col :span="12" style="text-align: right;"> + <el-col :span="12" style="text-align: right;" class="title"> <el-button @click="testItem()" type="primary" @@ -39,6 +39,7 @@ <el-form-item label="璁惧鐢ㄩ��" prop="type"> <el-select v-model="ruleForm.type" + @change="selectinstall" placeholder="璇烽�夋嫨璁惧鐢ㄩ��" > <el-option label="鐢熶骇璁惧" value="1"></el-option> @@ -207,12 +208,11 @@ :data="towTree" ref="tree" :props="{ children: 'children', label: 'father' }" - node-key="id" + node-key="father" default-expand-all highlight-current style="margin-top: 20px;" @node-click="handleNodeClick" - > <div class="custom-tree-node" slot-scope="{ node, data }"> <span @@ -397,8 +397,10 @@ name: "LaboratoryManagement", data() { return { + value: "", dialogVisible: false, + checkTreeNode:{}, isCollapse: true, //榛樿涓哄睍寮� radio1: "true", // 鍒嗙被鍒囨崲 tableData: [], // 涓婚〉琛ㄦ牸鏁版嵁 @@ -411,7 +413,7 @@ staue_value: "", // 涓婚〉琛ㄦ牸涓婃柟鐨勭姸鎬侀�夋嫨 // BOM鏍戞暟鎹粨鏋� towTree: [], - equipment: '', + equipment: '1', equaip:'', ruleForm: { // 鏂板浠櫒琛ㄥ崟 @@ -424,10 +426,11 @@ name: "", rawInsProductId: "", type: "", - treedata:{ - father:'璁惧缁�1', - }, + // treedata:{ + // father:'璁惧缁�1', + // }, equr:'', + }, delete:{}, equip:1, @@ -473,25 +476,29 @@ this.twoTreeApi(); // 鍒濆鍖栬皟鐢ㄨ〃鏍兼暟鎹� // this.tableDataApi(); - this.selectDevice()//鍙宠竟 + // this.selectDevice() }, methods: { - selectDevice() {//鍙宠竟鏁版嵁 - console.log(this.ruleForm.treedata.father); - console.log(this.equip); - this.$axios.get(this.$api.url.selectDevice,{ - params:{ - father:this.ruleForm.treedata.father, - type:this.equip, - } - }).then(res =>{ - console.log(res); - this.tableData = res.data - }, { - headers: { - "Content-Type": "application/json" - } - }) + handleNodeClick(val) { + this.checkTreeNode = val + console.log(this.checkTreeNode); + this.selectDevice() + }, + + staueValueChange() { + this.selectDevice() + // this.tableData = []; + // let val = 1; + // if (this.radio1 === "false") { + // val = 2; + // } + // this.$axios + // .get(this.$api.url.tableDeviceList, { + // params: { type: val, deviceStatue: this.staue_value } + // }) + // .then(res => { + // this.tableData = res.data; + // }); }, // 鍔ㄦ�佹帶鍒跺睍寮�涓庢敹璧峰拰鍒囨崲瀵瑰簲鍥炬爣 isC() { @@ -535,14 +542,21 @@ .catch(_ => {}); }, testItem() { - this.listgroup() this.dialogVisible = true; this.$axios.get(this.$api.url.addDeviceKeeper).then(res => { this.keeperList = res.data; }); }, + selectinstall(val) { + this.equip = val + this.listgroup() + }, listgroup() { - this.$axios.get(this.$api.url.listgroup).then(res =>{ + this.$axios.get(this.$api.url.listgroup,{ + params:{ + type:this.equip + } + }).then(res =>{ this.equaip = res.data console.log(this.equip); }) @@ -567,7 +581,51 @@ // } // }); this.towTree = res.data; - }); + this.$nextTick(() => { + this.$refs.tree.setCurrentKey(this.towTree[0].father) // 榛樿閫変腑鑺傜偣绗竴涓� + }) + console.log(this.towTree); + let one=this.towTree[0] + console.log(one); + let name =one.father + console.log(name); + this.selectDeviceStart(name) + }); + }, + selectDeviceStart(name,) {//鍙宠竟鏁版嵁 + this.$axios.get(this.$api.url.selectDevice,{ + params:{ + father:name, + type:this.equip, + deviceStatus:this.staue_value, + message:this.codeNameModel, + } + }).then(res =>{ + console.log(res); + this.tableData = res.data + }, { + headers: { + "Content-Type": "application/json" + } + }) + }, + + selectDevice() {//鍙宠竟鏁版嵁 + this.$axios.get(this.$api.url.selectDevice,{ + params:{ + father:this.checkTreeNode.father, + type:this.equip, + deviceStatus:this.staue_value, + message:this.codeNameModel, + } + }).then(res =>{ + console.log(res); + this.tableData = res.data + }, { + headers: { + "Content-Type": "application/json" + } + }) }, addApi() { this.$axios.post(this.$api.url.addApi,{ @@ -581,9 +639,9 @@ type:this.ruleForm.type, }, {headers: {"Content-Type": "application/json"} }).then(res =>{ - this.selectDevice() this.$message.success('鏂板鎴愬姛') this.ruleForm = {} + this.selectDevice() }) }, // tableDataApi() { @@ -592,15 +650,13 @@ // }); // }, reset() { - this.tableDataApi(); - this.radio1 = "true"; - this.codeNameModel = ""; - this.staue_value = ""; - }, - handleNodeClick(data) { - console.log(data); - // this.treedata = data - this.selectDevice() + // this.tableDataApi(); + // this.radio1 = "true"; + // this.codeNameModel = ""; + // this.staue_value = ""; + this.staue_value = "" + this.codeNameModel = "" + this.selectDevice() }, handlerDeptList() { this.towTree = []; @@ -617,24 +673,25 @@ }); }, selectSearch() { - this.tableData = []; - if (this.radio1 === "false") { - this.$axios - .get(this.$api.url.tableDeviceList, { - params: { type: 1, codeNameModel: this.codeNameModel } - }) - .then(res => { - this.tableData = res.data; - }); - } else if (this.radio1 === "true") { - this.$axios - .get(this.$api.url.tableDeviceList, { - params: { type: 2, codeNameModel: this.codeNameModel } - }) - .then(res => { - this.tableData = res.data; - }); - } + this.selectDevice() + // this.tableData = []; + // if (this.radio1 === "false") { + // this.$axios + // .get(this.$api.url.tableDeviceList, { + // params: { type: 1, codeNameModel: this.codeNameModel } + // }) + // .then(res => { + // this.tableData = res.data; + // }); + // } else if (this.radio1 === "true") { + // this.$axios + // .get(this.$api.url.tableDeviceList, { + // params: { type: 2, codeNameModel: this.codeNameModel } + // }) + // .then(res => { + // this.tableData = res.data; + // }); + // } }, delDeviceById() { this.$axios.post(this.$api.url.delDeviceById,{ @@ -722,20 +779,7 @@ } }); }, - staueValueChange() { - this.tableData = []; - let val = 1; - if (this.radio1 === "false") { - val = 2; - } - this.$axios - .get(this.$api.url.tableDeviceList, { - params: { type: val, deviceStatue: this.staue_value } - }) - .then(res => { - this.tableData = res.data; - }); - } + }, watch: { @@ -951,3 +995,25 @@ line-height: 14px; } </style> +<style> + .laboratoryMangement .title *{ + font-size: 14px; + } + + .laboratoryMangement .table_top_div *{ + font-size: 14px; + } + + .laboratoryMangement .title .el-button { + height: 32px; + border: 1px solid rgba(190, 190, 190, 0.44); + box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41); + padding: 0 12px; + } + .laboratoryMangement .table_top_div .el-button { + height: 32px; + border: 1px solid rgba(190, 190, 190, 0.44); + box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41); + padding: 0 12px; + } +</style> \ No newline at end of file diff --git a/src/components/view/mbom.vue b/src/components/view/mbom.vue index b608179..4e8c3ba 100644 --- a/src/components/view/mbom.vue +++ b/src/components/view/mbom.vue @@ -141,9 +141,9 @@ </div> <!-- <el-dialog title="缂栬緫璁板綍鍐呭" :visible.sync="upDia" width="500px"> <div class="body"> - + </div> - + </el-dialog> --> </div> </template> @@ -158,8 +158,8 @@ list: [], process: {}, // handleClose:[], - checkTreeNode: { - id: 2, + checkTreeNode:{ + id:'', }, tableData: [], tableapi: [{ @@ -220,20 +220,22 @@ }) }, addMbom(data) { - this.$axios.post(this.$api.url.addMbom, data - // { - // name:this.tableapi.name, - // qualityTraceability:this.tableapi.qualityTraceability, - // specifications:this.tableapi.specifications, - // supplier:this.tableapi.supplier, - // techTemId:this.craftapi.id, - // unit:this.tableapi.unit, + this.$axios.post(this.$api.url.addMbom,data,{ + // params:{ + // techTemId:this.craftapi.id, + // mbomModelDto2List:[{ + // name:this.tableapi.name, + // qualityTraceability:this.tableapi.qualityTraceability, + // specifications:this.tableapi.specifications, + // supplier:this.tableapi.supplier, + // unit:this.tableapi.unit, + // }] // } - , { - headers: { - "Content-Type": "application/json" - } - }).then(res => { + }, { + headers: { + "Content-Type": "application/json" + } + }).then(res =>{ console.log(res); this.$message.success('娣诲姞瀹屾垚') this.selectAllMbom() @@ -261,23 +263,42 @@ }, //宸﹁竟 selectAllleft() { - this.$axios.get(this.$api.url.selectAllleft, { - params: { - type: this.typeselect, - message: this.search.technology - } - }).then(res => { - this.list = res.data; - console.log(this.list); - this.selectDataList() - this.$nextTick(() => { - this.$refs.tree.setCurrentKey(this.list[0].children[0].name) // 榛樿閫変腑鑺傜偣绗竴涓� - }) - }, { - headers: { - "Content-Type": "application/json" - } - }) + this.$axios.get(this.$api.url.selectAllleft,{ + params:{type:this.typeselect, + message:this.search.technology + } + }).then(res => { + this.list = res.data; + console.log(this.list); + this.selectDataList() + this.$nextTick(() => { + this.$refs.tree.setCurrentKey(this.list[0].children[0].name) // 榛樿閫変腑鑺傜偣绗竴涓� + }) + 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.selectAllMbomStart(name) + this.selectDataList(); + }, { + headers: { + "Content-Type": "application/json" + } + }) + }, + selectAllMbomStart(name) { + this.$axios.get(this.$api.url.selectAllMbom,{ + params:{id:name} + }).then(res => { + this.tableData = res.data; + console.log(this.tableData); + }, { + headers: { + "Content-Type": "application/json" + } + }) }, //鍙宠竟 selectAllMbom() { @@ -294,8 +315,9 @@ } }) }, - handleNodeClick(data) { - this.checkTreeNode = data + handleNodeClick(data){ + this.checkTreeNode = data + console.log(data); console.log(this.checkTreeNode.id); this.selectAllMbom() }, @@ -306,28 +328,24 @@ }) .catch(_ => {}); }, - event() { - this.dialogVisible = true + //鏂板 + event(){ + this.dialogVisible = true this.chooseTechFath() - }, - Addrow() { - if (this.tableapi == undefined) { - this.tableapi = new Array(); - } - let obj = []; - - this.tableapi.push(obj); + }, + //娣诲姞琛� + Addrow() { + if (this.tableapi == undefined) { + this.tableapi = new Array(); + } + let obj = []; + this.tableapi.push(obj); }, skipshow() { console.log('666'); let data = this.tableapi.at(-1) - // this.addMbom() data.techTemId = this.search.craft - // console.log(this.search.craft); - // console.log(data); - this.addMbom(data) - this.dialogVisible = false }, //delAllMbom 鎵归噺鍒犻櫎 @@ -485,4 +503,4 @@ height: 30px; border-radius: 2px; } -</style> \ No newline at end of file +</style> diff --git a/src/components/view/standard-table/technology.vue b/src/components/view/standard-table/technology.vue index 990a804..978a988 100644 --- a/src/components/view/standard-table/technology.vue +++ b/src/components/view/standard-table/technology.vue @@ -67,7 +67,6 @@ props:['tableData','tableType'], created() {}, mounted() { - }, methods: { // 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 diff --git a/src/components/view/technical.vue b/src/components/view/technical.vue index 753f2ac..424ee7e 100644 --- a/src/components/view/technical.vue +++ b/src/components/view/technical.vue @@ -4,7 +4,7 @@ <el-row> <el-col :span="12">鎶�鏈枃浠�</el-col> <el-col :span="12" style="text-align: right;"> - <el-button icon="el-icon-plus">鐢熸垚椤圭洰涔�</el-button> + <el-button icon="el-icon-plus">鐢熸垚椤圭洰涔�</el-button> </el-col> </el-row> </div> @@ -25,14 +25,14 @@ <el-input v-model="searchData.name" @input="query"></el-input> </el-form-item> <el-form-item label="缂栧埗鐘舵��:" > - <el-select v-model="searchData.type" placeholder="鍏ㄩ儴" style="width: 310px;"> + <el-select v-model="searchData.type" size="small" placeholder="鍏ㄩ儴" style="width: 250px;"> <el-option label="寰呯紪鍒�" :value="0"></el-option> <el-option label="宸茬紪鍒�" :value="1"></el-option> </el-select> </el-form-item> - <el-form-item > - <el-button plain @click="resetBtn">閲� 缃�</el-button> - <el-button @click="searchTechnical">鏌� 璇�</el-button> + <el-form-item> + <el-button plain @click="resetBtn" style="margin-left: 12px;">閲� 缃�</el-button> + <el-button @click="searchTechnical">鏌� 璇�</el-button> </el-form-item> </el-form> </div> @@ -335,6 +335,7 @@ background: #fff; padding: 24px 32px; } + .search-header .el-form-item__label{ padding: 0 30px 0 0; } @@ -416,3 +417,12 @@ } </style> +<style> + .technical .title *{ + font-size: 14px; + } + + .technical .search-header *{ + font-size: 14px; + } +</style> diff --git a/src/components/view/technology.vue b/src/components/view/technology.vue index 1693634..c0ad40a 100644 --- a/src/components/view/technology.vue +++ b/src/components/view/technology.vue @@ -602,7 +602,7 @@ } ) .then((res) => { - console.log(res); + this.$parent.removeAllTab() this.selectAllTechNam(); this.form = {}; }); @@ -640,17 +640,17 @@ }, //鎵归噺鍒犻櫎 delAllTech() { - console.log(this.delete); this.$axios.post(this.$api.url.delAllTech, { - ids: this.delete, + ids: this.delete }); + this.$parent.removeAllTab() }, //鍒犻櫎 delTechById() { - console.log(this.$api.url.delTechById, this.upData.id); this.$axios.post(this.$api.url.delTechById, { - id: this.upData.id, + id: this.upData.id }); + this.$parent.removeAllTab() }, //缂栬緫 writeTechById() { @@ -677,7 +677,7 @@ } ) .then((res) => { - console.log(res); + this.$parent.removeAllTab() }); }, @@ -789,7 +789,6 @@ return el.id; }); this.delete = cc.join(","); - console.log(this.delete); this.delAllTech(); this.$message.success("鍒犻櫎瀹屾垚"); }, diff --git a/src/main.js b/src/main.js index bf058d2..a3be056 100644 --- a/src/main.js +++ b/src/main.js @@ -23,7 +23,12 @@ Vue.use(qs); Vue.use(api); -const javaApi = 'http://192.168.0.24:8001/' +const javaApi = 'http://192.168.0.23:8001' +// localhost 127.0.0.1 + +// const javaApi = 'http://127.0.0.1' + + axios.defaults.baseURL = javaApi axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8' @@ -56,6 +61,7 @@ // console.log(config.data) } + return config }, function(error) { return Promise.reject(error) diff --git a/src/view/index.vue b/src/view/index.vue index 95ba3db..27712b5 100644 --- a/src/view/index.vue +++ b/src/view/index.vue @@ -91,7 +91,7 @@ } .left .box i { - font-size: 32px; + font-size: 24px; margin-bottom: 8px; } @@ -209,7 +209,6 @@ height: 100%; } </style> -<style></style> <template> <div class="all"> <div class="title"> @@ -260,7 +259,7 @@ </div> <div class="component_view"> <component class="com_index" v-for="(com, index) in tabs" :is="com.u" :key="upIndex + '|' + index" - v-show="com.k == tabActive"> + v-show="com.k == tabActive" @removeAllTab="removeAllTab"> </component> </div> </div> @@ -560,6 +559,7 @@ u: "index-index" }] }, + upTabActive(num) { this.tabActive = num; this.activeP = num; @@ -576,6 +576,9 @@ sessionStorage.clear(); localStorage.removeItem("autoenter"); this.$router.push("/enter"); + }, + removeAllTab(){ + this.upIndex++ } } }; -- Gitblit v1.9.3