From 0818becbf021341ce369d4f92b2ade3a2648a953 Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期五, 15 九月 2023 13:45:48 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.0.22:9001/r/mom-before --- src/components/view/standard.vue | 128 ++++++++++++++----------------- src/components/view/technology.vue | 6 + src/components/view/laboratoryManagement.vue | 56 +++++++------ src/components/view/record-content.vue | 42 +++++---- src/components/view/standard-table/target.vue | 3 5 files changed, 118 insertions(+), 117 deletions(-) diff --git a/src/components/view/laboratoryManagement.vue b/src/components/view/laboratoryManagement.vue index 8874507..c29f494 100644 --- a/src/components/view/laboratoryManagement.vue +++ b/src/components/view/laboratoryManagement.vue @@ -51,11 +51,11 @@ <el-row> <el-col :span="12"> <el-form-item label="璁惧缁�" prop="name"> - <!-- <el-select + <el-select v-model="ruleForm.equr" allow-create filterable - @blur="selectInput" + @create="" placeholder="璇烽�夋嫨璁惧缁�" > <el-option @@ -65,13 +65,13 @@ :value="list" > </el-option> - </el-select> --> - <el-autocomplete + </el-select> + <!-- <el-autocomplete class="inline-input" v-model="ruleForm.equr" :fetch-suggestions="querySearch" placeholder="璇疯緭鍏ュ唴瀹�" - ></el-autocomplete> + ></el-autocomplete> --> </el-form-item> </el-col> <el-col :span="12"> @@ -496,18 +496,18 @@ selectInput(){ }, - querySearch(queryString, cb) { - console.log(this.equaip); - var restaurants = this.equaip; - var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants; - // 璋冪敤 callback 杩斿洖寤鸿鍒楄〃鐨勬暟鎹� - cb(results); - }, - createFilter(queryString) { - return (restaurant) => { - return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0); - }; - }, + // querySearch(queryString, cb) { + // console.log(this.equaip); + // var restaurants = this.equaip; + // var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants; + // // 璋冪敤 callback 杩斿洖寤鸿鍒楄〃鐨勬暟鎹� + // cb(results); + // }, + // createFilter(queryString) { + // return (restaurant) => { + // return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0); + // }; + // }, staueValueChange() { this.selectDevice() // this.tableData = []; @@ -579,15 +579,17 @@ params:{ type:this.equip } - }).then(res =>{ - res.data.forEach(item=>{ - let obj={ - id: item, - value: item - } - this.equaip.push(obj) - console.log("璁惧缁�",this.equip); - }) + }) + .then(res =>{ + this.equaip = res.data + // res.data.forEach(item=>{ + // let obj={ + // id: item, + // value: item + // } + // this.equaip.push(obj) + console.log(this.equaip); + // }) }) }, RadioChange(val){ @@ -669,9 +671,9 @@ type:this.ruleForm.type, }, {headers: {"Content-Type": "application/json"} }).then(res =>{ + this.selectDevice() this.$message.success('鏂板鎴愬姛') this.ruleForm = {} - this.selectDevice() }) }, // tableDataApi() { diff --git a/src/components/view/record-content.vue b/src/components/view/record-content.vue index e727526..111f284 100644 --- a/src/components/view/record-content.vue +++ b/src/components/view/record-content.vue @@ -144,7 +144,7 @@ ref="ruleForm" width="35%"> <div> <el-form ref="form" :model="form" label-width="80px"> - <el-form-item label="绫诲瀷"> + <el-form-item label="绫诲瀷" prop="type"> <template> <el-select v-model="form.type" @change="edittype" placeholder="璇烽�夋嫨" style="width: 480px;"> @@ -155,7 +155,7 @@ </el-select> </template> </el-form-item> - <el-form-item label="宸ュ簭"> + <el-form-item label="宸ュ簭" prop="work"> <template> <el-select v-model="form.work" @change="workevent" @@ -169,7 +169,7 @@ </el-select> </template> </el-form-item> - <el-form-item label="宸ヨ壓鍚嶇О"> + <el-form-item label="宸ヨ壓鍚嶇О" prop="name"> <template> <el-select v-model="form.craft" placeholder="璇烽�夋嫨" style="width: 480px;"> <el-option @@ -181,13 +181,13 @@ </el-select> </template> </el-form-item> - <el-form-item label="璁板綍"> + <el-form-item label="璁板綍" prop="record"> <el-input v-model="form.record"></el-input> </el-form-item> <el-form-item label="澶囨敞"> <el-input v-model="form.remarks"></el-input> </el-form-item> - <el-form-item label="鍗曚綅"> + <el-form-item label="鍗曚綅" prop="unit"> <el-input v-model="form.unit"></el-input> </el-form-item> </el-form> @@ -260,7 +260,14 @@ <script> export default { data() { - return { + var checktype = (rule, value, callback) => { + if (!value) { + return callback(new Error('绫诲瀷涓嶈兘涓虹┖')); + }else{ + return callback + } + }; + return { search: { type: 0, technology: null @@ -278,7 +285,7 @@ unit:'', }, Rules:{ - type:{required:true,message:'绫诲瀷涓嶈兘涓虹┖',trigger:'change'}, + type:{validator:checktype,required:true,message:'绫诲瀷涓嶈兘涓虹┖',trigger:'change'}, work:{required:true,message:'宸ュ簭涓嶈兘涓虹┖',trigger:'change'}, name:{required:true,message:'宸ヨ壓涓嶈兘涓虹┖',trigger:'change'}, record:{required:true,message:'璁板綍涓嶈兘涓虹┖',trigger:'blur'}, @@ -367,22 +374,19 @@ this.selectjilu() }) }, - add() { - this.$refs[formName].validate((valid) => { - if (valid) { - alert('submit!'); - } else { - console.log('error submit!!'); - return false; - } - }); + add(formName) { this.dialogVisible = false this.addRecord() + // this.$refs[formName].validate((valid) => { + // if (valid) { + // alert('submit!'); + // } else { + // console.log('error submit!!'); + // return false; + // } + // }); this.form = {}; }, - resetForm(formName) { - this.$refs[formName].resetFields(); - }, query() { this.selectAllleft() }, diff --git a/src/components/view/standard-table/target.vue b/src/components/view/standard-table/target.vue index 30d27b7..85e0ecf 100644 --- a/src/components/view/standard-table/target.vue +++ b/src/components/view/standard-table/target.vue @@ -79,6 +79,7 @@ }, //閫夋嫨鏌愯 selectTr(selection, row) { + console.log("sss---",selection,row); this.$set(row, "isChecked", !row.isChecked); this.$nextTick(() => { this.isAllSelect = row.isChecked; @@ -87,6 +88,7 @@ }, //閫掑綊瀛愮骇 toggleSelect(data, flag, type) { + console.log("閫掑綊瀛愮骇---",data,flag,type); if (type === "all") { if (data.length > 0) { data.forEach((item) => { @@ -108,6 +110,7 @@ }, //鏀瑰彉閫変腑 toggleSelection(row, flag) { + console.log("鏀瑰彉閫変腑---",row,flag); this.$set(row, "isChecked", flag); this.$nextTick(() => { if (flag) { diff --git a/src/components/view/standard.vue b/src/components/view/standard.vue index abef430..f3355c9 100644 --- a/src/components/view/standard.vue +++ b/src/components/view/standard.vue @@ -13,7 +13,7 @@ </div> <div class="thing"> <div class="left"> - <el-row :gutter="5" style="position: fixed;top: 148px;z-index: 1;"> + <el-row :gutter="5" > <el-col :span="21"> <el-input v-model="search" suffix-icon="el-icon-search" placeholder="璇疯緭鍏ユ悳绱㈠唴瀹�" size="small" clearable></el-input> </el-col> @@ -44,17 +44,20 @@ <el-option :value="2" label="鐗╂枡娓呭崟"></el-option> <el-option :value="3" label="鐢熶骇宸ヨ壓"></el-option> </el-select> - <span>{{ tableType == 1 ? '椤圭洰锛�' : '宸ヨ壓鍚嶇О锛�' }}</span> - <el-input v-model="searchName" size="small" placeholder="璇疯緭鍏�" style="width: 224px;margin-right: 50px;" - clearable></el-input> <span>鐗堟湰锛�</span> - <el-select v-model="version2" @change="verevent" size="small" style="width: 280px;margin-right: 10px;" placeholder="璇烽�夋嫨"> - <el-option v-for="item in version" :key="item" :label="item" :value="item"> + <el-select v-model="versionVal" @change="verevent" size="small" style="width: 280px;margin-right: 52px;" placeholder="璇烽�夋嫨"> + <el-option v-for="(item,index) in versionData" :key="index" :label="item.label" :value="item.value"> </el-option> </el-select> - <el-button size="mini" @click="() => { searchName = ''; selectProductTableData() }"><span>閲� 缃�</span></el-button> - <el-button size="mini" type="primary" style="background: #004EA2;" @click="selectProductTableData"><span>鏌� - 璇�</span></el-button> + <span>{{ tableType == 1 ? '椤圭洰锛�' : '宸ヨ壓鍚嶇О锛�' }}</span> + <el-input v-model="searchName" size="small" placeholder="璇疯緭鍏�" style="width: 224px;margin-right:10px" + clearable></el-input> + <el-button size="mini" @click="() => { searchName = ''; selectAll() }"> + <span>閲� 缃�</span> + </el-button> + <el-button size="mini" type="primary" style="background: #004EA2;" @click="selectAll"> + <span>鏌� 璇�</span> + </el-button> </div> <div class="contentTable" v-if="this.typeselect == 0"> @@ -485,7 +488,6 @@ formTypeOptions: null, typeselect: 0, returntree: {id:28}, - version: {}, leftAdd:{ type: [], father: null, @@ -493,9 +495,8 @@ name: null, specifications: null }, - version2: {}, - verdata: {}, - character: 0, + versionData: [], + versionVal: null, restaurants: [], bomName:[], bomStandard:[], @@ -719,7 +720,7 @@ }).then(() => { this.$axios.post(this.$api.url.addVersion,{ specificationsId : this.returntree.id, - version : this.version2.substring(1,2), + version : this.versionVal, }).then(res=>{ this.selectVersion(); this.$message.success(res.message); @@ -736,6 +737,7 @@ let obj = {} if(type == 0){ obj = { + version : this.versionVal, specificationsId: Number.parseInt(this.returntree.id), deviceGroup: this.technologyForm.deviceGroup, father: this.technologyForm.tefather, @@ -744,11 +746,14 @@ } this.submitBomAdd(this.$api.url.addTechnology,obj); }else if(type == 1){ - this.submitBomAdd(this.$api.url.addProductByStandard,this.targetForm); + obj = this.targetForm; + obj.version = this.versionVal; + this.submitBomAdd(this.$api.url.addProductByStandard,obj); }else if(type == 2){ obj = { mbomDto2List:this.materialForm.tableList, - technologyId:this.materialForm.mtechnologyId + technologyId:this.materialForm.mtechnologyId, + version : this.versionVal } this.submitBomAdd(this.$api.url.addMBomByStandard,obj); }else if(type == 3){ @@ -758,12 +763,17 @@ product: form.product, productFather: form.productFather, technologyId: form.protechnologyId, - unit: form.unit + unit: form.unit, + version : this.versionVal } this.submitBomAdd(this.$api.url.addTechniqueByStandard,obj); }else{ return } + this.technologyVisible = false; + this.targetVisible = false; + this.materialVisible = false; + this.productVisible = false; } }) }, @@ -777,10 +787,6 @@ }).catch(error=>{ this.$message.error(error.message); }) - this.technologyVisible = false; - this.targetVisible = false; - this.materialVisible = false; - this.productVisible = false; }, //娓呯┖鏂板bom琛ㄥ崟 clearBomAddModel(){ @@ -835,7 +841,10 @@ //鐗╂枡娓呭崟--鑾峰彇宸ュ簭锛屽伐鑹哄垪琛� getMaterialFormList(){ this.$axios.get(this.$api.url.chooseTechByMBom,{ - params:{specificationsId : this.returntree.id} + params:{ + specificationsId : this.returntree.id, + version : this.versionVal + } }).then(res=>{ this.materialFormList = res.data; }).catch(error=>{ @@ -851,7 +860,10 @@ //鎶�鏈寚鏍�--鑾峰彇宸ュ簭锛屽伐鑹哄垪琛� getTargetFormList(){ this.$axios.get(this.$api.url.chooseTechByStandard,{ - params:{specificationsId : this.returntree.id} + params:{ + specificationsId : this.returntree.id, + version : this.versionVal + } }).then(res=>{ this.targetFormList = res.data; }).catch(error=>{ @@ -861,7 +873,10 @@ //1.鐢熶骇宸ヨ壓-->閫夋嫨宸ュ簭,宸ヨ壓 getProductFormList(){ this.$axios.get(this.$api.url.chooseTechByProduct,{ - params:{specificationsId : this.returntree.id} + params:{ + specificationsId : this.returntree.id, + version : this.versionVal + } }).then(res=>{ this.productFormList = res.data; }).catch(error=>{ @@ -913,7 +928,10 @@ //宸ヨ壓璺嚎--鑾峰彇宸ュ簭鍒楄〃 getFatherList(){ this.$axios.get(this.$api.url.chooseFather,{ - params:{specificationsId : this.returntree.id} + params:{ + specificationsId : this.returntree.id, + version: this.versionVal + } }).then(res=>{ this.fatherList = res.data; }).catch(error=>{ @@ -1009,10 +1027,8 @@ }, TYPE(val) {//绫诲瀷.鏁版嵁 - // console.log(val); this.typeselect = val - - // console.log(this.typeselect); + this.searchName = ''; this.selectVersion() }, handleNodeClick(val) {//鏍戠殑鍊� @@ -1022,23 +1038,24 @@ } }, async selectVersion() {//鐗堟湰 - let v=await this.$axios.get(this.$api.url.selectVersion, { + this.versionData = []; + await this.$axios.get(this.$api.url.selectVersion, { params: { specificationsId: this.returntree.id, type: this.typeselect, } }).then(res => { - this.verdata = res.data - this.version = this.verdata.map(el => { - return el = `v${el}` - }) - // console.log("鐗堟湰"); - return this.verdata[0] + //鍒濆鍖栫増鏈�夋嫨鍒楄〃 + if(res.data != null){ + res.data.forEach(item=>{ + this.versionData.push({ + label:"v"+item, + value:item + }) + this.versionVal = res.data[0]; + }) + } }) - this.character=v - if(this.character != undefined){ - this.version2="v"+v - } this.selectAll() }, //鍙充晶鏁版嵁 @@ -1047,7 +1064,8 @@ params: { specificationsId: this.returntree.id,//tree鐨勭偣鍑诲弽棣� type: this.typeselect,//绫诲瀷 - version: this.character,//鐗堟湰 + version: this.versionVal,//鐗堟湰 + message: this.searchName//鎼滅储鏉′欢 } }).then(res => { let arr = res.data; @@ -1059,21 +1077,14 @@ let arr = data; for(var i=0;i<arr.length;i++){ arr[i].rowId = Math.random(); - arr[i].indents = 1; if(arr[i].children != undefined){ this.formatData(arr[i].children); } } }, verevent(val) { - // console.log(val); - let cc = val.replace('v', '') - // console.log(cc); - this.character = cc + this.versionVal = val this.selectAll() - // const { v, ...newObj } = val; - // delete newObj.v - // console.log(newObj); }, //浜旂骇鏍� selectMaterialTree() { @@ -1109,7 +1120,6 @@ }) } } - console.log(this.list); this.selectDataList() // 榛樿绗竴涓簲绾ц妭鐐规悳绱紝鏂板閰嶇疆椤� const treeOptions = JSON.parse(JSON.stringify(this.list)); @@ -1157,26 +1167,6 @@ }, nodeClose(data, node, el) { $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder') - }, - async selectProductTableData() { - switch (this.tableType) { - case 0: - const { data: technologyList } = await this.$axios.get(this.$api.url.selectTechnologyByMaterial, { params: { specificationId: this.checkTreeNode.id, technologyName: this.searchName } }) - this.tableData = technologyList - break; - case 1: - const { data: productList } = await this.$axios.get(this.$api.url.selectProductByMaterial, { params: { specifications: this.checkTreeNode.id, project: this.searchName } }) - productList.forEach((item, index) => { - item.name = item.father - item.index = index + 1 - item.id = item.father - if (item.children.length === 1) { - productList[index] = { ...item.children[0], index: index + 1, name: item.father } - } - }) - this.tableData = productList - break; - } }, // 閫掑綊鏇存敼娣诲姞绾ц仈鎵�闇�灞炴�� replaceProp(arr){ diff --git a/src/components/view/technology.vue b/src/components/view/technology.vue index 1026936..f7870aa 100644 --- a/src/components/view/technology.vue +++ b/src/components/view/technology.vue @@ -371,6 +371,7 @@ allow-create filterable @create="" + placeholder="璇烽�夋嫨" style="width: 480px" > @@ -620,7 +621,6 @@ this.$axios .post( this.$api.url.addTechTemp, - { deviceGroup: this.form.deviceGroup, // elementId: JSON.stringify(this.form.elementId).replace("[","").replace("]",""), @@ -658,7 +658,9 @@ // console.log(this.equipment); }); }, - + // onTypeBlur(e) { + // if (e.target.value) { + // this.type = e.target.value;}}, //宸ュ簭 chooseTech() { this.$axios.get(this.$api.url.chooseTech,{ -- Gitblit v1.9.3