From 8b8e088d012550a662aca3aad96afaf6958efedf Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期四, 26 十二月 2024 14:33:06 +0800
Subject: [PATCH] 完成投诉迁移
---
src/components/do/b1-inspect-order-plan/circuit-parameters1.vue | 213 ++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 176 insertions(+), 37 deletions(-)
diff --git a/src/components/do/b1-inspect-order-plan/circuit-parameters1.vue b/src/components/do/b1-inspect-order-plan/circuit-parameters1.vue
index 59dafee..551d30c 100644
--- a/src/components/do/b1-inspect-order-plan/circuit-parameters1.vue
+++ b/src/components/do/b1-inspect-order-plan/circuit-parameters1.vue
@@ -36,9 +36,8 @@
<el-col :span="7">
<div style="display: flex;align-items: center;justify-content: flex-end;flex-wrap: wrap;" class="btns" v-if="!isLook">
<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)" :disabled="state>1" style="margin: 4px;">娣诲姞瑙掑害</el-button>
- <el-button size="small" @click="deleteList(angleList.length-1,angleList)" :disabled="state>1" style="margin: 4px;">鍒犻櫎瑙掑害</el-button>
+ <el-button type="success" size="small" @click="addList(angleList)" :disabled="state>1" style="margin: 4px;">娣诲姞瑙掑害</el-button>
+ <el-button size="small" @click="deleteList(angleList.length-1,angleList)" :disabled="state>1" style="margin: 4px;" type="danger">鍒犻櫎瑙掑害</el-button>
</div>
</el-col>
</el-row>
@@ -70,8 +69,9 @@
:value="item.value">
</el-option>
</el-select>
+ <el-button size="small" @click="deleteList(y,allBandList,'鍒犻櫎棰戞')" :disabled="state>1" style="margin-left: 16px;" type="danger">鍒犻櫎棰戞</el-button>
<el-button type="primary" size="small" @click="addList(h.projectList,'浜掕皟')" style="margin-left: 16px;" :disabled="state>1" v-show="!isLook&&intermodulationNum>0">娣诲姞浜掕皟</el-button>
- <el-button size="small" @click="deleteList(0,h.projectList,'浜掕皟')" :disabled="state>1" v-show="!isLook&&intermodulationNum>0">鍒犻櫎浜掕皟</el-button>
+ <!-- <el-button size="small" @click="deleteList(0,h.projectList,'浜掕皟')" :disabled="state>1" v-show="!isLook&&intermodulationNum>0">鍒犻櫎浜掕皟</el-button> -->
<el-button type="primary" size="small" @click="save(h,y)" :disabled="state>1" :loading="loading[y]" v-show="!isLook">淇� 瀛�</el-button>
</div>
<el-divider></el-divider>
@@ -86,7 +86,7 @@
<div style="text-align: center;">{{ n.unit }}</div>
</el-col>
<el-col :span="2">
- <div style="text-align: center;" v-html="n.tell"></div>
+ <div style="text-align: center;" v-html="n.ask"></div>
</el-col>
<el-col :span="16">
<div class="content" style="text-align: center;width: 100%;overflow-x: auto;">
@@ -101,7 +101,7 @@
</tr>
<tr v-for="(item,index) in n.angleList" :key="index + 'eee'">
<td>
- <el-input size="small" placeholder="瑙掑害" v-model="item.value" @blur="handleAngle(item.value,index)" :disabled="state>1"></el-input>
+ <el-input size="small" placeholder="瑙掑害" v-model="item.value" @blur="handleAngle(item.value,index,h.band)" :disabled="state>1"></el-input>
</td>
<td v-for="(m,i) in n.portList" :key="i+'ggg'">
<el-input size="small" placeholder="鏈�宸��" v-model="n.value[index][i]" v-if="n.value[index]" :disabled="state>1"></el-input>
@@ -127,7 +127,7 @@
<div style="text-align: center;">{{ n.unit }}</div>
</el-col>
<el-col :span="2">
- <div style="text-align: center;" v-html="n.tell"></div>
+ <div style="text-align: center;" v-html="n.ask"></div>
</el-col>
<el-col :span="16">
<div class="content" style="text-align: center;width: 100%;overflow-x: auto;">
@@ -145,6 +145,7 @@
:value="item.value">
</el-option>
</el-select>
+ <el-button type="danger" icon="el-icon-delete" circle size="small" @click="deleteList(j,h.projectList,'浜掕皟')" :disabled="state>1" v-show="!isLook&&intermodulationNum>0" style="margin-left: 20px;"></el-button>
</div>
</td>
</tr>
@@ -163,7 +164,7 @@
</tr>
<tr v-for="(item,index) in n.angleList" :key="index + 'eee'">
<td>
- <el-input size="small" placeholder="瑙掑害" v-model="item.value" :disabled="state>1" @blur="handleAngle(item.value,index)"></el-input>
+ <el-input size="small" placeholder="瑙掑害" v-model="item.value" :disabled="state>1" @blur="handleAngle(item.value,index,h.band)"></el-input>
</td>
<td v-for="(m,i) in n.portList" :key="i+'ggg'">
<el-input size="small" placeholder="鏈�宸��" v-model="n.value[index][i]" v-if="n.value[index]" :disabled="state>1"></el-input>
@@ -189,7 +190,7 @@
<div style="text-align: center;">{{ n.unit }}</div>
</el-col>
<el-col :span="2">
- <div style="text-align: center;" v-html="n.tell"></div>
+ <div style="text-align: center;" v-html="n.ask"></div>
</el-col>
<el-col :span="16">
<div class="content" style="text-align: center;width: 100%;overflow-x: auto;">
@@ -209,7 +210,7 @@
</tr>
<tr v-for="(item,index) in n.angleList" :key="index + 'eee'">
<td>
- <el-input size="small" placeholder="瑙掑害" v-model="item.value" :disabled="state>1" @blur="handleAngle(item.value,index)"></el-input>
+ <el-input size="small" placeholder="瑙掑害" v-model="item.value" :disabled="state>1" @blur="handleAngle(item.value,index,h.band)"></el-input>
</td>
<td v-for="(m,i) in n.portList" :key="i+'ggg'">
<el-input size="small" placeholder="鏈�宸��" v-model="n.value[index][i]" v-if="n.value[index]" :disabled="state>1"></el-input>
@@ -235,7 +236,7 @@
<div style="text-align: center;">{{ n.unit }}</div>
</el-col>
<el-col :span="2">
- <div style="text-align: center;" v-html="n.tell"></div>
+ <div style="text-align: center;" v-html="n.ask"></div>
</el-col>
<el-col :span="17">
<div class="content" style="text-align: center;width: 100%;overflow-x: auto;">
@@ -250,7 +251,7 @@
</tr>
<tr v-for="(item,index) in n.angleList" :key="index + 'eee'">
<td>
- <el-input size="small" placeholder="瑙掑害" v-model="item.value" :disabled="state>1" @blur="handleAngle(item.value,index)"></el-input>
+ <el-input size="small" placeholder="瑙掑害" v-model="item.value" :disabled="state>1" @blur="handleAngle(item.value,index,h.band)"></el-input>
</td>
<td>
<el-input size="small" placeholder="鏈�宸��" v-model="n.value[index][0]" :disabled="state>1"></el-input>
@@ -302,7 +303,7 @@
{
name:'鐢靛帇椹绘尝姣�',
unit:'/',
- tell:'鈮�1.45',
+ ask:'鈮�1.45',
result:'',
conclusion:'鍚堟牸',
portList:[],
@@ -312,7 +313,7 @@
{
name:'鍚屾瀬鍖栭殧绂诲害',
unit:'dB',
- tell:'鈮�1.45',
+ ask:'鈮�1.45',
result:'',
conclusion:'鍚堟牸',
portList:[],
@@ -323,7 +324,7 @@
name:'浜掕皟',
band:'2100MHz',
unit:'dB',
- tell:'鈮�1.45',
+ ask:'鈮�1.45',
result:'',
conclusion:'鍚堟牸',
portList:[],
@@ -333,7 +334,7 @@
{
name:'鍋忓樊',
unit:'dB',
- tell:'鈮�1.45',
+ ask:'鈮�1.45',
result:'',
conclusion:'鍚堟牸',
portList:[],
@@ -344,7 +345,7 @@
name:'鏈�澶ц�﹀悎搴�',
unit:'dB',
band:'2100MHz',
- tell:'鈮�1.45',
+ ask:'鈮�1.45',
result:'',
conclusion:'鍚堟牸',
portList:[],
@@ -359,12 +360,14 @@
isMore:false,
loading:{},
intermodulationNum:0,//浜掕皟妫�楠岄」鐩殑鏁伴噺
+ upTemplateState:false,
};
},
watch: {
// 瑙掑害鏁伴噺鍙樺寲鏃讹紝鏇存柊鎵�鏈夐娈典笅闈㈢殑鎵�鏈夐」鐩笅鐨勬墍鏈夌鍙e拰瑙掑害
angleList(val) {
- this.allBandList.forEach(item => {
+ if(!this.upTemplateState){
+ this.allBandList.forEach(item => {
item.projectList.forEach(m => {
// 娣诲姞瑙掑害
for(let i=0;i<val.length;i++){
@@ -401,6 +404,7 @@
}
})
})
+ }
// console.log(this.allBandList)
},
currentNum(val) {
@@ -435,6 +439,7 @@
// 鍒濆鍖栨暟鎹�
initData(){
this.allBandList = []
+ this.intermodulationNum = 0
// 澶勭悊椤圭洰
this.insProductNew = JSON.parse(JSON.stringify(this.insProduct)).filter(m=>m.inspectionItem.includes('鐢佃矾璇曢獙'))
this.insProductNew.forEach(async item => {
@@ -448,6 +453,55 @@
// 宸茬粡瀛樺湪鍊兼椂锛岃祴鍊�
let bandList = this.insProductNew[0].insProductResult2.map(m=>m.frequency)
bandList = Array.from(new Set(bandList))
+ // 涓婁紶闄勪欢鍚庯紝璁剧疆妫�楠岄」鏁版嵁涓虹┖鐨勫唴瀹�
+ let sample = this.insProductNew[0];//鑾峰彇椹绘尝姣旂殑鏁版嵁锛屽鏋滈┗娉㈡瘮鍊煎瓨鍦ㄨ�屽叾浠栨楠岄」鍊间笉瀛樺湪锛屽垯鏍规嵁椹绘尝姣旇缃粯璁ゆ暟鎹�
+ if(sample.insProductResult2&&sample.insProductResult2.length>0){
+ this.insProductNew.forEach(item => {
+ if(!item.inspectionItemSubclass.includes('椹绘尝姣�')&&(!item.insProductResult2||item.insProductResult2.length==0||item.insProductResult2.length<bandList.length)){
+ if(!(item.insProductResult2.length>0&&item.insProductResult2.length<bandList.length)){
+ item.insProductResult2 = []
+ }
+ sample.insProductResult2.forEach(m=>{
+ let obj = this.HaveJson(m)
+ // 濡傛灉鏁版嵁鏈夛紝浣嗘槸涓嶅鎵�鏈夐娈电殑鏁伴噺锛屽垯琛ュ叏鏁版嵁
+ if(item.insProductResult2.length>0&&item.insProductResult2.length<bandList.length){
+ let obj0 = item.insProductResult2.find(n=>m.frequency==n.frequency)
+ if(!obj0){
+ let port = '1,2,3,4'
+ let value = JSON.parse(m.value)
+ let value0 = []
+ value.forEach(n=>{
+ if(!item.inspectionItemSubclass.includes('鑰﹀悎搴�')){
+ value0.push(['','','',''])
+ }else{
+ value0.push([''])
+ }
+ })
+ obj.port = port
+ obj.value = JSON.stringify(value0)
+ item.insProductResult2.push(obj)
+ }
+ }else{
+ // 濡傛灉涓�鏉℃暟鎹兘娌℃湁锛屽垯琛ュ叏鏁版嵁
+ let port = '1,2,3,4'
+ let value = JSON.parse(m.value)
+ let value0 = []
+ value.forEach(n=>{
+ if(!item.inspectionItemSubclass.includes('鑰﹀悎搴�')){
+ value0.push(['','','',''])
+ }else{
+ value0.push([''])
+ }
+ })
+ obj.port = port
+ obj.value = JSON.stringify(value0)
+ item.insProductResult2.push(obj)
+ }
+ })
+ }
+ })
+ }
+ // 缁х画鍥炴樉鏁版嵁
this.allBandList = []
for(let i = 0;i<bandList.length;i++){
let arr = []
@@ -474,20 +528,21 @@
angleList.push({value:m})
})
this.angleList = angleList
+ this.upTemplateState = false;
}
- let tell = ''
- if(item.tell.includes(',')){
- item.tell.split(',').forEach((m,i)=>{
- tell = tell + m+ (i==item.tell.split(',').length-1?'':'<br/>')
+ let ask = ''
+ if(item.ask.includes(',')){
+ item.ask.split(',').forEach((m,i)=>{
+ ask = ask + m+ (i==item.ask.split(',').length-1?'':'<br/>')
})
}else{
- tell = item.tell
+ ask = item.ask
}
- console.log(tell)
+ console.log(ask)
let obj = {
inspectionItemSubclass: item.inspectionItemSubclass,
unit:item.unit,
- tell:tell,
+ ask:ask,
result:n.result,
id:item.id,
often:n.often,
@@ -574,13 +629,14 @@
},
// 鍒犻櫎鏁扮粍
deleteList(index,list,type){
+ this.upTemplateState = false;
if(list.length>1){
if(type=='浜掕皟'){
- let index = null;
+ // let index = null;
let num = 0;
list.forEach((m,i)=>{
if(m.inspectionItemSubclass.includes('浜掕皟')){
- index = i;
+ // index = i;
num++
}
})
@@ -629,6 +685,7 @@
},
// 娣诲姞鏁扮粍
addList(list,type){
+ this.upTemplateState = false;
if(type=='浜掕皟'){
let obj = null;
let index = null;
@@ -719,8 +776,8 @@
this.$delete(item, 'equipName')
this.$set(item, 'equipName', item.equipOptions.find(m=>m.value==item.equipValue).label)
},
- // 缁熶竴淇敼瑙掑害锛屽鏋滆搴︽病鏈夊甫掳锛屽垯鎷兼帴涓�涓�
- handleAngle(e,index){
+ // 缁熶竴淇敼鍚屼竴棰戞鐨勮搴︼紝濡傛灉瑙掑害娌℃湁甯β帮紝鍒欐嫾鎺ヤ竴涓�
+ handleAngle(e,index,band){
if(!e){
return
}
@@ -729,13 +786,15 @@
val = val + '掳'
}
this.allBandList.forEach(item=>{
- item.projectList.forEach(m=>{
- m.angleList.forEach((n,i)=>{
- if(index==i){
- n.value = val
- }
+ if(item.band==band){
+ item.projectList.forEach(m=>{
+ m.angleList.forEach((n,i)=>{
+ if(index==i){
+ n.value = val
+ }
+ })
})
- })
+ }
})
},
handlePort(n){
@@ -767,8 +826,8 @@
this.$delete(this.loading, y)
this.$set( this.loading, y, true)
this.$axios.post(this.$api.insOrderPlan.saveInsContext2, {
- orderId:this.orderId,
- sampleId:this.sampleId,
+ // orderId:this.orderId,
+ sampleId:this.orderId,
sonLaboratory:h.projectList[0].sonLaboratory,
frequency:h.band,
insProductResult2s:arr
@@ -790,6 +849,86 @@
}).catch(err => {
console.log(err)
})
+ },
+ async saveAll(){
+ if(this.allBandList.find(m=>!m.band)){
+ this.$message.error('璇峰厛濉啓棰戞')
+ return false
+ }else{
+ let arr0 = []
+ this.allBandList.forEach((h,j)=>{
+ // this.save(h,j)
+ 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,
+ equipName:this.insProductNew.find(m=>m.id==item.id).equipName,
+ port:item.portList.map(m=>m.value).join(','),
+ angle:item.angleList.map(m=>m.value).join(','),
+ value:JSON.stringify(item.value),
+ often:item.often
+ }
+ return obj
+ })
+ let obj0 = {
+ sampleId:this.orderId,
+ sonLaboratory:h.projectList[0].sonLaboratory,
+ frequency:h.band,
+ insProductResult2s:arr
+ }
+ arr0.push(obj0)
+ })
+ let res = await this.$axios.post(this.$api.insOrderPlan.saveInsContext2s, {insProductResultDtos:arr0
+ }, {
+ headers: {
+ 'Content-Type': 'application/json'
+ },
+ noQs:true})
+ if(res.code===201){
+ this.$message.error('淇濆瓨澶辫触')
+ return false
+ }else{
+ this.$message.success('宸蹭繚瀛�')
+ return true
+ }
+ }
+ },
+ // 鏇存柊妯℃澘
+ upTemplate(obj){
+ this.upTemplateState = true;
+ // return
+ obj.allBandList.forEach((item,index)=>{
+ if(!this.allBandList[index]){
+ this.$set(this.allBandList, index, {projectList:this.HaveJson(this.allBandList[0].projectList)})
+ // this.allBandList[index] = {
+ // projectList:this.HaveJson(this.allBandList[0].projectList)
+ // }
+ }
+ this.allBandList[index].band = item.band
+ let arr = []
+ item.projectList.forEach((m,i)=>{
+ if(this.allBandList[index].projectList.find(n=>n.inspectionItemSubclass==m.inspectionItemSubclass)){
+ let obj0 = {
+ angleList:m.angleList,
+ portList:m.portList,
+ portNum:m.portNum,
+ valueType:m.valueType
+ }
+ this.$set(obj0,'value',m.value)
+ arr.push({...this.allBandList[index].projectList.find(n=>n.inspectionItemSubclass==m.inspectionItemSubclass),...obj0})
+ }
+ })
+ this.$delete(this.allBandList[index],'projectList')
+ this.$set(this.allBandList[index],'projectList',arr)
+ // this.allBandList[index].projectList = arr
+ })
+ this.angleList = obj.angleList
+ this.intermodulationNum = obj.intermodulationNum
}
}
}
--
Gitblit v1.9.3