From 5104054c6c7a28c3d97a66c1e614897a6db28ba0 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期六, 08 六月 2024 17:39:36 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/components/do/b1-inspect-order-plan/Inspection.vue |  185 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 161 insertions(+), 24 deletions(-)

diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index ba5a5bb..d97b387 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -191,7 +191,11 @@
 <template>
   <div v-loading="loading" class="inspection">
     <el-row class="title">
-      <el-col :span="12" style="padding-left: 20px;">妫�楠屽崟璇︽儏</el-col>
+      <el-col :span="12" style="padding-left: 20px;">妫�楠屽崟璇︽儏
+        <span style="color: #3A7BFA;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;鏍峰搧</span>
+        <span v-if="currentFiberOpticTape" style="color: #3A7BFA;"> - 鍏夌氦甯�</span>
+        <span v-if="currentFiberOptic" style="color: #3A7BFA;"> - 鍏夌氦</span>
+      </el-col>
       <el-col :span="12" style="text-align: right;">
         <el-button size="small" type="primary" @click="fiberOpticVisible=true" v-if="fiberOptic.length>0">鍏夌氦鍒囨崲</el-button>
         <el-button size="small" type="primary" @click="fiberOpticTapeVisible=true" v-if="fiberOpticTape.length>0">鍏夌氦甯﹀垏鎹�</el-button>
@@ -231,7 +235,7 @@
           <el-input clearable v-model="insOrder.appointed" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
         </el-form-item>
         <el-form-item label="褰撳墠鏍峰搧浣嶆暟:">
-          <el-tag v-if="currentSample.index">{{ `NO.${currentSample.index}` }}</el-tag>
+          <el-tag v-if="currentKey">{{ `NO.${currentKey}` }}</el-tag>
         </el-form-item>
       </el-form>
     </div>
@@ -251,7 +255,7 @@
                 :rowspan="n.v.mc&&n.v.mc.rs?n.v.mc.rs:1"
                 :style="`background:${n.v.bg};color:${n.v.fc};font-size:${n.v.fs}px;width:${handleWidth(n)}px !important;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl?'bold':''};`">
                 <div class="content" :class="`content-h-${n.v.ht} content-v-${n.v.vt}`"
-                  :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;`">
+                  :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;background:${n.v.bg};`">
                   <template v-if="n.v.ps!=undefined && n.v.ps.value==='妫�楠屽��' && state==1">
                     <el-input v-if="getInspectionValueType(n.i) == 1" class="table_input" v-model="n.v.v"
                       :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')"
@@ -304,14 +308,42 @@
                     <span :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span>
                   </template>
                   <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧缂栧彿'">
-                    <div style="display: flex;flex-wrap: nowrap;align-items: center;">
-                      <i class="el-icon-caret-left table_caret" @click="caretSample(-1)"></i>
-                      <div :style="`font-family:${n.v.ff} !important;`">{{currentSample.sampleCode}}</div>
-                      <i class="el-icon-caret-right table_caret" @click="caretSample(1)"></i>
+                    <div style="display: flex;flex-wrap: nowrap;align-items: center;width: 100%" :title="currentSample.sampleCode">
+                      <i class="el-icon-caret-left table_caret" style="width: 16px;" @click="caretSample(-1)" v-if="!currentFiberOpticTape&&!currentFiberOptic"></i>
+                      <div :style="`font-family:${n.v.ff} !important;overflow: hidden;white-space: nowrap;width: calc(100% - 32px);`">{{currentSample.sampleCode}}</div>
+                      <i class="el-icon-caret-right table_caret" style="width: 16px;"
+                      v-if="!currentFiberOpticTape&&!currentFiberOptic"@click="caretSample(1)"></i>
                     </div>
                   </template>
                   <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧鍨嬪彿'">
                     <div :style="`font-family:${n.v.ff} !important;`" v-if="currentSample.model!==undefined&&currentSample.model!==null">{{currentSample.model}}</div>
