From 8b50aeca95625137cbb09fe3968ac46284ca6f1d Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期五, 15 九月 2023 15:43:24 +0800
Subject: [PATCH] 	modified:   src/components/view/finishedProductInspectionAdd.vue 	modified:   src/components/view/finishedProductInspectionUp.vue 	modified:   src/components/view/processInspection.vue 	modified:   src/components/view/processInspectionUpdate.vue

---
 src/components/view/processInspectionUpdate.vue      |   75 +++++++++++++------------
 src/components/view/finishedProductInspectionUp.vue  |   17 ++++-
 src/components/view/finishedProductInspectionAdd.vue |   16 ++++-
 src/components/view/processInspection.vue            |   20 +++++-
 4 files changed, 80 insertions(+), 48 deletions(-)

diff --git a/src/components/view/finishedProductInspectionAdd.vue b/src/components/view/finishedProductInspectionAdd.vue
index 7c2948c..2f3df5c 100644
--- a/src/components/view/finishedProductInspectionAdd.vue
+++ b/src/components/view/finishedProductInspectionAdd.vue
@@ -253,8 +253,8 @@
                 name: null
             }, // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
             clickSelectDevice: {
-                index: "", // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
-                rpId: "" // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
+                index: null, // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+                rpId: null // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
             }
         };
     },
@@ -317,12 +317,22 @@
                 }
             }).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) {
-            scope.row.isSelectDevice = 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);
diff --git a/src/components/view/finishedProductInspectionUp.vue b/src/components/view/finishedProductInspectionUp.vue
index de810a2..f944def 100644
--- a/src/components/view/finishedProductInspectionUp.vue
+++ b/src/components/view/finishedProductInspectionUp.vue
@@ -268,8 +268,8 @@
                 name: null
             }, // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
             clickSelectDevice: {
-                index: "", // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
-                rpId: "" // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
+                index: null, // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+                rpId: null // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
             }
         };
     },
@@ -396,13 +396,22 @@
                 }
             }).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) {
-            scope.row.isSelectDevice = 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);
diff --git a/src/components/view/processInspection.vue b/src/components/view/processInspection.vue
index 3a1abf5..bfbfefa 100644
--- a/src/components/view/processInspection.vue
+++ b/src/components/view/processInspection.vue
@@ -334,8 +334,8 @@
         name: null
       }, // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
       clickSelectDevice: {
-        index: "", // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
-        rpId: "" // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
+        index: null, // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+        rpId: null // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
       }
     };
   },
@@ -393,13 +393,23 @@
         }
       }).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;
-      scope.row.isSelectDevice = 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)
@@ -532,7 +542,7 @@
       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.processInspectVo.technologyId = val.technologyId
       this.$axios.post(this.$api.url.processInspectAddProcess, {
         material: val.material,
         materialCode: val.materialCode,
@@ -583,7 +593,7 @@
               c.empiricalValueAddss.push("")
             }
             uName.push(c['username'])
-            c.isSelectDevice=false
+            c.isSelectDevice = false
             arr.push(c)
           })
         })
diff --git a/src/components/view/processInspectionUpdate.vue b/src/components/view/processInspectionUpdate.vue
index 7f9d4a5..1e40e84 100644
--- a/src/components/view/processInspectionUpdate.vue
+++ b/src/components/view/processInspectionUpdate.vue
@@ -103,7 +103,7 @@
             > -->
                 </el-col>
             </el-row>
-            <el-table border :data="inspectionItems" max-height="420" :span-method="handleSpanMethod"
+            <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>
@@ -123,14 +123,16 @@
                 </el-table-column>
                 <el-table-column prop="dname" label="璇曢獙璁惧" min-width="100">
                     <template slot-scope="scope">
-                        <el-button v-if="!scope.row.isSelectDevice" type="text" @click="clickTableSelect(scope)">{{
+                        <el-col>
+                            <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%;" onchange="clickNodeSure(scope.row)"
-                             v-model="filterText" placeholder="璇烽�夋嫨">
+                        <el-select @blur="blurNode(scope)" v-else-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>
+                        </el-col>
                     </template>
                 </el-table-column>
                 <el-table-column label="缁撹">
@@ -270,8 +272,8 @@
                 name: null
             }, // node鐐瑰嚮淇濆瓨褰撳墠鐐瑰嚮鏁版嵁
             clickSelectDevice: {
-                index: "", // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
-                rpId: "" // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
+                index: null, // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岀储寮�
+                rpId: null // 鐐瑰嚮閫夋嫨瀛樺偍褰撳墠琛岄」鐩甀d
             }
         };
     },
@@ -302,10 +304,10 @@
         this.getTableData()
     },
     methods: {
-        // blurNode(row){
-        //     console.log(1111);
-        //     row.isSelectDevice=false
-        // },
+        blurNode(scope){
+            // console.log(11);
+            // this.$set(this.inspectionItems[scope.$index],'isSelectDevice',false)
+        },
         escalation() {
             let arr = this.inspectionItems
             let bl = false
@@ -367,7 +369,7 @@
         },
         // 鑾峰彇璁惧鏍戝唴瀹�
         getOptions(row) {
-            this.filterText=0
+            this.filterText = 0
             this.$axios.get(this.$api.url.inspectionItemChooseDev, {
                 params: {
                     father: row.father,
@@ -376,6 +378,14 @@
                 }
             }).then(res => {
                 this.materialOptions = res.data;
+                if(this.materialOptions.length===1){
+                    this.$message({
+                    message: '璇ラ」鐩笅鍙湁涓�涓瘯楠岃澶囷紝鏃犻渶閫夋嫨锛�',
+                    type: 'warning'
+                });
+                    return
+                }
+                row.isSelectDevice = true
                 this.filterText = row.did
             });
         },
@@ -385,8 +395,11 @@
         },
         // 鐐瑰嚮琛ㄦ牸閫夋嫨瑙﹀彂
         clickTableSelect(scope) {
+            // return scope;
             // this.centerDialogVisible = true;
-            scope.row.isSelectDevice = 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);
@@ -399,29 +412,19 @@
             })[0]
             this.nodeData.id = select.id
             this.nodeData.name = select.device
-            if (this.detailId == null) {
-                this.inspectionItems[
-                    this.clickSelectDevice.index
-                ].did = this.nodeData.id;
-                this.inspectionItems[
-                    this.clickSelectDevice.index
-                ].dname = this.nodeData.name;
-                this.centerDialogVisible = false;
-            } else {
-                this.$axios
-                    .post(this.$api.url.inspectionItemUpdateDevByInsId, {
-                        id: this.clickSelectDevice.rpId,
-                        type: 1,
-                        devId: this.nodeData.id
-                    })
-                    .then(res => {
-                        row.isSelectDevice = false
-                        console.log("row",row);
-                        this.filterText=0
-                        this.getTableData()
-                        this.centerDialogVisible = false;
-                    });
-            }
+            this.$axios
+                .post(this.$api.url.inspectionItemUpdateDevByInsId, {
+                    id: this.clickSelectDevice.rpId,
+                    type: 1,
+                    devId: this.nodeData.id
+                })
+                .then(res => {
+                    row.isSelectDevice = false
+                    console.log("row", row);
+                    this.filterText = 0
+                    this.getTableData()
+                    this.centerDialogVisible = false;
+                });
         },
         changeState(row, index) {
             if (row.did != null && row.did != '') {
@@ -579,7 +582,7 @@
                         }
                         uName.push(c['username'])
                         c.isSelectDevice = false
-                        this.filterText=0
+                        this.filterText = 0
                         arr.push(c)
                     })
                 })

--
Gitblit v1.9.3