From a1235a07a8919120d0c971c600b67340a42d2eb5 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 01 十一月 2024 11:23:03 +0800
Subject: [PATCH] 修改互调、标签打印格式

---
 src/components/do/b1-inspect-order-plan/circuit-parameters2.vue |  159 ++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 128 insertions(+), 31 deletions(-)

diff --git a/src/components/do/b1-inspect-order-plan/circuit-parameters2.vue b/src/components/do/b1-inspect-order-plan/circuit-parameters2.vue
index dab0058..f9fcd1b 100644
--- a/src/components/do/b1-inspect-order-plan/circuit-parameters2.vue
+++ b/src/components/do/b1-inspect-order-plan/circuit-parameters2.vue
@@ -1,21 +1,21 @@
 <template>
   <div class="circuit-parameters">
     <el-divider></el-divider>
-    <el-row :gutter="5" style="width: calc(100% - 1px);margin-bottom: 10px;">
+    <el-row :gutter="8" style="width: calc(100% - 1px);margin-bottom: 10px;">
       <el-col :span="17">
         <el-row>
           <el-col :span="23" style="display: flex;flex-wrap: wrap;">
-            <table border="1" cellpadding="10" style="margin: 0 10px 10px 0;" v-for="(item,index) in insProductNew" :key="index + 'ppp'" v-show="isMore?true:(index<3?true:false)">
+            <table border="1" cellpadding="10" style="margin: 4px 10px 10px 0;width: 32%;" v-for="(item,index) in insProductNew" :key="index + 'ppp'" v-show="isMore?true:(index<3?true:false)">
               <tr>
                 <td style="text-align: center;background: #F0F1F5;">
                   <el-tooltip effect="dark" :content="item.inspectionItemSubclass" placement="top-start"><span style="display: inline-block;width: 95px;" class="single-line-ellipsis">{{ item.inspectionItemSubclass }}</span>
                   </el-tooltip>
                 </td>
                 <td>
-                  <el-input size="small" placeholder="璁惧鍚嶇О" v-model="item.equipName" style="width: 95px;" readonly></el-input>
+                  <el-input size="small" placeholder="璁惧鍚嶇О" v-model="item.equipName" readonly></el-input>
                 </td>
                 <td>
-                  <el-select v-model="item.equipValue" placeholder="璁惧缂栫爜" size="small" style="width: 95px;"  :disabled="state>1" @focus="methodFocus(item)" @change="m=>handleEquip(m,item)">
+                  <el-select v-model="item.equipValue" placeholder="璁惧缂栫爜" size="small"  :disabled="state>1" @focus="methodFocus(item)" @change="m=>handleEquip(m,item)">
                     <el-option
                       v-for="m in item.equipOptions"
                       :key="m.value"
@@ -33,12 +33,12 @@
           </el-col>
         </el-row>
       </el-col>
-      <el-col :span="7">
+      <el-col :span="7" v-if="!isLook">
         <div style="display: flex;align-items: center;justify-content: flex-end;" class="btns">
-          <el-button type="primary" size="small" @click="addList(allBandList,'棰戞')" :disabled="state>1">娣诲姞棰戞</el-button>
-          <el-button size="small" @click="deleteList(allBandList.length-1,allBandList,'鍒犻櫎棰戞')" :disabled="state>1">鍒犻櫎棰戞</el-button>
-          <el-button type="primary" size="small" @click="addList(angleList)" v-if="!(state>1)&&intermodulationNum>0">娣诲姞瑙掑害</el-button>
-          <el-button size="small" @click="deleteList(angleList.length-1,angleList)" v-if="!(state>1)&&intermodulationNum>0">鍒犻櫎瑙掑害</el-button>
+          <el-button type="primary" size="small" @click="addList(allBandList,'棰戞')" :disabled="state>1" style="margin: 4px;">娣诲姞棰戞</el-button>
+          <el-button size="small" @click="deleteList(allBandList.length-1,allBandList,'鍒犻櫎棰戞')" :disabled="state>1" style="margin: 4px;">鍒犻櫎棰戞</el-button>
+          <el-button type="primary" size="small" @click="addList(angleList)" v-if="!(state>1)&&intermodulationNum>0" style="margin: 4px;">娣诲姞瑙掑害</el-button>
+          <el-button size="small" @click="deleteList(angleList.length-1,angleList)" v-if="!(state>1)&&intermodulationNum>0" style="margin: 4px;">鍒犻櫎瑙掑害</el-button>
         </div>
       </el-col>
     </el-row>
@@ -72,7 +72,7 @@
         </el-select>
         <el-button type="primary" size="small" @click="addList(h.projectList,'浜掕皟')" style="margin-left: 16px;" v-if="intermodulationNum>0&&!(state>1)">娣诲姞浜掕皟</el-button>
         <el-button size="small" @click="deleteList(0,h.projectList,'浜掕皟')" v-if="intermodulationNum>0&&!(state>1)">鍒犻櫎浜掕皟</el-button>
