From c0d6fe2638379e6fb23f1af5eff27355cb565e9d Mon Sep 17 00:00:00 2001
From: ZN <zhang_12370@163.com>
Date: 星期六, 28 三月 2026 15:34:06 +0800
Subject: [PATCH] feat(采购管理): 优化高级价格管理与采购台账功能
---
src/views/procurementManagement/advancedPriceManagement/index.vue | 44 +++++++++++++++++++-------------------------
1 files changed, 19 insertions(+), 25 deletions(-)
diff --git a/src/views/procurementManagement/advancedPriceManagement/index.vue b/src/views/procurementManagement/advancedPriceManagement/index.vue
index 5af8311..d66c2c8 100644
--- a/src/views/procurementManagement/advancedPriceManagement/index.vue
+++ b/src/views/procurementManagement/advancedPriceManagement/index.vue
@@ -31,10 +31,10 @@
<el-icon><Plus /></el-icon>
鏂板浠锋牸
</el-button>
- <el-button type="success" @click="openBatchDiscountDialog">
+ <!-- <el-button type="success" @click="openBatchDiscountDialog">
<el-icon><Discount /></el-icon>
鎵归噺鎶樻墸
- </el-button>
+ </el-button> -->
<el-button type="info" @click="exportData">
<el-icon><Download /></el-icon>
瀵煎嚭鏁版嵁
@@ -62,17 +62,16 @@
<div class="product-info">
<div class="product-name">{{ row.productName }}</div>
<div class="product-spec">{{ row.specification }}</div>
- <!-- <div class="product-code">缂栫爜: {{ row.productCode }}</div> -->
</div>
</template>
</el-table-column>
<el-table-column label="渚涘簲鍟�" prop="supplierName" width="200" />
- <el-table-column label="鍩虹浠锋牸" width="120" align="right">
+ <el-table-column label="鍩虹浠锋牸(涓嶅惈绋�)" width="150" align="right">
<template #default="{ row }">
<span class="price-text">楼{{ row.basePrice }}</span>
</template>
</el-table-column>
- <el-table-column label="鎶樻墸淇℃伅" width="150">
+ <el-table-column label="鎶樻墸淇℃伅" width="120" align="center">
<template #default="{ row }">
<div v-if="row.discountType">
<el-tag :type="getDiscountTagType(row.discountType)" size="small">
@@ -83,9 +82,12 @@
<span v-else class="no-discount">鏃犳姌鎵�</span>
</template>
</el-table-column>
- <el-table-column label="瀹為檯浠锋牸" width="120" align="right">
+ <!-- <el-table-column label="瀹為檯浠锋牸(涓嶅惈绋�)" prop="actuallyPrice" width="150" align="right"> -->
+ <!-- </el-table-column> -->
+ <el-table-column label="瀹為檯浠锋牸(涓嶅惈绋�)" width="150" align="right">
<template #default="{ row }">
- <span class="final-price">楼{{ calculateFinalPrice(row) }}</span>
+ <!-- <span class="final-price">楼{{ calculateFinalPrice(row) }}</span> -->
+ <span class="final-price" >楼{{ row.actuallyPrice?row.actuallyPrice:row.basePrice }}</span>
</template>
</el-table-column>
<el-table-column label="浠锋牸鎺у埗" width="120">
@@ -108,8 +110,9 @@
</div> -->
</template>
</el-table-column>
- <el-table-column label="鐢熸晥鏃堕棿" prop="effectiveTime" width="180" />
- <el-table-column label="鏇存柊鏃堕棿" prop="updateTime" width="180" sortable />
+ <el-table-column label="鐢熸晥鏃堕棿" prop="effectiveTime" width="100" align="center" />
+ <el-table-column label="鏇存柊鏃堕棿" prop="updateTime" width="160" sortable align="center" />
+ <el-table-column label="澶囨敞" width="200" prop="remark" align="center" show-overflow-tooltip />
<el-table-column label="鎿嶄綔" width="250" align="center" fixed="right">
<template #default="{ row }">
<el-button type="primary" link @click="openDialog('edit', row)">
@@ -160,13 +163,6 @@
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鍟嗗搧缂栫爜" prop="productCode">
- <el-input v-model="formData.productCode" placeholder="璇疯緭鍏ュ晢鍝佺紪鐮�" />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row :gutter="20">
- <el-col :span="12">
<el-form-item label="瑙勬牸鍨嬪彿" prop="specification">
<el-select
v-model="formData.specification"
@@ -183,6 +179,8 @@
</el-select>
</el-form-item>
</el-col>
+ </el-row>
+ <el-row :gutter="20">
<el-col :span="12">
<el-form-item label="渚涘簲鍟�" prop="supplierId">
<el-select
@@ -200,13 +198,13 @@
</el-select>
</el-form-item>
</el-col>
- </el-row>
- <el-row :gutter="20">
<el-col :span="12">
<el-form-item label="鍩虹浠锋牸" prop="basePrice">
<el-input-number v-model="formData.basePrice" :min="0" :precision="2" placeholder="璇疯緭鍏ュ熀纭�浠锋牸" style="width: 100%" />
</el-form-item>
</el-col>
+ </el-row>
+ <el-row :gutter="20">
<el-col :span="12">
<el-form-item label="鍗曚綅">
<el-input v-model="formData.unit" placeholder="璇疯緭鍏ュ崟浣�" />
@@ -402,7 +400,6 @@
const formData = reactive({
productId: null,
productName: '',
- productCode: '',
specification: '',
supplierId: null,
supplierName: '',
@@ -442,7 +439,6 @@
// 琛ㄥ崟楠岃瘉瑙勫垯
const formRules = {
productId: [{ required: true, message: '璇烽�夋嫨鍟嗗搧鍚嶇О', trigger: 'change' }],
- productCode: [{ required: true, message: '璇疯緭鍏ュ晢鍝佺紪鐮�', trigger: 'blur' }],
supplierId: [{ required: true, message: '璇烽�夋嫨渚涘簲鍟�', trigger: 'change' }],
basePrice: [{ required: true, message: '璇疯緭鍏ュ熀纭�浠锋牸', trigger: 'blur' }],
effectiveTime: [{ required: true, message: '璇烽�夋嫨鐢熸晥鏃堕棿', trigger: 'change' }],
@@ -508,14 +504,13 @@
const selectedProduct = findNodeById(productOptions.value, value);
if (selectedProduct) {
formData.productName = selectedProduct.productName;
- formData.productCode = selectedProduct.productCode;
}
modelList({ id: value }).then((res) => {
modelOptions.value = res;
});
+ formData.specification = "";
} else {
formData.productName = "";
- formData.productCode = "";
modelOptions.value = [];
}
};
@@ -601,7 +596,6 @@
Object.assign(formData, {
productId: null,
productName: '',
- productCode: '',
specification: '',
supplierId: null,
supplierName: '',
@@ -631,11 +625,11 @@
const handleSubmit = async () => {
if (!formRef.value) return
- formData.actualPrice = calculateFinalPrice(formData)
+ formData.actuallyPrice = Number(calculateFinalPrice(formData))
if( formData.discountType === ''){
formData.discountEndTime = '2099-12-31 23:59:59'
}
-
+
try {
await formRef.value.validate()
submitLoading.value = true
--
Gitblit v1.9.3