From 98810eb52a46ec72f2bc3d89be8ea42c33d55c5f Mon Sep 17 00:00:00 2001
From: gaoluyang <gaoluyang@rengu.cc>
Date: 星期三, 17 七月 2024 10:14:49 +0800
Subject: [PATCH] 日工时管理的辅助工时的录入数据,完成一个数据的录入后页面不跳转,但是弹窗的内容清空继续新增录入

---
 src/components/do/b1-ins-order/add.vue |  186 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 168 insertions(+), 18 deletions(-)

diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue
index 20b16e4..623669a 100644
--- a/src/components/do/b1-ins-order/add.vue
+++ b/src/components/do/b1-ins-order/add.vue
@@ -458,6 +458,8 @@
             </div>
           </template>
         </el-table-column>
+        <el-table-column prop="inspectionItemClass" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被" min-width="140" show-overflow-tooltip></el-table-column>
+        <el-table-column prop="inspectionItemClassEn" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被(EN)" min-width="140" show-overflow-tooltip></el-table-column>
         <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip :filters="filters"
           :filter-method="filterHandler"></el-table-column>
         <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="120" show-overflow-tooltip>
@@ -802,7 +804,7 @@
         </div>
         <div class="temperatureList">
           <div class="temperatureListTitle">
-            <span>娓╁害鐐归泦鍚�(璇锋寜鐓ч『搴忓~鍐欙紝20鈩冨繀椤讳负棣栦綅)</span>
+            <span>娓╁害鐐归泦鍚�</span>
             <span>
               <el-button type="primary" size="mini" @click="addTemperatureData">鏂板</el-button>
               <el-button size="mini" @click="deleteTemperatureData">鍒犻櫎</el-button>
@@ -834,7 +836,23 @@
         </div>
       </div>
       <span slot="footer" class="dialog-footer">
+        <el-button @click="cleanSpliceData">鍙栨秷</el-button>
         <el-button type="primary" @click="spliceData">淇濆瓨</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog :title="temperatureTitle" :visible.sync="temperatureShow" width="260px" :before-close="temperatureShowClose" :show-close="false">
+      <div>
+        <div v-if="isShowInput" style="margin-bottom: 6px">
+          <span>寰幆娆℃暟:</span>
+          <el-input size="small" type="number" v-model="temperatureTestNum" style="width: 120px"></el-input>
+        </div>
+        <el-checkbox-group v-model="temperatureTest" @change="handleTemperatureTestChange" style="display: flex;flex-direction: column;">
+          <el-checkbox v-for="item in temperatureList" :label="item" :key="item" style="margin-bottom: 6px">{{item}}</el-checkbox>
+        </el-checkbox-group>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="cleanTemperatureTest">鍙栨秷</el-button>
+        <el-button type="primary" @click="spliceTemperatureTest">淇濆瓨</el-button>
       </span>
     </el-dialog>
   </div>
@@ -1021,10 +1039,18 @@
         temperatureDataList: [
           {label: '<', value: '<'},
           {label: '鈮�', value: '鈮�'},
-          {label: '锛�', value: '锛�'},
+          {label: '=', value: '='},
           {label: '鈮�', value: '鈮�'},
-          {label: '锛�', value: '锛�'},
-        ]
+          {label: '>', value: '>'},
+        ],
+        temperatureShow: false, // 娓╁崌璇曢獙妫�楠岄」寮规
+        temperatureTest: [],
+        temperatureList: [],
+        temperatureEngList: [],
+        temperatureTitle: '',
+        temperatureTestNum: '',
+        isShowInput: false,
+        temId: ''
       }
     },
     watch: {
@@ -1112,6 +1138,9 @@
               throw this.$message.error('璇峰~鍐欏畬鏁存暟鎹�')
             }
           })
+          if (!o.temperatureData.some(item => item.temperaturePoint == '20')) {
+            throw this.$message.error(`${o.value + '娉㈤暱娌℃湁閰嶇疆20鈩冩俯搴︾偣'}`)
+          }
         })
         let entrustTime = this.circulateForm.entrustTime
         let entrustNum = this.circulateForm.entrustNum