+                  </template>
+                  <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='濂楃'">
+                    <div style="display: flex;flex-wrap: nowrap;align-items: center;">
+                      <!-- <i class="el-icon-caret-left table_caret" @click="caretBushing(-1)"></i> -->
+                      <div :style="`font-family:${n.v.ff} !important;`">{{currentBushing?currentBushing.color:''}}</div>
+                      <!-- <i class="el-icon-caret-right table_caret" @click="caretBushing(1)"></i> -->
+                    </div>
+                  </template>
+                  <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鍏夌氦甯�'">
+                    <div style="display: flex;flex-wrap: nowrap;align-items: center;">
+                      <i class="el-icon-caret-left table_caret" @click="caretTape(-1)
+                      " v-if="currentFiberOpticTape"></i>
+                      <div :style="`font-family:${n.v.ff} !important;`">{{currentFiberOpticTape?currentFiberOpticTape.code:''}}</div>
+                      <i class="el-icon-caret-right table_caret"
+                      v-if="currentFiberOpticTape"
+                      @click="caretTape(1)"></i>
+                    </div>
+                  </template>
+                  <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鍏夌氦'">
+                    <div style="display: flex;flex-wrap: nowrap;align-items: center;">
+                      <i class="el-icon-caret-left table_caret" @click="caretOptic(-1)"
+                      v-if="currentFiberOptic"></i>
+                      <div :style="`font-family:${n.v.ff} !important;`">{{currentFiberOptic?currentFiberOptic.color:''}}
+                      </div>
+                      <i
+                      v-if="currentFiberOptic" class="el-icon-caret-right table_caret" @click="caretOptic(1)"></i>
+                    </div>
                   </template>
                   <span v-else :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span>
                 </div>
@@ -324,11 +356,12 @@
       :data="{
         orderId:id
       }"
-      v-show="state==1"
+      v-show="state==1&&fileAdd"
       :on-success="handleSuccessUp" :show-file-list="false"
         accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar' :headers="headers" :on-change="beforeUpload"
+        style="width: 80px !important;"
         :on-error="onError" ref='upload'>
-        <el-button size="small" type="primary" :loading="upLoading">闄勪欢涓婁紶</el-button></el-upload>
+        <el-button size="small" type="primary">闄勪欢涓婁紶</el-button></el-upload>
       <ValueTable class="value-table" ref="fileList" :url="$api.insOrderPlan.getFileList"
         :componentData="componentData0"
         :delUrl="$api.insOrderPlan.delfile"
@@ -337,7 +370,7 @@
     <el-drawer title="鍏夌氦鍒囨崲" :visible.sync="fiberOpticVisible" :size="500">
       <el-table class="el-table" ref="fiberOpticTable" :data="fiberOptic" height="100%" tooltip-effect="dark" border
         highlight-current-row @row-click="handleChangeOptic" :row-class-name="tableRowClassName"
-        :current-row-key="currentKey" :row-key="record=>record.index" v-if="fiberOpticVisible">
+        :current-row-key="currentKey2" :row-key="record=>record.index" v-if="fiberOpticVisible">
         <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()">
         </el-table-column>
         <el-table-column prop="bushColor" label="绠″鑹叉爣" min-width="100px" show-overflow-tooltip></el-table-column>
@@ -350,7 +383,7 @@
     <el-drawer title="鍏夌氦甯﹀垏鎹�" :visible.sync="fiberOpticTapeVisible" :size="500">
       <el-table class="el-table" ref="fiberOpticTapeTable" :data="fiberOpticTape" height="100%" tooltip-effect="dark" border
         highlight-current-row @row-click="handleChangeTape" :row-class-name="tableRowClassName"
-        :current-row-key="currentKey" :row-key="record=>record.index" v-if="fiberOpticTapeVisible">
+        :current-row-key="currentKey1" :row-key="record=>record.index" v-if="fiberOpticTapeVisible">
         <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()">
         </el-table-column>
         <el-table-column prop="code" label="鍏夌氦甯︾紪鍙�" min-width="110px" show-overflow-tooltip></el-table-column>
@@ -363,7 +396,7 @@
     <el-drawer title="濂楃鍒囨崲" :visible.sync="bushingVisible" :size="500">
       <el-table class="el-table" ref="bushingTable" :data="bushing" height="100%" tooltip-effect="dark" border
         highlight-current-row @row-click="handleChangeBushing" :row-class-name="tableRowClassName"