-        <el-button type="primary" size="small" @click="save(h,y)" :disabled="state>1" :loading="loading[y]" style="margin-left: 16px;">淇� 瀛�</el-button>
+        <el-button type="primary" size="small" @click="save(h,y)" :disabled="state>1" :loading="loading[y]" style="margin-left: 16px;" v-show="!isLook">淇� 瀛�</el-button>
       </div>
       <el-divider></el-divider>
       <div class="circuit-parameters-item-content">
@@ -98,11 +98,6 @@
                         <el-input size="small" placeholder="绔彛" v-model="item.value" :disabled="state>1"></el-input>
                       </div>
                     </td>
-                    <td :rowspan="n.angleList.length+1">
-                      <el-button icon="el-icon-minus" circle size="mini" type="danger"
-                      @click="deleteList(n.portList.length-1,n.portList)" :disabled="state>1"></el-button>
-                      <el-button icon="el-icon-plus" circle size="mini" type="primary" @click="addList(n.portList)" :disabled="state>1"></el-button>
-                    </td>
                   </tr>
                   <tr>
                     <td>
@@ -115,8 +110,11 @@
                 </table>
               </div>
             </el-col>
-            <el-col :span="2">
-              <div style="text-align: center;" :class="{red:n.result===0,green:n.result===1}">{{ n.result===0?'涓嶅悎鏍�':(n.result===1?'鍚堟牸':'寰呭畾') }}
+            <el-col :span="1">
+              <el-input-number v-model="n.portNum" :min="1" :max="100" label="鏁伴噺" size="small" @change="m=>changePort(m,n.portList)" :disabled="state>1"></el-input-number>
+            </el-col>
+            <el-col :span="1">
+              <div style="text-align: center;" :class="{red:n.result===0,green:n.result===1}">{{ n.result===0?'涓嶅悎鏍�':(n.result===1?'鍚堟牸':(n.result===3?'涓嶅垽瀹�':'寰呭畾')) }}
               </div>
             </el-col>
           </el-row>
@@ -135,24 +133,27 @@
               <div class="content" style="text-align: center;width: 100%;overflow-x: auto;">
                 <table border="1" cellpadding="10" class="thermal-table">
                   <tr>
-                    <td>棰戠偣</td>
+                    <td>棰戞</td>
                     <td :colspan="n.portList.length+1">
                       <div style="display: flex;align-items: center;">
-                        <el-input size="small" placeholder="棰戠偣" v-model="n.often" :disabled="state>1" @blur="handlePort(n)"></el-input>
+                        <!-- <el-input size="small" placeholder="棰戠偣" v-model="n.often" :disabled="state>1" @blur="handlePort(n)"></el-input> -->
+                        <el-select v-model="n.often" placeholder="璇烽�夋嫨" size="small" style="width: 200px;" :disabled="state>1">
+                          <el-option
+                            v-for="item in bandList0"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                          </el-option>
+                        </el-select>
                       </div>
                     </td>
                   </tr>
                   <tr>
-                    <td>瑙掑害</td>
+                    <td>绔彛</td>
                     <td v-for="(item,index) in n.portList" :key="index+'fff'">
                       <div style="display: flex;align-items: center;">
                         <el-input size="small" placeholder="绔彛" v-model="item.value" :disabled="state>1"></el-input>
                       </div>
-                    </td>
-                    <td :rowspan="n.angleList.length+1">
-                      <el-button icon="el-icon-minus" circle size="mini" type="danger"
-                      @click="deleteList(n.portList.length-1,n.portList)" :disabled="state>1"></el-button>
-                      <el-button icon="el-icon-plus" circle size="mini" type="primary" @click="addList(n.portList)" :disabled="state>1"></el-button>
                     </td>
                   </tr>
                   <tr v-for="(item,index) in n.angleList" :key="index + 'eee'">
@@ -166,8 +167,11 @@
                 </table>
               </div>
             </el-col>
-            <el-col :span="2">
-              <div style="text-align: center;" :class="{red:n.result===0,green:n.result===1}">{{ n.result===0?'涓嶅悎鏍�':(n.result===1?'鍚堟牸':'寰呭畾') }}
+            <el-col :span="1">
+              <el-input-number v-model="n.portNum" :min="1" :max="100" label="鏁伴噺" size="small" @change="m=>changePort(m,n.portList)" :disabled="state>1"></el-input-number>
+            </el-col>
+            <el-col :span="1">
+              <div style="text-align: center;" :class="{red:n.result===0,green:n.result===1}">{{ n.result===0?'涓嶅悎鏍�':(n.result===1?'鍚堟牸':(n.result===3?'涓嶅垽瀹�':'寰呭畾')) }}
               </div>
             </el-col>
           </el-row>
@@ -180,11 +184,12 @@
 
 <script>
 export default {
-  props:['insProduct','orderId','sampleId','state','num'],
+  props:['insProduct','orderId','sampleId','state','num','isLook','currentNum'],
   data() {
     return {
       value: "",
       bandList:[],
+      bandList0:[],
       portList:[
         {
           value:'1',
@@ -269,6 +274,15 @@
           }
         })
       })
