From ab82ddf55b5c41d495d4a62d849d88d464e5f256 Mon Sep 17 00:00:00 2001
From: lxp <1928192722@qq.com>
Date: 星期三, 07 八月 2024 16:03:05 +0800
Subject: [PATCH] 	modified:   src/components/do/b1-ins-order/add.vue 	modified:   src/components/do/b1-ins-order/fiberoptic-config.vue

---
 src/components/do/b1-ins-order/add.vue |  176 +++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 141 insertions(+), 35 deletions(-)

diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue
index 5e3a46c..7cdbe6d 100644
--- a/src/components/do/b1-ins-order/add.vue
+++ b/src/components/do/b1-ins-order/add.vue
@@ -429,9 +429,9 @@
           <el-table-column prop="proNum" label="寰呮椤规暟閲�" width="105" align="center"></el-table-column>
         </el-table>
         <el-table class="el-table" ref="productTable" :data="productList" height="380px" tooltip-effect="dark" border
-          @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect" :row-key="rowKey"
+          @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect"
           :row-class-name="tableRowClassName" v-loading="getProductLoad" @select-all="handleAll">
-          <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1" :reserve-selection="true"></el-table-column>
+          <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1"></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="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip>
@@ -623,8 +623,11 @@
     <equipConfig :currentId="currentId" v-if="equipConfigShow" :active="active" />
     <cableConfig v-if="cableConfigShow" :active="active" />
 <!--    鍗曢�夌壒娈婂�煎鐞嗘-->
-    <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia" min-width="400px" :show-close="false"
-      :before-close="beforeClose">
+    <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia"
+               :close-on-press-escape="false"
+               :close-on-click-modal="false"
+               min-width="400px" :show-close="false"
+               :before-close="beforeClose">
       <div class="body" style="max-height: 60vh;">
         <el-row v-if="bsm1">
           <el-col class="search_thing" :span="24" style="height: initial;margin: 5px 0;">
@@ -683,9 +686,16 @@
           </el-col>
         </el-row> -->
       </div>
+      <span slot="footer" class="dialog-footer">
+        <el-row>
+          <el-button type="primary" @click="save2" :loading="saveLoad">纭� 瀹�</el-button>
+        </el-row>
+      </span>
     </el-dialog>
 <!--    鍏ㄩ�夌壒娈婂�煎鐞嗘-->
     <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1DiaAll" min-width="400px" :show-close="false"
+                :close-on-press-escape="false"
+               :close-on-click-modal="false"
                :before-close="beforeClose">
       <div class="body" style="max-height: 60vh;" v-for="(item, index) in bsm1DiaList" :key="index">
         <el-row v-if="item.bsm1">
@@ -737,8 +747,15 @@
           </el-col>
         </el-row>
       </div>
+      <span slot="footer" class="dialog-footer">
+        <el-row>
+          <el-button type="primary" @click="save1" :loading="saveLoad">纭� 瀹�</el-button>
+        </el-row>
+      </span>
     </el-dialog>
-    <el-dialog title="鐗规畩鍊煎~鍐�" :visible.sync="bsm3Dia" width="800px" :show-close="false">
+    <el-dialog title="鐗规畩鍊煎~鍐�" :visible.sync="bsm3Dia"
+               :close-on-click-modal="false" :close-on-press-escape="false"
+               width="800px" :show-close="false">
       <el-table
       :data="editTable"
       style="width: 100%">
@@ -777,7 +794,9 @@
         </el-row>
       </span>
     </el-dialog>
-    <el-dialog title="娓╁害寰幆瑕佹眰濉啓" :visible.sync="circulateShow" width="900px" :before-close="beforeCirculateShowClose" :show-close="false">
+    <el-dialog title="娓╁害寰幆瑕佹眰濉啓" :visible.sync="circulateShow" width="900px"
+               :close-on-click-modal="false" :close-on-press-escape="false"
+               :before-close="beforeCirculateShowClose" :show-close="false">
       <div class="search" style="display: flex;background: transparent;">
         <div class="search_thing">
           <div class="search_label">淇濇俯鏃堕棿锛�</div>
