From f40512e0f74304300b3f9a75e6b9eee82230e479 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 21 五月 2026 18:35:16 +0800
Subject: [PATCH] fix: 质检提交数据进行验证
---
src/views/procurementManagement/qualityInspection/index.vue | 35 ++++++++++++++++++++++++++---------
1 files changed, 26 insertions(+), 9 deletions(-)
diff --git a/src/views/procurementManagement/qualityInspection/index.vue b/src/views/procurementManagement/qualityInspection/index.vue
index fd25ccf..7628839 100644
--- a/src/views/procurementManagement/qualityInspection/index.vue
+++ b/src/views/procurementManagement/qualityInspection/index.vue
@@ -49,7 +49,7 @@
</el-table>
</el-card>
- <el-dialog v-model="dialogVisible" :title="dialogType === 'add' ? '鏂板璐ㄦ鍗�' : '缂栬緫璐ㄦ鍗�'" width="1000px">
+ <FormDialog v-model="dialogVisible" :title="dialogType === 'add' ? '鏂板璐ㄦ鍗�' : '缂栬緫璐ㄦ鍗�'" :width="'1000px'" :operation-type="dialogType" @close="dialogVisible = false" @confirm="handleSubmit" @cancel="dialogVisible = false">
<el-form :model="formData" label-width="120px">
<el-row :gutter="20">
<el-col :span="12">
@@ -62,7 +62,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="渚涘簲鍟嗗悕绉�">
- <el-input v-model="formData.supplierName" placeholder="渚涘簲鍟嗗悕绉�" readonly />
+ <el-input v-model="formData.supplierName" placeholder="渚涘簲鍟嗗悕绉�" />
</el-form-item>
</el-col>
</el-row>
@@ -120,15 +120,12 @@
<el-input v-model="formData.remark" type="textarea" :rows="3" placeholder="璇疯緭鍏ュ娉ㄤ俊鎭�" />
</el-form-item>
</el-form>
- <template #footer>
- <el-button @click="dialogVisible = false">鍙栨秷</el-button>
- <el-button type="primary" @click="handleSubmit">纭畾</el-button>
- </template>
- </el-dialog>
+ </FormDialog>
</div>
</template>
<script setup>
+import FormDialog from '@/components/Dialog/FormDialog.vue';
import { ref, reactive } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
@@ -208,6 +205,26 @@
}
const handleSubmit = () => {
+ if (!formData.products || formData.products.length === 0) {
+ ElMessage.error('璇疯嚦灏戞坊鍔犱竴鏉¤川妫�鍟嗗搧')
+ return
+ }
+
+ for (let i = 0; i < formData.products.length; i++) {
+ const product = formData.products[i]
+ if (product.qualifiedQuantity === null || product.qualifiedQuantity === undefined) {
+ ElMessage.error(`绗�${i + 1}鏉″晢鍝佺殑鍚堟牸鏁伴噺涓嶈兘涓虹┖`)
+ return
+ }
+ if (product.unqualifiedQuantity === null || product.unqualifiedQuantity === undefined) {
+ ElMessage.error(`绗�${i + 1}鏉″晢鍝佺殑涓嶅悎鏍兼暟閲忎笉鑳戒负绌篳)
+ return
+ }
+ }
+
+ const totalQualified = formData.products.reduce((sum, p) => sum + (p.qualifiedQuantity || 0), 0)
+ const totalUnqualified = formData.products.reduce((sum, p) => sum + (p.unqualifiedQuantity || 0), 0)
+
if (dialogType.value === 'add') {
const newInspection = {
id: Date.now(),
@@ -215,8 +232,8 @@
arrivalNo: formData.arrivalNo,
supplierName: formData.supplierName,
status: 'pending',
- qualifiedQuantity: 0,
- unqualifiedQuantity: 0,
+ qualifiedQuantity: totalQualified,
+ unqualifiedQuantity: totalUnqualified,
inspectionTime: new Date().toLocaleString(),
inspector: formData.inspector,
remark: formData.remark
--
Gitblit v1.9.3