+    },
+    currentNum(val) {
+      this.initData()
+    },
+    insProduct:{
+      deep:true,
+      handler:function(val){
+        this.initData()
+      }
     }
   },
   mounted() {
@@ -283,14 +297,20 @@
       }).then(res => {
         this.bandList = res.data
       })
+      this.$axios.post(this.$api.enums.selectEnumByCategory, {
+        category: "浜掕皟-棰戞"
+      }).then(res => {
+        this.bandList0 = res.data
+      })
     },
     // 鍒濆鍖栨暟鎹�
     initData(){
+      this.allBandList = []
       // 澶勭悊椤圭洰
       this.insProductNew = JSON.parse(JSON.stringify(this.insProduct)).filter(m=>m.inspectionItem.includes('鐢佃矾璇曢獙'))
       this.insProductNew.forEach(async item => {
         // 鑾峰彇璁惧鍒楄〃
-        item.equipOptions = await this.getEquipOptions(item)
+        item.equipOptions = []
       })
       if(this.insProductNew[0].insProductResult2&&this.insProductNew[0].insProductResult2.length>0){
         // 宸茬粡瀛樺湪鍊兼椂锛岃祴鍊�
@@ -344,7 +364,8 @@
                   equipName:n.equipName,
                   equipValue:n.equipValue,
                   frequency:n.frequency,
-                  sonLaboratory:item.sonLaboratory
+                  sonLaboratory:item.sonLaboratory,
+                  portNum:JSON.parse(n.value).length>0?JSON.parse(n.value)[0].length:4
                 }
                 this.$set(obj,'portList', n.port?portList:[])
                 this.$set(obj,'angleList', n.angle?angleList:[])
@@ -374,11 +395,31 @@
           // 璧嬪�艰澶�
           item.equipName = ''
           item.equipValue = ''
+          this.portList = [
+            {
+              value:'1',
+            },
+            {
+              value:'2',
+            },
+            {
+              value:'3',
+            },
+            {
+              value:'4',
+            },
+          ]
+          this.angleList = [
+            {
+              value:''
+            }
+          ]
           // 璧嬪�肩鍙e拰瑙掑害
           item.portList = JSON.parse(JSON.stringify(this.portList))
           item.angleList = JSON.parse(JSON.stringify(this.angleList))
           // 璧嬪�肩粨璁�
           item.result = ''
+          item.portNum = 4
           // 璧嬪�兼渶宸��
           item.value = []
           if(item.inspectionItemSubclass.includes('浜掕皟')){
@@ -502,9 +543,27 @@
           }
         })
         list.push(obj)
+      }else if(type=='绔彛'){
+        let obj = JSON.parse(JSON.stringify(list[0]));
+        obj.value = null;
+        list.push(obj)
       }else{
         let obj = JSON.parse(JSON.stringify(list[0]));
         list.push(obj)
+      }
+    },
+    // 鏀瑰彉绔彛
+    changePort(num,list){
+      if(num>list.length){
+        for(let i = list.length;i<num;i++){
+          let obj = JSON.parse(JSON.stringify(list[0]));
+          obj.value = null;
+          list.push(obj)
+        }
+      }else if(num<list.length){
+        for(let i = list.length;i>num;i--){
+          list.pop()
+        }
       }
     },
     // 鑾峰彇璁惧閫夐」 id:涓烘楠岄」id
@@ -548,7 +607,7 @@
       if(!n.often){
         return
       }
-      if(!n.often.includes('MHz')||!n.often.includes('MHZ')){
+      if(!n.often.includes('MHz')&&!n.often.includes('MHZ')){
         n.often = n.often + 'MHz'
       }
     },
@@ -564,6 +623,11 @@
     },
     save(h,y) {
       let arr = h.projectList.map(item=>{
+        if(item.portList&&item.portList.length>0){
+          item.value.forEach(m=>{
+            m = m.splice(item.portList.length)
+          })
+        }
         let obj = {
           insProductId:item.id,
           equipValue:this.insProductNew.find(m=>m.id==item.id).equipValue,
@@ -645,4 +709,37 @@
 .green{
   color: green;
 }
+>>>.el-input-number {
+  display: inline-flex;
+  flex-direction: column !important;
+  line-height: 26px;
+}
+
+>>>.el-input-number__increase, >>>.el-input-number__decrease {
+  width: 26px;
+  height: 26px;
+}
+>>>.el-input-number__increase{
+  top: 36px;
+  left: 10px;
+  border: 0px;
+  border-radius: 50%;
+  background: #3A7BFA;
+  color: #fff;
+}
+>>>.el-input-number__decrease{
+  top: -30px;
+  border: 0px;
+  border-radius: 50%;
+  left: 10px;
+  background: #F56C6C;
+  color: #fff;
+}
+>>>.el-input-number .el-input{
+  width: 50px;
+}
+>>>.el-input-number .el-input__inner{
+  width: 50px;
+  padding: 0;
+}
 </style>

--
Gitblit v1.9.3