From 61449dbf92441b41e37c1d519e8662cca998ff6a Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期四, 02 四月 2026 11:45:08 +0800
Subject: [PATCH] fix: 添加批号
---
src/views/procurementManagement/procurementLedger/index.vue | 87 ++++++++++++++++++++++++++++++++-----------
1 files changed, 65 insertions(+), 22 deletions(-)
diff --git a/src/views/procurementManagement/procurementLedger/index.vue b/src/views/procurementManagement/procurementLedger/index.vue
index 0ebff95..7042d47 100644
--- a/src/views/procurementManagement/procurementLedger/index.vue
+++ b/src/views/procurementManagement/procurementLedger/index.vue
@@ -88,6 +88,8 @@
prop="specificationModel" />
<el-table-column label="鍗曚綅"
prop="unit" />
+ <el-table-column label="鏂欏彿"
+ prop="materialCode" />
<el-table-column label="鏁伴噺"
prop="quantity" />
<el-table-column label="绋庣巼(%)"
@@ -405,6 +407,8 @@
prop="productCategory" />
<el-table-column label="瑙勬牸鍨嬪彿"
prop="specificationModel" />
+ <el-table-column label="鏂欏彿"
+ prop="materialCode" />
<el-table-column label="鍗曚綅"
prop="unit"
width="70" />
@@ -430,15 +434,15 @@
prop="taxExclusiveTotalPrice"
:formatter="formattedNumber"
width="150" />
- <el-table-column label="鏄惁璐ㄦ"
- prop="isChecked"
- width="150">
- <template #default="scope">
- <el-tag :type="scope.row.isChecked ? 'success' : 'info'">
- {{ scope.row.isChecked ? '鏄�' : '鍚�' }}
- </el-tag>
- </template>
- </el-table-column>
+<!-- <el-table-column label="鏄惁璐ㄦ"-->
+<!-- prop="isChecked"-->
+<!-- width="150">-->
+<!-- <template #default="scope">-->
+<!-- <el-tag :type="scope.row.isChecked ? 'success' : 'info'">-->
+<!-- {{ scope.row.isChecked ? '鏄�' : '鍚�' }}-->
+<!-- </el-tag>-->
+<!-- </template>-->
+<!-- </el-table-column>-->
<el-table-column fixed="right"
label="鎿嶄綔"
min-width="60"
@@ -567,6 +571,23 @@
</el-select>
</el-form-item>
</el-col>
+
+ <el-col :span="24">
+ <el-form-item label="鏂欏彿锛�"
+ prop="materialCode">
+ <el-input v-model="productForm.materialCode"
+ placeholder="璇疯緭鍏�"
+ disabled />
+ </el-form-item>
+ </el-col>
+ <el-col :span="24">
+ <el-form-item label="鎵瑰彿锛�"
+ prop="batchNo">
+ <el-input v-model="productForm.batchNo"
+ clearable
+ placeholder="閫夊~锛屽彲杈撳叆鎵瑰彿锛涚暀绌哄皢鑷姩鐢熸垚" />
+ </el-form-item>
+ </el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
@@ -673,19 +694,19 @@
</el-form-item>
</el-col>
</el-row>
- <el-row :gutter="30">
- <el-col :span="12">
- <el-form-item label="鏄惁璐ㄦ锛�"
- prop="isChecked">
- <el-radio-group v-model="productForm.isChecked">
- <el-radio label="鏄�"
- :value="true" />
- <el-radio label="鍚�"
- :value="false" />
- </el-radio-group>
- </el-form-item>
- </el-col>
- </el-row>
+<!-- <el-row :gutter="30">-->
+<!-- <el-col :span="12">-->
+<!-- <el-form-item label="鏄惁璐ㄦ锛�"-->
+<!-- prop="isChecked">-->
+<!-- <el-radio-group v-model="productForm.isChecked">-->
+<!-- <el-radio label="鏄�"-->
+<!-- :value="true" />-->
+<!-- <el-radio label="鍚�"-->
+<!-- :value="false" />-->
+<!-- </el-radio-group>-->
+<!-- </el-form-item>-->
+<!-- </el-col>-->
+<!-- </el-row>-->
</el-form>
</FormDialog>
<FileListDialog
@@ -952,6 +973,8 @@
productCategory: "",
productModelId: "",
specificationModel: "",
+ materialCode: "",
+ batchNo: "",
unit: "",
quantity: "",
taxInclusiveUnitPrice: "",
@@ -1587,9 +1610,11 @@
if (index !== -1) {
productForm.value.specificationModel = modelOptions.value[index].model;
productForm.value.unit = modelOptions.value[index].unit;
+ productForm.value.materialCode = modelOptions.value[index].materialCode;
} else {
productForm.value.specificationModel = null;
productForm.value.unit = null;
+ productForm.value.materialCode = null;
}
};
const findNodeById = (nodes, productId) => {
@@ -1620,10 +1645,28 @@
return newItem;
});
}
+
+ /** 涓庡簱瀛樻柊澧炰竴鑷达細鏈~鎵瑰彿鏃跺墠绔敓鎴愶紙PH + 鏃堕棿鎴� + 闅忔満鏁帮級 */
+ const generateProductBatchNo = () => {
+ const d = new Date();
+ const pad = (n) => String(n).padStart(2, "0");
+ const ts = `${d.getFullYear()}${pad(d.getMonth() + 1)}${pad(d.getDate())}${pad(d.getHours())}${pad(d.getMinutes())}${pad(d.getSeconds())}`;
+ const r = Math.floor(Math.random() * 10000)
+ .toString()
+ .padStart(4, "0");
+ return `PH${ts}${r}`;
+ };
+
+ const ensureProductBatchNo = () => {
+ const v = (productForm.value.batchNo ?? "").toString().trim();
+ productForm.value.batchNo = v || generateProductBatchNo();
+ };
+
// 鎻愪氦浜у搧琛ㄥ崟
const submitProduct = () => {
proxy.$refs["productFormRef"].validate(valid => {
if (valid) {
+ ensureProductBatchNo();
if (operationType.value === "edit") {
submitProductEdit();
} else {
--
Gitblit v1.9.3