From 2e77330d87341624c88301562fd137b58f9a101a Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 25 十二月 2025 10:57:35 +0800
Subject: [PATCH] 1.海川开心-录入日期都默认当天,封装公用组件和方法

---
 src/views/inventoryManagement/dispatchLog/index.vue |  153 +++++++++++++++++++++++++--------------------------
 1 files changed, 75 insertions(+), 78 deletions(-)

diff --git a/src/views/inventoryManagement/dispatchLog/index.vue b/src/views/inventoryManagement/dispatchLog/index.vue
index 2f9a172..d7b927c 100644
--- a/src/views/inventoryManagement/dispatchLog/index.vue
+++ b/src/views/inventoryManagement/dispatchLog/index.vue
@@ -1,19 +1,10 @@
 <template>
 	<div class="app-container">
 		<el-tabs v-model="activeTab" @tab-change="handleTabChange">
-			<el-tab-pane label="鐢熶骇鍑哄簱" name="production">
+			<el-tab-pane label="鎴愬搧鍑哄簱" name="production">
 				<div class="search_form">
 					<div>
-						<span class="search_title">瀹㈡埛鍚嶇О锛�</span>
-						<el-input
-							v-model="searchForm.customerName"
-							style="width: 240px"
-							placeholder="璇疯緭鍏�"
-							@change="handleQuery"
-							clearable
-							prefix-icon="Search"
-						/>
-						<span class="search_title ml10">鍑哄簱鏃ユ湡锛�</span>
+						<span class="search_title ml10">鍙戣揣鏃ユ湡锛�</span>
 						<el-date-picker
 							v-model="searchForm.timeStr"
 							type="date"
@@ -22,6 +13,13 @@
 							format="YYYY-MM-DD"
 							clearable
 							@change="handleQuery"
+						/>
+						<span class="search_title ml10">浜у搧澶х被锛�</span>
+						<el-input
+							v-model="searchForm.productCategory"
+							style="width: 240px"
+							placeholder="璇疯緭鍏�"
+							clearable
 						/>
 						<el-button type="primary" @click="handleQuery" style="margin-left: 10px">鎼滅储</el-button>
 					</div>
@@ -46,17 +44,15 @@
 					>
 						<el-table-column align="center" type="selection" width="55" />
 						<el-table-column align="center" label="搴忓彿" type="index" width="60" />
-						<el-table-column label="鍑哄簱鏃ユ湡" prop="createTime" min-width="250" show-overflow-tooltip />
-						<el-table-column label="瀹㈡埛鍚嶇О" prop="customerName" width="250" show-overflow-tooltip />
-						<el-table-column label="浜у搧澶х被" prop="productCategory" width="100" show-overflow-tooltip />
-						<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" width="100" show-overflow-tooltip />
+						<el-table-column label="鍙戣揣鏃ユ湡" prop="createTime" width="120" show-overflow-tooltip />
+						<el-table-column label="閿�鍞悎鍚屽彿" prop="salesContractNo" width="180" show-overflow-tooltip />
+						<el-table-column label="浜у搧澶х被" prop="productCategory" show-overflow-tooltip />
+						<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" show-overflow-tooltip />
 						<el-table-column label="鍗曚綅" prop="unit" width="80" show-overflow-tooltip />
-						<el-table-column label="鍑哄簱鏁伴噺" prop="inboundNum" width="100" 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="100" show-overflow-tooltip />
-						<el-table-column label="涓嶅惈绋庢�讳环(鍏�)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip />
-						<el-table-column label="鍑哄簱浜�" prop="createBy" width="80" show-overflow-tooltip />
+						<el-table-column label="鍙戣揣鏁伴噺" prop="inboundNum" width="100" show-overflow-tooltip />
+						<el-table-column label="鍗曚环(鍏�)" prop="unitPrice" width="150"></el-table-column>
+						<el-table-column label="鎬讳环(鍏�)" prop="totalPrice" width="150"></el-table-column>
+						<el-table-column label="鍙戣揣浜�" prop="createBy" width="80" show-overflow-tooltip />
 					</el-table>
 					<pagination
 						v-show="total > 0"
@@ -69,19 +65,10 @@
 				</div>
 			</el-tab-pane>
 
-			<el-tab-pane label="閲囪喘鍑哄簱" name="purchase">
+			<el-tab-pane label="鍘熸枡鍑哄簱" name="purchase">
 				<div class="search_form">
 					<div>
-						<span class="search_title">渚涘簲鍟嗗悕绉帮細</span>
-						<el-input
-							v-model="searchForm.supplierName"
-							style="width: 240px"
-							placeholder="璇疯緭鍏�"
-							@change="handleQuery"
-							clearable
-							prefix-icon="Search"
-						/>
-						<span class="search_title ml10">鍑哄簱鏃ユ湡锛�</span>
+						<span class="search_title ml10">鍙戞枡鏃ユ湡锛�</span>
 						<el-date-picker
 							v-model="searchForm.timeStr"
 							type="date"
@@ -90,6 +77,13 @@
 							format="YYYY-MM-DD"
 							clearable
 							@change="handleQuery"