-        :current-row-key="currentKey" :row-key="record=>record.index" v-if="bushingVisible">
+        :current-row-key="currentKey0" :row-key="record=>record.index" v-if="bushingVisible">
         <el-table-column type="index" align="center" label="搴忓彿" width="70px" :key="Math.random()">
         </el-table-column>
         <el-table-column prop="color" label="绠¤壊鏍�" min-width="100px" show-overflow-tooltip></el-table-column>
@@ -443,6 +476,7 @@
     },
     data() {
       return {
+        fileAdd:false,
         sampleVisible: false,
         taskVisible: false,
         submitLoading: false,
@@ -484,11 +518,15 @@
           isIndex: true,
           showSelect: false,
           select: false,
-          selectMethod: '',
           sort: false,
           init:false,
           do: [
           {
+						id: 'handleDown',
+						font: '涓嬭浇',
+						type: 'text',
+						method: 'handleDown'
+					},{
 						id: 'delete',
 						font: '鍒犻櫎',
 						type: 'text',
@@ -496,12 +534,7 @@
             disabFun: (row, index) => {
 								return this.state!=1
 							}
-					}, {
-						id: 'handleDown',
-						font: '涓嬭浇',
-						type: 'text',
-						method: 'handleDown'
-					},
+					}
           ],
           isPage: false,
           linkEvent: {},
@@ -535,6 +568,9 @@
         ps: {},
         param: {},
         currentKey: 1,
+        currentKey0: 1,
+        currentKey1: 1,
+        currentKey2: 1,
         comparisonList: [],
         excelMethodList: [],
         equipOptions: [],
@@ -584,6 +620,7 @@
       this.getComparisonList()
       this.getAuthorizedPerson()
       this.scrollInit()
+      this.getPower()
     },
     watch: {
       id(val) {
@@ -600,6 +637,10 @@
               this.insOrder.typeName = m.label
             }
           })
+          this.loading = false
+          if(!res.data.sampleProduct||res.data.sampleProduct.length==0){
+            return this.$message.error('璇ヤ换鍔℃病鏈夋牱鍝佷俊鎭�')
+          }
           this.sampleProduct = res.data.sampleProduct
           this.currentSample = this.HaveJson(this.sampleProduct[0])
           let list = await this.getCurrentProduct(this.currentSample.id,0)
@@ -616,7 +657,6 @@
           })
           if (this.currentSample.index == undefined) this.currentSample['index'] = 1
           let bushing = this.currentSample.bushing
-          this.loading = false
           // this.handleTableData()
           this.getTableLists();
           this.componentData.currentId = val;
@@ -647,6 +687,23 @@
       }
     },
     methods: {
+      getPower(){
+        let power = JSON.parse(sessionStorage.getItem('power'))
+        let fileDel = false
+        let fileAdd = false
+        for (var i = 0; i < power.length; i++) {
+					if (power[i].menuMethod == 'uploadFile') {
+						fileAdd = true
+					}
+					if (power[i].menuMethod == 'delfile') {
+						fileDel = true
+					}
+				}
+        if (!fileDel) {
+					this.componentData0.do.splice(1, 1)
+				}
+        this.fileAdd = fileAdd
+      },
       async getCurrentProduct(id,type){
         this.tableLoading = true;
         let res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory)
@@ -667,6 +724,7 @@
           this.fiberOpticTape = row.fibers;
         }
         this.bushingVisible = false;
+        this.currentKey0 = row.index
       },
       async handleChangeOptic(row, column, event){
         this.currentFiberOptic = row;
@@ -683,7 +741,7 @@
         this.fiberOpticVisible = false;
         let list = await this.getCurrentProduct(row.id,2)
         this.getTableLists0(list)
-        this.currentKey = row.index
+        this.currentKey2 = row.index
       },
       async handleChangeTape(row, column, event){
         this.currentFiberOpticTape = row;
@@ -707,7 +765,7 @@
           // 閰嶇疆鍏夌氦
           this.fiberOptic = row.fiber;
         }