@@ -862,7 +881,9 @@
       </span>
     </el-dialog>
     <!-- 鐢靛姏璇曢獙瀹�---娓╁崌璇曢獙/鐑惊鐜� -->
-    <el-dialog :title="temperatureTitle" :visible.sync="temperatureShow" width="260px" :before-close="temperatureShowClose" :show-close="false">
+    <el-dialog :title="temperatureTitle" :visible.sync="temperatureShow"
+               :close-on-click-modal="false" :close-on-press-escape="false"
+               width="260px" :before-close="temperatureShowClose" :show-close="false">
       <div>
         <div v-if="isShowInput" style="margin-bottom: 6px">
           <span>寰幆娆℃暟:</span>
@@ -961,7 +982,7 @@
           entity: {
             orderBy: {
               field: 'id',
-              order: 'asc'
+              order: 'desc'
             }
           },
           isIndex: true,
@@ -1219,6 +1240,9 @@
           }
         })
         this.circulateShow = false
+        this.changeProductList0()
+        this.currentMethod.insProduct = this.productList0
+        this.getProNum()
       },
       spliceTemperatureTest () {
         if (this.temperatureTest.length === 0) {
@@ -1375,6 +1399,9 @@
             a.manHour = obj.manHour
             a.price = obj.price
             a.tell = obj.tell
+          }
+          if(a.state == 0&&a.bsmRow){
+            a = this.HaveJson(a.bsmRow)
           }
         })
       },
@@ -1821,7 +1848,8 @@
             state,
             id: this.currentId,
             companyId:this.addObj.companyId,
-            laboratory:this.addObj.laboratory
+            laboratory:this.addObj.laboratory,
+            company: this.addObj.company
           }, {
             headers: {
               'Content-Type': 'application/json'
@@ -2058,9 +2086,6 @@
         })
         this.$refs.sampleTable.doLayout()
       },
-      rowKey (row) {
-      return row.id;
-    },
       selectProduct(val) {
         this.productListSelected = val
         this.productIds = []
@@ -2082,9 +2107,14 @@
           this.sampleIds.push(row.id)
         }
         this.productList = row.insProduct
+        this.productList0 = JSON.parse(JSON.stringify(this.productList))
         setTimeout(() => {
           this.productList.forEach(a => {
-            if (a.state == 1) this.toggleSelection(a)
+            if (a.state == 1) {
+              this.toggleSelection(a)
+            }else{
+              this.$refs.productTable.toggleRowSelection(a, false);
+            }
           })
         }, 200)
       },
@@ -2257,7 +2287,8 @@
             name: this.templateName,
             thing: JSON.stringify({
               addObj: this.addObj,
-              sampleList: this.sampleList
+              sampleList: this.sampleList,
+              selectTree:this.selectTree
             })
           }, {
             headers: {
@@ -2282,6 +2313,7 @@
           let obj = JSON.parse(res.data)
           this.addObj = obj.addObj;
           this.sampleList = obj.sampleList;
+          this.selectTree = obj.selectTree
         })
       },
       delSampleAndProduct() {
@@ -2325,10 +2357,12 @@
           this.isAskOnlyRead = false
         }
         this.getProductLoad = true