@@ -1123,7 +1152,7 @@
           o.temperatureData.unshift({temperaturePoint: 20})
           o.temperatureData.forEach(t => {
             if (!t.askSymbol) {
-                  const askObj = t.temperaturePoint + '鈩�' + ',' + o.value + ',' + null
+                  const askObj = t.temperaturePoint + '鈩�(甯告俯)' + ',' + o.value + ',' + null
                   askArr.push(askObj)
                 } else {
                   const askObj = t.temperaturePoint + '鈩�' + ',' + o.value + ',' + t.askSymbol + t.askNum
@@ -1149,7 +1178,7 @@
         })
         temperaturePointList = Array.from(new Set(temperaturePointList))
         temperaturePointList2 = Array.from(new Set(temperaturePointList2))
-        temperaturePointList2.unshift(20 + '鈩�')
+        temperaturePointList2.unshift(20 + '鈩�(甯告俯)')
         let additionArr = []
         askNum.forEach(a => {
           additionArr.push(temperaturePointList.join(',') + a)
@@ -1163,21 +1192,93 @@
             item.tell = tell
           }
         })
+        this.circulateShow = false
+      },
+      spliceTemperatureTest () {
+        if (this.temperatureTest.length === 0) {
+          this.$message.error('璇烽�夋嫨')
+          return
+        }
+        let askStr = ''
+        let askArr1 = []
+        let askArr2 = ''
+        let ask = ''
+        let index = ''
+        this.temperatureTest.map(val => {
+          index = this.temperatureEngList.findIndex(item => item.label === val)
+          if (index > -1) {
+            askStr = val + ',' + this.temperatureEngList[index].value
+          }
+          askArr1.push(askStr)
+        })
+
+        if (this.temperatureTitle === '娓╁崌璇曢獙瑕佹眰濉啓') {
+          askArr2 = askArr1.join(';')
+          ask = askArr2 + ';1'
+        } else {
+          if (!this.temperatureTestNum) {
+            this.$message.error('璇峰~鍐欏惊鐜鏁�')
+            return
+          }
+          askArr2 = askArr1.join(';')
+          ask = askArr2 + ';' + this.temperatureTestNum
+        }
+        this.productList.forEach(item => {
+          if (item.id === this.temId) {
+            item.ask = ask
+            item.tell = ask
+          }
+        })
         console.log('ask---', ask)
-        console.log('tell---', tell)
+        this.temperatureShow = false
+      },
+      temperatureShowClose () {
+        if (this.temperatureTitle === '鐑惊鐜姹傚~鍐�' && !this.temperatureTestNum) {
+          this.$message.error('璇峰~鍐欏惊鐜鏁�')
+          return
+        }
+        if (this.temperatureTest.length === 0) {
+          this.$message.error('璇烽�夋嫨')
+          return
+        }
+        this.spliceTemperatureTest()
+      },
+      cleanTemperatureTest () {
+        this.temperatureTest = []
+        this.temperatureTestNum = ''
+        this.temperatureShow = false
+      },
+      cleanSpliceData () {
+        this.circulateForm.entrustNum = null
+        this.circulateForm.entrustTime = null
+        this.circulateForm.entrustPoint = null
+        this.opticalProjectList = []
+        this.$refs.multipleTable.clearSelection()
+        this.temperatureData = []
         this.circulateShow = false
       },
       beforeCirculateShowClose () {
-        if (!this.circulateForm.entrustNum || !this.circulateForm.entrustTime || !this.circulateForm.entrustPoint || this.opticalProjectList.length === 0 || this.temperatureData.length === 0) {
-          this.$message.error('璇峰~鍐欏畬鏁存暟鎹�')
-          return
-        }
-        let temperaturePoint1 = JSON.parse(JSON.stringify(this.temperatureData))
-        temperaturePoint1.forEach(t => {
-          if (!t.temperaturePoint || !t.askSymbol || !t.askNum) {
-            throw this.$message.error('璇峰~鍐欏畬鏁存暟鎹�')
+          if (!this.circulateForm.entrustNum || !this.circulateForm.entrustTime || !this.circulateForm.entrustPoint || this.opticalProjectList.length === 0 || this.temperatureData.length === 0) {
+            this.$message.error('璇峰~鍐欏畬鏁存暟鎹�')
+            return
           }
-        })
+          // 鎷兼帴瑕佹眰鍊糰sk
+          const opticalProjectList = JSON.parse(JSON.stringify(this.opticalProjectList))
+          opticalProjectList.forEach(o => {
+            o.temperatureData.forEach(t => {
+              if (!t.temperaturePoint || !t.askSymbol || !t.askNum) {
+                throw this.$message.error('璇峰~鍐欏畬鏁存暟鎹�')
+              }
+            })
+            if (!o.temperatureData.some(item => item.temperaturePoint == '20')) {
+              throw this.$message.error(`${o.value + '娉㈤暱娌℃湁閰嶇疆20鈩冩俯搴︾偣'}`)
+            }
+          })
+          this.spliceData()
+      },
+
+      handleTemperatureTestChange (value) {
+        console.log('value---', value)
       },
       handleSelectionChange(val) {
         this.opticalProjectList = val;
@@ -1377,6 +1478,11 @@
           console.log('isHaveBushing===', isHaveBushing)
           if (productListSelected && select[2] === '鍏夌紗' && isHaveBushing === false) {
             this.$message.error('鍏夌紗娓╁害寰幆椤圭洰蹇呴』杩涜鍏夌氦閰嶇疆')
+
+            this.$refs.sampleTable.setCurrentRow(this.currentMethod, true)
+            this.rowClick(this.currentMethod)
+            this.sampleIds = [this.currentMethod.id]
+            this.openConfig()
             return
           }
           let sampleList = this.HaveJson(this.sampleList)
@@ -1391,7 +1497,7 @@
             }).catch(() => {})
           }else{
             let isRTS = this.totalArr.find(a => a.ask != null && this.symbolList.find(b=>a.ask.includes(b)) && a.state == 1)
-            if (isRTS) {
+            if (isRTS&&this.PROJECT=='妫�娴嬩腑蹇�') {
               this.editTable = this.handleData(sampleList,this.containsValue, 0)
               this.editTable.forEach(item => {
                 item.value = item.modelNum
@@ -1962,6 +2068,16 @@
         } else if (row.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && row.state === 0) {
           this.circulateShow = false;
         }
+        if ((row.inspectionItem === '娓╁崌璇曢獙' || row.inspectionItem === '鐑惊鐜�') && row.state === 1) {
+          console.log('row---', row)
+          this.temperatureTitle = `${row.inspectionItem}瑕佹眰濉啓`
+          this.isShowInput = row.inspectionItem === '鐑惊鐜�'
+          this.temId = row.id
+          this.temperatureShow = true;
+          return
+        } else if ((row.inspectionItem === '娓╁崌璇曢獙' || row.inspectionItem === '鐑惊鐜�') && row.state === 0) {
+          this.temperatureShow = false;
+        }
         this.getProNum()
       },
       searchProject () {
@@ -2133,6 +2249,20 @@
           }, 200)
         })
         this.searchProject()
