From 2e9370979f871bf47f6dc145c49d7bf32ffa4b51 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期一, 03 六月 2024 09:08:02 +0800
Subject: [PATCH] 完成光纤配置进行检验
---
src/components/do/b1-inspect-order-plan/Inspection.vue | 561 +++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 435 insertions(+), 126 deletions(-)
diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index 6f5c462..f0d7503 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -41,8 +41,13 @@
flex-direction: column;
flex-wrap: wrap;
width: 100%;
- /* overflow-x: hidden; */
- overflow-x: scroll;
+ overflow-x: hidden;
+ /* overflow-x: scroll; */
+ cursor: grab;
+ }
+
+ .center-box:active{
+ cursor: grabbing;
}
.tables {
@@ -59,13 +64,16 @@
.content {
display: flex;
- /* width: 100px; */
height: 100%;
align-items: center;
justify-content: left;
padding: 5px;
box-sizing: border-box;
overflow: hidden;
+ user-select: none;
+ }
+
+ .content *{
user-select: none;
}
@@ -133,16 +141,33 @@
color: #303133;
}
- .inspection .el-input-group__append{
+ .inspection .el-input-group__append {
padding: 0 10px;
color: #3A7BFA;
background-color: #fff;
}
- .inspection .center-box .el-input__inner{
+ .inspection .center-box .el-input__inner {
font-size: 12px;
padding: 0 6px;
text-align: center;
+ }
+
+ .inspection .el-textarea__inner {
+ padding: 2px;
+ }
+
+ .inspection .el-textarea__inner::-webkit-scrollbar {
+ width: 0;
+ }
+
+ .inspection .el-select {
+ display: flex;
+ align-items: center;
+ }
+
+ .inspection .el-textarea__inner {
+ min-height: 100% !important;
}
</style>
<template>
@@ -150,9 +175,13 @@
<el-row class="title">
<el-col :span="12" style="padding-left: 20px;">妫�楠屽崟璇︽儏</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">鏍峰搧鍒囨崲</el-button>
<el-button size="small" type="primary" @click="taskVisible=true">浠诲姟鍒囨崲</el-button>
- <el-button size="small" type="primary" @click="submit" v-show="state==1" :loading="submitLoading">鎻愪氦</el-button>
+ <el-button size="small" type="primary" @click="addVerifyDia = true" v-show="state==1"
+ :loading="submitLoading">鎻愪氦</el-button>
<!-- 澶嶆牳 -->
<el-button size="medium" type="primary" @click="upInsReview(1)" :loading="reviewLoading"
v-show="state>1">閫氳繃</el-button>
@@ -191,11 +220,11 @@
<div class="center">
<div class="search">
<el-radio-group v-model="currentTable" size="small">
- <el-radio-button :label="item.templateId" v-for="(item,index) in tableLists"
- :key="index" size="small">{{ item.templateName }}</el-radio-button>
+ <el-radio-button :label="item.templateId" v-for="(item,index) in tableLists" :key="index"
+ size="small">{{ item.templateName }}</el-radio-button>
</el-radio-group>
</div>
- <div class="center-box">
+ <div class="center-box" id="nav">
<table border="1" class="tables" cellpadding="10" v-for="(item,index) in tableList" :key="index">
<tbody>
<tr v-for="(m,i) in item.arr" :key="i">
@@ -203,34 +232,58 @@
v-if="n.v.mc==undefined || Object.keys(n.v.mc).length === 4" :colspan="n.v.mc&&n.v.mc.cs?n.v.mc.cs:1"
:rowspan="n.v.mc&&n.v.mc.rs?n.v.mc.rs:1"
:style="`background:${n.v.bg};color:${n.v.fc};font-size:${n.v.fs}px;width:${handleWidth(n)}px !important;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl?'bold':''};`">
- <div class="content" :class="`content-h-${n.v.ht} content-v-${n.v.vt}`" :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;`">
+ <div class="content" :class="`content-h-${n.v.ht} content-v-${n.v.vt}`"
+ :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;`">
<template v-if="n.v.ps!=undefined && n.v.ps.value==='妫�楠屽��' && state==1">
<el-input v-if="getInspectionValueType(n.i) == 1" class="table_input" v-model="n.v.v"
:disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')"
@change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)">
- <el-button slot="append" type="primary" icon="el-icon-edit" size="mini" v-if="getInspectionItemType(n.i) == 1" @click="getSystemValue(n)"></el-button>
+ <el-button slot="append" type="primary" icon="el-icon-edit" size="mini"
+ v-if="getInspectionItemType(n.i) == 1" @click="getSystemValue(n)"></el-button>
</el-input>
<el-input v-else-if="getInspectionValueType(n.i) == 2" class="table_input" type="textarea"
- :autosize="{ minRows: 1}" v-model="n.v.v" :disabled="state>1" />
- <el-select v-else-if="getInspectionValueType(n.i) == 5" class="table_input" v-model="n.v.v"
- :disabled="state>1">
- <el-option label="鏄�" value="鏄�"></el-option>
- <el-option label="鍚�" value="鍚�"></el-option>
+ v-model="n.v.v"
+ :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')"
+ @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" />
+ <el-select v-else-if="getInspectionValueType(n.i) == 5" class="table_input" v-model="n.v.v"
+ :disabled="state>1" @visible-change="e=>getDic(e,n.i)"
+ @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)">
+ <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option>
</el-select>
<span :style="`font-family:${n.v.ff} !important;`"
v-else-if="getInspectionValueType(n.i) == 4">/</span>
</template>
<template v-else-if="n.v.ps!=undefined && n.v.ps.value==='缁撹'">
- <span v-if="n.v.v===1" :style="`font-family:${n.v.ff} !important;color: green;`">鍚堟牸</span>
- <span v-else-if="n.v.v===0" :style="`font-family:${n.v.ff} !important;color: red;`">涓嶅悎鏍�</span>
- <span v-else :style="`font-family:${n.v.ff} !important;`">寰呭畾</span>
+ <el-select v-if="(getInspectionValueType(n.i) == 2 || getInspectionValueType(n.i) == 5) && state==1"
+ class="table_input" v-model="n.v.v" @change="saveInsContext()">
+ <el-option label="鍚堟牸" :value="1"></el-option>
+ <el-option label="涓嶅悎鏍�" :value="0"></el-option>
+ </el-select>
+ <template v-else>
+ <span v-if="n.v.v===1" :style="`font-family:${n.v.ff} !important;color: green;`">鍚堟牸</span>
+ <span v-else-if="n.v.v===0" :style="`font-family:${n.v.ff} !important;color: red;`">涓嶅悎鏍�</span>
+ <span v-else :style="`font-family:${n.v.ff} !important;`">寰呭畾</span>
+ </template>
</template>
<template v-else-if="n.v.ps!=undefined && n.v.ps.value==='璁惧缂栫爜' && state==1">
- <el-select v-model="n.v.v" placeholder="璁惧" @visible-change="e=>getEquipOptions(e,n.i)"
- remote @change="(val)=>changeEquip(val, n)">
+ <el-select v-model="n.v.v" placeholder="璁惧" @visible-change="e=>getEquipOptions(e,n.i)" remote
+ @change="(val)=>changeEquip(val, n)">
<el-option v-for="item in equipOptions" :key="item.value" :label="item.value" :value="item.value">
</el-option>
</el-select>
+ </template>
+ <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='瑕佹眰鍊�' && state==1">
+ <span :style="`font-family:${n.v.ff} !important;`">{{getTell(n.i)}}</span>
+ </template>
+ <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏈�缁堝��' && state==1">
+ <!-- <el-input class="table_input" type="textarea"
+ :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')"
+ v-model="n.v.v" @change="saveInsContext()" v-if="getInspectionValueType(n.i) == 2"></el-input>
+ <el-select v-else-if="getInspectionValueType(n.i) == 5" class="table_input" v-model="n.v.v"
+ :disabled="state>1" @visible-change="e=>getDic(e,n.i)" @change="saveInsContext()">
+ <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option>
+ </el-select> -->
+ <span :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span>
</template>
<span v-else :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span>
</div>
@@ -240,6 +293,43 @@
</table>
</div>
</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="currentKey" :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="currentKey" :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="currentKey" :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-table class="el-table" ref="productTable" :data="sampleProduct" height="100%" tooltip-effect="dark" border
highlight-current-row @row-click="handleChangeSample" :row-class-name="tableRowClassName"
@@ -269,15 +359,14 @@
</el-table>
</el-drawer>
<el-drawer title="浠诲姟鍒囨崲" :visible.sync="taskVisible" :size="500">
- <ValueTable class="value-table" ref="insOrderPlan" :url="$api.insOrderPlan.selectInsOrderPlanList"
- :componentData="componentData" :key="upIndex" />
+ <ValueTable class="value-table" ref="insOrderPlan" :url="$api.insOrderPlan.inspectionOrderDetailsTaskSwitching"
+ :componentData="componentData" :key="upIndex" style="height: 100%;"/>
</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_input" style="width: 100%;">
- <el-input size="small" clearable v-model="noReason" type="textarea"
- :autosize="{ minRows: 4}"></el-input>
+ <el-input size="small" clearable v-model="noReason" type="textarea" :autosize="{ minRows: 4}"></el-input>
</div>
</div>
<span slot="footer" class="dialog-footer">
@@ -285,13 +374,25 @@
<el-button type="primary" @click="handleReviewDia" :loading="reviewLoading">纭� 瀹�</el-button>
</span>
</el-dialog>
+ <el-dialog title="鎸囧畾澶嶆牳浜哄憳" :visible.sync="addVerifyDia" 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-select v-model="verifyUser" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" clearable filterable>
+ <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
+ </div>
+ </div>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="addVerifyDia = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submit()">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
</div>
</template>
<script>
- import {
- set
- } from 'shelljs';
import ValueTable from '../../tool/value-table.vue'
export default {
props: ['sonLaboratory', 'orderId', 'state'],
@@ -353,9 +454,22 @@
reviewDia: false,
noReason: '',
tableWidth: 1000,
- currentTable:null,
- tableLists:[],
- widthList:[]
+ currentTable: null,
+ tableLists: [],
+ widthList: [],
+ addVerifyDia: false,
+ verifyUser: null,
+ personList: [],
+ enumList: [],
+ fiberOpticVisible:false,
+ fiberOpticTapeVisible:false,
+ bushingVisible:false,
+ fiberOpticTape:[],//鍏夌氦甯﹀垪琛�
+ fiberOptic:[],//鍏夌氦鍒楄〃
+ bushing:[],//濂楃鍒楄〃
+ currentFiberOpticTape:null,//褰撳墠鍏夌氦甯�
+ currentFiberOptic:null,//褰撳墠鍏夌氦
+ currentBushing:null,//褰撳墠濂楃
}
},
created() {
@@ -367,6 +481,8 @@
this.getTypeDicts()
this.getInsStateDicts()
this.getComparisonList()
+ this.getAuthorizedPerson()
+ this.scrollInit()
},
watch: {
id(val) {
@@ -382,7 +498,7 @@
}
})
this.sampleProduct = res.data.sampleProduct
- this.currentSample = this.sampleProduct[0]
+ this.currentSample = this.HaveJson(this.sampleProduct[0])
this.currentSample.insProduct.forEach(a => {
this.param[a.id] = {
insValue: [],
@@ -394,17 +510,29 @@
}
})
if (this.currentSample.index == undefined) this.currentSample['index'] = 1
+ let bushing = this.currentSample.bushing
this.loading = false
// this.handleTableData()
this.getTableLists();
this.componentData.currentId = val;
this.currentKey = 1;
+
+ // 娓呯┖鍏夌氦閰嶇疆鐩稿叧鏁版嵁
+ this.fiberOpticTape = []
+ this.currentFiberOpticTape = null;
+ this.fiberOptic = []
+ this.currentFiberOptic = null;
+ this.bushing = []
+ this.currentBushing = null;
+ if(bushing&&bushing.length>0){
+ this.bushing = bushing
+ }
})
},
- currentTable(val1,val0){
- if(val0!=null&&val1!=val0){
- this.tableLists.forEach((m,i)=>{
- if(m.templateId==val1){
+ currentTable(val1, val0) {
+ if (val0 != null && val1 != val0) {
+ this.tableLists.forEach((m, i) => {
+ if (m.templateId == val1) {
this.tableList = null;
this.tableList = [(this.tableLists[i])];
this.handleTableData()
@@ -414,9 +542,70 @@
}
},
methods: {
- handleChangeSample(row, column, event) {
- this.currentSample = row;
+ 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;
+ },
+ 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.getTableLists0(row)
+ this.fiberOpticVisible = false;
+ this.currentKey = row.index
+ },
+ 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.getTableLists0(row)
+ if(row.fiber&&row.fiber.length>0){
+ // 閰嶇疆鍏夌氦
+ this.fiberOptic = row.fiber;
+ }
+ this.fiberOpticTapeVisible = false;
+ this.currentKey = row.index
+ },
+ handleChangeSample(row, column, event) {
+ this.param = {}
+ // 娓呯┖鍏夌氦閰嶇疆鐩稿叧鏁版嵁
+ this.fiberOpticTape = []
+ this.currentFiberOpticTape = null;
+ this.fiberOptic = []
+ this.currentFiberOptic = null;
+ this.bushing = []
+ this.currentBushing = null;
+ this.currentSample.insProduct = this.HaveJson(row.insProduct)
this.currentSample.insProduct.forEach(a => {
this.param[a.id] = {
insValue: [],
@@ -427,6 +616,10 @@
insResult: null
}
})
+ let bushing = this.currentSample.bushing
+ if(bushing&&bushing.length>0){
+ this.bushing = bushing
+ }
// this.handleTableData()
this.getTableLists();
this.sampleVisible = false;
@@ -481,17 +674,28 @@
this.comparisonList = data;
})
},
+ selectEnumByCategoryOfSelect(val) {
+ this.enumList = []
+ if (val === undefined || val === null) {
+ return
+ }
+ this.$axios.post(this.$api.enums.selectEnumByCategory, {
+ category: val
+ }).then(res => {
+ this.enumList = res.data;
+ })
+ },
tableRowClassName({
row,
rowIndex
}) {
row.index = rowIndex + 1;
},
- getTableLists(){
+ getTableLists() {
const mySet1 = new Set();
this.tableLists = this.currentSample.insProduct.filter(m => {
let num0 = mySet1.size;
- if (m.templateId != null) {
+ if (m.templateId != null&&m.template != null) {
mySet1.add(JSON.stringify({
template: m.template,
templateId: m.templateId
@@ -502,10 +706,34 @@
return m
}
});
- if(this.tableLists&&this.tableLists.length>0){
+ if (this.tableLists && this.tableLists.length > 0) {
this.tableList = null;
this.tableList = [this.tableLists[0]]
this.currentTable = this.tableLists[0].templateId;
+ this.handleTableData()
+ }
+ },
+ // 鍏夌氦閰嶇疆鐩稿叧妯℃澘table鍒楄〃
+ getTableLists0(obj){
+ const mySet1 = new Set();
+ this.tableLists = obj.productList.filter(m => {
+ let num0 = mySet1.size;
+ if (m.templateId != null&&m.template != null) {
+ mySet1.add(JSON.stringify({
+ template: m.template,
+ templateId: m.templateId
+ }))
+ }
+ let num1 = mySet1.size;
+ if (num1 > num0) {
+ return m
+ }
+ });
+ if (this.tableLists && this.tableLists.length > 0) {
+ this.tableList = null;
+ this.tableList = [this.tableLists[0]]
+ this.currentTable = this.tableLists[0].templateId;
+ this.currentSample.insProduct = this.HaveJson(obj.productList)
this.handleTableData()
}
},
@@ -569,17 +797,20 @@
let count2 = 0
for (let i in this.currentSample.insProduct) {
if (this.currentSample.insProduct[i].templateId === a.templateId && this.currentSample
- .insProduct[i].inspectionItem + this.currentSample.insProduct[i].inspectionItemSubclass === str) {
- ids.push({
- r: b.r,
- id: this.currentSample.insProduct[i].id,
- product: this.currentSample.insProduct[i]
- })
- break
+ .insProduct[i].inspectionItem +
+ (this.currentSample.insProduct[i].inspectionItemSubclass == null ? '' : this.currentSample
+ .insProduct[i].inspectionItemSubclass) ===
+ str) {
+ ids.push({
+ r: b.r,
+ id: this.currentSample.insProduct[i].id,
+ product: this.currentSample.insProduct[i]
+ })
+ break
}
count2++
}
- if(count2 == this.currentSample.insProduct.length){
+ if (count2 == this.currentSample.insProduct.length) {
dels.add(b.r)
}
}
@@ -600,7 +831,8 @@
if (a.template[b].v.ps != undefined && a.template[b].v.ps.value === '鍗曚綅') {
a.template[b].v.v = id.product.unit
}
- if (a.template[b].v.ps != undefined && a.template[b].v.ps.value === '璇曢獙鏂规硶') {
+ if (a.template[b].v.ps != undefined && (a.template[b].v.ps.value === '璇曢獙鏂规硶' || a.template[b].v
+ .ps.value === '妫�娴嬫柟娉�')) {
a.template[b].v.v = id.product.methodS
}
}
@@ -646,19 +878,19 @@
if (b.v.ps != undefined && b.v.ps.value === '妫�楠屽��') {
b.v.v = ''
b.u = ''
- b.i&&this.param[b.i].insValue.push(b)
+ b.i && this.param[b.i].insValue.push(b)
}
if (b.v.ps != undefined && b.v.ps.value === '璁$畻鍊�') {
b.v.v = ''
- b.i&&this.param[b.i].comValue.push(b)
+ b.i && this.param[b.i].comValue.push(b)
}
if (b.v.ps != undefined && b.v.ps.value === '璁惧缂栫爜') {
b.v.v = ''
- b.i&&this.param[b.i].equipValue.push(b)
+ b.i && this.param[b.i].equipValue.push(b)
}
if (b.v.ps != undefined && b.v.ps.value === '璁惧鍚嶇О') {
b.v.v = ''
- b.i&&this.param[b.i].equipName.push(b)
+ b.i && this.param[b.i].equipName.push(b)
}
if (b.v.ps != undefined && b.v.ps.value === '鏈�缁堝��') {
b.v.v = ''
@@ -669,18 +901,20 @@
} else {
this.param[b.i].resValue = b
} */
- if(b.i !== undefined){
+ if (b.i !== undefined) {
this.param[b.i].resValue = b
}
}
if (b.v.ps != undefined && b.v.ps.value === '缁撹') {
- this.param[b.i].insResult = b
- conclusionList.forEach((n, i) => {
- if (n.r == b.r && n.c == b.c) {
- b.v.f =
- `(${this.comparisonList.find(j=>j.value==(finalList[i].c)).label}${finalList[i].r+1})`
- }
- })
+ if (b.i !== undefined) {
+ this.param[b.i].insResult = b
+ conclusionList.forEach((n, i) => {
+ if (n.r == b.r && n.c == b.c) {
+ b.v.f =
+ `(${this.comparisonList.find(j=>j.value==(finalList[i].c)).label}${finalList[i].r+1})`
+ }
+ })
+ }
}
set.add(b.r)
if (b.v.f) {
@@ -757,46 +991,48 @@
if (b[0].r == a.r) {
b.forEach(c => {
if (c.c == a.c) {
- if (!isNaN(parseFloat(c.v.v))) {
- var tableCode = ''
- for (var d in this.comparisonList) {
- if (c.c == this.comparisonList[d].value) {
- tableCode = this.comparisonList[d].label
- break
- }
+ var tableCode = ''
+ for (var d in this.comparisonList) {
+ if (c.c == this.comparisonList[d].value) {
+ tableCode = this.comparisonList[d].label
+ break
}
- comValue[(tableCode + (c.r + 1))] = parseFloat(c.v.v)
+ }
+ if(this.getInspectionValueType(item.i)==1){
+ if (!isNaN(parseFloat(c.v.v))) {
+ comValue[(tableCode + (c.r + 1))] = parseFloat(c.v.v)
+ }
+ }else{
+ comValue[(tableCode + (c.r + 1))] = c.v.v
}
}
})
}
})
})
- if (item.methodName == '鑷畾涔夋柟娉�' && item.v.ps!=undefined && item.v.ps.value == '缁撹') {
+ if (item.methodName == '鑷畾涔夋柟娉�' && item.v.ps != undefined && item.v.ps.value == '缁撹') {
if (this.currentSample.insProduct.find(m => m.id == item.i)) {
let ask = this.currentSample.insProduct.find(m => m.id == item.i).ask.split('&');
let res = Object.values(comValue)[0]
let comp = ask.map((m, i) => {
if (m.includes('=')) {
return res == m.split('=')[1]
- }
- if (m.includes('鈮�')) {
+ } else if (m.includes('鈮�')) {
return res >= m.split('鈮�')[1]
- }
- if (m.includes('鈮�')) {
+ }else if (m.includes('鈮�')) {
return res <= m.split('鈮�')[1]
- }
- if (m.includes('<')) {
+ }else if (m.includes('<')) {
return res < m.split('<')[1]
- }
- if (m.includes('>')) {
+ }else if (m.includes('>')) {
return res > m.split('>')[1]
}
})
- if (comp.every(m => m)) {
- item.v.v = 1
- } else {
- item.v.v = 0
+ if(this.getInspectionValueType(item.i)==1){
+ if (comp.every(m => m)) {
+ item.v.v = 1
+ } else {
+ item.v.v = 0
+ }
}
this.saveInsContext()
}
@@ -836,14 +1072,18 @@
valueList.forEach(b => {
str = str.replace(b.name, b.value)
})
- if(item.v.f.includes('/')>-1){
- if(Object.getOwnPropertyNames(comValue).length==valueList.length){
+ if (item.v.f.includes('/')) {
+ if (Object.getOwnPropertyNames(comValue).length == valueList.length) {
comResult = eval(str)
- }else{
+ } else {
comResult = ''
}
- }else{
- comResult = eval(str)
+ } else {
+ if(this.getInspectionValueType(item.i)==1){
+ comResult = eval(str)
+ }else{
+ comResult = str
+ }
}
break;
}
@@ -851,7 +1091,12 @@
if (a[0].r == item.r && comResult != '') {
for (var b in a) {
if (a[b].c == item.c) {
- a[b].v.v = parseFloat(comResult.toFixed(3))
+ try{
+ let val = parseFloat(comResult.toFixed(3))
+ a[b].v.v = isNaN(val) ? '' : val
+ }catch(e){
+ a[b].v.v = comResult
+ }
break
}
}
@@ -863,19 +1108,19 @@
})
this.getCurrentInsProduct(pId)
},
- getCurrentInsProduct(pId){
- if(!this.tableList[0].insProductResult){
+ getCurrentInsProduct(pId) {
+ if (!this.tableList[0].insProductResult) {
this.tableList[0].insProductResult = {}
}
- for (let m in this.param[pId]){
+ for (let m in this.param[pId]) {
let value = this.param[pId][m]
- switch (m){
+ switch (m) {
case 'comValue':
- if(value&&value.length>0){
- this.tableList[0].insProductResult[m]=[];
- value.forEach((a,i)=>{
+ if (value && value.length > 0) {
+ this.tableList[0].insProductResult[m] = [];
+ value.forEach((a, i) => {
let obj = {
- v:a.v.v,
+ v: a.v.v,
}
this.tableList[0].insProductResult[m].push(obj);
})
@@ -883,12 +1128,12 @@
this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m])
break;
case 'insValue':
- if(value&&value.length>0){
- this.tableList[0].insProductResult[m]=[];
- value.forEach((a,i)=>{
+ if (value && value.length > 0) {
+ this.tableList[0].insProductResult[m] = [];
+ value.forEach((a, i) => {
let obj = {
- v:a.v.v,
- u:a.u,
+ v: a.v.v,
+ u: a.u,
}
this.tableList[0].insProductResult[m].push(obj);
})
@@ -896,11 +1141,11 @@
this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m])
break;
case 'equipValue':
- if(value&&value.length>0){
- this.tableList[0].insProductResult[m]=[];
- value.forEach((a,i)=>{
+ if (value && value.length > 0) {
+ this.tableList[0].insProductResult[m] = [];
+ value.forEach((a, i) => {
let obj = {
- v:a.v.v,
+ v: a.v.v,
}
this.tableList[0].insProductResult[m].push(obj);
})
@@ -908,11 +1153,11 @@
this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m])
break;
case 'equipName':
- if(value&&value.length>0){
- this.tableList[0].insProductResult[m]=[];
- value.forEach((a,i)=>{
+ if (value && value.length > 0) {
+ this.tableList[0].insProductResult[m] = [];
+ value.forEach((a, i) => {
let obj = {
- v:a.v.v,
+ v: a.v.v,
}
this.tableList[0].insProductResult[m].push(obj);
})
@@ -960,7 +1205,7 @@
let regex = /[=\+\-\*\%\(\)\/\s]/g
let mode = item.v.f.replace(regex, ' ').split(' ');
mode.filter(m => m && !Number(m)).forEach(m => {
- let r = m.replace(/[a-zA-Z]/g, "") - 1
+ let r = m.replace(/[a-zA-Z]/g, "") - 1
let c = this.comparisonList.find(j => j.label == m.split('')[0]).value
valueList.push({
c,
@@ -980,15 +1225,22 @@
}
}
},
- handleWidth(n){
- let sum = 0;
- if(n.v.mc&&n.v.mc.cs&&n.v.mc.c!=undefined){
- for(let i=0;i<n.v.mc.cs;i++){
- let num = this.widthList[i+n.v.mc.c]?this.widthList[i+n.v.mc.c]:100
- sum+=num;
+ getTell(id) {
+ for (var a in this.currentSample.insProduct) {
+ if (this.currentSample.insProduct[a].id == id) {
+ return this.currentSample.insProduct[a].tell
}
- }else{
- sum = this.widthList[n.c]?this.widthList[n.c]:100
+ }
+ },
+ handleWidth(n) {
+ let sum = 0;
+ if (n.v.mc && n.v.mc.cs && n.v.mc.c != undefined) {
+ for (let i = 0; i < n.v.mc.cs; i++) {
+ let num = this.widthList[i + n.v.mc.c] ? this.widthList[i + n.v.mc.c] : 100
+ sum += num;
+ }
+ } else {
+ sum = this.widthList[n.c] ? this.widthList[n.c] : 100
}
return sum
},
@@ -1032,7 +1284,7 @@
}).then(res => {
if (res.code === 200 && res.data) {
this.equipOptions = res.data.map(m => {
- m.value = m.factoryNo
+ m.value = m.managementNumber
m.label = m.deviceName
return m
})
@@ -1040,6 +1292,17 @@
}).catch(error => {
console.error(error)
})
+ }
+ },
+ getDic(e, id) {
+ if (e) {
+ for (var a in this.currentSample.insProduct) {
+ if (this.currentSample.insProduct[a].id == id) {
+ let str = this.currentSample.insProduct[a].dic
+ this.selectEnumByCategoryOfSelect(str)
+ return str
+ }
+ }
}
},
getUserInfo() {
@@ -1095,10 +1358,16 @@
}
},
submit() {
+ if (this.verifyUser === null || this.verifyUser === '') {
+ this.$message.error("璇锋寚瀹氬鏍镐汉鍛�")
+ return
+ }
+ this.addVerifyDia = false
this.submitLoading = true;
this.$axios.post(this.$api.insOrderPlan.submitPlan, {
orderId: this.orderId,
laboratory: this.sonLaboratory,
+ verifyUser: this.verifyUser
}).then(res => {
if (res.code === 200) {
this.$message.success("鎿嶄綔鎴愬姛")
@@ -1110,7 +1379,7 @@
this.submitLoading = false;
})
},
- saveInsContext(){
+ saveInsContext() {
this.$axios.post(this.$api.insOrderPlan.saveInsContext, {
param: JSON.stringify(this.param)
}).then(res => {
@@ -1121,16 +1390,56 @@
this.$message.success('宸蹭繚瀛�')
})
},
- changeEquip(val,n){
- for(let i in this.equipOptions){
- if(this.equipOptions[i].value === val){
- for(let i1 in this.param[n.i].equipName){
- if(this.param[n.i].equipName[i1].i === n.i && this.param[n.i].equipName[i1].r === n.r){
+ changeEquip(val, n) {
+ for (let i in this.equipOptions) {
+ if (this.equipOptions[i].value === val) {
+ for (let i1 in this.param[n.i].equipName) {
+ if (this.param[n.i].equipName[i1].i === n.i && this.param[n.i].equipName[i1].r === n.r) {
this.param[n.i].equipName[i1].v.v = this.equipOptions[i].label
}
}
}
}
+ this.saveInsContext()
+ },
+ getAuthorizedPerson() {
+ this.$axios.get(this.$api.user.getUserMenu).then(res => {
+ let data = []
+ res.data.forEach(a => {
+ data.push({
+ label: a.name,
+ value: a.id
+ })
+ })
+ this.personList = data
+ })
+ },
+ scrollInit() {
+ // 鑾峰彇瑕佺粦瀹氫簨浠剁殑鍏冪礌
+ const nav = document.getElementById("nav")
+ var flag; // 榧犳爣鎸変笅
+ var downX; // 榧犳爣鐐瑰嚮鐨剎涓嬫爣
+ var scrollLeft; // 褰撳墠鍏冪礌婊氬姩鏉$殑鍋忕Щ閲�
+ nav.addEventListener("mousedown", function(event) {
+ flag = true;
+ downX = event.clientX; // 鑾峰彇鍒扮偣鍑荤殑x涓嬫爣
+ scrollLeft = this.scrollLeft; // 鑾峰彇褰撳墠鍏冪礌婊氬姩鏉$殑鍋忕Щ閲�
+ });
+ nav.addEventListener("mousemove", function(event) {
+ if (flag) { // 鍒ゆ柇鏄惁鏄紶鏍囨寜涓嬫粴鍔ㄥ厓绱犲尯鍩�
+ var moveX = event.clientX; // 鑾峰彇绉诲姩鐨剎杞�
+ var scrollX = moveX - downX; // 褰撳墠绉诲姩鐨剎杞翠笅鏍囧噺鍘诲垰鐐瑰嚮涓嬪幓鐨剎杞翠笅鏍囧緱鍒伴紶鏍囨粦鍔ㄨ窛绂�
+ this.scrollLeft = scrollLeft - scrollX // 榧犳爣鎸変笅鐨勬粴鍔ㄦ潯鍋忕Щ閲忓噺鍘诲綋鍓嶉紶鏍囩殑婊戝姩璺濈
+ }
+ });
+ // 榧犳爣鎶捣鍋滄鎷栧姩
+ nav.addEventListener("mouseup", function() {
+ flag = false;
+ });
+ // 榧犳爣绂诲紑鍏冪礌鍋滄鎷栧姩
+ nav.addEventListener("mouseleave", function(event) {
+ flag = false;
+ });
}
}
}
--
Gitblit v1.9.3