From b806c4ad52a661a1e5f0695650ec1a7e42f01633 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 20 五月 2026 23:08:48 +0800
Subject: [PATCH] 提交
---
small-program/shop/pages/revenue-analysis/revenue-analysis.vue | 53 ++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 44 insertions(+), 9 deletions(-)
diff --git a/small-program/shop/pages/revenue-analysis/revenue-analysis.vue b/small-program/shop/pages/revenue-analysis/revenue-analysis.vue
index ecaaccc..c644f0b 100644
--- a/small-program/shop/pages/revenue-analysis/revenue-analysis.vue
+++ b/small-program/shop/pages/revenue-analysis/revenue-analysis.vue
@@ -14,11 +14,11 @@
</view>
<view v-if="currentRange === 'custom'" class="date-bar">
- <view class="date-item" @click="showStartDatePicker = true">
+ <view class="date-item" @click="openStartDatePicker">
<text :class="startDate ? 'date-text' : 'date-placeholder'">{{ formatPickerDate(startDate) || '寮�濮嬫椂闂�' }}</text>
</view>
<text class="date-separator">-</text>
- <view class="date-item" @click="showEndDatePicker = true">
+ <view class="date-item" @click="openEndDatePicker">
<text :class="endDate ? 'date-text' : 'date-placeholder'">{{ formatPickerDate(endDate) || '缁撴潫鏃堕棿' }}</text>
</view>
</view>
@@ -27,20 +27,22 @@
<u-datetime-picker
:show="showStartDatePicker"
mode="date"
- v-model="startDate"
+ v-model="startDateValue"
@confirm="onStartDateConfirm"
@cancel="showStartDatePicker = false"
placeholder="閫夋嫨寮�濮嬫棩鏈�"
+ value-format="YYYY-MM-DD"
></u-datetime-picker>
<!-- 缁撴潫鏃ユ湡閫夋嫨鍣� -->
<u-datetime-picker
:show="showEndDatePicker"
mode="date"
- v-model="endDate"
+ v-model="endDateValue"
@confirm="onEndDateConfirm"
@cancel="showEndDatePicker = false"
placeholder="閫夋嫨缁撴潫鏃ユ湡"
+ value-format="YYYY-MM-DD"
></u-datetime-picker>
</view>
@@ -89,6 +91,8 @@
currentRange: 'today',
startDate: '',
endDate: '',
+ startDateValue: '',
+ endDateValue: '',
showStartDatePicker: false,
showEndDatePicker: false,
minEndDate: '',
@@ -123,7 +127,10 @@
legend: {
show: true,
position: "right",
- lineHeight: 25
+ lineHeight: 25,
+ format: (name, value) => {
+ return name + ' ' + value
+ }
},
title: {
show: false,
@@ -170,6 +177,14 @@
}
},
methods: {
+ openStartDatePicker() {
+ this.startDateValue = this.startDate || this.formatDate(new Date());
+ this.showStartDatePicker = true;
+ },
+ openEndDatePicker() {
+ this.endDateValue = this.endDate || this.formatDate(new Date());
+ this.showEndDatePicker = true;
+ },
formatDate(date) {
return `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')}`;
},
@@ -311,8 +326,24 @@
};
this.selectedLuggageText = '';
- this.opts.title.name = '';
- this.opts.subtitle.name = '';
+ this.opts = {
+ ...this.opts,
+ legend: {
+ ...this.opts.legend,
+ format: (name) => {
+ const currentItem = this.luggageDistribution.find(item => item.name === name);
+ return currentItem ? `${currentItem.name} ${currentItem.percent}%` : name;
+ }
+ },
+ title: {
+ ...this.opts.title,
+ name: ''
+ },
+ subtitle: {
+ ...this.opts.subtitle,
+ name: ''
+ }
+ };
},
onRingChartClick(e) {
const currentIndex = e && typeof e.currentIndex === 'number' ? e.currentIndex : -1;
@@ -344,16 +375,18 @@
});
},
onStartDateConfirm(e) {
- const nextStartDate = this.formatPickerDate(e.value);
+ const nextStartDate = this.formatPickerDate((e && e.value) || this.startDateValue);
if (this.isStartDateAfterEndDate(nextStartDate, this.endDate)) {
this.startDate = '';
+ this.startDateValue = this.formatDate(new Date());
this.showStartDatePicker = false;
uni.showToast({ title: '寮�濮嬫棩鏈熶笉鑳藉ぇ浜庢埅姝㈡棩鏈�', icon: 'none' });
return;
}
this.startDate = nextStartDate;
+ this.startDateValue = nextStartDate;
this.showStartDatePicker = false;
this.minEndDate = nextStartDate ? new Date(nextStartDate).getTime() : '';
@@ -362,16 +395,18 @@
}
},
onEndDateConfirm(e) {
- const nextEndDate = this.formatPickerDate(e.value);
+ const nextEndDate = this.formatPickerDate((e && e.value) || this.endDateValue);
if (this.isStartDateAfterEndDate(this.startDate, nextEndDate)) {
this.endDate = '';
+ this.endDateValue = this.formatDate(new Date());
this.showEndDatePicker = false;
uni.showToast({ title: '鎴鏃ユ湡涓嶈兘灏忎簬寮�濮嬫棩鏈�', icon: 'none' });
return;
}
this.endDate = nextEndDate;
+ this.endDateValue = nextEndDate;
this.showEndDatePicker = false;
if (this.startDate) {
--
Gitblit v1.9.3