+						/>
+						<span class="search_title ml10">浜у搧澶х被锛�</span>
+						<el-input
+							v-model="searchForm.productCategory"
+							style="width: 240px"
+							placeholder="璇疯緭鍏�"
+							clearable
 						/>
 						<el-button type="primary" @click="handleQuery" style="margin-left: 10px">鎼滅储</el-button>
 					</div>
@@ -114,17 +108,15 @@
 					>
 						<el-table-column align="center" type="selection" width="55" />
 						<el-table-column align="center" label="搴忓彿" type="index" width="60" />
-						<el-table-column label="鍑哄簱鏃ユ湡" prop="createTime" min-width="250" show-overflow-tooltip />
-						<el-table-column label="渚涘簲鍟嗗悕绉�" prop="supplierName" width="250" show-overflow-tooltip />
-						<el-table-column label="浜у搧澶х被" prop="productCategory" width="100" show-overflow-tooltip />
-						<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" width="100" show-overflow-tooltip />
+						<el-table-column label="鍙戞枡鏃ユ湡" prop="createTime" width="120" show-overflow-tooltip />
+						<el-table-column label="閲囪喘鍚堝悓鍙�" prop="purchaseContractNumber" width="180" show-overflow-tooltip />
+						<el-table-column label="浜у搧澶х被" prop="productCategory" show-overflow-tooltip />
+						<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" show-overflow-tooltip />
 						<el-table-column label="鍗曚綅" prop="unit" width="80" show-overflow-tooltip />
-						<el-table-column label="鍑哄簱鏁伴噺" prop="inboundNum" width="100" 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="100" show-overflow-tooltip />
-						<el-table-column label="涓嶅惈绋庢�讳环(鍏�)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip />
-						<el-table-column label="鍑哄簱浜�" prop="createBy" width="80" show-overflow-tooltip />
+						<el-table-column label="鍙戞枡鏁伴噺" prop="inboundNum" width="100" show-overflow-tooltip />
+						<el-table-column label="鍚◣鍗曚环(鍏�)" prop="taxInclusiveUnitPrice" width="150"></el-table-column>
+						<el-table-column label="鍚◣鎬讳环(鍏�)" prop="taxInclusiveTotalPrice" width="150"></el-table-column>
+						<el-table-column label="鍙戞枡浜�" prop="createBy" width="80" show-overflow-tooltip />
 					</el-table>
 					<pagination
 						v-show="total > 0"
@@ -137,19 +129,10 @@
 				</div>
 			</el-tab-pane>
 
-			<el-tab-pane label="鑷畾涔夊嚭搴�" name="manual">
+			<el-tab-pane label="鏉愭枡鍑哄簱" name="manual">
 				<div class="search_form">
 					<div>
-						<span class="search_title">渚涘簲鍟嗗悕绉帮細</span>
-						<el-input
-							v-model="searchForm.supplierName"
-							style="width: 240px"
-							placeholder="璇疯緭鍏�"
-							@change="handleQuery"
-							clearable
-							prefix-icon="Search"
-						/>
-						<span class="search_title ml10">鍑哄簱鏃ユ湡锛�</span>
+						<span class="search_title ml10">鍙戞枡鏃ユ湡锛�</span>
 						<el-date-picker
 							v-model="searchForm.timeStr"
 							type="date"
@@ -158,6 +141,13 @@
 							format="YYYY-MM-DD"
 							clearable
 							@change="handleQuery"
+						/>
+						<span class="search_title ml10">浜у搧澶х被锛�</span>
+						<el-input
+							v-model="searchForm.productCategory"
+							style="width: 240px"
+							placeholder="璇疯緭鍏�"
+							clearable
 						/>
 						<el-button type="primary" @click="handleQuery" style="margin-left: 10px">鎼滅储</el-button>
 					</div>
@@ -182,18 +172,16 @@
 					>
 						<el-table-column align="center" type="selection" width="55" />
 						<el-table-column align="center" label="搴忓彿" type="index" width="60" />
-						<el-table-column label="鍑哄簱鏃ユ湡" prop="createTime" min-width="250" show-overflow-tooltip />
-						<el-table-column label="渚涘簲鍟嗗悕绉�" prop="supplierName" width="250" show-overflow-tooltip />
-						<el-table-column label="浜у搧澶х被" prop="productCategory" width="100" show-overflow-tooltip />
-						<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" width="100" show-overflow-tooltip />
-						<el-table-column label="鍗曚綅" prop="unit" width="80" show-overflow-tooltip />
-						<el-table-column label="鐗╁搧绫诲瀷" prop="itemType" width="120" show-overflow-tooltip />
-						<el-table-column label="鍑哄簱鏁伴噺" prop="inboundNum" width="100" 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="100" show-overflow-tooltip />
-						<el-table-column label="涓嶅惈绋庢�讳环(鍏�)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip />
-						<el-table-column label="鍑哄簱浜�" prop="createBy" width="80" show-overflow-tooltip />
+						<el-table-column label="鍙戞枡鏃ユ湡" prop="createTime" show-overflow-tooltip width="130"/>
+						<el-table-column label="鎵规鍙�" prop="code" width="130" show-overflow-tooltip />
+						<el-table-column label="浜у搧澶х被" prop="productCategory" show-overflow-tooltip />
+						<el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" show-overflow-tooltip />
+						<el-table-column label="鍗曚綅" prop="unit" show-overflow-tooltip />
+						<el-table-column label="鐗╁搧绫诲瀷" prop="itemType" show-overflow-tooltip />
+						<el-table-column label="鍙戞枡鏁伴噺" prop="inboundNum" show-overflow-tooltip />
+						<el-table-column label="鍗曚环(鍏�)" prop="taxInclusiveUnitPrice" width="150"></el-table-column>
+						<el-table-column label="鎬讳环(鍏�)" prop="taxInclusiveTotalPrice" width="150"></el-table-column>
+						<el-table-column label="鍙戞枡浜�" prop="createBy" show-overflow-tooltip />
 					</el-table>
 					<pagination
 						v-show="total > 0"
