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/Inspection.vue | 557 ++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 460 insertions(+), 97 deletions(-)
diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index ae1d2cc..39e590b 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -259,17 +259,30 @@
<el-row class="title">
<el-col :span="12" style="padding-left: 20px;text-align: left;" :class="{noShow:noBack}">妫�楠屽崟璇︽儏
</el-col>
- <el-col :span="12" style="text-align: right;">
- <el-button size="small" type="primary" @click="sampleVisible=true;uploadSample()">鏍峰搧鍒囨崲</el-button>
+ <el-col :span="12" style="text-align: right;display: flex;align-items: center;justify-content: end;height: 60px;">
+ <el-button size="small" type="primary" @click="versionDialogVisible=true" v-if="state==1&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙')">鐢佃皟/闈炵數璋冩ā鏉垮垏鎹�</el-button>
+ <el-select v-model="template" size="medium" placeholder="鐢佃矾棰勮妯℃澘" style="margin-right: 10px;margin-left: 10px;" v-if="state==1&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙')"
+ @change="selectInsProductTemplateById">
+ <el-option v-for="(a, ai) in templates" :key="ai" :value="a.id" :label="a.name">
+ <span style="float: left">{{ a.name }}</span>
+ <i class="el-icon-delete" style="float: right; color: #66b1ff; font-size: 16px;line-height: 34px;"
+ @click.stop="handleDelete(a)" v-if="addInsProductTemplatePower"></i>
+ </el-option>
+ </el-select>
+ <el-button size="medium" @click="templateDia=true" v-if="state==1&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙')&&addInsProductTemplatePower">
+ <span style="color: #3A7BFA;">淇濆瓨妯℃澘</span>
+ </el-button>
+ <!-- <el-button size="small" type="primary" @click="sampleVisible=true;uploadSample()">鏍峰搧鍒囨崲</el-button> -->
<el-button size="small" type="primary" @click="taskVisible=true" v-show="!isLook">浠诲姟鍒囨崲</el-button>
<el-button size="small" type="primary" @click="handleSubmit" v-if="state==1"
:loading="submitLoading">鎻愪氦</el-button>
<!-- 澶嶆牳 -->
- <el-button size="small" type="primary" @click="upInsReview(1)" :loading="reviewLoading"
- v-if="state>1&&!isLook">缁х画璇曢獙</el-button>
- <el-button size="small" @click="upInsReview(0)" v-if="state>1&&!isLook" type="danger">鍐嶆璇曢獙</el-button>
- <el-button size="small" @click="upInsReview(2)" v-if="state>1&&!isLook">缁撴潫璇曢獙</el-button>
- <el-button size="small" @click="$emit('goback')" v-if="!noBack">杩斿洖</el-button>
+ <!-- <el-button size="small" type="primary" @click="upInsReview(1,'缁х画璇曢獙')" :loading="reviewLoading"
+ v-if="state>1&&!isLook">缁х画娴嬭瘯涓嬩竴涓牱鍝�</el-button>
+ <el-button size="small" @click="upInsReview(0,'鍐嶆璇曢獙')" v-if="state>1&&!isLook" type="danger">鍐嶆璇曢獙</el-button>
+ <el-button size="small" @click="upInsReview(2,'缁撴潫璇曢獙')" v-if="state>1&&!isLook">姝ゅ鎵樺崟缁撴潫</el-button> -->
+ <el-button size="small" type="primary" @click="upInsReviewDia=true" v-if="state>1&&!isLook">澶嶆牳</el-button>
+ <el-button size="small" @click="handleBack" v-if="!noBack">杩斿洖</el-button>
</el-col>
</el-row>
<div class="search" v-show="!isLook">
@@ -302,6 +315,9 @@
</el-form-item>
<el-form-item label="褰撳墠鏍峰搧浣嶆暟:">
<el-tag v-if="currentKey">{{ `NO.${currentKey}` }}</el-tag>
+ </el-form-item>
+ <el-form-item label="" v-if="insOrder.rule">
+ <el-tag>{{ !insOrder.rule.includes('涓嶈�冭檻涓嶇‘瀹氬害')?insOrder.rule.split('-')[0]+' '+insOrder.rule.split('-')[1]+'%':insOrder.rule }}</el-tag>
</el-form-item>
<el-form-item label="澶囨敞:">
<span style="color:red">{{ insOrder.remark?insOrder.remark:'-' }}</span>
@@ -343,7 +359,7 @@
</div> -->
</div>
<!-- 甯歌妫�楠屽師濮嬭褰� -->
- <div class="center-box" id="nav" v-loading="tableLoading" v-if="!tableLists.find(m=>m.templateId==currentTable)||(!tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙'))">
+ <div class="center-box" id="nav" v-loading="tableLoading" v-if="!tableLists.find(m=>m.templateId==currentTable)||(!tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙')&&!tableLists.find(m=>m.templateId==currentTable).templateName.includes('娓╂箍搴﹁瘯楠�')&&!tableLists.find(m=>m.templateId==currentTable).templateName.includes('鍔熺巼瀹归噺'))">
<table border="1" class="tables" cellpadding="10" v-for="(item,index) in tableList" :key="index+currentTable+currentSample.id">
<tbody>
<tr v-for="(m,i) in item.arr" :key="i">
@@ -414,10 +430,10 @@
</template>
<template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧缂栧彿'">
<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>
+ <!-- <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>
+ <!-- <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==='鏍峰搧鍨嬪彿'">
@@ -452,6 +468,20 @@
<i
v-if="currentFiberOptic" class="el-icon-caret-right table_caret" @click="caretOptic(1)"></i>
</div>
+ </template>
+ <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='璇曢獙鍓嶆牱鍝佹鏌�'">
+ <el-select class="table_input" v-model="n.v.v"
+ :disabled="state>1|| (n.u != userId && n.u != undefined && n.u != '')" @change="(val)=>changeSampleCheck(val, n,'鍓�')">
+ <el-option label="瀹屽ソ" :value="'瀹屽ソ'"></el-option>
+ <el-option label="鐮存崯" :value="'鐮存崯'"></el-option>
+ </el-select>
+ </template>
+ <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='璇曢獙鍚庢牱鍝佹鏌�'">
+ <el-select class="table_input" v-model="n.v.v"
+ :disabled="state>1|| (n.u != userId && n.u != undefined && n.u != '')" @change="(val)=>changeSampleCheck(val, n,'鍚�')">
+ <el-option label="瀹屽ソ" :value="'瀹屽ソ'"></el-option>
+ <el-option label="鐮存崯" :value="'鐮存崯'"></el-option>
+ </el-select>
</template>
<span v-else :style="`font-family:${n.v.ff} !important;`" v-html="getValue(n.v)" ></span>
</div>
@@ -708,19 +738,30 @@
<!-- 鐢佃矾璇曢獙 -->
<div v-else-if="tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐢佃矾璇曢獙')" style="width: 100%;overflow-x: auto;overflow-y: visible;">
<!-- <Circuit></Circuit> -->
- <CircuitParameters1 v-if="currentTableState==0" :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :num="currentSample.num1" :isLook="isLook" :currentNum="currentNum"></CircuitParameters1>
- <CircuitParameters2 v-if="currentTableState==1" :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :num="currentSample.num1" :isLook="isLook" :currentNum="currentNum"></CircuitParameters2>
+ <CircuitParameters1 v-if="currentTableState==0" :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :num="currentSample.num1" :isLook="isLook" :currentNum="currentNum" ref="CircuitParameters"></CircuitParameters1>
+ <CircuitParameters2 v-if="currentTableState==1" :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :num="currentSample.num1" :isLook="isLook" :currentNum="currentNum" ref="CircuitParameters"></CircuitParameters2>
+ </div>
+ <!-- 娓╂箍搴﹁瘯楠� -->
+ <div v-else-if="tableLists.find(m=>m.templateId==currentTable).templateName.includes('娓╂箍搴﹁瘯楠�')">
+ <Humidity :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :isLook="isLook" :num="currentSample.num1"/>
+ </div>
+ <!-- 鍔熺巼璇曢獙 -->
+ <div v-else-if="tableLists.find(m=>m.templateId==currentTable).templateName.includes('鍔熺巼瀹归噺')">
+ <PowerCapacity :insProduct="currentSample.insProduct" :orderId="id" :sampleId="currentSample.id" :state="state" :isLook="isLook" :num="currentSample.num1"/>
</div>
<el-upload :action="action"
:data="{
- orderId:id
+ orderId:this.orderId0,
+ sampleId:id,
+ sonLaboratory:sonLaboratory
}"
v-if="state==1&&fileAdd"
:on-success="handleSuccessUp" :show-file-list="false"
- accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar,.csv' :headers="headers" :on-change="beforeUpload"
+ accept='.jpg,.jpeg,.png,.gif,.docx,.xls,.xlsx,.pdf,.zip,.rar,.csv' :headers="headers" :before-upload="beforeUpload"
style="width: 80px !important;"
:on-error="onError" ref='upload'>
<el-button size="small" type="primary" v-if="state==1">闄勪欢涓婁紶</el-button></el-upload>
+ <!-- <span v-if="sonLaboratory === '杩滃満'||sonLaboratory === '杩戝満'" style="color: red;font-size: 12px;">杈愬皠璇曢獙灏介噺涓婁紶璁惧瀵煎嚭鐨刢sv鏂囦欢锛屼笉鐒惰Е鍙戜笉浜嗘姤鍛婄敓鎴�</span> -->
<ValueTable class="value-table" ref="fileList" :url="$api.insOrderPlan.getFileList"
:componentData="componentData0"
:delUrl="$api.insOrderPlan.delfile"
@@ -761,7 +802,7 @@
</el-drawer>
<el-dialog title="妫�楠屽鏍�" :visible.sync="reviewDia" width="500px">
<div class="body" style="display: flex;padding: 10px;" v-if="reviewDia">
- <div class="search_label" style="width: 150px;"><span class="required-span">* </span>涓嶉�氳繃鐨勭悊鐢憋細</div>
+ <div class="search_label" style="width: 150px;"><span class="required-span">* </span>鍐嶆璇曢獙鐨勭悊鐢憋細</div>
<div class="search_input" style="width: 100%;">
<el-input size="small" clearable v-model="noReason" type="textarea" :autosize="{ minRows: 4}"></el-input>
</div>
@@ -836,23 +877,81 @@
<el-button type="primary" :loading="versionLoading" @click="saveVersion">纭� 瀹�</el-button>
</span>
</el-dialog>
- <el-dialog title="璇曢獙淇℃伅" :visible.sync="experimentDia" width="400px">
- <div class="body" style="display: flex;padding: 10px;align-items: center;">
- <div class="search_label" style="width: 150px;"><span class="required-span">*</span>瀹為獙闃舵</div>
- <div class="search_input" style="width: 100%;">
- <el-input clearable v-model="experimentInfo.term" size="small" placeholder=""></el-input>
+ <el-dialog title="璇曢獙淇℃伅" :visible.sync="experimentDia" width="50%">
+ <div style="height: 80vh;overflow-y: auto;">
+ <div class="body" style="display: flex;padding: 10px;align-items: center;" v-if="experimentDia0">
+ <div class="search_label" style="width: 150px;"><span class="required-span">*</span>瀹為獙闃舵</div>
+ <div class="search_input" style="width: 100%;">
+ <el-input clearable v-model="experimentInfo.term" size="small" placeholder=""></el-input>
+ </div>
</div>
- </div>
- <div class="body" style="display: flex;padding: 10px;align-items: center;">
- <div class="search_label" style="width: 150px;"><span class="required-span">*</span>瀹為獙鎿嶄綔</div>
- <div class="search_input" style="width: 100%;">
- <el-input clearable v-model="experimentInfo.note" size="small" placeholder="" type="textarea"
- :rows="2"></el-input>
+ <div class="body" style="display: flex;padding: 10px;align-items: center;" v-if="experimentDia0">
+ <div class="search_label" style="width: 150px;"><span class="required-span">*</span>瀹為獙鎿嶄綔</div>
+ <div class="search_input" style="width: 100%;">
+ <el-input clearable v-model="experimentInfo.note" size="small" placeholder="" type="textarea"
+ :rows="2"></el-input>
+ </div>
</div>
+ <template v-for="(x,y) in newUserInfo">
+ <p style="margin: 10px 0;"><el-tag size="small">{{x.name}}</el-tag> 宸ユ椂濉啓</p>
+ <table border="1" cellpadding="10" class="thermal-table">
+ <tr style="font-size: 18px;font-weight: 500;background-color: #F0F1F5;padding: 10px 0;box-sizing: border-box;">
+ <td>鏍峰搧</td>
+ <td>鏍峰搧缂栧彿</td>
+ <td>鍨嬪彿</td>
+ <td>妫�楠岄」</td>
+ <td>妫�楠屽瓙椤�</td>
+ <td>宸ユ椂</td>
+ </tr>
+ <template v-for="(item,index) in sampleProduct">
+ <tr>
+ <td :rowspan="item.insProduct.length+1">{{ item.sample }}</td>
+ <td :rowspan="item.insProduct.length+1">{{ item.sampleCode }}</td>
+ <td :rowspan="item.insProduct.length+1">{{ item.model }}</td>
+ </tr>
+ <tr v-for="(m,i) in item.insProduct" :key="item.id+i">
+ <td>{{ m.inspectionItem }}</td>
+ <td>{{ m.inspectionItemSubclass }}</td>
+ <td><el-input-number v-model="x.timeArr[i]" :min="0" :max="100" label="宸ユ椂" size="small"></el-input-number></td>
+ </tr>
+ </template>
+ </table>
+ </template>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="experimentDia = false">鍙� 娑�</el-button>
<el-button type="primary" @click="submit0">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <el-dialog
+ title="鏂囦欢棰勮"
+ :visible.sync="lookFileVisible"
+ width="60%" fullscreen :modal="false">
+ <filePreview v-if="lookFileVisible" :fileUrl="currentFile.url"
+ :currentFile="currentFile" style="max-height: 87vh;overflow-y: auto;"/>
+ </el-dialog>
+ <el-dialog title="淇濆瓨妯℃澘" :visible.sync="templateDia" width="400px">
+ <div class="body" style="display: flex;align-items: center;" v-if="templateDia">
+ <div class="search_label" style="width: 90px;"><span class="required-span">* </span>妯℃澘鍚嶇О锛�</div>
+ <div class="search_input">
+ <el-input size="small" clearable v-model="templateName"></el-input>
+ </div>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="templateDia = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="addTemplateDia" :loading="templateLoading">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <el-dialog title="澶嶆牳" :visible.sync="upInsReviewDia" width="400px">
+ <el-radio-group v-model="upInsReviewType" style="display: flex;flex-direction: column">
+ <el-radio :label="1" style="margin: 10px 0; ">缁х画娴嬭瘯涓嬩竴涓牱鍝佹垨鍏朵粬绔欑偣浠诲姟</el-radio>
+ <el-radio :label="0" style="margin: 10px 0; ">鍐嶆妫�楠岃鏍峰搧</el-radio>
+ <el-radio :label="2" style="margin: 10px 0; ">姝ゅ鎵樺崟缁撴潫</el-radio>
+ <p style="font-size: 12px;color:red">鎱庨噸锛氬鏋滆繕鏈夊叾浠栨牱鍝佸湪妫�锛岀偣鍑荤粨鏉熷彲鑳戒細涓柇锛岃纭繚鎵�鏈夋牱鍝侀兘妫�楠屼笖澶嶆牳瀹屾垚鍐嶇偣鍑�</p>
+ </el-radio-group>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="upInsReviewDia = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="upInsReview" :loading="reviewLoading">纭� 瀹�</el-button>
</span>
</el-dialog>
</div>
@@ -860,22 +959,30 @@
<script>
import ValueTable from '../../tool/value-table.vue'
- import Circuit from './circuit.vue'
import file from '../../../util/file'
import excelFunction from '../../../util/excelFountion'
import CircuitParameters1 from './circuit-parameters1.vue'
import CircuitParameters2 from './circuit-parameters2.vue'
+ import Humidity from './humidity.vue'
+ import PowerCapacity from './power-capacity.vue'
+ import filePreview from '../../tool/file-preview.vue'
export default {
- props: ['sonLaboratory', 'orderId', 'state','inspectorList','version','orderStateId','isLook','num1','noBack'],
+ props: ['sonLaboratory', 'orderId', 'state','inspectorList','version','orderStateId','isLook','num1','noBack','orderId0','userInfo'],
components: {
ValueTable,
- Circuit,
CircuitParameters1,
- CircuitParameters2
+ CircuitParameters2,
+ filePreview,
+ Humidity,
+ PowerCapacity,
},
data() {
return {
+ lookFileVisible:false,//棰勮鏂囦欢
experimentDia:false,
+ experimentDia0:false,
+ upInsReviewDia:false,
+ upInsReviewType:1,
experimentInfo:{
note:'',
term:''
@@ -923,6 +1030,8 @@
},
componentData0: {
entity: {
+ insSampleId:'',
+ sonLaboratory:this.sonLaboratory,
insOrderId:''
},
isIndex: true,
@@ -944,6 +1053,12 @@
disabFun: (row, index) => {
return this.state!=1
}
+ },
+ {
+ id: '1',
+ font: '棰勮',
+ type: 'text',
+ method: 'lookFile',
}
],
isPage: false,
@@ -1054,7 +1169,15 @@
otherForm:{
temperature:'',
humidity:''
- }
+ },
+ currentFile:{},//褰撳墠鏂囦欢
+ templates:[],//鐢佃矾璇曢獙妯℃澘
+ templateDia:false,//鐢佃矾璇曢獙妯℃澘淇濆瓨妯℃澘寮规
+ template:null,
+ templateLoading:false,
+ templateName:'',
+ addInsProductTemplatePower:false,//閰嶇疆妯℃澘鏉冮檺
+ newUserInfo:[]
}
},
// 鐢ㄤ簬涓婁紶鏂囦欢鐨勪俊鎭�
@@ -1083,17 +1206,19 @@
this.scrollInit()
this.getPower()
this.startWorker()
+ this.selectInsProductTemplate()
},
watch: {
// 鐩戝惉浠诲姟id锛岃幏鍙栦换鍔′俊鎭�
id(val) {
this.loading = true
this.$axios.post(this.$api.insOrderPlan.doInsOrder, {
- id: val,
+ sampleId: val,
laboratory: this.sonLaboratory
}).then(async res => {
this.insOrder = res.data.insOrder;
- this.componentData0.entity.insOrderId = val;
+ this.componentData0.entity.insSampleId = val;
+ this.componentData0.entity.insOrderId = this.orderId0;
this.$refs.fileList.selectList()
this.urgentList.forEach(m => {
if (m.value == this.insOrder.type) {
@@ -1131,7 +1256,9 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
}
})
@@ -2076,6 +2203,7 @@
let fileAdd = false
let collected = false
let temDataAcquisition = false
+ let addInsProductTemplatePower = false;
for (var i = 0; i < power.length; i++) {
if (power[i].menuMethod == 'uploadFile') {
fileAdd = true
@@ -2089,6 +2217,9 @@
if (power[i].menuMethod == 'temDataAcquisition') {
temDataAcquisition = true
}
+ if(power[i].menuMethod == 'addInsProductTemplate'){
+ addInsProductTemplatePower = true
+ }
}
if (!fileDel) {
this.componentData0.do.splice(1, 1)
@@ -2096,6 +2227,7 @@
this.fileAdd = fileAdd
this.collected = collected
this.temDataAcquisition = temDataAcquisition
+ this.addInsProductTemplatePower = addInsProductTemplatePower
},
uploadSample(){
this.$axios.post(this.$api.insOrderPlan.doInsOrder, {
@@ -2123,6 +2255,7 @@
this.param = {}
// 娓呯┖鍏夌氦閰嶇疆鐩稿叧鏁版嵁
this.fiberOpticTape = []
+ this.template = ''
this.currentFiberOpticTape = null;
this.fiberOptic = []
this.currentFiberOptic = null;
@@ -2145,7 +2278,9 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
}
})
@@ -2193,7 +2328,9 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
})
// 椤甸潰鍒楄〃鏁版嵁澶勭悊
@@ -2645,6 +2782,16 @@
})
}
}
+ if (b.v.ps != undefined && b.v.ps.value === '璇曢獙鍓嶆牱鍝佹鏌�') {
+ // b.v.v = ''
+ this.$set(b.v, 'v', '' )
+ this.param[b.i].beforeCheck = b
+ }
+ if (b.v.ps != undefined && b.v.ps.value === '璇曢獙鍚庢牱鍝佹鏌�') {
+ // b.v.v = ''
+ this.$set(b.v, 'v', '' )
+ this.param[b.i].afterCheck = b
+ }
set.add(b.r)
// 濡傛灉妯℃澘鍒楄〃鐨勫嚱鏁板瓨鍦�,閭d箞鍔犲叆鍒癳xcel鍑芥暟鍒楄〃閲岄潰
if (b.v.f) {
@@ -2741,10 +2888,18 @@
} catch (e) {}
try {
// 鏈�缁堝�艰祴鍊�
- this.param[a.id].resValue.v.v = this.toFixed(a.lastValue,this.param[a.id].resValue.v.ct)
+ this.param[a.id].resValue = {v:{v:a.lastValue}}
+ // this.param[a.id].resValue.v.v = this.toFixed(a.lastValue,this.param[a.id].resValue.v.ct)
// 缁撹璧嬪��
- this.param[a.id].insResult.v.v = a.insResult
- } catch (e) {}
+ this.param[a.id].insResult = {v:{v:a.insResult}}
+ // this.param[a.id].insResult.v.v = a.insResult
+ // 妫�楠屽墠鏍峰搧妫�鏌ヨ祴鍊�
+ this.param[a.id].afterCheck.v.v = a.insProductResult.afterCheck
+ // 妫�楠屽悗鏍峰搧妫�鏌ヨ祴鍊�
+ this.param[a.id].beforeCheck.v.v = a.insProductResult.beforeCheck
+ } catch (e) {
+ console.log('error',e)
+ }
})
// 瀵筫xcel鍑芥暟杩涜澶勭悊
this.handleExcelMethod()
@@ -2777,6 +2932,13 @@
n.v.v = n.v.v.replace('/', '')
}
}
+ // 閫氫俊鐗规畩澶勭悊锛屾楠屽�煎~鍏ヤ箣鍚庣洿鎺ヤ繚瀛樻暟鎹紝鍒ゆ柇缁撴灉榛樿涓�3
+ for (var i in this.param){
+ this.param[i].insResult = {v:{v:3}}
+ }
+ this.saveInsContext(n.i)
+ return;
+ // 浠ヤ笅鏄甯哥殑鍒ゆ柇娴佺▼锛屽悗闈㈡湁闇�瑕佸垯杩涘叆姝ゆ祦绋�
try {
// 鍚� Worker 鍙戦�佹秷鎭紝寮�濮嬪鐞嗛�昏緫
this.worker.postMessage(JSON.stringify({
@@ -2793,7 +2955,6 @@
} catch (error) {
console.log(444,error);
}
-
// 鐩戝惉 Worker 杩斿洖鐨勭粨鏋�
this.worker.onmessage = (event) => {
this.result = JSON.parse(event.data);
@@ -2806,6 +2967,7 @@
if(this.result.value.currentInsItemId){
currentInsItemId = this.result.value.currentInsItemId
}
+ // console.log(this.result,123);
// 鐗规畩澶勭悊涓�涓嬬粨璁�,浼氭湁杩欑鐗规畩鎯呭喌
for (var i in this.param){
if(this.param[i].insResult&&this.param[i].insResult.v&&this.param[i].insResult.v.v){
@@ -2817,33 +2979,6 @@
}
}
this.saveInsContext(currentInsItemId)
- // 濡傛灉鏄暟閲囧彲缂栬緫杈撳叆鐨勬儏鍐�,鍙互鐩存帴淇濆瓨鏁版嵁
- // if(this.getDataType==2){
- // this.saveInsContext(currentInsItemId)
- // }else{
- // if(this.isGet&&!this.dataAcquisitionEidtAble){
- // if(this.result.value.getDataTypeId==''){
- // // 濡傛灉鏄暟閲囦笉鍙紪杈戣緭鍏ョ殑鎯呭喌,涓旀渶鍚庝竴涓暟閲囨病鏈夊畬鎴�,鍒欎笉淇濆瓨鏁版嵁
- // return
- // }
- // // 淇濆瓨鏁版嵁
- // setTimeout(()=>{
- // this.saveInsContext(currentInsItemId)
- // },2000)
- // }else if(this.isGet&&this.dataAcquisitionEidtAble){
- // if(this.getDataType==1){
- // if(this.result.value.getDataTypeId==''){
- // // 濡傛灉鏄暟閲囧彲缂栬緫杈撳叆鐨勬儏鍐�,涓旀渶鍚庝竴涓暟閲囨病鏈夊畬鎴�,鍒欎笉淇濆瓨鏁版嵁
- // return
- // }
- // this.saveInsContext(currentInsItemId)
- // }else{
- // this.saveInsContext(currentInsItemId)
- // }
- // }else{
- // this.saveInsContext(currentInsItemId)
- // }
- // }
})
break;
case 'tableList':
@@ -3105,18 +3240,19 @@
})
},
// 澶嶆牳
- upInsReview(e) {
- if (e == 1||e==2) {
+ upInsReview() {
+ if (this.upInsReviewType == 1||this.upInsReviewType==2) {
// 缁х画璇曢獙
this.reviewLoading = true;
this.$axios.post(this.$api.insOrderPlan.verifyPlan, {
- orderId: this.orderId,
- type: e,
+ sampleId: this.orderId,
+ type: this.upInsReviewType,
laboratory: this.sonLaboratory,
tell: null
}).then(res => {
if (res.code === 200) {
this.$message.success("鎿嶄綔鎴愬姛")
+ this.upInsReviewDia = false;
this.$emit('goback')
}
this.reviewLoading = false;
@@ -3133,7 +3269,7 @@
if (this.noReason) {
this.reviewLoading = true;
this.$axios.post(this.$api.insOrderPlan.verifyPlan, {
- orderId: this.orderId,
+ sampleId: this.orderId,
type: 0,
laboratory: this.sonLaboratory,
tell: this.noReason
@@ -3152,15 +3288,30 @@
}
},
submit0(){
- if(!this.experimentInfo.term){
- this.$message.error('璇疯緭鍏ュ疄楠岄樁娈�')
- return
+ if(this.sonLaboratory === '鐢佃矾璇曢獙'){
+ if(!this.experimentInfo.term){
+ this.$message.error('璇疯緭鍏ュ疄楠岄樁娈�')
+ return
+ }
+ if(!this.experimentInfo.note){
+ this.$message.error('璇疯緭鍏ュ疄楠屾搷浣�')
+ return
+ }
}
- if(!this.experimentInfo.note){
- this.$message.error('璇疯緭鍏ュ疄楠屾搷浣�')
- return
- }
+ // let num =0
+ // this.newUserInfo.forEach(item=>{
+ // item.timeArr.forEach(a=>{
+ // if(!a){
+ // num++
+ // }
+ // })
+ // })
+ // if(num>0){
+ // this.$message.error('璇疯緭鍏ュ畬鎴愬伐鏃�')
+ // return
+ // }
this.experimentDia = false
+ this.experimentDia0 = false
if(this.insOrder.orderType=='C'){
this.verifyUser = this.insOrder.prepareUserId
this.submit()
@@ -3168,8 +3319,41 @@
this.addVerifyDia = true
}
},
- handleSubmit(){
+ async handleSubmit(){
+ if(!this.otherForm.temperature){
+ this.$message.error('璇疯緭鍏ユ俯搴�')
+ return
+ }
+ if(!this.otherForm.humidity){
+ this.$message.error('璇疯緭鍏ユ箍搴�')
+ return
+ }
+ this.loading = true
+ if(this.sonLaboratory === '鐢佃矾璇曢獙'&&!(await this.$refs.CircuitParameters.saveAll())){
+ this.loading = false
+ return
+ }else{
+ this.loading = false
+ }
this.experimentDia = true
+ this.newUserInfo = []
+ this.userInfo.name.forEach((item,index)=>{
+ let timeArr = []
+ this.sampleProduct.forEach(m=>{
+ m.insProduct.forEach(a=>{
+ timeArr.push(0)
+ })
+ })
+ let obj = {
+ name:item,
+ id:this.userInfo.ids[index],
+ timeArr:timeArr
+ }
+ this.newUserInfo.push(obj)
+ })
+ if (this.sonLaboratory === '鐢佃矾璇曢獙') {
+ this.experimentDia0 = true
+ }
},
submit() {
if (this.verifyUser === null || this.verifyUser === '') {
@@ -3179,18 +3363,40 @@
this.addVerifyDia = false
this.submitLoading = true;
this.$axios.post(this.$api.insOrderPlan.checkSubmitPlan, {
- orderId: this.orderId,
+ sampleId: this.orderId,
laboratory: this.sonLaboratory,
}).then(res => {
if (res.code === 200) {
+ let auxiliaryOutputWorkingHoursList = []
+ this.sampleProduct.forEach(item=>{
+ item.insProduct.forEach((a,i)=>{
+ this.newUserInfo.forEach(b=>{
+ let obj = {
+ inspectionItem:a.inspectionItem,
+ outputWorkTime:b.timeArr[i],
+ inspectionItemSubclass:a.inspectionItemSubclass,
+ sample:item.sampleCode,
+ insProductId:a.id,
+ num:item.num1,
+ check:b.id
+ }
+ auxiliaryOutputWorkingHoursList.push(obj)
+ })
+ })
+ })
if(!res.data||res.data.length==0){
this.$axios.post(this.$api.insOrderPlan.submitPlan, {
- orderId: this.orderId,
+ sampleId: this.orderId,
laboratory: this.sonLaboratory,
verifyUser: this.verifyUser,
entrustCode: this.insOrder.entrustCode,
+ auxiliaryOutputWorkingHoursList:auxiliaryOutputWorkingHoursList,
...this.experimentInfo
- }).then(res => {
+ }, {
+ headers: {
+ 'Content-Type': 'application/json'
+ },
+ noQs:true}).then(res => {
if (res.code === 200) {
this.$message.success("鎿嶄綔鎴愬姛")
this.$emit('goback')
@@ -3219,11 +3425,16 @@
type: ""
}).then(() => {
this.$axios.post(this.$api.insOrderPlan.submitPlan, {
- orderId: this.orderId,
+ sampleId: this.orderId,
laboratory: this.sonLaboratory,
verifyUser: this.verifyUser,
+ auxiliaryOutputWorkingHoursList:auxiliaryOutputWorkingHoursList,
...this.experimentInfo
- }).then( res => {
+ }, {
+ headers: {
+ 'Content-Type': 'application/json'
+ },
+ noQs:true}).then( res => {
if (res.code === 200) {
this.submitLoading = false;
this.$message.success("鎿嶄綔鎴愬姛")
@@ -3245,7 +3456,7 @@
async handleCType(){
if(this.insOrder.departmentLims=='璐ㄩ噺閮�'){
await this.$axios.post(this.$api.insOrderPlan.verifyPlan, {
- orderId: this.orderId,
+ sampleId: this.orderId,
type: 1,
laboratory: this.sonLaboratory,
tell: null
@@ -3340,6 +3551,17 @@
// 淇濆瓨鏁版嵁
this.saveInsContext(n.i)
},
+ // 鏍峰搧妫�鏌�
+ changeSampleCheck(val, n,type){
+ this.$set(n.v,'v',val)
+ if(type=='鍓�'){
+ // 妫�楠屽墠
+ this.saveInsContext(n.i)
+ }else{
+ // 妫�楠屽悗
+ this.saveInsContext(n.i)
+ }
+ },
getAuthorizedPerson() {
this.$axios.get(this.$api.user.getUserMenu).then(res => {
let data = []
@@ -3408,7 +3630,9 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
}
})
@@ -3500,22 +3724,39 @@
let list = await this.getCurrentProduct(this.currentFiberOptic.id,2)
this.getTableLists0(list)
},
- handleSuccessUp(response, ) {
+ async handleSuccessUp(response, ) {
this.upLoading = false;
if (response.code == 200) {
this.$message.success('涓婁紶鎴愬姛');
this.$refs.fileList.selectList()
+ if(this.sonLaboratory === '鐢佃矾璇曢獙'){
+ // // 鐢佃矾璇曢獙鏁伴噰
+ // 鑾峰彇褰撳墠鏍峰搧鐨勬楠岄」
+ let list = await this.getCurrentProduct(this.currentSample.id,0)
+ this.currentSample.insProduct = this.HaveJson(list)
+ this.currentNum++
+ }
+ }else {
+ this.$message.error(response.message);
}
},
beforeUpload(file) {
- if (file.size > 1024 * 1024 * 10) {
- this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M');
- this.$refs.upload.clearFiles()
- return false;
- } else {
- this.upLoading = true;
- return true;
- }
+ if(this.sonLaboratory === '鐢佃矾璇曢獙'&&(file.name.includes('浜よ皟')||file.name.includes('浜掕皟'))&&!this.$refs.CircuitParameters.allBandList.find(m=>m.band)){
+ this.$message.error('涓婁紶闄勪欢鍓嶈鍏堝~鍐欏苟淇濆瓨棰戞');
+ return false
+ }else{
+ // if(file.name.includes('浜よ皟')||file.name.includes('浜掕皟')){
+ // this.$refs.CircuitParameters.saveAll()
+ // }
+ if (file.size > 1024 * 1024 * 10) {
+ this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M');
+ this.$refs.upload.clearFiles()
+ return false;
+ } else {
+ this.upLoading = true;
+ return true;
+ }
+ }
},
onError(err, file, fileList) {
this.$message.error('涓婁紶澶辫触')
@@ -3596,6 +3837,128 @@
await this.handleChangeSample(this.currentSample)
this.currentNum++
this.tableLoading = false
+ },
+ lookFile(row){
+ this.currentFile = row;
+ if(row.type==1){
+ this.currentFile.url = this.javaApi+'/img/'+row.fileUrl
+ }else{
+ this.currentFile.url = this.javaApi+'/word/'+row.fileUrl
+ }
+ this.lookFileVisible = true
+ },
+ handleBack(){
+ try {
+ if(!this.isLook&&this.state==1&&this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('鐢佃矾璇曢獙')){
+ this.$confirm('璇风‘璁ゅ綋鍓嶆暟鎹槸鍚﹀叏閮ㄤ繚瀛橈紝鏄惁杩斿洖锛�', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(async () => {
+ this.loading = true
+ if(await this.$refs.CircuitParameters.saveAll()){
+ this.$emit('goback')
+ this.loading = false
+ }else{
+ this.loading = false
+ }
+ })
+ }else{
+ this.$emit('goback')
+ }
+ } catch (error) {
+ this.$emit('goback')
+ }
+ },
+ selectInsProductTemplate(){
+ this.$axios.post(this.$api.insProductTemplate.chooseInsProductTemplate).then(res => {
+ if (res.code == 201) return
+ this.templates = res.data
+ })
+ },
+ selectInsProductTemplateById(e){
+ if(e){
+ this.$axios.post(this.$api.insProductTemplate.getInsProductTemplate + '?id=' + e).then(res => {
+ if (res.code == 201) return
+ let obj = JSON.parse(res.data.message)
+ if(this.currentTableState!=res.data.version){
+ this.$message.error('鐢佃皟/闈炵數璋冩ā鏉跨増鏈笉涓�鑷达紝璇烽噸鏂伴�夋嫨')
+ this.template = null
+ return
+ }
+ // 褰撳墠妯℃澘涓湭鍖呭惈鎵�鏈夐」鐩�
+ let state = this.currentSample.insProduct.every(item=>{
+ if(obj.allBandList&&obj.allBandList.length>0&&obj.allBandList[0].projectList&&obj.allBandList[0].projectList.length>0&&item.inspectionItemSubclass&&obj.allBandList[0].projectList.find(m=>m.inspectionItemSubclass==item.inspectionItemSubclass)){
+ return true
+ }else{
+ return false
+ }
+ })
+ if(!state){
+ this.template = null
+ this.$message.error('褰撳墠妯℃澘涓湭鍖呭惈鎵�鏈夐」鐩紝璇烽噸鏂伴�夋嫨')
+ return
+ }
+ // 淇濆瓨鐗堟湰
+ // this.saveVersion()
+ // 濡傛灉妯℃澘鐨勬楠岄」澶氫簡锛屽垯鍒犻櫎澶氫綑鐨�
+ obj.allBandList.forEach(item=>{
+ item.projectList.forEach((m,i)=>{
+ if(!this.currentSample.insProduct.find(n=>m.inspectionItemSubclass==n.inspectionItemSubclass)){
+ item.projectList.splice(i,1)
+ }
+ })
+ })
+ this.$refs.CircuitParameters.upTemplate(obj)
+ })
+ }
+ },
+ addTemplateDia(){
+ let obj = {
+ allBandList:this.$refs.CircuitParameters.allBandList,
+ intermodulationNum:this.$refs.CircuitParameters.intermodulationNum,
+ angleList:this.$refs.CircuitParameters.angleList,
+ }
+ if (this.templateName) {
+ this.templateLoading = true;
+ this.$axios.post(this.$api.insProductTemplate.addInsProductTemplate, {
+ name: this.templateName,
+ version:this.currentTableState,
+ message:JSON.stringify(obj)
+ }, {
+ headers: {
+ 'Content-Type': 'application/json'
+ }
+ }).then(res => {
+ if (res.code == 201) return
+ this.templateLoading = false;
+ this.templateDia = false;
+ this.$message.success('淇濆瓨鎴愬姛')
+ this.selectInsProductTemplate()
+ this.templateName = ''
+ })
+ } else {
+ this.$message.error('璇峰~鍐欐ā鏉垮悕绉�')
+ }
+ },
+ handleDelete(row){
+ this.$confirm('鏄惁鍒犻櫎褰撳墠鏁版嵁?', "璀﹀憡", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning"
+ }).then(() => {
+ this.$axios.post(this.$api.insProductTemplate.delInsProductTemplate, {
+ id: row.id
+ }).then(res => {
+ if (res.code === 201) {
+ return
+ }
+ this.$message.success('鍒犻櫎鎴愬姛')
+ this.selectInsProductTemplate()
+ }).catch(e => {
+ this.$message.error('鍒犻櫎澶辫触')
+ })
+ }).catch(() => {})
}
}
}
--
Gitblit v1.9.3