From 8a5fd737f22ff39f045340adc91971bcedd8901b Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期六, 16 五月 2026 16:11:21 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_NEW_pro' into dev_NEW_pro
---
src/views/qualityManagement/processInspection/components/formDia.vue | 74 +++++++++++++++++++++++++++++++++++--
1 files changed, 70 insertions(+), 4 deletions(-)
diff --git a/src/views/qualityManagement/processInspection/components/formDia.vue b/src/views/qualityManagement/processInspection/components/formDia.vue
index 88c1e20..b15eabb 100644
--- a/src/views/qualityManagement/processInspection/components/formDia.vue
+++ b/src/views/qualityManagement/processInspection/components/formDia.vue
@@ -99,6 +99,34 @@
</el-row>
<el-row :gutter="30">
<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"
+ @change="handleQualifiedQuantityChange" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="涓嶅悎鏍兼暟閲忥細"
+ prop="unqualifiedQuantity">
+ <el-input-number :step="0.01"
+ :min="0"
+ style="width: 100%"
+ v-model="form.unqualifiedQuantity"
+ placeholder="璇疯緭鍏�"
+ clearable
+ :precision="2"
+ @change="handleUnqualifiedQuantityChange" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="30">
+ <el-col :span="12">
<el-form-item label="妫�娴嬪崟浣嶏細"
prop="checkCompany">
<el-input v-model="form.checkCompany"
@@ -114,6 +142,8 @@
value="鍚堟牸" />
<el-option label="涓嶅悎鏍�"
value="涓嶅悎鏍�" />
+ <el-option label="閮ㄥ垎鍚堟牸"
+ value="閮ㄥ垎鍚堟牸" />
</el-select>
</el-form-item>
</el-col>
@@ -189,6 +219,7 @@
import { userListNoPage } from "@/api/system/user.js";
import { qualityInspectParamInfo } from "@/api/qualityManagement/qualityInspectParam.js";
import { list } from "@/api/productionManagement/productionProcess";
+ import qualified from "@/views/inventoryManagement/stockManagement/Qualified.vue";
const { proxy } = getCurrentInstance();
const emit = defineEmits(["close"]);
@@ -206,6 +237,8 @@
testStandardId: "",
unit: "",
quantity: "",
+ qualifiedQuantity: "",
+ unqualifiedQuantity: "",
checkCompany: "",
checkResult: "",
},
@@ -215,11 +248,11 @@
checkName: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
productId: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
productModelId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
- testStandardId: [
- { required: false, message: "璇烽�夋嫨鎸囨爣", trigger: "change" },
- ],
+ testStandardId: [{ required: false, message: "璇烽�夋嫨鎸囨爣", trigger: "change" }],
unit: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
quantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ qualifiedQuantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ unqualifiedQuantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
checkCompany: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
checkResult: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
},
@@ -400,6 +433,28 @@
modelOptions.value.find(item => item.id == value)?.unit || "";
};
+ const handleQualifiedQuantityChange = (value) => {
+ if (value === null || value === undefined) {
+ form.value.qualifiedQuantity = 0;
+ return;
+ }
+ const quantity = parseFloat(form.value.quantity) || 0;
+ const qualified = parseFloat(value) || 0;
+ form.value.qualifiedQuantity = qualified > quantity?quantity:qualified;
+ form.value.unqualifiedQuantity = Math.max(0, quantity - qualified);
+ };
+
+ const handleUnqualifiedQuantityChange = (value) => {
+ if (value === null || value === undefined) {
+ form.value.unqualifiedQuantity = 0;
+ return;
+ }
+ const quantity = parseFloat(form.value.quantity) || 0;
+ const unqualified = parseFloat(value) || 0;
+ form.value.unqualifiedQuantity = unqualified > quantity?quantity:unqualified;
+ form.value.qualifiedQuantity = Math.max(0, quantity - unqualified);
+ };
+
const findNodeById = (nodes, productId) => {
for (let i = 0; i < nodes.length; i++) {
if (nodes[i].value === productId) {
@@ -440,6 +495,17 @@
delete item.id;
});
}
+ // 纭繚鏁伴噺涓嶄负null
+ const quantity = parseFloat(form.value.quantity) || 0;
+ const qualified = parseFloat(form.value.qualifiedQuantity) || 0;
+ const unqualified = parseFloat(form.value.unqualifiedQuantity) || 0;
+
+ // 楠岃瘉鏁伴噺鍏崇郴
+ if (qualified + unqualified !== quantity) {
+ proxy.$modal.msgError("鍚堟牸鏁伴噺涓庝笉鍚堟牸鏁伴噺涔嬪拰蹇呴』绛変簬鎬绘暟閲�");
+ return;
+ }
+
const data = {
...form.value,
process: processName, // 淇濈暀 process 瀛楁浠ュ吋瀹瑰悗绔�
@@ -520,4 +586,4 @@
</script>
<style scoped>
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.3