-        this.currentKey = row.index
+        this.currentKey1 = row.index
       },
       async handleChangeSample(row, column, event) {
         this.param = {}
@@ -1637,6 +1695,85 @@
         })
         this.getTableLists()
       },
+      caretBushing(num){
+        let index = this.currentKey0 + num
+        if(index < 1){
+          this.$message.error('褰撳墠鏄涓�涓绠�')
+          return
+        } else if(index > this.bushing.length){
+          this.$message.error('褰撳墠鏄渶鍚庝竴涓绠�')
+          return
+        }
+        this.currentKey0 = index
+        this.currentBushing = this.HaveJson(this.bushing[index - 1])
+        this.fiberOpticTape = []
+        this.currentFiberOpticTape = null;
+        this.fiberOptic = []
+        this.currentFiberOptic = null;
+        if( this.currentBushing.fiber&& this.currentBushing.fiber.length>0){
+          // 鐩存帴閰嶇疆鍏夌氦
+          this.fiberOptic =  this.currentBushing.fiber;
+        }else if( this.currentBushing.fibers&& this.currentBushing.fibers.length>0){
+          // 閰嶇疆鍏夌氦甯﹀悗锛屽啀閰嶇疆鍏夌氦
+          this.fiberOpticTape =  this.currentBushing.fibers;
+        }
+      },
+      async caretTape(num){
+        let index = this.currentKey1 + num
+        if(index < 1){
+          this.$message.error('褰撳墠鏄涓�涓厜绾ゅ甫')
+          return
+        } else if(index > this.fiberOpticTape.length){
+          this.$message.error('褰撳墠鏄渶鍚庝竴涓厜绾ゅ甫')
+          return
+        }
+        this.currentKey1 = index
+        this.currentFiberOpticTape = this.HaveJson(this.fiberOpticTape[index - 1])
+        this.param = {}
+        this.fiberOptic = []
+        this.currentFiberOptic = null;
+        this.currentFiberOpticTape.productList.forEach(a => {
+          this.param[a.id] = {
+            insValue: [],
+            comValue: [],
+            resValue: null,
+            equipValue: [],
+            equipName: [],
+            insResult: null
+          }
+        })
+        this.fiberOpticTapeVisible = false;
+        let list = await this.getCurrentProduct(this.currentFiberOpticTape.id,1)
+        this.getTableLists0(list)
+        if(this.currentFiberOpticTape.fiber&&this.currentFiberOpticTape.fiber.length>0){
+          // 閰嶇疆鍏夌氦
+          this.fiberOptic = this.currentFiberOpticTape.fiber;
+        }
+      },
+      async caretOptic(num){
+        let index = this.currentKey2 + num
+        if(index < 1){
+          this.$message.error('褰撳墠鏄涓�涓厜绾�')
+          return
+        } else if(index > this.fiberOptic.length){
+          this.$message.error('褰撳墠鏄渶鍚庝竴涓厜绾�')
+          return
+        }
+        this.currentKey2 = index
+        this.currentFiberOptic = this.HaveJson(this.fiberOptic[index - 1])
+        this.currentFiberOptic.productList.forEach(a => {
+          this.param[a.id] = {
+            insValue: [],
+            comValue: [],
+            resValue: null,
+            equipValue: [],
+            equipName: [],
+            insResult: null
+          }
+        })
+        let list = await this.getCurrentProduct(this.currentFiberOptic.id,2)
+        this.getTableLists0(list)
+      },
       handleSuccessUp(response, ) {
         this.upLoading = false;
 				if (response.code == 200) {
@@ -1665,10 +1802,10 @@
           if (res.code === 200) {
             let url = '';
             if(res.data.type==1){
-              url = this.javaApi+'/img/'+res.data.url
+              url = this.javaApi+'/img/'+res.data.fileUrl
               file.downloadIamge(url,row.fileName)
             }else{
-              url = this.javaApi+'/word/'+res.data.url
+              url = this.javaApi+'/word/'+res.data.fileUrl
               const link = document.createElement('a');
               link.href = url;
               link.download = row.fileName;

--
Gitblit v1.9.3