From 1678465c039ce6255105c1fcdb3ace56860f44f9 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期一, 08 六月 2026 17:29:25 +0800
Subject: [PATCH] Merge branch 'dev_NEW_pro' of http://114.132.189.42:9002/r/product-inventory-management into dev_NEW_pro
---
src/views/procurementManagement/qualityInspection/index.vue | 77 +++++++++++++++++++++++++++++---------
1 files changed, 58 insertions(+), 19 deletions(-)
diff --git a/src/views/procurementManagement/qualityInspection/index.vue b/src/views/procurementManagement/qualityInspection/index.vue
index fd25ccf..aee1d99 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>
@@ -116,20 +116,30 @@
<el-input v-model="formData.inspector" placeholder="璇疯緭鍏ヨ川妫�鍛樺鍚�" />
</el-form-item>
+ <el-row :gutter="20">
+ <el-col :span="12">
+ <el-form-item label="鍒涘缓鏃堕棿">
+ <el-date-picker v-model="formCreateTimeDate"
+ type="date"
+ placeholder="閫夋嫨鏃ユ湡"
+ value-format="YYYY-MM-DD"
+ style="width: 100%" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+
<el-form-item label="澶囨敞">
<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 { ref, reactive } from 'vue'
+import FormDialog from '@/components/Dialog/FormDialog.vue';
+import { ref, reactive, computed } from 'vue'
+import dayjs from 'dayjs'
import { ElMessage, ElMessageBox } from 'element-plus'
const loading = ref(false)
@@ -147,7 +157,14 @@
supplierName: '',
products: [],
inspector: '',
- remark: ''
+ remark: '',
+ createTime: ''
+})
+const formCreateTimeDate = computed({
+ get: () => (formData.createTime ? String(formData.createTime).split(' ')[0] : ''),
+ set: (value) => {
+ formData.createTime = value ? `${value} ${dayjs().format('HH:mm:ss')}` : ''
+ }
})
const mockData = [
@@ -193,31 +210,53 @@
arrivalNo: row.arrivalNo,
supplierName: row.supplierName,
inspector: row.inspector,
- remark: row.remark
+ remark: row.remark,
+ createTime: row.createTime || ''
})
} else {
- Object.assign(formData, {
- arrivalNo: '',
- supplierName: '',
+ Object.assign(formData, {
+ arrivalNo: '',
+ supplierName: '',
products: [],
- inspector: '',
- remark: ''
+ inspector: '',
+ remark: '',
+ createTime: dayjs().format('YYYY-MM-DD HH:mm:ss')
})
}
dialogVisible.value = true
}
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(),
- inspectionNo: `QI${Date.now()}`,
+ inspectionNo: '',
arrivalNo: formData.arrivalNo,
supplierName: formData.supplierName,
status: 'pending',
- qualifiedQuantity: 0,
- unqualifiedQuantity: 0,
- inspectionTime: new Date().toLocaleString(),
+ qualifiedQuantity: totalQualified,
+ unqualifiedQuantity: totalUnqualified,
+ inspectionTime: formData.createTime,
inspector: formData.inspector,
remark: formData.remark
}
--
Gitblit v1.9.3