From 039d01c3ee6217e18ef3bcaec263fd2ad59e6f68 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 20 九月 2023 16:19:51 +0800
Subject: [PATCH] modified: src/components/view/equipmentmaintain.vue modified: src/components/view/standard-table/material.vue modified: src/components/view/standard-table/product.vue modified: src/components/view/standard-table/target.vue modified: src/components/view/standard-table/technology.vue
---
src/components/view/processInspection.vue | 236 ++++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 144 insertions(+), 92 deletions(-)
diff --git a/src/components/view/processInspection.vue b/src/components/view/processInspection.vue
index d352b24..bfbfefa 100644
--- a/src/components/view/processInspection.vue
+++ b/src/components/view/processInspection.vue
@@ -1,6 +1,6 @@
<template>
<div class="content-main">
- <div v-if="!showAddPage&&!showUp&&!showLook" class="rawPage">
+ <div v-if="!showAddPage && !showUp && !showLook" class="rawPage">
<div class="title">
<el-row>
<el-col :span="12">杩囩▼妫�楠�</el-col>
@@ -58,8 +58,9 @@
<el-table-column label="鎿嶄綔" min-width="80">
<template slot-scope="scope">
<el-button type="text" size="small" @click="handleClick(scope.row)" style="margin-left: 0;">璇︽儏</el-button>
- <el-button type="text" size="small" >鏌ョ湅</el-button>
- <el-button v-if="scope.row.result == null" type="text" size="small" style="margin-left: 0;" @click="updateInsInfo(scope.row)">缂栬緫</el-button>
+ <el-button type="text" size="small">鏌ョ湅</el-button>
+ <el-button v-if="scope.row.result == null" type="text" size="small" style="margin-left: 0;"
+ @click="updateInsInfo(scope.row)">缂栬緫</el-button>
</template>
</el-table-column>
</el-table>
@@ -79,9 +80,9 @@
<el-col :span="12">鏂板杩囩▼妫�楠屽崟</el-col>
<el-col :span="12" style="text-align: right;">
<!-- 鐐瑰嚮杩斿洖锛屽綋鍓嶉〉闈㈠�间负false -->
- <el-button type="primary" size="mini" style="background: #004EA2; "
- icon="el-icon-circle-plus-outline">鏂板</el-button>
- <el-button @click="showAddPage = false" type="primary" size="mini" icon="el-icon-back"
+ <!-- <el-button type="primary" size="mini" style="background: #004EA2; "
+ icon="el-icon-circle-plus-outline">鏂板</el-button> -->
+ <el-button @click="combackIndex" type="primary" size="mini" icon="el-icon-back"
style="background: #004EA2; ">杩斿洖</el-button>
</el-col>
</el-row>
@@ -151,7 +152,7 @@
</el-form-item>
</el-col>
<el-col :span="10" style="display: flex;justify-content: end;">
- <el-button type="primary" :disabled="isAddProject" @click="addTestProjevt">鐢熸垚妫�楠岄」鐩�</el-button>
+ <el-button type="primary" :disabled="isAddProject" @click="addTestProjevt">鐢熸垚妫�楠岄」鐩�</el-button>
</el-col>
</el-row>
</div>
@@ -171,8 +172,8 @@
> -->
</el-col>
</el-row>
- <el-table :data="inspectionItems" max-height="420" :span-method="handleSpanMethod" height="calc(100vh - 550px)"
- style="width: 100%">
+ <el-table border :data="inspectionItems" max-height="420" :span-method="handleSpanMethod"
+ height="calc(100vh - 550px)" style="width: 100%">
<el-table-column type="index" label="搴忓彿" width="60"></el-table-column>
<el-table-column label="椤圭洰" prop="father"></el-table-column>
<el-table-column prop="name" label="鎸囨爣"></el-table-column>
@@ -191,9 +192,14 @@
</el-table-column>
<el-table-column prop="dname" label="璇曢獙璁惧" min-width="100">
<template slot-scope="scope">
- <el-button type="text" @click="clickTableSelect(scope)">{{
+ <el-button v-if="!scope.row.isSelectDevice" type="text" @click="clickTableSelect(scope)">{{
scope.row.dname == null ? "璇烽�夋嫨" : scope.row.dname
}}</el-button>
+ <el-select v-if="scope.row.isSelectDevice" style="width: 100%;" @change="clickNodeSure(scope.row)"
+ v-model="filterText" placeholder="璇烽�夋嫨">
+ <el-option v-for="item in materialOptions" :key="item.id" :label="item.device" :value="item.id">
+ </el-option>
+ </el-select>
</template>
</el-table-column>
<el-table-column label="缁撹">
@@ -222,29 +228,18 @@
</div>
<el-dialog title="璇烽�夋嫨璁惧" :visible.sync="centerDialogVisible" width="20%">
<div class="div_device_dialog">
- <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="filterText" style="margin-bottom: 6px;">
- </el-input>
- <el-tree class="filter-tree" :data="materialOptions" :props="defaultProps" default-expand-all highlight-current
- @node-click="nodeClick" :filter-node-method="filterNode" ref="tree">
- <div class="custom-tree-node" slot-scope="{ data }">
- <span><i :class="`node_i ${data.children ? 'el-icon-folder-opened' : 'el-icon-tickets'
- }`
- "></i>
- {{ data.name }}</span>
- </div>
- </el-tree>
+ <el-select style="width: 100%;" @change="clickNodeSure()" v-model="filterText" placeholder="璇烽�夋嫨">
+ <el-option v-for="item in materialOptions" :key="item.id" :label="item.device" :value="item.id">
+ </el-option>
+ </el-select>
</div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="centerDialogVisible = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="clickNodeSure()">纭� 瀹�</el-button>
- </span>
</el-dialog>
</div>
<div class="newPage" v-if="showUp">
- <processInspectionUpdate :rowInfo="rowInfp"/>
+ <processInspectionUpdate :rowInfo="rowInfp" />
</div>
<div class="newPage" v-if="showLook">
- <processInspectionLook :rowInfo="rowInfp"/>
+ <processInspectionLook :rowInfo="rowInfp" />
</div>
</div>
</template>
@@ -253,14 +248,14 @@
import processInspectionUpdate from '../view/processInspectionUpdate.vue'
import processInspectionLook from '../view/processInspectionLook.vue'
export default {
- components: { processInspectionUpdate,processInspectionLook },
+ components: { processInspectionUpdate, processInspectionLook },
data() {
return {
showUp: false,
- isAddProject:false,
+ isAddProject: false,
showLook: false,
detailId: 28,
- rowInfp:{},
+ rowInfp: {},
search: {
countSize: 10,
pageSize: 1,
@@ -334,42 +329,49 @@
children: "children",
label: "name"
},
- nodeData: "", // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
+ nodeData: {
+ id: 0,
+ name: null
+ }, // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
clickSelectDevice: {
- index: "", // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
- rpId: "" // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
+ index: null, // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+ rpId: null // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
}
};
},
watch: {
- filterText(val) {
- this.$refs.tree.filter(val);
- }
+ // filterText(val) {
+ // this.$refs.tree.filter(val);
+ // }
},
mounted() {
// this.getTableData()
- this.getOptions();
+ // this.getOptions();
},
methods: {
- handleClick(row){
- this.rowInfp=row
- this.showLook=true
+ handleClick(row) {
+ this.rowInfp = row
+ this.showLook = true
},
- updateInsInfo(row){
- this.rowInfp=row
- this.showUp=true
+ combackIndex() {
+ this.showAddPage = false
+ this.defaultInitializationTable()
},
- combackMain(val){
- this.showUp=false
- this.showLook=false
+ updateInsInfo(row) {
+ this.rowInfp = row
+ this.showUp = true
+ },
+ combackMain(val) {
+ this.showUp = false
+ this.showLook = false
this.defaultInitializationTable(); // 鍒濆鍖栬〃鏍兼暟鎹�
- if(val){
- this.$parent.removeAllTab()
- }
+ if (val) {
+ this.$parent.removeAllTab()
+ }
},
- searchPro(){
- this.search.countSize=this.pageSize
- this.search.pageSize=this.currentPage
+ searchPro() {
+ this.search.countSize = this.pageSize
+ this.search.pageSize = this.currentPage
this.defaultInitializationTable()
},
// 鐐瑰嚮璁惧鏍戜繚瀛樼偣鍑昏褰�
@@ -382,19 +384,43 @@
return data.name.indexOf(value) !== -1;
},
// 鑾峰彇璁惧鏍戝唴瀹�
- getOptions() {
- this.$axios.get(this.$api.url.rawSelectDevice).then(res => {
+ getOptions(row) {
+ this.$axios.get(this.$api.url.inspectionItemChooseDev, {
+ params: {
+ father: row.father,
+ name: row.name,
+ technologyId: this.processInspectVo.technologyId
+ }
+ }).then(res => {
this.materialOptions = res.data;
+ if (this.materialOptions.length === 1) {
+ this.$message({
+ message: '璇ラ」鐩笅鍙湁涓�涓瘯楠岃澶囷紝鏃犻渶閫夋嫨锛�',
+ type: 'warning'
+ });
+ return
+ }
+ row.isSelectDevice = true
+ this.filterText = row.did
});
},
// 鐐瑰嚮琛ㄦ牸閫夋嫨瑙﹀彂
clickTableSelect(scope) {
- this.centerDialogVisible = true;
+ // this.centerDialogVisible = true;
+ if (this.clickSelectDevice.index != null) {
+ this.$set(this.inspectionItems[this.clickSelectDevice.index], 'isSelectDevice', false)
+ }
this.clickSelectDevice.index = scope.$index;
this.clickSelectDevice.rpId = scope.row.id;
+ this.getOptions(scope.row)
},
// 鐐瑰嚮鏍戦噷闈㈢殑纭畾
clickNodeSure() {
+ let select = this.materialOptions.filter(item => {
+ return item.id === this.filterText
+ })[0]
+ this.nodeData.id = select.id
+ this.nodeData.name = select.device
if (this.detailId == null) {
this.inspectionItems[
this.clickSelectDevice.index
@@ -417,28 +443,50 @@
}
},
changeState(row, index) {
- console.log(row);
- if(row.did!=null&&row.did!=''){
- let str=""
- row.empiricalValueAddss.forEach(e=>{
- str+=e+","
+ if (row.did != null && row.did != '') {
+ // let val = row.empiricalValueAddss.filter(item => {
+ // return item != '' && item != null
+ // })
+ // let eq = val.filter(item => {
+ // return /^[^><=]/.test(item)
+ // })
+ // if (eq.length > 0) {
+ // this.$message({
+ // message: "妫�娴嬪�糩" + eq + "]鏍煎紡棣栦綅搴斿寘鍚�>,<鎴栬��=",
+ // type: 'warning'
+ // });
+ // return
+ // }
+ let str = ""
+ row.empiricalValueAddss.forEach(e => {
+ str += e + ","
})
+ if (str.slice(0, -1) === '' || str.slice(0, -1) === null || str.slice(0, -1) === undefined) {
+ return
+ }
this.$axios.post(this.$api.url.inspectionItemlose_focus_update, {
deviceId: row.did,
inspectionItemId: row.id,
- inspectionValue: str.slice(0,-1)
- }, {
- headers: { "Content-Type": "application/json" }
- }).then(res => {
- row.result=res.data.result
- row.username=res.data.username
- })
- }else{
- this.$message({
+ inspectionValue: str.slice(0, -1)
+ }, {
+ headers: { "Content-Type": "application/json" }
+ }).then(res => {
+ if (res.message === '鍐呮帶鍊艰緭鍏ユ牸寮忔湁闂!') {
+ this.$message({
+ message: res.message,
+ type: 'warning'
+ });
+ return
+ }
+ row.result = res.data.result
+ row.username = res.data.username
+ })
+ } else {
+ this.$message({
message: '璇烽�夋嫨鎷╄澶囷紒',
type: 'warning'
});
- }
+ }
},
// 姣忛〉鏉℃暟鏀瑰彉鏃惰Е鍙� 閫夋嫨涓�椤垫樉绀哄灏戣
handleSizeChange(val) {
@@ -491,10 +539,10 @@
this.optionTechnology = working.children
},
addTestProjevt() {
- this.isAddProject=true
let val = JSON.parse(JSON.stringify(this.processInspectVo))
val.techname = this.processInspectVo.techname.split("-")[1]
val.technologyId = this.processInspectVo.techname.split("-")[0]
+ this.processInspectVo.technologyId = val.technologyId
this.$axios.post(this.$api.url.processInspectAddProcess, {
material: val.material,
materialCode: val.materialCode,
@@ -503,7 +551,7 @@
specificationsModel: val.specificationsModel,
techfather: val.techfather,
techname: val.techname,
- technologyId: val.technologyId,
+ techId: Number(val.technologyId),
unit: val.unit
}, {
headers: { "Content-Type": "application/json" }
@@ -515,9 +563,10 @@
});
return
}
+ this.isAddProject = true
this.detailId = res.data
- this.inspectionResultForm[0].id=val.materialCode
- this.inspectionResultForm[0].name=val.material
+ this.inspectionResultForm[0].id = val.materialCode
+ this.inspectionResultForm[0].name = val.material
this.getTableData()
})
},
@@ -531,7 +580,7 @@
this.inspectionItems = res.data
let arr = []
let val = JSON.parse(JSON.stringify(this.inspectionItems))
- const uName=[]
+ const uName = []
//杞垚涓�缁存暟缁�
val.forEach(l => {
let father = l.father
@@ -544,6 +593,7 @@
c.empiricalValueAddss.push("")
}
uName.push(c['username'])
+ c.isSelectDevice = false
arr.push(c)
})
})
@@ -551,23 +601,23 @@
let arrSort = JSON.parse(JSON.stringify(arr))
//鏍规嵁闆嗗悎瀵硅薄鏁扮粍闀垮害鎺掑簭
arrSort.sort((a, b) => {
- if (a.empiricalValueAddss.length < b.empiricalValueAddss.length) {
- return -1; // a鎺掑湪b鍓嶉潰
- } else if (a.empiricalValueAddss.length > b.empiricalValueAddss.length) {
- return 1; // a鎺掑湪b鍚庨潰
- } else {
- return 0; // 淇濇寔鐩稿椤哄簭涓嶅彉
- }
- });
- // console.log(arrSort);
- console.log(uName);
- let name=[...new Set(uName)].filter(item => item !== null);
- let rname=''
- name.forEach(m=>{
- rname+=m+","
- })
- this.inspectionResultForm[0].inspecter=rname.slice(0,-1)
- this.empiricalValueAdd=arrSort[arrSort.length-1].empiricalValueAddss.length
+ if (a.empiricalValueAddss.length < b.empiricalValueAddss.length) {
+ return -1; // a鎺掑湪b鍓嶉潰
+ } else if (a.empiricalValueAddss.length > b.empiricalValueAddss.length) {
+ return 1; // a鎺掑湪b鍚庨潰
+ } else {
+ return 0; // 淇濇寔鐩稿椤哄簭涓嶅彉
+ }
+ });
+ // console.log(arrSort);
+ console.log(uName);
+ let name = [...new Set(uName)].filter(item => item !== null);
+ let rname = ''
+ name.forEach(m => {
+ rname += m + ","
+ })
+ this.inspectionResultForm[0].inspecter = rname.slice(0, -1)
+ this.empiricalValueAdd = arrSort[arrSort.length - 1].empiricalValueAddss.length
this.mergeTable(arr)
})
},
@@ -665,10 +715,12 @@
.node_i {
color: orange;
}
+
.div_device_dialog {
min-height: 400px;
overflow: auto;
}
+
.nav {
display: flex;
padding: 20px 20px;
--
Gitblit v1.9.3