+        this.searchTemList()
+      },
+      searchTemList () {
+        this.temperatureList = []
+        this.$axios.post(this.$api.enums.selectEnumByCategory, {
+          category: "鐢靛姏娓╁害寰幆妫�楠�"
+        }).then(res => {
+          if (res.data.length > 0) {
+            this.temperatureEngList = res.data
+            res.data.forEach(item => {
+              this.temperatureList.push(item.label)
+            })
+          }
+        })
       },
       changeModel() {
         this.sampleList.forEach(a => {
@@ -2192,9 +2322,12 @@
         }
       },
       handleAll(e) {
+        console.log('e---', e)
         if (e.length > 0) {
           this.productList.map(m => {
-            m.state = 1
+            if(e.find(a=>a.id == m.id)){
+              m.state = 1
+            }
             return m
           })
         } else {
@@ -2231,6 +2364,23 @@
             this.$refs.productTable.clearSelection()
             return
           }
+          const select = this.selectTree.split(' - ')
+          if (p.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && p.state === 1) {
+            this.circulateShow = true;
+            return
+          } else if (p.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && p.state === 0) {
+            this.circulateShow = false;
+          }
+          if ((p.inspectionItem === '娓╁崌璇曢獙' || p.inspectionItem === '鐑惊鐜�') && p.state === 1) {
+            console.log('p---', p)
+            this.temperatureTitle = `${p.inspectionItem}瑕佹眰濉啓`
+            this.isShowInput = p.inspectionItem === '鐑惊鐜�'
+            this.temId = p.id
+            this.temperatureShow = true;
+            return
+          } else if ((p.inspectionItem === '娓╁崌璇曢獙' || p.inspectionItem === '鐑惊鐜�') && p.state === 0) {
+            this.temperatureShow = false;
+          }
           /* if (p.ask.includes('RTS')&&p.state === 1) {
             p.rts = ''
             this.bsm3Val = ''

--
Gitblit v1.9.3