From c7f3b447415448e6ae570882900ee129590f580b Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 09 四月 2025 17:47:30 +0800
Subject: [PATCH] Merge branch 'radio-frequency-cable' of http://114.132.189.42:9002/r/lims-ruoyi-before into radio-frequency-cable
---
src/api/structural/workshop.js | 9 +++
src/views/business/materialOrder/customsInspection.vue | 5 +
src/views/business/unpass/components/PurchaseVerification.vue | 43 +++++++++++--
src/views/business/inspectionTask/inspection.vue | 29 ++++-----
src/views/business/inspectionTask/index.vue | 35 ++++++-----
5 files changed, 79 insertions(+), 42 deletions(-)
diff --git a/src/api/structural/workshop.js b/src/api/structural/workshop.js
index a3b3667..59ffa22 100644
--- a/src/api/structural/workshop.js
+++ b/src/api/structural/workshop.js
@@ -53,3 +53,12 @@
params: query,
});
}
+
+// 鏍规嵁杞﹂棿id鑾峰彇鏂囦欢鍒楄〃
+export function getFileListById(query) {
+ return request({
+ url: '/workShop/fileListById',
+ method: 'get',
+ params: query,
+ })
+}
diff --git a/src/views/business/inspectionTask/index.vue b/src/views/business/inspectionTask/index.vue
index 04d6c71..9c622a9 100644
--- a/src/views/business/inspectionTask/index.vue
+++ b/src/views/business/inspectionTask/index.vue
@@ -46,17 +46,17 @@
:disabled="(scope.row.userName == null || scope.row.insState == 3 || scope.row.insState == 5) && checkPermi(['update:product:onPlan'])"
@click="editInspection(scope.row)">淇敼妫�楠屽��</el-button>
<el-button type="text" size="small" :disabled="(
- scope.row.userName == null ||
- scope.row.insState == 3 ||
- scope.row.insState == 5 ||
- (scope.row.userName && !scope.row.userName.includes(nickName))
- )" @click="handleInspection(scope.row)">妫�楠�</el-button>
+ scope.row.userName == null ||
+ scope.row.insState == 3 ||
+ scope.row.insState == 5 ||
+ (scope.row.userName && !scope.row.userName.includes(nickName))
+ )" @click="handleInspection(scope.row)">妫�楠�</el-button>
<el-button type="text" size="small" :disabled="(
- scope.row.userName == null ||
- scope.row.insState == 5 ||
- scope.row.insState == 3 ||
- (scope.row.userName && !scope.row.userName.includes(nickName))
- )" @click="handleConnect(scope.row)" v-if="tabIndex != 0">浜ゆ帴</el-button>
+ scope.row.userName == null ||
+ scope.row.insState == 5 ||
+ scope.row.insState == 3 ||
+ (scope.row.userName && !scope.row.userName.includes(nickName))
+ )" @click="handleConnect(scope.row)" v-if="tabIndex != 0">浜ゆ帴</el-button>
<el-button type="text" size="small" @click="viewInspectInfo(scope.row)">鍘熷璁板綍</el-button>
<el-popover placement="bottom" trigger="hover" style="margin-left: 6px">
<template #reference>
@@ -64,21 +64,21 @@
</template>
<div>
<el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null ||
- (scope.row.userName && !scope.row.userName.includes(nickName)))" style="margin-left: 10px"
+ (scope.row.userName && !scope.row.userName.includes(nickName)))" style="margin-left: 10px"
type="text" size="small" @click="download(scope.row)">涓嬭浇鎶ュ憡</el-button>
<el-upload ref='upload' :action="javaApi + '/insReport/inReport'" :before-upload="beforeUpload"
:data="{ id: scope.row.insReportId }" :headers="uploadHeader" :on-error="onError"
:on-success="handleSuccessUp" :show-file-list="false" style="display: inline;margin: 0 6px"
accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar'>
<el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null ||
- (scope.row.userName && !scope.row.userName.includes(nickName)))" size="small"
+ (scope.row.userName && !scope.row.userName.includes(nickName)))" size="small"
type="text">涓婁紶</el-button>
</el-upload>
<el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null ||
- (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small"
+ (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small"
@click="handleRestore(scope.row)">杩樺師</el-button>
<el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null ||
- (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small"
+ (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small"
@click="handleIssued(scope.row)">鏌ョ湅鎶ュ憡</el-button>
</div>
</el-popover>
@@ -88,8 +88,8 @@
</div>
<el-dialog :visible.sync="claimVisible" title="鎻愮ず" width="400px">
鏄惁璁ら濮旀墭缂栧彿<span style="color: #33c130">{{
- sampleUserForm.entrustCode
- }}</span>鐨勪换鍔�
+ sampleUserForm.entrustCode
+ }}</span>鐨勪换鍔�
<span slot="footer" class="dialog-footer">
<el-button @click="claimVisible = false">鍙� 娑�</el-button>
<el-button :loading="loading" type="primary" @click="confirmClaim">纭� 瀹�</el-button>
@@ -253,6 +253,7 @@
},
data() {
return {
+ workShopId: null,
issuedVisible: false,
fullscreen: false,
lookDialogVisible: false,
@@ -779,6 +780,7 @@
}
this.inspectorList = inspectorList;
this.sonLaboratory = row.sonLaboratory;
+ this.workShopId = row.workShopId;
this.state = 1;
this.typeSource = row.typeSource;
this.orderId = row.id;
@@ -790,6 +792,7 @@
state: this.state,
typeSource: this.typeSource,
orderId: this.orderId,
+ workShopId: row.workShopId
},
});
},
diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue
index 37469e3..c2e85d8 100644
--- a/src/views/business/inspectionTask/inspection.vue
+++ b/src/views/business/inspectionTask/inspection.vue
@@ -147,8 +147,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 +166,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
@@ -254,8 +252,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
">
@@ -274,8 +271,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
">
@@ -289,7 +285,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 === '鏈�缁堝��' &&
@@ -299,8 +295,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;
@@ -316,11 +311,9 @@
<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 }}
@@ -509,7 +502,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>
@@ -560,6 +553,7 @@
data() {
return {
sonLaboratory: null,
+ workShopId: null,
orderId: null,
state: null,
inspectorList: null,
@@ -776,8 +770,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;
diff --git a/src/views/business/materialOrder/customsInspection.vue b/src/views/business/materialOrder/customsInspection.vue
index 8d0a7f0..bd454b1 100644
--- a/src/views/business/materialOrder/customsInspection.vue
+++ b/src/views/business/materialOrder/customsInspection.vue
@@ -1055,7 +1055,10 @@
delete this.addObj.createTime
}
addInsOrder({
- insOrder: this.addObj,
+ insOrder: {
+ ...this.addObj,
+ workShopId: this.addObj.workShopId || '' // 纭繚 workShopId 浼犻�掔粰鍚庣
+ },
sampleList: sampleList.map(a => {
a.standardMethodListId = JSON.stringify(a.standardMethodListId)
a.insProduct = this.fullProductList
diff --git a/src/views/business/unpass/components/PurchaseVerification.vue b/src/views/business/unpass/components/PurchaseVerification.vue
index ae4619d..09ddced 100644
--- a/src/views/business/unpass/components/PurchaseVerification.vue
+++ b/src/views/business/unpass/components/PurchaseVerification.vue
@@ -1,7 +1,7 @@
<template>
<div>
<el-dialog title="杩涜揣楠岃瘉鍘熷璁板綍" :visible.sync="isShow" width="70%" :show-close="false" :close-on-click-modal="false"
- :modal-append-to-body="false" :close-on-press-escape="false">
+ :modal-append-to-body="false" :close-on-press-escape="false">
<div class="search">
<el-form :inline="true" :model="purchaseForm" label-position="right" :rules="purchaseFormRules"
ref="purchaseForm" class="form-inline" label-width="120px">
@@ -44,8 +44,11 @@
<div>
<el-form-item class="headLine" label="楠岃瘉渚濇嵁鏂囦欢缂栧彿:" label-width="160px" style="width: 100%"
prop="verifyFileCode">
- <el-input clearable v-model="purchaseForm.verifyFileCode" size="small"
- :disabled="operationType === 'view'" placeholder="璇疯緭鍏�"></el-input>
+ <el-select v-model="purchaseForm.verifyFileCode" clearable filterable size="small"
+ :disabled="operationType === 'view'" placeholder="璇烽�夋嫨">
+ <el-option v-for="item in fileList" :key="item.id" :label="item.fileName" :value="item.fileName">
+ </el-option>
+ </el-select>
</el-form-item>
</div>
<h4>
@@ -125,7 +128,7 @@
</div>
<div>
<el-table :data="factoryVerifyItemList" style="width: 98%" v-loading="tableLoading"
- :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border>
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border>
<el-table-column type="index" label="搴忓彿" width="180" align="center"></el-table-column>
<el-table-column prop="inspectionItem" label="楠岃瘉椤圭洰" width="300"></el-table-column>
<el-table-column prop="result" label="楠岃瘉缁撴灉">
@@ -149,15 +152,16 @@
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="$emit('resetPurchaseDialog')">鍙� 娑�</el-button>
- <el-button type="primary" @click="handlePurchase" :loading="handlePurchaseLoading" v-if="operationType === 'add'">纭畾</el-button>
+ <el-button type="primary" @click="handlePurchase" :loading="handlePurchaseLoading"
+ v-if="operationType === 'add'">纭畾</el-button>
</span>
</el-dialog>
<el-dialog title="寰呴獙璇侀」鐩�" :visible.sync="factoryVerifyItemDia" width="1000px"
style="max-height: 96vh; margin-top: 2vh" :show-close="false" :close-on-click-modal="false"
:close-on-press-escape="false">
<el-table :data="tableList" style="width: 100%" v-loading="tableLoading"
- :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border
- @selection-change="handleSelectionChange">
+ :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border
+ @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column type="index" label="搴忓彿" width="60" align="center"></el-table-column>
<el-table-column prop="inspectionItem" label="楠岃瘉椤圭洰"></el-table-column>
@@ -180,6 +184,7 @@
<script>
import { getFactoryVerify, addFactoryVerify } from '@/api/business/unpass.js'
+import { getFileListById } from "@/api/structural/workshop.js"
import {
getInsProduct,
} from "@/api/business/inspectionTask.js";
@@ -196,6 +201,10 @@
type: String,
default: () => null
},
+ workShopId: {
+ type: [String, Number],
+ default: () => null
+ }
},
data() {
// 杩欓噷瀛樻斁鏁版嵁
@@ -240,7 +249,8 @@
factoryVerifyItemDia: false, // 娣诲姞楠岃瘉椤圭洰寮规
handleFactoryVerifyLoading: false,
inspectionItemDia: false,
- inspectionItem: ''
+ inspectionItem: '',
+ fileList: [], // 娣诲姞鏂囦欢鍒楄〃鏁版嵁
}
},
// 鏂规硶闆嗗悎
@@ -248,6 +258,8 @@
async getInsOrder(operationType, item) {
this.operationType = operationType
this.info = item
+ // 鑾峰彇鏂囦欢鍒楄〃
+ await this.getFileList()
// 鏌ヨ宸叉彁浜ょ殑鏁版嵁
let factoryVerify = await getFactoryVerify({ insOrderId: this.orderId })
this.purchaseForm = factoryVerify.data
@@ -276,6 +288,20 @@
this.tableList.push(obj)
})
this.tableLoading = false;
+ }
+ },
+
+ // 鑾峰彇鏂囦欢鍒楄〃
+ async getFileList() {
+ try {
+ const res = await getFileListById({
+ workShopId: this.workShopId
+ })
+ if (res.code === 200) {
+ this.fileList = res.data
+ }
+ } catch (error) {
+ console.error('鑾峰彇鏂囦欢鍒楄〃澶辫触:', error)
}
},
handleSelectionChange(val) {
@@ -345,6 +371,7 @@
.headLine>>>.el-form-item__content {
width: 68%;
}
+
>>>.el-form-item__content {
display: inline-block;
}
--
Gitblit v1.9.3