From 14f660981c502a71fd61c74667204ac293b1165a Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期五, 18 四月 2025 17:26:17 +0800 Subject: [PATCH] 拉力机数采修改 --- src/views/business/inspectionTask/inspection.vue | 230 ++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 161 insertions(+), 69 deletions(-) diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue index ecb16fd..d029a56 100644 --- a/src/views/business/inspectionTask/inspection.vue +++ b/src/views/business/inspectionTask/inspection.vue @@ -23,7 +23,7 @@ @click="openUnPassDialog('add')">涓嶅悎鏍煎鐞�</el-button> <el-button size="small" type="primary" @click="sampleVisible = true; uploadSample();">鏍峰搧鍒囨崲</el-button> <!-- <el-button v-if="state == 1" size="small" type="primary" @click="taskVisible = true">浠诲姟鍒囨崲</el-button>--> - <el-button v-if="state == 1" size="small" type="primary" @click="viewManHour">鎻愪氦</el-button> + <el-button v-if="state == 1" size="small" type="primary" @click="addVerifyDia = true">鎻愪氦</el-button> <!-- 澶嶆牳 --> <el-button v-if="state == 2" size="medium" type="primary" @click="openAddCheck">閫氳繃</el-button> <el-button v-if="state == 2" size="medium" @click="upInsReview(0)">涓嶉�氳繃</el-button> @@ -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,10 @@ type="success">宸叉</el-tag> </el-option> </el-select> + <!-- 缃戝垎浠暟閲囧浗浜�/杩涘彛 --> + <NetworkAnalyzerDataAcquisition :itemList="currentSample.insProduct" :param="param" + :equipOptions="equipOptions" + v-if="currentSample.insProduct && currentSample.insProduct.length > 0 && param" /> <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,8 +151,7 @@ </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> @@ -167,8 +170,7 @@ };`"> <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 +225,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 +256,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 +265,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 +275,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 "> @@ -298,8 +299,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 +315,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,8 +356,9 @@ </div> <el-drawer :size="550" :visible.sync="sampleVisible" title="鏍峰搧鍒囨崲"> <el-table v-if="sampleVisible" ref="productTable" :current-row-key="currentKey" :data="sampleProduct" - :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> @@ -507,7 +520,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> @@ -520,6 +533,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, @@ -540,8 +554,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"; @@ -554,10 +568,12 @@ limsTable, UnPassDialog, InspectionWord, + NetworkAnalyzerDataAcquisition, }, data() { return { sonLaboratory: null, + workShopId: null, orderId: null, state: null, inspectorList: null, @@ -774,8 +790,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; @@ -788,7 +805,6 @@ this.getInsStateDicts(); this.getComparisonList(); this.getAuthorizedPerson(); - // this.getPower(); this.startWorker(); // this.getList0() // 浠诲姟鍒囨崲 this.scrollInit(); @@ -798,7 +814,6 @@ this.getInsStateDicts(); this.getComparisonList(); this.getAuthorizedPerson(); - // this.getPower(); this.startWorker(); // this.getList0() // 浠诲姟鍒囨崲 this.scrollInit(); @@ -828,6 +843,8 @@ equipValue: [], equipName: [], insResult: null, + testEndTime: [], + testStartTime: [], }; }); // 鍘婚噸妯℃澘锛岃繑鍥炴湁鍑犱釜妯℃澘 @@ -955,7 +972,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 @@ -982,6 +999,8 @@ equipValue: [], equipName: [], insResult: null, + testEndTime: [], + testStartTime: [], }; }); if (this.currentSample.index == undefined) @@ -1134,7 +1153,6 @@ this.dataAcquisitionInfo = {}; this.getData = []; for (let i in this.objectOrder(data)) { - console.log("i---", i); let obj = {}; if (i.includes("@")) { obj = { @@ -1477,12 +1495,10 @@ }, // 淇濆瓨婀垮害銆佹俯搴︽暟鎹� subOtherForm(m, type) { - console.log("m---", m); write({ [type]: type === "remark" ? m : Number(m), id: this.insOrder.id, }).then((res) => { - if (res.code == 201) return; this.$message.success("淇濆瓨鎴愬姛"); }); }, @@ -1501,34 +1517,6 @@ a.download = "table.png"; a.click(); }); - }, - // 鏉冮檺鑾峰彇 - getPower() { - let power = JSON.parse(sessionStorage.getItem("power")); - let fileDel = false; - let fileAdd = false; - let collected = false; - let temDataAcquisition = false; - for (var i = 0; i < power.length; i++) { - if (power[i].menuMethod == "uploadFile") { - fileAdd = true; - } - if (power[i].menuMethod == "delfile") { - fileDel = true; - } - if (power[i].menuMethod == "isItAllowedToModifyTheCollectedValues") { - collected = true; - } - if (power[i].menuMethod == "temDataAcquisition") { - temDataAcquisition = true; - } - } - if (!fileDel) { - // this.componentData0.do.splice(1, 1); - } - this.fileAdd = fileAdd; - this.collected = collected; - this.temDataAcquisition = temDataAcquisition; }, uploadSample() { doInsOrder({ @@ -1555,7 +1543,7 @@ repetitionTag: this.repetitionTag }); this.tableLoading = false; - if (res.data.length > 0) { + if (res.data) { return res.data; } }, @@ -1580,6 +1568,8 @@ equipValue: [], equipName: [], insResult: null, + testEndTime: [], + testStartTime: [], }; }); // 澶勭悊椤甸潰鍒楄〃鏁版嵁 @@ -1625,6 +1615,8 @@ equipValue: [], equipName: [], insResult: null, + testEndTime: [], + testStartTime: [], }; }); this.getTableLists0(list); @@ -1985,6 +1977,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; + } } } }); @@ -2024,6 +2022,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 === "搴忓彿" && @@ -2046,6 +2045,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 === "璁$畻鍊�") { @@ -2060,8 +2063,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 = '' @@ -2075,6 +2101,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] && @@ -2197,6 +2228,24 @@ } catch (e) { 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( @@ -2394,6 +2443,46 @@ } } 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": this.tableList[0].lastValue = value ? value.v.v : ""; @@ -2590,7 +2679,7 @@ viewManHour() { this.$refs.viewManHourDia.showDialog(this.id, 99); }, - openAddVerifyDia () { + openAddVerifyDia() { this.addVerifyDia = true; }, submit() { @@ -2710,10 +2799,6 @@ orderId: this.orderId, sonLaboratory: this.sonLaboratory }).then((res) => { - if (res.code == 201) { - this.$message.error("淇濆瓨澶辫触"); - return; - } this.$message.success("宸蹭繚瀛�"); }); // 鍚� Worker 鍙戦�佹秷鎭紝寮�濮嬪鐞嗛�昏緫 @@ -2780,8 +2865,13 @@ 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({ @@ -2846,6 +2936,8 @@ equipValue: [], equipName: [], insResult: null, + testEndTime: [], + testStartTime: [], }; }); // 椤甸潰鏁版嵁澶勭悊 @@ -2884,7 +2976,7 @@ }, handleDown(row) { downFile({ id: row.id }).then((res) => { - this.$download.downloadFileFromUrl(res.data.fileUrl, row.fileName) + this.$download.saveAs(res.data.fileUrl, row.fileName) }) .catch((error) => { }); }, @@ -3046,7 +3138,7 @@ } .content-h-2 { - justify-content: end; + justify-content: flex-end; } .content-v-0 { -- Gitblit v1.9.3