@@ -230,8 +218,8 @@
 					<div v-for="(item, index) in printData" :key="index" class="print-page">
 						<div class="delivery-note">
 							<div class="header">
-								<div class="company-name">榧庤瘹鐟炲疄涓氭湁闄愯矗浠诲叕鍙�</div>
-								<div class="document-title">闆跺敭鍙戣揣鍗�</div>
+								<div class="company-name">娴峰窛寮�蹇冮鍝佹湁闄愬叕鍙�</div>
+								<div class="document-title">鍙戣揣鍗�</div>
 							</div>
 							
 							<div class="info-section">
@@ -336,6 +324,7 @@
 	getStockInPageByProduct,
 	getStockInPageByCustom,
 } from "@/api/inventoryManagement/stockIn.js";
+import { getCurrentDate } from "@/utils/index.js";
 
 const userStore = useUserStore();
 const { proxy } = getCurrentInstance();
@@ -358,7 +347,8 @@
 	searchForm: {
 		supplierName: "",
 		customerName: "",
-		timeStr: "",
+    	productCategory:'',
+		timeStr: getCurrentDate(),
 	},
 	form: {
 		supplierId: null,
@@ -403,6 +393,7 @@
 		params.supplierName = searchForm.value.supplierName
 		params.timeStr = searchForm.value.timeStr
 	}
+    params.productCategory = searchForm.value.productCategory
 	
 	// 鏍规嵁涓嶅悓鐨� tab 绫诲瀷璋冪敤涓嶅悓鐨勬帴鍙�
 	const apiCall = activeTab.value === 'production' 
@@ -417,6 +408,17 @@
 			tableData.value = res.data.records;
 			tableData.value.map((item) => {
 				item.children = [];
+				// 鍓嶇璁$畻鎬讳环
+				const inboundNum = Number(item.inboundNum) || 0;
+				if (activeTab.value === 'production') {
+					// 鎴愬搧鍑哄簱锛氭�讳环 = unitPrice 脳 inboundNum
+					const unitPrice = Number(item.unitPrice) || 0;
+					item.totalPrice = (unitPrice * inboundNum).toFixed(2);
+				} else {
+					// 鍘熸枡鍜屾潗鏂欏嚭搴擄細鎬讳环 = taxInclusiveUnitPrice 脳 inboundNum
+					const taxInclusiveUnitPrice = Number(item.taxInclusiveUnitPrice) || 0;
+					item.taxInclusiveTotalPrice = (taxInclusiveUnitPrice * inboundNum).toFixed(2);
+				}
 			});
 			total.value = res.data.total;
 		})
@@ -431,6 +433,7 @@
 	searchForm.value.customerName = ''
 	searchForm.value.timeStr = ''
 	selectedRows.value = []
+  	searchForm.value.productCategory = ''
 	getList()
 };
 
@@ -659,8 +662,8 @@
       <div class="print-page">
         <div class="delivery-note">
           <div class="header">
-            <div class="company-name">榧庤瘹鐟炲疄涓氭湁闄愯矗浠诲叕鍙�</div>
-            <div class="document-title">闆跺敭鍙戣揣鍗�</div>
+            <div class="company-name">娴峰窛寮�蹇冮鍝佹湁闄愬叕鍙�</div>
+            <div class="document-title">鍙戣揣鍗�</div>
           </div>
           
           <div class="info-section">
@@ -787,14 +790,6 @@
 	const seconds = String(date.getSeconds()).padStart(2, "0");
 	return `${year}/${month}/${day} ${hours}:${minutes}:${seconds}`;
 };
-// 鑾峰彇褰撳墠鏃ユ湡骞舵牸寮忓寲涓� YYYY-MM-DD
-function getCurrentDate() {
-	const today = new Date();
-	const year = today.getFullYear();
-	const month = String(today.getMonth() + 1).padStart(2, "0"); // 鏈堜唤浠�0寮�濮�
-	const day = String(today.getDate()).padStart(2, "0");
-	return `${year}-${month}-${day}`;
-}
 onMounted(() => {
 	getList();
 });
@@ -968,3 +963,5 @@
 	}
 }
 </style>
+
+

--
Gitblit v1.9.3