From ff017259dac281ca30195b4d2d337f14c24f9332 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期四, 19 十二月 2024 14:16:25 +0800
Subject: [PATCH] 完成cnas8.7搬迁
---
src/components/do/b1-inspect-order-plan/Inspection.vue | 1017 ++++++++++++++++++++++++++++++++++++----------------------
1 files changed, 628 insertions(+), 389 deletions(-)
diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index d375aa1..3334450 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -181,6 +181,13 @@
display: inline-flex;
align-items: center;
}
+ .history-btn{
+ display: flex;
+ align-items: center;
+ }
+ .noShow{
+ opacity: 0;
+ }
</style>
<style>
.inspection .el-form-item__label {
@@ -250,31 +257,42 @@
<template>
<div v-loading="loading" class="inspection">
<el-row class="title">
- <el-col :span="12" style="padding-left: 20px;text-align: left;" >妫�楠屽崟璇︽儏
+ <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="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>
- <el-button size="small" type="primary" @click="bushingVisible=true" v-if="bushing.length>0">濂楃鍒囨崲</el-button> -->
- <el-button size="small" type="primary" @click="sampleVisible=true;uploadSample()">鏍峰搧鍒囨崲</el-button>
- <el-button size="small" type="primary" @click="taskVisible=true">浠诲姟鍒囨崲</el-button>
+ <el-col :span="12" style="text-align: right;display: flex;align-items: center;justify-content: end;margin-bottom: 16px;">
+ <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="medium" type="primary" @click="upInsReview(1)" :loading="reviewLoading"
- v-if="state>1">閫氳繃</el-button>
- <el-button size="medium" @click="upInsReview(0)" v-if="state>1">涓嶉�氳繃</el-button>
- <el-button size="small" @click="$emit('goback')">杩斿洖</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">
+ <div class="search" v-show="!isLook">
<el-form :inline="true" :model="searchForm" class="form-inline" label-width="100px" label-position="right">
<el-form-item label="濮旀墭缂栧彿:">
<el-input clearable v-model="insOrder.entrustCode" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
</el-form-item>
<el-form-item label="鏍峰搧缂栧彿:">
<el-tooltip :disabled="!currentSample.sampleCode" :content="currentSample.sampleCode">
- <el-input clearable v-model="currentSample.sampleCode" disabled size="small" placeholder="璇疯緭鍏�" ></el-input>
+ <el-input clearable v-model="currentSample.sampleCode" disabled size="small" placeholder="璇疯緭鍏�" tooltip></el-input>
</el-tooltip>
</el-form-item>
<el-form-item label="鏍峰搧鍚嶇О:">
@@ -282,6 +300,9 @@
</el-form-item>
<el-form-item label="鏍峰搧鏁伴噺:">
<el-input clearable v-model="sampleProduct.length" disabled size="small" placeholder="璇疯緭鍏�" ></el-input>
+ </el-form-item>
+ <el-form-item label="璇曢獙鏍囧噯:">
+ <span>{{ currentSample.testRequirements?currentSample.testRequirements:'-' }}</span>
</el-form-item>
<el-form-item label="涓嬪彂鏃堕棿:">
<el-input clearable v-model="insOrder.sendTime" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
@@ -295,9 +316,11 @@
<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>
- <!-- <el-tag v-if="currentKey">{{ insOrder.remark }}</el-tag> -->
</el-form-item>
</el-form>
</div>
@@ -309,41 +332,13 @@
<el-radio-button :label="item.templateId" v-for="(item,index) in tableLists" :key="index"
size="small">{{ item.templateName }}</el-radio-button>
</el-radio-group>
+ <!-- <span style="margin-left: 20px;margin-right: 10px;">妯℃澘鐗堟湰:</span>
+ <el-radio-group v-model="currentTableState" size="small">
+ <el-radio-button label="0" size="small">鐗堟湰涓�</el-radio-button>
+ <el-radio-button label="1" size="small">鐗堟湰浜�</el-radio-button>
+ </el-radio-group> -->
</div>
<div style="display: flex;align-items: center;">
- <span v-if="casing.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�'"> 濂楃锛�</span>
- <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,3)" v-if="casing.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
- <el-option
- v-for="item in casing"
- :key="item.id"
- :label="item.color"
- :value="item.id">
- <span style="float: left">{{ item.color}}</span>
- <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag>
- </el-option>
- </el-select>
- <span v-if="fibers.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'"> 鍏夌氦甯︼細</span>
- <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,1)" v-if="fibers.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
- <el-option
- v-for="item in fibers"
- :key="item.value"
- :label="item.code"
- :value="item.id">
- <span style="float: left">{{ item.code}}</span>
- <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag>
- </el-option>
- </el-select>
- <span v-if="fiber.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'"> 鍏夌氦锛�</span>
- <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,2)" v-if="fiber.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
- <el-option
- v-for="item in fiber"
- :label="item.bushColor+'-'+item.color"
- :key="item.id"
- :value="item.id">
- <span style="float: left">{{ item.bushColor+'-'+item.color }}</span>
- <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag>
- </el-option>
- </el-select>
<el-form :inline="true" :model="otherForm" class="form-inline" label-width="50px" style="padding-top: 0;padding-left: 10px;" v-if="PROJECT=='妫�娴嬩腑蹇�'">
<el-form-item label="娓╁害:" style="margin-bottom: 0;">
<el-input v-model="otherForm.temperature" :disabled="state>1" size="small" placeholder="" style="width: 90px;" @change="m=>subOtherForm(m,'temperature')" ></el-input>
@@ -357,9 +352,14 @@
<el-button type="primary" size="small" v-if="(isGet||tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'&&temDataAcquisition)&&PROJECT=='妫�娴嬩腑蹇�'&&state==1" @click="getDataAcquisitionDevice" :loading="dataAcquisitionLoading">鏁版嵁閲囬泦</el-button>
<el-button :type="dataAcquisitionEidtAble?'':'primary'" size="small" v-if="(isGet||(tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'))&&PROJECT=='妫�娴嬩腑蹇�'&&collected&&state==1" @click="dataAcquisitionEidtAble=!dataAcquisitionEidtAble">{{dataAcquisitionEidtAble?'鍏抽棴缂栬緫':'缂栬緫鏁伴噰'}}</el-button>
</div>
+ <!-- <div class="history-btn" v-if="isLook">
+ <el-button type="primary" icon="el-icon-arrow-left" size="small" @click="goHistory(-1)">涓婁竴鏉¤褰�</el-button>
+ <span style="font-size: 14px;margin: 0 10px;">褰撳墠绗瑊{num}}鏉�</span>
+ <el-button type="primary" size="small" @click="goHistory(1)">涓嬩竴鏉¤褰�<i class="el-icon-arrow-right el-icon--right"></i></el-button>
+ </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!='娓╁害寰幆妫�楠屽師濮嬭褰�'&&!tableLists.find(m=>m.templateId==currentTable).templateName.includes('鐑惊鐜�')&&!tableLists.find(m=>m.templateId==currentTable).templateName.includes('娓╁崌璇曢獙'))&&(tableLists.find(m=>m.templateId==currentTable).templateName!='寮у瀭鐗规�ф楠屽師濮嬭褰�')">
+ <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">
@@ -430,14 +430,17 @@
</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==='鏍峰搧鍨嬪彿'">
<div :style="`font-family:${n.v.ff} !important;`" v-if="currentSample.model!==undefined&¤tSample.model!==null">{{currentSample.model}}</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.testRequirements!==undefined&¤tSample.testRequirements!==null">{{currentSample.testRequirements}}</div>
</template>
<template v-else-if="n.v.ps!=undefined && n.v.ps.value==='濂楃'">
<div style="display: flex;flex-wrap: nowrap;align-items: center;">
@@ -466,93 +469,26 @@
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>
</td>
</tr>
</tbody>
</table>
- </div>
- <!-- 寮у瀭鐗规�ф楠屽師濮嬭褰� -->
- <div v-loading="tableLoading" v-else-if="tableLists.find(m=>m.templateId==currentTable).templateName=='寮у瀭鐗规�ф楠屽師濮嬭褰�'">
- <el-divider></el-divider>
- <h4 style="margin-bottom: 20px;font-size: 24px;font-weight: 400;text-align: center;">寮у瀭鐗规�ф楠屽師濮嬭褰�</h4>
- <el-form :inline="true" :model="sagForm" class="form-inline" label-width="120px" style="justify-content: flex-start;display: flex;align-items: center;width: 100%;">
- <el-form-item label="鏍峰搧缂栧彿" style="margin-bottom: 0;">
- <el-input clearable v-model="sagForm.sampleCode" disabled size="small" placeholder=""></el-input>
- </el-form-item>
- <el-form-item label="鍨嬪彿" style="margin-bottom: 0;">
- <el-input clearable v-model="sagForm.model" disabled size="small" placeholder=""></el-input>
- </el-form-item>
- <el-form-item label="妫�楠屼緷鎹�" style="margin-bottom: 0;">
- <el-input clearable v-model="sagForm.inspection" disabled size="small" placeholder=""></el-input>
- </el-form-item>
- <el-form-item label="璁惧缂栧彿" style="margin-bottom: 0;">
- <el-input clearable v-model="sagForm.methodName" disabled size="small" placeholder=""></el-input>
- </el-form-item>
- <el-form-item label="棰濆畾鎷夋柇鍔�/kN" style="margin-bottom: 0;">
- <el-input clearable v-model="sagForm.tensileForce" disabled size="small" placeholder=""></el-input>
- </el-form-item>
- <el-form-item label="璺ㄨ窛闀垮害/m" style="margin-bottom: 0;">
- <el-input clearable v-model="sagForm.spanLength" disabled size="small" placeholder=""></el-input>
- </el-form-item>
- <el-form-item label="杞借嵎/kN" style="margin-bottom: 0;">
- <el-input clearable v-model="sagForm.load" disabled size="small" placeholder=""></el-input>
- </el-form-item>
- </el-form>
- <el-divider></el-divider>
- <div class="container">
- <el-button class="right-button" type="primary" size="small" @click="addSag">娣� 鍔�</el-button>
- </div>
- <el-table :data="sagData" class="custom-table" border>
- <el-table-column label="楂樺害 h mm" prop="height" align="center">
- </el-table-column>
- <el-table-column label="寮у瀭 mm" prop="sag" align="center">
- </el-table-column>
- <el-table-column label="瀵肩嚎娓╁害鈩�" align="center">
- <el-table-column label="1" prop="one" align="center">
- <template slot-scope="scope">
- <el-input v-model="scope.row.one" style="width: 100%;"></el-input>
- </template>
- </el-table-column>
- <el-table-column label="2" prop="two" align="center">
- <template slot-scope="scope">
- <el-input v-model="scope.row.two" style="width: 100%;"></el-input>
- </template>
- </el-table-column>
- <el-table-column label="3" prop="three" align="center">
- <template slot-scope="scope">
- <el-input v-model="scope.row.three" style="width: 100%;"></el-input>
- </template>
- </el-table-column>
- <el-table-column label="4" prop="four" align="center">
- <template slot-scope="scope">
- <el-input v-model="scope.row.four" style="width: 100%;"></el-input>
- </template>
- </el-table-column>
- <el-table-column label="5" prop="five" align="center">
- <template slot-scope="scope">
- <el-input v-model="scope.row.five" style="width: 100%;"></el-input>
- </template>
- </el-table-column>
- <el-table-column label="6" prop="six" align="center">
- <template slot-scope="scope">
- <el-input v-model="scope.row.six" style="width: 100%;"></el-input>
- </template>
- </el-table-column>
- </el-table-column>
- <el-table-column label="骞冲潎娓╁害鈩�" prop="average" align="center">
- </el-table-column>
- <el-table-column label="瀹ゆ俯鈩�" prop="temperature" align="center">
- </el-table-column>
- <el-table-column label="寮犲姏kN" prop="remark" align="center">
- </el-table-column>
- <el-table-column label="鎿嶄綔" align="center">
- <template slot-scope="scope">
- <el-button type="text" size="small" @click="deleteSag(scope.$index)"><span style="color:red">鍒犻櫎</span></el-button>
- </template>
- </el-table-column>
- </el-table>
</div>
<!-- 娓╁害寰幆妫�楠屽師濮嬭褰� -->
<div v-loading="tableLoading" v-else-if="tableLists.find(m=>m.templateId==currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'">
@@ -799,59 +735,39 @@
</table>
</div>
</div>
+ <!-- 鐢佃矾璇曢獙 -->
+ <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" 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' :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"
:key="upIndex" style="height: 100%;margin-top: 16px;"/>
</div>
- <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="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>
- <el-table-column prop="color" label="鍏夌氦鑹叉爣" min-width="100px" show-overflow-tooltip></el-table-column>
- <el-table-column prop="model" label="鍏夌氦瑙勬牸" min-width="130px" show-overflow-tooltip
- ></el-table-column>
- <el-table-column prop="standard" label="鍙傝�冩爣鍑�" width="100px" show-overflow-tooltip></el-table-column>
- </el-table>
- </el-drawer>
- <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="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>
- <el-table-column prop="model" label="鍏夌氦甯﹁鏍�" min-width="110px" show-overflow-tooltip></el-table-column>
- <el-table-column prop="standard" label="鍙傝�冩爣鍑�" width="90px" show-overflow-tooltip></el-table-column>
- <el-table-column prop="num" label="鍏夌氦妫�娴嬮噺" min-width="110px" show-overflow-tooltip
- ></el-table-column>
- </el-table>
- </el-drawer>
- <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="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>
- <el-table-column prop="standNum" label="鏍囬噺" min-width="100px" show-overflow-tooltip></el-table-column>
- <el-table-column prop="testNum" label="娴嬭瘯閲�" min-width="100px" show-overflow-tooltip></el-table-column>
- </el-table>
- </el-drawer>
- <el-drawer title="鏍峰搧鍒囨崲" :visible.sync="sampleVisible" :size="500">
+ <el-drawer title="鏍峰搧鍒囨崲" :visible.sync="sampleVisible" :size="500" :modal="!noBack">
<el-table class="el-table" ref="productTable" :data="sampleProduct" height="100%" tooltip-effect="dark" border
highlight-current-row @row-click="handleChangeSample" :row-class-name="tableRowClassName"
:current-row-key="currentKey" :row-key="record=>record.index" v-if="sampleVisible">
@@ -886,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>
@@ -946,6 +862,98 @@
<el-button type="primary" @click="submitDataGet()" :loading="getDataIndexLoading">纭� 瀹�</el-button>
</span>
</el-dialog>
+ <el-dialog
+ title="閫夋嫨鐢佃矾妫�楠屾ā鏉跨増鏈�"
+ :visible.sync="versionDialogVisible"
+ width="30%"
+ :close-on-click-modal="false"
+ :close-on-press-escape="false"
+ :show-close="false">
+ <el-radio-group v-model="currentTableState">
+ <el-radio :label="0">鐢佃皟-鐢佃矾妫�楠屽師濮嬭褰�</el-radio>
+ <el-radio :label="1">闈炵數璋�-鐢佃矾妫�楠屽師濮嬭褰�</el-radio>
+ </el-radio-group>
+ <span slot="footer" class="dialog-footer">
+ <el-button type="primary" :loading="versionLoading" @click="saveVersion">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <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 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>
</template>
@@ -953,23 +961,36 @@
import ValueTable from '../../tool/value-table.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'],
+ props: ['sonLaboratory', 'orderId', 'state','inspectorList','version','orderStateId','isLook','num1','noBack','orderId0','userInfo'],
components: {
ValueTable,
+ CircuitParameters1,
+ CircuitParameters2,
+ filePreview,
+ Humidity,
+ PowerCapacity,
},
data() {
return {
- sagData: [],
- sagForm: {
- sampleCode: null,
- model: null,
- inspection: null,
- methodName: null,
- tensileForce: null,
- spanLength: null,
- load: null
+ lookFileVisible:false,//棰勮鏂囦欢
+ experimentDia:false,
+ experimentDia0:false,
+ upInsReviewDia:false,
+ upInsReviewType:1,
+ experimentInfo:{
+ note:'',
+ term:''
},
+ currentNum:0,
+ versionLoading:false,
+ versionDialogVisible:false,
+ currentTableState:0,
dataGetDia:false,
wareTableDataLoading:false,
fileAdd:false,
@@ -1009,6 +1030,8 @@
},
componentData0: {
entity: {
+ insSampleId:'',
+ sonLaboratory:this.sonLaboratory,
insOrderId:''
},
isIndex: true,
@@ -1030,6 +1053,12 @@
disabFun: (row, index) => {
return this.state!=1
}
+ },
+ {
+ id: '1',
+ font: '棰勮',
+ type: 'text',
+ method: 'lookFile',
}
],
isPage: false,
@@ -1055,7 +1084,6 @@
},
upIndex: 0,
changeType:null,
- getReportModelLoading:false,
insOrder: {},
sampleProduct: [],
typeList: [],
@@ -1084,9 +1112,6 @@
verifyUser: null,
personList: [],
enumList: [],
- fiberOpticVisible:false,
- fiberOpticTapeVisible:false,
- bushingVisible:false,
fiberOpticTape:[],//鍏夌氦甯﹀垪琛�
fiberOptic:[],//鍏夌氦鍒楄〃
bushing:[],//濂楃鍒楄〃
@@ -1108,10 +1133,6 @@
numOptions:[],
temperatureOptions:[],
wareTableData:[],
- otherForm:{
- humidity:null,
- temperature:null,
- },
equipForm:{
value0:null,
code0:null,
@@ -1138,35 +1159,25 @@
},
thermalCyclingLoading:false,
temDataAcquisition:false,
- getData:[
- {
- faName:'娉㈤暱闄勫姞琛板噺',
- child:[
- {
- name:'1285nm~1330nm',
- arr:[12,13,14,15],
- },
- {
- name:'1525nm~1575nm',
- arr:[12,13,14,15],
- },
- ]
- },
- {
- faName:'鎴嚦娉㈤暱',
- child:[
- {
- name:'鎴嚦娉㈤暱',
- arr:[12,13,14,15],
- }
- ]
- }
- ],
+ getData:[],
getDataIndex:[],
getDataIndexLoading:false,
changeType:null,
getDataTypeId:'',
- getDataType:null
+ getDataType:null,
+ num:0,
+ otherForm:{
+ temperature:'',
+ humidity:''
+ },
+ currentFile:{},//褰撳墠鏂囦欢
+ templates:[],//鐢佃矾璇曢獙妯℃澘
+ templateDia:false,//鐢佃矾璇曢獙妯℃澘淇濆瓨妯℃澘寮规
+ template:null,
+ templateLoading:false,
+ templateName:'',
+ addInsProductTemplatePower:false,//閰嶇疆妯℃澘鏉冮檺
+ newUserInfo:[]
}
},
// 鐢ㄤ簬涓婁紶鏂囦欢鐨勪俊鎭�
@@ -1183,6 +1194,8 @@
created() {
this.componentData.entity.sonLaboratory = this.sonLaboratory;
this.id = this.orderId;
+ this.currentTableState = this.version
+ this.num = this.num1
this.getUserInfo()
},
mounted() {
@@ -1193,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) {
@@ -1241,12 +1256,13 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
}
})
this.determineWhetherToCollectData()//鏄惁闇�瑕佹暟閲�
- this.getReportModel(this.currentSample.id)//鑾峰彇濂楃銆佸厜绾ゅ甫銆佸厜绾や俊鎭�
if (this.currentSample.index == undefined) this.currentSample['index'] = 1
let bushing = this.currentSample.bushing
this.getTableLists();//澶勭悊妯℃澘鍒楄〃淇℃伅
@@ -1296,7 +1312,6 @@
}
}
})
- this.getReportModel(this.currentSample.id)//鑾峰彇濂楃銆佸厜绾ゅ甫銆佸厜绾や俊鎭�
// 鍘婚噸妯℃澘锛岃繑鍥炴湁鍑犱釜妯℃澘
const mySet1 = new Set();
this.tableLists = this.currentSample.insProduct.filter(m => {
@@ -1367,7 +1382,7 @@
})
}
// 淇濆瓨鏁版嵁
- this.saveInsContext()
+ this.saveInsContext(this.currentSample.insProduct[0].id)
}
}
},
@@ -1377,22 +1392,6 @@
this.stopWorker();
},
methods: {
- // 鍒犻櫎琛�
- deleteSag(index) {
- this.sagData.splice(index, 1)
- },
- // 娣诲姞寮у瀭妫�娴�
- addSag() {
- this.sagData.push({
- sampleCode: null,
- model: null,
- inspection: null,
- methodName: null,
- tensileForce: null,
- spanLength: null,
- load: null
- })
- },
// 鏁版嵁閲囬泦
getDataAcquisitionDevice(){
if(this.tableLists.find(m=>m.templateId==this.currentTable)&&this.tableLists.find(m=>m.templateId==this.currentTable).templateName=='娓╁害寰幆妫�楠屽師濮嬭褰�'){
@@ -2204,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
@@ -2217,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)
@@ -2224,6 +2227,7 @@
this.fileAdd = fileAdd
this.collected = collected
this.temDataAcquisition = temDataAcquisition
+ this.addInsProductTemplatePower = addInsProductTemplatePower
},
uploadSample(){
this.$axios.post(this.$api.insOrderPlan.doInsOrder, {
@@ -2236,66 +2240,14 @@
// 鏍规嵁绫诲瀷銆佷换鍔d銆佸疄楠屽鏉ヨ幏鍙栨牱鍝佺殑妫�楠岄」淇℃伅
async getCurrentProduct(id,type){
this.tableLoading = true;
- let res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory)
+ let res = null;
+ if(!this.isLook){
+ res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory)
+ }else{
+ res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct2+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory+'&num='+this.num)
+ }
this.tableLoading = false;
return res.data
- },
- handleChangeBushing(row, column, event){
- this.currentBushing = row;
- this.fiberOpticTape = []
- this.currentFiberOpticTape = null;
- this.fiberOptic = []
- this.currentFiberOptic = null;
- if(row.fiber&&row.fiber.length>0){
- // 鐩存帴閰嶇疆鍏夌氦
- this.fiberOptic = row.fiber;
- }else if(row.fibers&&row.fibers.length>0){
- // 閰嶇疆鍏夌氦甯﹀悗锛屽啀閰嶇疆鍏夌氦
- this.fiberOpticTape = row.fibers;
- }
- this.bushingVisible = false;
- this.currentKey0 = row.index
- },
- async handleChangeOptic(row, column, event){
- this.currentFiberOptic = row;
- this.currentFiberOptic.productList.forEach(a => {
- this.param[a.id] = {
- insValue: [],
- comValue: [],
- resValue: null,
- equipValue: [],
- equipName: [],
- insResult: null
- }
- })
- this.fiberOpticVisible = false;
- let list = await this.getCurrentProduct(row.id,2)
- this.getTableLists0(list)
- this.currentKey2 = row.index
- },
- async handleChangeTape(row, column, event){
- this.currentFiberOpticTape = row;
- 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(row.id,1)
- this.getTableLists0(list)
- if(row.fiber&&row.fiber.length>0){
- // 閰嶇疆鍏夌氦
- this.fiberOptic = row.fiber;
- }
- this.currentKey1 = row.index
},
// 鍒囨崲鏍峰搧
async handleChangeSample(row, column, event) {
@@ -2303,6 +2255,7 @@
this.param = {}
// 娓呯┖鍏夌氦閰嶇疆鐩稿叧鏁版嵁
this.fiberOpticTape = []
+ this.template = ''
this.currentFiberOpticTape = null;
this.fiberOptic = []
this.currentFiberOptic = null;
@@ -2325,19 +2278,19 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
}
})
- // 鑾峰彇濂楃,鍏夌氦甯�,鍏夌氦鏁版嵁
- this.getReportModel(row.id)
let bushing = this.currentSample.bushing
if(bushing&&bushing.length>0){
this.bushing = bushing
}
// 澶勭悊椤甸潰鍒楄〃鏁版嵁
this.getTableLists();
- this.currentKey = row.index
+ this.currentKey = row.index?row.index:0
this.currentTab = null;
// 鍚戝绾跨▼鍘讳繚瀛橀〉闈㈠垪琛ㄦ暟鎹�,鍚庣浼犲弬,褰撳墠妯℃澘淇℃伅
this.worker.postMessage(JSON.stringify({
@@ -2359,19 +2312,6 @@
return true
}
},
- // 鑾峰彇濂楃,鍏夌氦甯�,鍏夌氦鏁版嵁
- getReportModel(id){
- if(this.PROJECT!='妫�娴嬩腑蹇�'){
- return
- }
- this.getReportModelLoading = true
- this.$axios.post(this.$api.insOrderPlan.getReportModel+'?sampleId='+id, {}).then(res => {
- this.getReportModelLoading = false
- this.fibers = res.data['鍏夌氦甯�']
- this.fiber = res.data['鍏夌氦']
- this.casing = res.data['濂楃']
- })
- },
// 濂楃,鍏夌氦甯�,鍏夌氦绛夊垏鎹�,瀵瑰簲鍘熷璁板綍妯℃澘涔熻鍒囨崲
async handleChange(m,type){
this.changeType = type
@@ -2388,13 +2328,13 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
})
// 椤甸潰鍒楄〃鏁版嵁澶勭悊
this.getTableLists0(list)
- // 鑾峰彇濂楃,鍏夌氦甯�,鍏夌氦鏁版嵁
- this.getReportModel(this.currentSample.id)
// 鍚戝绾跨▼淇濆瓨鏁版嵁
this.worker.postMessage(JSON.stringify({
type: 'saveData',
@@ -2505,6 +2445,9 @@
this.tableList = null;
this.tableList = [this.tableLists[0]]
this.currentTable = this.tableLists[0].templateId;
+ if(this.tableLists.find(m=>m.templateId==this.currentTable)&&this.tableLists.find(m=>m.templateId==this.currentTable).templateName.includes('鐢佃矾璇曢獙')&&this.currentTableState!=0&&this.currentTableState!=1){
+ this.versionDialogVisible = true
+ }
// 澶勭悊椤甸潰鍒楄〃鏁版嵁
this.handleTableData()
}
@@ -2738,6 +2681,7 @@
}
}
})
+ console.log(4444,a.template)
// 鎿嶄綔璧嬪��--涓昏璧嬪�煎崟浣�,璇曢獙鏂规硶绛変俊鎭�
ids.forEach(id => {
for (let b = 0; b < a.template.length; b++) {
@@ -2750,6 +2694,9 @@
.ps.value === '妫�娴嬫柟娉�')) {
a.template[b].v.v = id.product.methodS
}
+ // if (a.template[b].v.ps != undefined && (a.template[b].v.ps.value === '璇曢獙鏍囧噯')) {
+ // a.template[b].v.v = id.product.testRequirements
+ // }
}
}
})
@@ -2834,6 +2781,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鍑芥暟鍒楄〃閲岄潰
@@ -2931,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()
@@ -2945,7 +2910,9 @@
if(getDataType=='getDataType'){
this.getDataType = 2;
}
+ let currentInsItemId = null//褰撳墠妫�楠岄」id
if (n) {
+ currentInsItemId = JSON.parse(JSON.stringify(n.i))
// 闇�瑕佺瀛﹁鏁版硶鐨勫彲浠ヨ蛋杩欓噷
if (this.PROJECT === '妫�娴嬩腑蹇�') {
if(this.tableList.find(ele=>ele.inspectionItem=='浣撶Н鐢甸樆鐜�')){
@@ -2965,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({
@@ -2981,17 +2955,19 @@
} catch (error) {
console.log(444,error);
}
-
// 鐩戝惉 Worker 杩斿洖鐨勭粨鏋�
this.worker.onmessage = (event) => {
this.result = JSON.parse(event.data);
switch (this.result.method){
case 'saveInsContext':
- console.log(`output->`,11111111111111)
this.$nextTick(()=>{
// this.$delete(this.tableList[0],'arr')
this.$set(this.tableList[0],'arr',this.result.value.tableList[0].arr)
this.param = this.result.value.param
+ 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){
@@ -3002,33 +2978,7 @@
}
}
}
- // 濡傛灉鏄暟閲囧彲缂栬緫杈撳叆鐨勬儏鍐�,鍙互鐩存帴淇濆瓨鏁版嵁
- if(this.getDataType==2){
- this.saveInsContext()
- }else{
- if(this.isGet&&!this.dataAcquisitionEidtAble){
- if(this.result.value.getDataTypeId==''){
- // 濡傛灉鏄暟閲囦笉鍙紪杈戣緭鍏ョ殑鎯呭喌,涓旀渶鍚庝竴涓暟閲囨病鏈夊畬鎴�,鍒欎笉淇濆瓨鏁版嵁
- return
- }
- // 淇濆瓨鏁版嵁
- setTimeout(()=>{
- this.saveInsContext()
- },2000)
- }else if(this.isGet&&this.dataAcquisitionEidtAble){
- if(this.getDataType==1){
- if(this.result.value.getDataTypeId==''){
- // 濡傛灉鏄暟閲囧彲缂栬緫杈撳叆鐨勬儏鍐�,涓旀渶鍚庝竴涓暟閲囨病鏈夊畬鎴�,鍒欎笉淇濆瓨鏁版嵁
- return
- }
- this.saveInsContext()
- }else{
- this.saveInsContext()
- }
- }else{
- this.saveInsContext()
- }
- }
+ this.saveInsContext(currentInsItemId)
})
break;
case 'tableList':
@@ -3290,18 +3240,19 @@
})
},
// 澶嶆牳
- upInsReview(e) {
- if (e == 1) {
- // 閫氳繃
+ upInsReview() {
+ if (this.upInsReviewType == 1||this.upInsReviewType==2) {
+ // 缁х画璇曢獙
this.reviewLoading = true;
this.$axios.post(this.$api.insOrderPlan.verifyPlan, {
- orderId: this.orderId,
- type: 1,
+ 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;
@@ -3309,8 +3260,8 @@
console.error(error)
this.reviewLoading = false;
})
- } else {
- // 涓嶉�氳繃
+ } else{
+ // 鍐嶆璇曢獙
this.reviewDia = true;
}
},
@@ -3318,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
@@ -3336,12 +3287,72 @@
this.$message.error('鏈緭鍏ヤ笉閫氳繃鍘熷洜')
}
},
- handleSubmit(){
- if(this.insOrder.departmentLims=='妫�娴嬩腑蹇�'&&this.insOrder.orderType=='C'){
+ submit0(){
+ if(this.sonLaboratory === '鐢佃矾璇曢獙'){
+ if(!this.experimentInfo.term){
+ 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()
}else{
this.addVerifyDia = true
+ }
+ },
+ 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() {
@@ -3349,28 +3360,43 @@
this.$message.error("璇锋寚瀹氬鏍镐汉鍛�")
return
}
- if(!this.otherForm.humidity){
- this.$message.error("璇疯緭鍏ユ箍搴�")
- return
- }
- if(!this.otherForm.temperature){
- this.$message.error("璇疯緭鍏ユ俯搴�")
- return
- }
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
- }).then(res => {
+ entrustCode: this.insOrder.entrustCode,
+ auxiliaryOutputWorkingHoursList:auxiliaryOutputWorkingHoursList,
+ ...this.experimentInfo
+ }, {
+ headers: {
+ 'Content-Type': 'application/json'
+ },
+ noQs:true}).then(res => {
if (res.code === 200) {
this.$message.success("鎿嶄綔鎴愬姛")
this.$emit('goback')
@@ -3399,11 +3425,18 @@
type: ""
}).then(() => {
this.$axios.post(this.$api.insOrderPlan.submitPlan, {
- orderId: this.orderId,
+ sampleId: this.orderId,
laboratory: this.sonLaboratory,
- verifyUser: this.verifyUser
- }).then(res => {
+ verifyUser: this.verifyUser,
+ auxiliaryOutputWorkingHoursList:auxiliaryOutputWorkingHoursList,
+ ...this.experimentInfo
+ }, {
+ headers: {
+ 'Content-Type': 'application/json'
+ },
+ noQs:true}).then( res => {
if (res.code === 200) {
+ this.submitLoading = false;
this.$message.success("鎿嶄綔鎴愬姛")
this.$emit('goback')
}
@@ -3414,21 +3447,41 @@
}
}
- this.submitLoading = false;
}).catch(error => {
console.error(error)
this.submitLoading = false;
})
return
},
+ async handleCType(){
+ if(this.insOrder.departmentLims=='璐ㄩ噺閮�'){
+ await this.$axios.post(this.$api.insOrderPlan.verifyPlan, {
+ sampleId: this.orderId,
+ type: 1,
+ laboratory: this.sonLaboratory,
+ tell: null
+ }).then(res => {
+ if (res.code === 200) {
+ }
+ }).catch(error => {
+ })
+ }
+ },
// 缁熶竴鍦ㄨ繖閲屼繚瀛樻暟鎹�
- saveInsContext() {
+ saveInsContext(currentInsItemId) {
try {
console.log(1111,this.param)
if(this.param){
+ let param = null
+ if(currentInsItemId){
+ param = {[currentInsItemId] : this.param[currentInsItemId]}
+ }else{
+ param = this.param
+ }
this.$axios.post(this.$api.insOrderPlan.saveInsContext, {
- param: JSON.stringify(this.param),
- currentTable:this.currentTable
+ param: JSON.stringify(param),
+ currentTable:this.currentTable,
+ num:this.currentSample.num1
}).then(res => {
if (res.code == 201) {
this.$message.error('淇濆瓨澶辫触')
@@ -3496,7 +3549,18 @@
}
}
// 淇濆瓨鏁版嵁
- this.saveInsContext()
+ 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 => {
@@ -3566,7 +3630,9 @@
resValue: null,
equipValue: [],
equipName: [],
- insResult: null
+ insResult: null,
+ beforeCheck:null,
+ afterCheck:null,
}
}
})
@@ -3627,7 +3693,6 @@
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){
@@ -3659,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('涓婁紶澶辫触')
@@ -3720,6 +3802,163 @@
}else{
return v
}
+ },
+ async getCurrentItem(){
+ let list = await this.getCurrentProduct(this.currentSample.id,0)
+ this.currentSample.insProduct = this.HaveJson(list)
+ },
+ saveVersion(){
+ if(this.currentTableState!=0&&this.currentTableState!=1){
+ this.$message.error('璇烽�夋嫨鐗堟湰')
+ return
+ }
+ this.versionLoading = true;
+ this.$axios.post(this.$api.insOrderPlan.chooseVersion, {
+ orderStateId: this.orderStateId,
+ version: this.currentTableState
+ }).then(res => {
+ this.versionLoading = false;
+ if(res.code==201){
+ return
+ }
+ this.versionDialogVisible = false
+ })
+ },
+ async goHistory(num){
+ if(this.num==1&&num==-1){
+ this.$message.error('褰撳墠鏄涓�鏉¤褰�')
+ return
+ }else if(this.num1==this.num&&num==1){
+ this.$message.error('褰撳墠鏄渶鍚庝竴鏉¤褰�')
+ return
+ }
+ this.num = this.num + num
+ this.tableLoading = true
+ 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