From 08e38ede28f7cf8c971f84bff3a03102882a8a4b Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期三, 01 四月 2026 11:32:13 +0800
Subject: [PATCH] 增加料号显示
---
src/views/qualityManagement/processInspection/components/formDia.vue | 98 +++++++++++++++++++++++++++++++------------------
1 files changed, 62 insertions(+), 36 deletions(-)
diff --git a/src/views/qualityManagement/processInspection/components/formDia.vue b/src/views/qualityManagement/processInspection/components/formDia.vue
index bc4bb93..ba3fce6 100644
--- a/src/views/qualityManagement/processInspection/components/formDia.vue
+++ b/src/views/qualityManagement/processInspection/components/formDia.vue
@@ -43,28 +43,27 @@
<el-col :span="12">
<el-form-item label="鎸囨爣閫夋嫨锛�" prop="testStandardId">
<el-select
- v-model="form.testStandardId"
- placeholder="璇烽�夋嫨鎸囨爣"
- clearable
- @change="handleTestStandardChange"
- style="width: 100%"
+ v-model="form.testStandardId"
+ placeholder="璇烽�夋嫨鎸囨爣"
+ clearable
+ @change="handleTestStandardChange"
+ style="width: 100%"
>
<el-option
- v-for="item in testStandardOptions"
- :key="item.id"
- :label="item.standardName || item.standardNo"
- :value="item.id"
+ v-for="item in testStandardOptions"
+ :key="item.id"
+ :label="item.standardName || item.standardNo"
+ :value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
- </el-row>
- <el-row :gutter="30">
<el-col :span="12">
- <el-form-item label="鍗曚綅锛�" prop="unit">
- <el-input v-model="form.unit" placeholder="璇疯緭鍏�" disabled/>
+ <el-form-item label="鏂欏彿锛�" prop="materialCode">
+ <el-input v-model="form.materialCode" placeholder="璇疯緭鍏�" disabled/>
</el-form-item>
</el-col>
+
<el-col :span="12">
<el-form-item label="涓嶈壇鏁伴噺锛�" prop="defectiveQuantity">
<el-input-number
@@ -80,18 +79,33 @@
/>
</el-form-item>
</el-col>
+
+ <el-col :span="12">
+ <el-form-item label="鍗曚綅锛�" prop="unit">
+ <el-input v-model="form.unit" placeholder="璇疯緭鍏�" disabled/>
+ </el-form-item>
+ </el-col>
+
+ <el-col :span="12">
+ <el-form-item label="鍚堟牸鏁伴噺锛�" prop="qualifiedQuantity">
+ <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.qualifiedQuantity" placeholder="璇疯緭鍏�" clearable :precision="2" disabled/>
+ </el-form-item>
+ </el-col>
+
<el-col :span="12">
<el-form-item label="涓嶈壇鍘熷洜锛�" prop="defectiveReason">
<el-select v-model="form.defectiveReason" placeholder="璇烽�夋嫨" clearable style="width: 100%">
<el-option
- v-for="dict in defective_reason"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
+ v-for="dict in defective_reason"
+ :key="dict.value"
+ :label="dict.label"
+ :value="dict.value"
/>
</el-select>
</el-form-item>
+
</el-col>
+
<el-col :span="12">
<el-form-item label="鏁伴噺锛�" prop="quantity">
<el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="璇疯緭鍏�" clearable :precision="2" :disabled="operationType !== 'add'"/>
@@ -104,22 +118,21 @@
<el-input v-model="form.checkCompany" placeholder="璇疯緭鍏�" clearable/>
</el-form-item>
</el-col>
+
+ <el-col :span="12">
+ <el-form-item label="妫�楠屽憳锛�" prop="checkName">
+ <el-select v-model="form.checkName" placeholder="璇烽�夋嫨" clearable>
+ <el-option v-for="item in userList" :key="item.nickName" :label="item.nickName"
+ :value="item.nickName"/>
+ </el-select>
+ </el-form-item>
+ </el-col>
<el-col :span="12">
<el-form-item label="妫�娴嬬粨鏋滐細" prop="checkResult">
<el-select v-model="form.checkResult">
<el-option label="鍚堟牸" value="鍚堟牸" />
<el-option label="涓嶅悎鏍�" value="涓嶅悎鏍�" />
</el-select>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row :gutter="30">
- <el-col :span="12">
- <el-form-item label="妫�楠屽憳锛�" prop="checkName">
- <el-select v-model="form.checkName" placeholder="璇烽�夋嫨" clearable>
- <el-option v-for="item in userList" :key="item.nickName" :label="item.nickName"
- :value="item.nickName"/>
- </el-select>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -187,6 +200,7 @@
model: "",
testStandardId: "",
unit: "",
+ materialCode: "",
quantity: "",
defectiveQuantity: "",
defectiveReason: "",
@@ -256,15 +270,24 @@
// 鐩戝惉涓嶈壇鏁伴噺鍙樺寲锛岃嚜鍔ㄦ洿鏂版暟閲�
// 褰� defectiveQuantity 澧炲姞鏃讹紝quantity 鍑忓皯锛涘綋 defectiveQuantity 鍑忓皯鏃讹紝quantity 澧炲姞
watch(() => form.value.defectiveQuantity, (newVal, oldVal) => {
- const newDefectiveQty = Number(newVal) || 0;
- const oldDefectiveQty = Number(oldVal) || 0;
- const currentQuantity = Number(form.value.quantity) || 0;
-
- // 璁$畻鍙樺寲閲忥細鏂板�� - 鏃у��
- const changeAmount = newDefectiveQty - oldDefectiveQty;
-
- // quantity 鍙嶅悜鍙樺寲
- form.value.quantity = Number((currentQuantity - changeAmount).toFixed(2));
+ if (newVal > form.value.quantity) {
+ form.value.defectiveQuantity = form.value.quantity;
+ }
+ form.value.qualifiedQuantity = Number((form.value.quantity - newVal).toFixed(2));
+});
+
+// 鐩戝惉鎬绘暟閲忓彉鍖栵紝鑷姩鏇存柊鍚堟牸鏁伴噺
+watch(() => form.value.quantity, (newVal, oldVal) => {
+ const totalQty = Number(newVal) || 0;
+ const defectiveQty = Number(form.value.defectiveQuantity) || 0;
+
+ // 纭繚涓嶈壇鏁伴噺涓嶈秴杩囨�绘暟閲�
+ if (defectiveQty > totalQty) {
+ form.value.defectiveQuantity = totalQty;
+ }
+
+ // 璁$畻鍚堟牸鏁伴噺
+ form.value.qualifiedQuantity = Number((totalQty - defectiveQty).toFixed(2));
});
// 鎵撳紑寮规
@@ -294,6 +317,7 @@
model: "",
testStandardId: "",
unit: "",
+ materialCode: "",
quantity: "",
checkCompany: "",
checkResult: "",
@@ -378,6 +402,7 @@
const getModels = (value) => {
form.value.productModelId = undefined;
form.value.unit = undefined;
+ form.value.materialCode = undefined;
modelOptions.value = [];
currentProductId.value = value
form.value.productName = findNodeById(productOptions.value, value);
@@ -392,6 +417,7 @@
const handleChangeModel = (value) => {
form.value.model = modelOptions.value.find(item => item.id == value)?.model || '';
form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || '';
+ form.value.materialCode = modelOptions.value.find(item => item.id == value)?.materialCode || '';
}
const findNodeById = (nodes, productId) => {
--
Gitblit v1.9.3