From 92688c42d8ac271f96821e54da6a2d440a23547a Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期五, 10 十一月 2023 17:07:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/quality/rawMaterial/rawMaterial-form.vue |  146 ++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 114 insertions(+), 32 deletions(-)

diff --git a/src/views/quality/rawMaterial/rawMaterial-form.vue b/src/views/quality/rawMaterial/rawMaterial-form.vue
index 1ab5234..7b80424 100644
--- a/src/views/quality/rawMaterial/rawMaterial-form.vue
+++ b/src/views/quality/rawMaterial/rawMaterial-form.vue
@@ -39,7 +39,7 @@
             </el-col>
             <el-col :span="6">
                 <el-form-item prop="formTime" label="鏉ユ枡鏃ユ湡">
-                <el-date-picker 
+                <el-date-picker
                     style="width:100%"
                     v-model="dataForm.formTime"
                     type="datetime"
@@ -98,7 +98,7 @@
       </div>
 
 
-      
+
       <div class="rawMaterial-detail">
         <el-row style="width:100%;z-index: 10;height:50px;">
             <el-col :span="18">妫�楠岄」鐩�</el-col>
@@ -114,16 +114,16 @@
         </el-row>
         <el-row style="width:100%;">
             <el-col :span="24">
-                <el-table 
-                :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}" 
+                <el-table
+                :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}"
                 :cell-style="{textAlign:'center'}"
                  ref="table"
-                :data="list" 
-                border 
+                :data="list"
+                border
                 style="width: 100%;"
                  height="400"
-                  row-key="iid" 
-                  default-expand-all 
+                  row-key="iid"
+                  default-expand-all
                   :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
                   <el-table-column type="index" label="搴忓彿" width="60">
                   </el-table-column>
@@ -146,7 +146,7 @@
                       <el-input :disabled="dataForm.id != null" v-model="scope.row.unit" placeholder="璇疯緭鍏ュ崟浣�"></el-input>
                     </div>
                     </template>
-                  
+
                   </el-table-column>
                   <el-table-column prop="required" label="鏍囧噯鍊�" width="260">
                     <template slot-scope="scope">
@@ -160,7 +160,7 @@
                     <template slot-scope="scope">
                       <div v-if="!scope.row.children">
                       <el-tooltip :disabled="scope.row.deviceId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�" placement="top-start">
-                          <el-select style="width:100%" allow-create filterable default-first-option
+                          <el-select   @blur="changeState(scope.row, index)" style="width:100%" allow-create filterable default-first-option
                           :disabled="scope.row.deviceId == null ||  (dataForm.id!=null&&resultVal!=null)"
                           v-model="scope.row.testValueList[index]"
                           placeholder="璇疯緭鍏ユ垨閫夋嫨妫�娴嬪��" @change="updateTestValue(scope.row,scope.$index)">
@@ -174,9 +174,9 @@
                   <el-table-column prop="deviceName" label="璇曢獙璁惧" min-width="260">
                     <template slot-scope="scope">
                       <div v-if="!scope.row.children">
-                        <el-select :disabled="dataForm!=null && resultVal!=null" style="width:100%" 
+                        <el-select :disabled="dataForm!=null && resultVal!=null" style="width:100%"
                         v-model="scope.row.deviceId" filterable @change="updateDevice(scope.row,scope.$index)">
-                            <el-option v-for="(item,index) in deviceList" 
+                            <el-option v-for="(item,index) in deviceList"
                             :key="index" :value="item.id" :label="item.code +'-'+ item.name"></el-option>
                         </el-select>
                       </div>
@@ -185,7 +185,7 @@
                   <el-table-column prop="note" label="妫�楠屾弿杩�" width="260" >
                     <template slot-scope="scope">
                       <div v-if="!scope.row.children">
-                        <el-input :disabled="scope.row.deviceId == null ||  (dataForm.id!=null&&resultVal!=null)" v-model="scope.row.note" placeholder="妫�楠屾弿杩�"></el-input>
+                        <el-input    @blur="changeState(scope.row, note)"  :disabled="scope.row.deviceId == null ||  (dataForm.id!=null&&resultVal!=null)" v-model="scope.row.note" placeholder="妫�楠屾弿杩�"></el-input>
                       </div>
                     </template>
                   </el-table-column>
@@ -211,7 +211,7 @@
             </el-col>
         </el-row>
       </div>
-      
+
 
       <div class="rawMaterial-result">
         <el-row>
@@ -220,7 +220,7 @@
         <el-row style="width:100%">
           <el-col :span="24">
             <el-table border height="90" :data="conclusionTable" ref="conclusion" v-model="conclusion"
-            :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}" 
+            :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}"
             :cell-style="{textAlign:'center'}">
                 <el-table-column prop="code" label="鐗╂枡缂栧彿"></el-table-column>
                 <el-table-column prop="name" label="鐗╂枡鍚嶇О"></el-table-column>
