From 0152b0200faff12f0ece317cdb32dcbcf486757d Mon Sep 17 00:00:00 2001
From: yaowanxin <3588231647@qq.com>
Date: 星期日, 04 一月 2026 14:32:03 +0800
Subject: [PATCH] 添加库存核算统计页面,调整固定资产页面图表
---
src/views/financialManagement/accounting/index.vue | 110 +++++++++++++++++++-----------------------------------
1 files changed, 39 insertions(+), 71 deletions(-)
diff --git a/src/views/financialManagement/accounting/index.vue b/src/views/financialManagement/accounting/index.vue
index ad998e4..f8e4a9f 100644
--- a/src/views/financialManagement/accounting/index.vue
+++ b/src/views/financialManagement/accounting/index.vue
@@ -2,43 +2,13 @@
<div style="padding: 20px;">
<!-- 椤甸潰鏍囬鍜岀瓫閫夋潯浠� -->
<div class="w-full md:w-auto flex items-center gap-3" style="margin-bottom: 20px;">
- <el-date-picker
- v-model="dateRange"
- type="daterange"
- format="YYYY-MM-DD"
- value-format="YYYY-MM-DD"
- range-separator="鑷�"
- start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡"
- clearable
- @change="handleDateChange"
- class="w-full md:w-auto"
- style="margin-right: 30px;"
- />
-
- <!-- 璁惧绫诲瀷绛涢�� -->
- <el-select
- v-model="equipmentType"
- placeholder="璁惧绫诲瀷"
- clearable
- @change="handleFilterChange"
- style="margin-right: 20px; width: 150px;"
- >
- <el-option
- v-for="item in equipmentTypeOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- />
- </el-select>
-
<el-button
type="primary"
icon="Refresh"
@click="resetFilters"
size="default"
>
- 閲嶇疆
+ 鏌ヨ
</el-button>
</div>
@@ -117,9 +87,9 @@
:header-cell-style="{ background: '#f5f7fa', color: '#606266' }"
>
<el-table-column prop="id" label="璧勪骇缂栧彿" width="120" />
- <el-table-column prop="deviceName" label="璁惧鍚嶇О" width="150" />
- <el-table-column prop="deviceModel" label="鍨嬪彿瑙勬牸" width="150" />
- <el-table-column prop="supplierName" label="渚涘簲鍟�" width="120" />
+ <el-table-column prop="deviceName" label="璁惧鍚嶇О" width="250" />
+ <el-table-column prop="deviceModel" label="鍨嬪彿瑙勬牸" min-width="150" />
+ <el-table-column prop="supplierName" label="渚涘簲鍟�" min-width="120" />
<el-table-column prop="unit" label="鍗曚綅" width="120" />
<el-table-column prop="number" label="鏁伴噺" width="120" />
<el-table-column prop="originalValue" label="鍘熷��(鍏�)" width="120">
@@ -358,33 +328,42 @@
if (equipmentListRes.code === 200) {
equipmentList.value = equipmentListRes.data.records;
pagination.value.total = equipmentListRes.data.total;
- }
- // // 鑾峰彇璁惧绫诲瀷鍒嗗竷鏁版嵁
- // const typeDistributionRes = await getEquipmentTypes({
- // startDate: dateRange.value ? dateRange.value[0] : null,
- // endDate: dateRange.value ? dateRange.value[1] : null,
- // equipmentType: equipmentType.value
- // });
- // if (typeDistributionRes.code === 200) {
- // typeDistributionData.value = typeDistributionRes.data.map(item => ({
- // name: item.typeName,
- // value: item.count,
- // count: item.count,
- // amount: `楼${formatCurrency(item.totalValue)}`
- // }));
- //
- // // 鏋勫缓鎶樼嚎鍥炬暟鎹�
- // typeDistributionLineSeries.value = [
- // {
- // name: '璁惧鏁伴噺',
- // type: 'line',
- // data: typeDistributionRes.data.map(item => item.count)
- // }
- // ];
- // // 鏇存柊x杞存暟鎹�
- // xAxis.value[0].data = typeDistributionRes.data.map(item => item.typeName);
- // }
+ // 鏍规嵁 equipmentList 鎸� deviceName 杩涜鍒嗙被缁熻
+ const deviceNameMap = {};
+ equipmentList.value.forEach(item => {
+ const deviceName = item.deviceName;
+ if (!deviceNameMap[deviceName]) {
+ deviceNameMap[deviceName] = {
+ name: deviceName,
+ count: 0,
+ totalValue: 0
+ };
+ }
+ deviceNameMap[deviceName].count += item.number || 1; // 鍋囪 number 涓鸿澶囨暟閲�
+ deviceNameMap[deviceName].totalValue += item.taxIncludingPriceTotal || 0; // 绱姞鍚◣鎬讳环
+ });
+
+ // 杞崲涓� typeDistributionData 鏍煎紡
+ typeDistributionData.value = Object.values(deviceNameMap).map(item => ({
+ name: item.name,
+ value: item.count,
+ count: item.count,
+ amount: `楼${formatCurrency(item.totalValue)}`
+ }));
+
+ // 鏇存柊x杞存暟鎹�
+ xAxis.value[0].data = typeDistributionData.value.map(item => item.name);
+
+ // 鏋勫缓鎶樼嚎鍥炬暟鎹�
+ typeDistributionLineSeries.value = [
+ {
+ name: '璁惧鏁伴噺',
+ type: 'line',
+ data: typeDistributionData.value.map(item => item.count)
+ }
+ ];
+ }
} catch (error) {
console.error('鑾峰彇鍥哄畾璧勪骇鏁版嵁澶辫触锛�', error);
}
@@ -416,17 +395,6 @@
default:
return 'info';
}
-};
-
-// 澶勭悊鏃ユ湡鑼冨洿鍙樺寲
-const handleDateChange = (newRange) => {
- dateRange.value = newRange;
- fetchData();
-};
-
-// 澶勭悊绛涢�夋潯浠跺彉鍖�
-const handleFilterChange = () => {
- fetchData();
};
// 閲嶇疆绛涢�夋潯浠�
--
Gitblit v1.9.3