From 0964a3d755ab490b709acca3a12df323a5053c8e Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 23 四月 2026 13:35:09 +0800
Subject: [PATCH] 发货记录增加数量+“库存预警”字段移至库存管理+点击销售合同号自动跳转到销售台账
---
src/views/salesManagement/deliveryLedger/index.vue | 11 +++++++++++
src/views/reportAnalysis/projectProfit/index.vue | 23 ++++++++++++++++++++++-
src/views/inventoryManagement/receiptManagement/index.vue | 8 ++++++++
src/views/salesManagement/salesLedger/index.vue | 12 ++++++++++++
4 files changed, 53 insertions(+), 1 deletions(-)
diff --git a/src/views/inventoryManagement/receiptManagement/index.vue b/src/views/inventoryManagement/receiptManagement/index.vue
index 2414a5c..398c006 100644
--- a/src/views/inventoryManagement/receiptManagement/index.vue
+++ b/src/views/inventoryManagement/receiptManagement/index.vue
@@ -36,6 +36,7 @@
<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" width="200" show-overflow-tooltip />
<el-table-column label="鍗曚綅" prop="unit" width="70" show-overflow-tooltip />
<el-table-column label="鍏ュ簱鏁伴噺" prop="inboundNum" width="90" show-overflow-tooltip />
+ <el-table-column label="搴撳瓨棰勮" prop="warnNum" width="90" show-overflow-tooltip />
<el-table-column label="鍚◣鍗曚环" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip />
<el-table-column label="鍚◣鎬讳环" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip />
<el-table-column label="绋庣巼(%)" prop="taxRate" width="80" show-overflow-tooltip />
@@ -97,6 +98,11 @@
<el-table-column label="鏈鍏ュ簱鏁伴噺" prop="quantityStock" width="150">
<template #default="scope">
<el-input-number :step="0.01" :min="0" style="width: 100%" v-model="scope.row.quantityStock" />
+ </template>
+ </el-table-column>
+ <el-table-column label="搴撳瓨棰勮" prop="warnNum" width="150">
+ <template #default="scope">
+ <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="scope.row.warnNum" />
</template>
</el-table-column>
<el-table-column label="绋庣巼(%)" prop="taxRate" width="120" />
@@ -313,6 +319,7 @@
productList.value = productRes.data.map(item => ({
...item,
quantityStock: 0,
+ warnNum: 0,
originalQuantityStock: Number(item.quantityStock ?? item.inboundQuantity ?? 0),
}))
} catch (error) {
@@ -434,6 +441,7 @@
nickName: userStore.nickName,
details: selectedRows.value.map(product => ({
id: product.id,
+ warnNum: product.warnNum,
// id: product.salesLedgerProductId,
inboundQuantity: Number(product.quantityStock)
})),
diff --git a/src/views/reportAnalysis/projectProfit/index.vue b/src/views/reportAnalysis/projectProfit/index.vue
index eaa264b..bbf9b46 100644
--- a/src/views/reportAnalysis/projectProfit/index.vue
+++ b/src/views/reportAnalysis/projectProfit/index.vue
@@ -22,7 +22,12 @@
total: pagination.total,
}"
@pagination="changePage"
- ></PIMTable>
+ >
+ <template #customerContractNo="{ row }">
+ <el-button type="primary" text @click="showDetail(row)">{{ row.customerContractNo }}
+ </el-button>
+ </template>
+ </PIMTable>
</div>
</div>
</template>
@@ -32,7 +37,10 @@
import { getPurchaseList } from "@/api/procurementManagement/projectProfit";
import { onMounted, getCurrentInstance } from "vue";
import { ElMessageBox } from "element-plus";
+import { useRouter, useRoute } from "vue-router";
+const router = useRouter();
+ const route = useRoute();
const { proxy } = getCurrentInstance();
defineOptions({
@@ -58,6 +66,8 @@
label: "閿�鍞悎鍚屽彿",
align: "center",
prop: "customerContractNo",
+ dataType: "slot",
+ slot: "customerContractNo",
},
{
label: "瀹㈡埛鍚嶇О",
@@ -97,6 +107,17 @@
]
);
+const showDetail = (row) => {
+
+ router.push({
+ path: "/salesManagement/salesLedger",
+ query: {
+ customerContractNo: row.customerContractNo
+ },
+ });
+};
+
+
const changePage = ({ page }) => {
pagination.currentPage = page;
onCurrentChange(page);
diff --git a/src/views/salesManagement/deliveryLedger/index.vue b/src/views/salesManagement/deliveryLedger/index.vue
index 2bad2af..8e4bb8e 100644
--- a/src/views/salesManagement/deliveryLedger/index.vue
+++ b/src/views/salesManagement/deliveryLedger/index.vue
@@ -33,6 +33,7 @@
<el-table-column label="瀹㈡埛鍚嶇О" prop="customerName" show-overflow-tooltip />
<el-table-column label="鍙戣揣鏃堕棿" prop="shippingDate" show-overflow-tooltip />
<el-table-column label="鍙戣揣杞︾墝鍙�" prop="shippingCarNumber" show-overflow-tooltip />
+ <el-table-column label="鍙戣揣鏁伴噺" prop="quantity" show-overflow-tooltip />
<el-table-column fixed="right" label="鎿嶄綔" width="150" align="center">
<template #default="scope">
<el-button link type="primary" size="small" @click="openForm('edit', scope.row)">缂栬緫</el-button>
@@ -78,6 +79,13 @@
<el-col :span="24">
<el-form-item label="鍙戣揣杞︾墝鍙凤細" prop="shippingCarNumber">
<el-input v-model="form.shippingCarNumber" placeholder="璇疯緭鍏�" clearable />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="30">
+ <el-col :span="24">
+ <el-form-item label="鍙戣揣鏁伴噺锛�" prop="quantity">
+ <el-input v-model="form.quantity" placeholder="璇疯緭鍏�" clearable :disabled="operationType === 'edit'" />
</el-form-item>
</el-col>
</el-row>
@@ -129,6 +137,7 @@
customerName: "",
shippingDate: "",
shippingCarNumber: "",
+ quantity: "",
},
rules: {
salesContractNo: [{ required: true, message: "璇烽�夋嫨閿�鍞鍗�", trigger: "change" }],
@@ -190,6 +199,7 @@
customerName: row.customerName ?? "",
shippingDate: row.shippingDate || getCurrentDate(),
shippingCarNumber: row.shippingCarNumber ?? "",
+ quantity: row.quantity ?? "",
};
} else {
form.value = {
@@ -198,6 +208,7 @@
customerName: "",
shippingDate: getCurrentDate(),
shippingCarNumber: "",
+ quantity: "",
};
}
diff --git a/src/views/salesManagement/salesLedger/index.vue b/src/views/salesManagement/salesLedger/index.vue
index 7eb949d..03fcf57 100644
--- a/src/views/salesManagement/salesLedger/index.vue
+++ b/src/views/salesManagement/salesLedger/index.vue
@@ -836,6 +836,7 @@
import useFormData from "@/hooks/useFormData.js";
import dayjs from "dayjs";
import { getStockInPage } from "@/api/inventoryManagement/stockIn.js";
+ import { useRouter, useRoute } from "vue-router";
const userStore = useUserStore();
const { proxy } = getCurrentInstance();
@@ -857,6 +858,8 @@
const approverNodes = ref([{ id: 1, userId: null }]);
let nextApproverId = 2;
+const router = useRouter();
+ const route = useRoute();
// 鐢ㄦ埛淇℃伅琛ㄥ崟寮规鏁版嵁
const operationType = ref("");
const dialogFormVisible = ref(false);
@@ -2025,7 +2028,16 @@
};
onMounted(() => {
+ console.log(route.query,"route.query");
+
+ if(route.query.customerContractNo){
+ searchForm.salesContractNo = route.query.customerContractNo
getList();
+
+ }else{
+ getList();
+
+ }
});
</script>
--
Gitblit v1.9.3