From c733b4fc98e348f4f60f71a291c3acfa6d7d4ce9 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期四, 24 四月 2025 10:38:59 +0800
Subject: [PATCH] 网分仪调整
---
src/views/business/inspectionTask/inspection.vue | 215 ++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 176 insertions(+), 39 deletions(-)
diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue
index a8b72dc..deb64f8 100644
--- a/src/views/business/inspectionTask/inspection.vue
+++ b/src/views/business/inspectionTask/inspection.vue
@@ -91,9 +91,9 @@
</el-radio-group>
</div>
<div style="display: flex; align-items: center">
- <el-button v-if="state == 1" size="small" type="primary" @click="openAddUnpass">鏂板涓嶅悎鏍煎娴�</el-button>
+ <!-- <el-button v-if="state == 1" size="small" type="primary" @click="openAddUnpass">鏂板涓嶅悎鏍煎娴�</el-button>
<el-button v-if="state == 1" size="small" type="primary" @click="unpassCheck">涓嶅悎鏍煎娴�</el-button>
- <el-button v-if="state > 1" size="small" type="primary" @click="viewUnpassCheck">鏌ョ湅涓嶅悎鏍煎娴�</el-button>
+ <el-button v-if="state > 1" size="small" type="primary" @click="viewUnpassCheck">鏌ョ湅涓嶅悎鏍煎娴�</el-button> -->
<span v-if="cableTagList.length > 0"> 鐢电紗閰嶇疆锛�</span>
<el-select v-if="cableTagList.length > 0" v-model="currentTab" clearable placeholder="璇烽�夋嫨" size="small"
@change="(m) => handleChangeCableTag(currentSample.id, 0, 'cableTag', m)
@@ -138,6 +138,11 @@
type="success">宸叉</el-tag>
</el-option>
</el-select>
+ <!-- 缃戝垎浠暟閲囧浗浜�/杩涘彛 -->
+ <NetworkAnalyzerDataAcquisition :itemList="currentSample.insProduct" :param="param"
+ :equipOptions="equipOptions"
+ v-if="Array.isArray(currentSample.insProduct) && currentSample.insProduct.length > 0 && param"
+ ref="NetworkAnalyzerDataAcquisition" />
<el-button :loading="dataAcquisitionLoading" v-if="state == 1" size="small" type="primary"
@click="getDataAcquisitionDevice">鏁版嵁閲囬泦</el-button>
<el-button :type="dataAcquisitionEidtAble ? '' : 'primary'" v-if="state == 1" size="small"
@@ -147,28 +152,26 @@
</div>
<!-- 甯歌妫�楠屽師濮嬭褰� -->
<div id="nav" v-loading="tableLoading" class="center-box">
- <template v-if="
- tableLists.find((m) => m.templateId == currentTable)">
+ <template v-if="tableLists.find((m) => m.templateId == currentTable)">
<table v-for="(item, index) in tableList" :key="index + currentTable + currentSample.id" border="1"
cellpadding="10" class="tables" id="myTable">
<tbody>
- <tr style="white-space: nowrap">
- 濮旀墭缂栧彿锛歿{
- insOrder.entrustCode
- }}
+ <tr>
+ <th :colspan="50" style="text-align: left !important;">
+ 濮旀墭缂栧彿锛歿{
+ insOrder.entrustCode
+ }}
+ </th>
</tr>
<tr v-for="(m, i) in item.arr" :key="i">
<td v-for="(n, j) in m" v-if="n.v.mc == undefined || Object.keys(n.v.mc).length === 4"
:id="item.templateId + '-' + n.i + '-' + n.r + '-' + n.c" :key="j"
: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 ? 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' : ''
+ };font-size:${n.v.fs}px;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl ? 'bold' : ''
};`">
<div :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;`" class="content">
- <template v-if="
- n.v.ps != undefined &&
+ <template v-if="n.v.ps != undefined &&
typeof n.v.ps.value === 'string' &&
n.v.ps.value.includes('妫�楠屽��') &&
state == 1
@@ -223,7 +226,7 @@
<el-select v-if="
(getInspectionValueType(n.i) == 2 ||
getInspectionValueType(n.i) == 5) &&
- state == 1
+ state == 1 && (n.u != userId && n.u != undefined && n.u != '')
" v-model="n.v.v" class="table_input" @change="(m) =>
changeInput(
m,
@@ -254,8 +257,7 @@
<span v-else :style="`font-family:${n.v.ff} !important;`">寰呭畾</span>
</template>
</template>
- <template v-else-if="
- n.v.ps != undefined &&
+ <template v-else-if="n.v.ps != undefined &&
n.v.ps.value === '璁惧缂栫爜' &&
state == 1
">
@@ -264,8 +266,9 @@
<template v-else-if="
n.v.ps != undefined && n.v.ps.value === '璁惧鍚嶇О'
">
- <el-select v-model="n.v.v" :disabled="state > 1" class="table_input" filterable multiple
- placeholder="璁惧" remote @change="(val) => changeEquip(val, n)"
+ <el-select v-model="n.v.v"
+ :disabled="state > 1 || (n.u != userId && n.u != undefined && n.u != '')" class="table_input"
+ filterable multiple placeholder="璁惧" remote @change="(val) => changeEquip(val, n)"
@visible-change="(e) => getEquipOptions(e, n.i)">
<el-option v-for="item in equipOptions" :key="item.value" :label="item.label"
:value="item.value">
@@ -273,8 +276,7 @@
</el-option>
</el-select>
</template>
- <template v-else-if="
- n.v.ps != undefined &&
+ <template v-else-if="n.v.ps != undefined &&
n.v.ps.value === '瑕佹眰鍊�' &&
state == 1
">
@@ -288,7 +290,7 @@
state == 1
"><span :style="`font-family:${n.v.ff} !important;`">{{
toFixed(n.v.v, n.v.ct)
- }}</span></template>
+ }}</span></template>
<template v-else-if="
n.v.ps != undefined &&
n.v.ps.value === '鏈�缁堝��' &&
@@ -298,8 +300,7 @@
toFixed(n.v.v, n.v.ct)
}}</span>
</template>
- <template v-else-if="
- n.v.ps != undefined && n.v.ps.value === '鏍峰搧缂栧彿'
+ <template v-else-if="n.v.ps != undefined && n.v.ps.value === '鏍峰搧缂栧彿'
">
<div :title="currentSample.sampleCode" style="
display: flex;
@@ -315,15 +316,27 @@
<i class="el-icon-caret-right table_caret" style="width: 16px" @click="caretSample(1)"></i>
</div>
</template>
- <template v-else-if="
- n.v.ps != undefined && n.v.ps.value === '鏍峰搧鍨嬪彿'
+ <template v-else-if="n.v.ps != undefined && n.v.ps.value === '鏍峰搧鍨嬪彿'
">
- <div v-if="
- currentSample.model !== undefined &&
+ <div v-if="currentSample.model !== undefined &&
currentSample.model !== null
" :style="`font-family:${n.v.ff} !important;`">
{{ currentSample.model }}
</div>
+ </template>
+ <template v-else-if="n.v.ps != undefined && n.v.ps.value === '璧峰鏃堕棿'
+ ">
+ <span v-if="state > 1 || (n.u != userId && n.u != undefined && n.u != '')">{{ n.v.v }}</span>
+ <el-date-picker v-else v-model="n.v.v" type="datetime" placeholder="" format="yyyy-MM-dd HH:mm:ss"
+ value-format="yyyy-MM-dd HH:mm:ss" @change="(val) => changeTestTime(val, n, 'testStartTime')">
+ </el-date-picker>
+ </template>
+ <template v-else-if="n.v.ps != undefined && n.v.ps.value === '缁堟鏃堕棿'
+ ">
+ <span v-if="state > 1 || (n.u != userId && n.u != undefined && n.u != '')">{{ n.v.v }}</span>
+ <el-date-picker v-else v-model="n.v.v" type="datetime" placeholder="" format="yyyy-MM-dd HH:mm:ss"
+ value-format="yyyy-MM-dd HH:mm:ss" @change="(val) => changeTestTime(val, n, 'testEndTime')">
+ </el-date-picker>
</template>
<span v-else :style="`font-family:${n.v.ff} !important;`" v-html="getValue(n.v)"></span>
</div>
@@ -344,9 +357,9 @@
</div>
<el-drawer :size="550" :visible.sync="sampleVisible" title="鏍峰搧鍒囨崲">
<el-table v-if="sampleVisible" ref="productTable" :current-row-key="currentKey" :data="sampleProduct"
- :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border
- :row-class-name="tableRowClassName" :row-key="(record) => record.index" border class="el-table" height="100%"
- highlight-current-row tooltip-effect="dark" @row-click="handleChangeSample">
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border :row-class-name="tableRowClassName"
+ :row-key="(record) => record.index" border class="el-table" height="100%" highlight-current-row
+ tooltip-effect="dark" @row-click="handleChangeSample">
<el-table-column :key="Math.random()" align="center" label="搴忓彿" type="index" width="70px">
</el-table-column>
<el-table-column label="鏍峰搧缂栧彿" min-width="100px" prop="sampleCode" show-overflow-tooltip></el-table-column>
@@ -508,7 +521,7 @@
<InspectionWord v-if="unPassCheck" :inspectorList="inspectorList" :orderId="orderId"
:rawMaterialTag="rawMaterialTag" :sonLaboratory="sonLaboratory" :state="state" :typeSource="typeSource"
:unPassCheck="unPassCheck" @closeUnPassCheckDialog="closeUnPassCheckDialog" @refreshView="refreshView" />
- <purchase-verification v-if="purchaseDialog" ref="purchaseDialog" :orderId="orderId"
+ <purchase-verification v-if="purchaseDialog" ref="purchaseDialog" :orderId="orderId" :workShopId="workShopId"
:purchaseDialog="purchaseDialog" @resetPurchaseDialog="resetPurchaseDialog"></purchase-verification>
<!--鏌ョ湅宸ユ椂寮规-->
<viewManHourDia ref="viewManHourDia" @submit="openAddVerifyDia"></viewManHourDia>
@@ -521,6 +534,7 @@
import UnPassDialog from "../unpass/components/unPassDialog.vue";
import AddUnPass from "../unpass/components/addUnPass.vue";
import InspectionWord from "./components/InspectionWord.vue";
+import NetworkAnalyzerDataAcquisition from "./components/NetworkAnalyzerDataAcquisition.vue";
import PurchaseVerification from "../unpass/components/PurchaseVerification.vue";
import {
doInsOrder,
@@ -541,8 +555,8 @@
delfile,
inspectionOrderDetailsTaskSwitching
} from "@/api/business/inspectionTask.js";
-import InspectionWorker from '../../../InspectionWorker.worker';
-import DataWorker from '../../../DataWorker.worker';
+import InspectionWorker from '../../../workers/InspectionWorker.worker';
+import DataWorker from '../../../workers/DataWorker.worker';
import html2canvas from "html2canvas";
import { mapGetters } from "vuex";
import viewManHourDia from "@/views/business/inspectionTask/components/viewManHourDia.vue";
@@ -555,10 +569,12 @@
limsTable,
UnPassDialog,
InspectionWord,
+ NetworkAnalyzerDataAcquisition,
},
data() {
return {
sonLaboratory: null,
+ workShopId: null,
orderId: null,
state: null,
inspectorList: null,
@@ -775,8 +791,9 @@
},
},
created() {
- let { sonLaboratory, orderId, state, inspectorList, typeSource } =
+ let { sonLaboratory, orderId, state, inspectorList, typeSource, workShopId } =
this.$route.query;
+ this.workShopId = workShopId
this.sonLaboratory = sonLaboratory;
this.orderId = orderId;
this.id = this.orderId;
@@ -827,6 +844,8 @@
equipValue: [],
equipName: [],
insResult: null,
+ testEndTime: [],
+ testStartTime: [],
};
});
// 鍘婚噸妯℃澘锛岃繑鍥炴湁鍑犱釜妯℃澘
@@ -954,7 +973,7 @@
// 璧嬪�煎綋鍓嶆牱鍝佸垪琛�
this.sampleProduct = res.data.sampleProduct;
this.currentSample = this.HaveJson(this.sampleProduct[0]);
- let insProduct = this.HaveJson(this.currentSample.insProduct);
+ // let insProduct = this.HaveJson(this.currentSample.insProduct);
// 娓╁害銆佹箍搴﹁祴鍊�
this.otherForm = {
temperature: this.insOrder.temperature
@@ -981,6 +1000,8 @@
equipValue: [],
equipName: [],
insResult: null,
+ testEndTime: [],
+ testStartTime: [],
};
});
if (this.currentSample.index == undefined)
@@ -1133,7 +1154,6 @@
this.dataAcquisitionInfo = {};
this.getData = [];
for (let i in this.objectOrder(data)) {
- console.log("i---", i);
let obj = {};
if (i.includes("@")) {
obj = {
@@ -1452,6 +1472,7 @@
},
// 澶氱嚎绋�
startWorker() {
+ console.log(`Worker 绾跨▼寮�濮嬭繍琛�...`, this.worker, this.worker0)
if (this.worker) {
this.stopWorker(); // 纭繚涔嬪墠鐨� Worker 宸插仠姝�
}
@@ -1476,7 +1497,6 @@
},
// 淇濆瓨婀垮害銆佹俯搴︽暟鎹�
subOtherForm(m, type) {
- console.log("m---", m);
write({
[type]: type === "remark" ? m : Number(m),
id: this.insOrder.id,
@@ -1525,7 +1545,7 @@
repetitionTag: this.repetitionTag
});
this.tableLoading = false;
- if (res.data.length > 0) {
+ if (res.data) {
return res.data;
}
},
@@ -1550,6 +1570,8 @@
equipValue: [],
equipName: [],
insResult: null,
+ testEndTime: [],
+ testStartTime: [],
};
});
// 澶勭悊椤甸潰鍒楄〃鏁版嵁
@@ -1595,6 +1617,8 @@
equipValue: [],
equipName: [],
insResult: null,
+ testEndTime: [],
+ testStartTime: [],
};
});
this.getTableLists0(list);
@@ -1955,6 +1979,12 @@
) {
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.radius;
+ }
}
}
});
@@ -1994,6 +2024,7 @@
(n) => n.v.ps != undefined && n.v.ps.value === "鏈�缁堝��"
); //鏈�缁堝�煎垪琛�
a.template.forEach((b) => {
+ // console.log(444444, b)
if (
b.v.ps != undefined &&
b.v.ps.value === "搴忓彿" &&
@@ -2016,6 +2047,10 @@
this.$set(b.v, "v", "");
// b.v.v = ''
b.u = "";
+ let obj = this.currentSample.insProduct.find(m => m.id == b.i)
+ if (obj) {
+ this.$set(b, "u", obj.checkUserId);
+ }
b.i && this.param[b.i] && this.param[b.i].insValue.push(b);
}
if (b.v.ps != undefined && b.v.ps.value === "璁$畻鍊�") {
@@ -2030,8 +2065,31 @@
}
if (b.v.ps != undefined && b.v.ps.value === "璁惧鍚嶇О") {
this.$set(b.v, "v", "");
+ b.u = "";
+ let obj = this.currentSample.insProduct.find(m => m.id == b.i)
+ if (obj) {
+ this.$set(b, "u", obj.checkUserId);
+ }
// b.v.v = ''
b.i && this.param[b.i] && this.param[b.i].equipName.push(b);
+ }
+ if (b.v.ps != undefined && b.v.ps.value === "璧峰鏃堕棿") {
+ this.$set(b.v, "v", '');
+ let obj = this.currentSample.insProduct.find(m => m.id == b.i)
+ if (obj) {
+ this.$set(b, "u", obj.checkUserId);
+ }
+ // this.param[b.i].testStartTime = []
+ b.i && this.param[b.i] && this.param[b.i].testStartTime.push(b);
+ }
+ if (b.v.ps != undefined && b.v.ps.value === "缁堟鏃堕棿") {
+ this.$set(b.v, "v", "");
+ let obj = this.currentSample.insProduct.find(m => m.id == b.i)
+ if (obj) {
+ this.$set(b, "u", obj.checkUserId);
+ }
+ // this.param[b.i].testEndTime = []
+ b.i && this.param[b.i] && this.param[b.i].testEndTime.push(b);
}
if (b.v.ps != undefined && b.v.ps.value === "鏈�缁堝��") {
// b.v.v = ''
@@ -2045,6 +2103,11 @@
}
}
if (b.v.ps != undefined && b.v.ps.value === "缁撹") {
+ b.u = "";
+ let obj = this.currentSample.insProduct.find(m => m.id == b.i)
+ if (obj) {
+ this.$set(b, "u", obj.checkUserId);
+ }
if (
b.i !== undefined &&
this.param[b.i] &&
@@ -2168,6 +2231,24 @@
console.log("璁惧鍚嶇О璧嬪��----", e);
}
try {
+ // 璧峰鏃堕棿璧嬪��
+ let testStartTime = a.insProductResult.testStartTime ? JSON.parse(a.insProductResult.testStartTime) : []
+ for (let i = 0; i < testStartTime.length; i++) {
+ // 鏅�氳澶囧悕绉拌祴鍊�
+ this.param[a.id].testStartTime[i].v.v = testStartTime[i].v;
+ }
+ } catch (e) {
+
+ }
+ try {
+ // 缁堟鏃堕棿璧嬪��
+ let testEndTime = a.insProductResult.testEndTime ? JSON.parse(a.insProductResult.testEndTime) : []
+ for (let i = 0; i < testEndTime.length; i++) {
+ // 鏅�氳澶囧悕绉拌祴鍊�
+ this.param[a.id].testEndTime[i].v.v = testEndTime[i].v;
+ }
+ } catch (e) { }
+ try {
// 鏈�缁堝�艰祴鍊�
this.param[a.id].resValue.v.v = this.toFixed(
a.lastValue,
@@ -2179,6 +2260,10 @@
});
// 瀵筫xcel鍑芥暟杩涜澶勭悊
this.handleExcelMethod();
+ this.$nextTick(() => {
+ // 鏄惁灞曠ず缃戝垎浠寜閽�
+ this.$refs.NetworkAnalyzerDataAcquisition.init()
+ })
},
// 妫�楠屽�艰緭鍏ュ悗瑙﹀彂鐨勫嚱鏁�
changeInput(m, code, n, getDataType, changeSelect) {
@@ -2192,6 +2277,9 @@
// 瀹氫箟涓�涓嚱鏁版潵楠岃瘉鍒嗘暟鏄惁鏈夋晥
if (typeof n.v.v == "string") {
function isValidFraction(fraction) {
+ if (typeof fraction == 'number') {
+ return true
+ }
const [numerator, denominator] = fraction.split("/"); // 鍒嗗瓙鍜屽垎姣�
return !(!denominator || !numerator);
}
@@ -2363,6 +2451,46 @@
console.log(888, error);
}
}
+ break;
+ // 璧嬪�艰捣濮嬫椂闂�
+ case "testEndTime":
+ if (value && value.length > 0) {
+ this.tableList[0].insProductResult[m] = [];
+ value.forEach((a, i) => {
+ let obj = {
+ v: a.v.v,
+ };
+ this.tableList[0].insProductResult[m].push(obj);
+ });
+ try {
+ this.tableList[0].insProductResult[m] = JSON.stringify(
+ this.tableList[0].insProductResult[m]
+ );
+ } catch (error) {
+ console.log(888, error);
+ }
+ }
+ // this.tableList[0].insProductResult[m] = value ? value.v.v : "";
+ break;
+ // 璧嬪�肩粓姝㈡椂闂�
+ case "testStartTime":
+ if (value && value.length > 0) {
+ this.tableList[0].insProductResult[m] = [];
+ value.forEach((a, i) => {
+ let obj = {
+ v: a.v.v,
+ };
+ this.tableList[0].insProductResult[m].push(obj);
+ });
+ try {
+ this.tableList[0].insProductResult[m] = JSON.stringify(
+ this.tableList[0].insProductResult[m]
+ );
+ } catch (error) {
+ console.log(888, error);
+ }
+ }
+ // this.tableList[0].insProductResult[m] = value ? value.v.v : "";
break;
// 璧嬪�兼渶缁堝��
case "resValue":
@@ -2742,12 +2870,19 @@
}
// 淇濆瓨鏁版嵁
this.saveInsContext(n.i);
+ // 鏄惁灞曠ず缃戝垎浠寜閽�
+ this.$refs.NetworkAnalyzerDataAcquisition.init()
} catch (e) {
console.log("changeEquip----", e);
}
},
+ // 璧峰鏃堕棿/缁堟鏃堕棿淇濆瓨
+ changeTestTime(val, n, type) {
+ this.$set(this.param[n.i][type][0].v, 'v', val)
+ this.saveInsContext(n.i);
+ },
getAuthorizedPerson() {
- selectUserCondition({ type: 0 }).then((res) => {
+ selectUserCondition({ type: 1 }).then((res) => {
let data = [];
res.data.forEach((a) => {
data.push({
@@ -2812,6 +2947,8 @@
equipValue: [],
equipName: [],
insResult: null,
+ testEndTime: [],
+ testStartTime: [],
};
});
// 椤甸潰鏁版嵁澶勭悊
--
Gitblit v1.9.3