@@ -261,7 +261,7 @@
 </template>
 
 <script>
-import { 
+import {
   selectDevice,
   addRawInspects,
   getObj,
@@ -358,7 +358,6 @@
       },
       // 纭鍥炶皟
       selectPart(param, nodePart, index) {
-        console.log(param)
         if (typeof param !== 'undefined') {
           this.dataForm.code = param.code
           this.dataForm.name = param.name
@@ -382,17 +381,40 @@
         }
         this.showPart = true
       },
-      updateDevice(row,index){
-        if(this.dataForm.id != null){
-          updateDeviceById({deviceId:row.deviceId,rpId:row.rpId}).then(res=>{
-            this.list[index].testValue = ''
-            this.list[index].testState = null
-            this.list[index].testValueList = []
-          }).catch(error=>{
-            console.log(error)
-          })
-        }
-      },
+
+      updateDevice(row, index) {
+            let rowId=JSON.stringify(row.rpId)
+            updateDeviceById({ deviceId: row.deviceId, rpId: row.rpId }).then(res => {
+                this.list.forEach(obj => {
+                    obj.children.forEach(c=>{
+                        if(c.rpId==rowId){
+                        c.testValue = ''
+                        c.testState = null
+                        c.testValueList = []
+                        c.note=''
+                        }
+                    })
+                })
+            }).catch(error => {
+                console.log(error)
+            })
+        },
+
+      // updateDevice(row,index){
+      //   if(this.dataForm.id != null){
+      //     updateDeviceById({deviceId:row.deviceId,rpId:row.rpId}).then(res=>{
+      //       this.inspectionItems.forEach(obj => {
+      //       this.list[index-1].testValue = ''
+      //       this.list[index-1].testState = null
+      //       this.list[index-1].testValueList = []
+      //       this.list[index-1].note = ''
+
+      //     })
+      //     }).catch(error=>{
+      //       console.log(error)
+      //     })
+      //   }
+      // },
       checkTestState(){
           let resultVal = '1'
           this.list.forEach(item=>{
@@ -482,10 +504,10 @@
               name: null,
               unit: null,
               userName: null,
-              testValue: null,
+              testValue: '',
               testValueList: [],
-              note: null,
-              testState: null
+              note: '',
+              testState: ''
             })
           this.list.push(ele)
         }
@@ -501,9 +523,12 @@
           }
         }
       },
+
       updateTestValue(row,index){
         console.log(row);
         if(row.rpId == null){
+
+
           return
         }
         let val = row.testValueList.join(",");
@@ -524,6 +549,8 @@
           this.$message.error(error)
         })
       },
+
+
       init(){
         if(this.dataForm.id){
           getObj(this.dataForm.id).then(res=>{
@@ -554,9 +581,11 @@
                         userNameList.push(obj.userName)
                       }
                       let arr= []
+
                       if(obj.testValue){
                         arr = obj.testValue.split(",")
                       }
+
                       let o = {
                         deviceId: obj.deviceId,
                         deviceName: obj.deviceName,
@@ -575,7 +604,7 @@
                     })
                     this.list.push(ele)
                 }
-            })         
+            })
             this.conclusionTable = [{
               code: data.code,
               name: data.name,
@@ -589,6 +618,45 @@
           this.conclusionTable = []
         }
       },
+      changeState(row, index) {
+            console.log(row)
+            if (row.rpId != null && row.rpId != '') {
+              let val = ""
+                row.testValueList.forEach(e => {
+                  val += e + ","
+                })
+
+                // if (note === undefined || note === '' || note === null) {
+                //     return
+                // }
+                console.log(val)
+                val = val.slice(0, -1);
+                if (val === undefined || val === '' || val === null) {
+                    return
+                }
+
+
+                let obj = {
+                  deviceId: row.deviceId,
+                rpId: row.rpId,
+                testValue: val,
+                note: row.note
+
+                }
+                console.log(obj)
+                updateRawInsProduct(obj).then(res => {
+                    if (res.data.code == 0) {
+                        this.$message.success("鏇存柊鎴愬姛")
+                    } else {
+                        this.$message.error("鏇存柊澶辫触")
+                    }
+                    this.init()
+                })
+            }
+        },
+
+
+
       // 鍒犻櫎瀛愰」鐩�
       delChildren(row,index,isParent) {
         if(isParent){
@@ -626,7 +694,21 @@
         row.children.push(obj)
       },
       save(){
+
         let data = this.dataForm
+        console.log('--------',data);
+        console.log("-----",this.list);
+        this.list.forEach(item=>{
+          item.children.forEach(c=>{
+            let arr=c.testValueList
+            let val=''
+            arr.forEach(a=>{
+              val+=a+","
+            })
+            let end=val.substring(0,val.length-1)
+            c.testValue=end
+          })
+        })
         data.rawInsProducts = this.list
         addRawInspects(data).then(res=>{
             this.$message.success("淇濆瓨鎴愬姛")

--
Gitblit v1.9.3