+        let selectTreeList = this.selectTree.split(" - ")
+        this.addObj.model&&(selectTreeList[selectTreeList.length - 1] = this.addObj.model)
         this.$axios.post(this.$api.standardTree.selectStandardProductList, {
-          model: row.model + '-' + row.modelNum,
+          model: (this.addObj.model?this.addObj.model:row.model) + '-' + row.modelNum,
           standardMethodListId: val,
-          factory: this.selectTree,
+          factory: selectTreeList.join(" - "),
         }, {
           headers: {
             'Content-Type': 'application/json'
@@ -2432,6 +2466,7 @@
           })
         } else {
           this.productList.map(m => {
+            console.log('m----', m)
             m.state = 0
             return m
           })
@@ -2666,25 +2701,97 @@
         }
       },
       upBsmAll (item) {
-        let sections = JSON.parse(item.bsmRow.section);
-        let asks = JSON.parse(item.bsmRow.ask);
-        let tells = JSON.parse(item.bsmRow.tell);
-        let manHours = JSON.parse(item.bsmRow.manHour);
-        let prices = JSON.parse(item.bsmRow.price);
-        for (var a in sections) {
-          if (item.bsm1Val === sections[a]) {
-            this.productList.forEach(p => {
-              if (p.id === item.bsmRow.id) {
-                p.section = sections[a]
-                p.ask = asks[a]
-                p.tell = tells[a]
-                p.manHour = manHours[a]
-                p.price = prices[a]
-              }
-            })
-            break
+        // console.log(1111,item,this.bsm1DiaList)
+        for (let i =0;i<this.bsm1DiaList.length;i++){
+          this.bsm1DiaList[i].bsm1Val = item.bsm1Val
+          let sections = JSON.parse(this.bsm1DiaList[i].bsmRow.section);
+          let asks = JSON.parse(this.bsm1DiaList[i].bsmRow.ask);
+          let tells = JSON.parse(this.bsm1DiaList[i].bsmRow.tell);
+          let manHours = JSON.parse(this.bsm1DiaList[i].bsmRow.manHour);
+          let prices = JSON.parse(this.bsm1DiaList[i].bsmRow.price);
+          for (var a in sections) {
+            if (this.bsm1DiaList[i].bsm1Val === sections[a]) {
+              this.productList.forEach(p => {
+                if (p.id === this.bsm1DiaList[i].bsmRow.id) {
+                  p.section = sections[a]
+                  p.ask = asks[a]
+                  p.tell = tells[a]
+                  p.manHour = manHours[a]
+                  p.price = prices[a]
+                }
+              })
+              break
+            }
           }
         }
+        this.changeProductList0()
+        this.currentMethod.insProduct = this.productList0
+      },
+      save1 () {
+        if (this.bsm1DiaList.length > 0) {
+          this.bsm1DiaList.forEach(item => {
+            if (!item.bsm1Val) {
+              throw this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊')
+            }
+          })
+        }
+        if (this.bsm2) {
+          if (this.bsm2Val2.length === 0) {
+            this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊')
+            return
+          }
+          let set = new Set()
+          for (let i = 0; i < this.bsm2Val2.length; i++) {
+            let num0 = set.size
+            set.add(JSON.stringify(this.bsm2Val2[i]))
+            let num1 = set.size
+            if (num1 == num0) {
+              this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅')
+              return
+            }
+            set.add(JSON.stringify(this.bsm2Val2[i].reverse()))
+            let num2 = set.size
+            if (num1 == num2) {
+              this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅')
+              return
+            }
+          }
+          this.isBsm2Val2 = true;
+        }
+        this.bsm1DiaAll = false
+      },
+      save2 () {
+        if (this.bsm1DiaList.length > 0) {
+          this.bsm1DiaList.forEach(item => {
+            if (!item.bsm1Val) {
+              throw this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊')
+            }
+          })
+        }
+        if (this.bsm2) {
+          if (this.bsm2Val2.length === 0) {
+            this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊')
+            return
+          }
+          let set = new Set()
+          for (let i = 0; i < this.bsm2Val2.length; i++) {
+            let num0 = set.size
+            set.add(JSON.stringify(this.bsm2Val2[i]))
+            let num1 = set.size
+            if (num1 == num0) {
+              this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅')
+              return
+            }
+            set.add(JSON.stringify(this.bsm2Val2[i].reverse()))
+            let num2 = set.size
+            if (num1 == num2) {
+              this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅')
+              return
+            }
+          }
+          this.isBsm2Val2 = true;
+        }
+        this.bsm1Dia = false
       },
       beforeClose(done) {
         // if (this.bsm1) {
@@ -2757,9 +2864,8 @@
       getTotal() {
         this.totalArr = []
         this.total = 0;
-        // console.log(this.sampleList)
         this.sampleList.forEach(item => {
-          if (item.insProduct && item.insProduct.length > 0) {
+          if (item.insProduct  && item.insProduct.length > 0) {
             item.insProduct.forEach(a => {
               this.totalArr.push(a)
             })

--
Gitblit v1.9.3