From 22002c2b5bf09bb769a51448537fa6a572a3ea88 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期五, 22 五月 2026 10:25:09 +0800
Subject: [PATCH] 费用报销的审批流程

---
 src/views/procurementManagement/qualityInspection/index.vue |   37 +++++++++++++++++++++++++++----------
 1 files changed, 27 insertions(+), 10 deletions(-)

diff --git a/src/views/procurementManagement/qualityInspection/index.vue b/src/views/procurementManagement/qualityInspection/index.vue
index c562253..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'
 
@@ -159,7 +156,7 @@
     status: 'completed',
     qualifiedQuantity: 240,
     unqualifiedQuantity: 10,
-    inspectionTime: '2024-12-01 16:30:00',
+    inspectionTime: '2025-12-01 16:30:00',
     inspector: '闄堝織寮�',
     remark: '璐ㄦ瀹屾垚'
   }
@@ -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