购物车历史订单增加,代码优化

This commit is contained in:
GaoHao
2025-04-02 09:20:26 +08:00
parent 5a655ba09e
commit 5e6646b574
31 changed files with 418 additions and 357 deletions

View File

@@ -9,8 +9,8 @@
</view>
<view class="u-p-30 u-flex u-flex-wrap gap-20 fastTime" v-if="props.isArea">
<view class="item" v-for="(item,index) in fastTime" :key="index" @tap="changeTime(item.key)">
{{item.title}}
<view class="item" v-for="(item,index) in fastTime" :key="index" @tap="changeTime(item)">
{{item.label}}
</view>
</view>
<picker-view :immediate-change="true" @pickend="pickend" :value="value" @change="bindChange"
@@ -95,12 +95,10 @@
</template>
<script setup>
import { reactive, nextTick, ref } from 'vue';
import * as $time from '@/commons/utils/dayjs-time.js';
import myButton from "@/components/my-components/my-button.vue"
import {
reactive,
nextTick,
ref
} from 'vue';
const props = defineProps({
selTime:{
type: [String,Number],
@@ -178,24 +176,28 @@
const seconds = new Array(60).fill(1).map((v, index) => {
return index
})
const fastTime = reactive([{
title: '今日',
key: 'now'
},
{
title: '昨日',
key: 'prve'
},
{
title: '本月',
key: 'nowMonth'
},
{
title: '上月',
key: 'prveMonth'
}
])
// const fastTime = reactive([{
// title: '今日',
// key: 'now'
// },
// {
// title: '昨日',
// key: 'prve'
// },
// {
// title: '本月',
// key: 'nowMonth'
// },
// {
// title: '上月',
// key: 'prveMonth'
// }
// ])
const today = $time.getTodayTimestamps();
const yesterday = $time.getYesterdayTimestamps();
const thisMonth = $time.getThisMonthTimestamps();
const thisLastMonth = $time.getThisLastMonthTimestamps()
const fastTime = reactive([today, yesterday, thisMonth, thisLastMonth])
function setPrveDay() {
@@ -230,84 +232,10 @@
]
}
function changeTime(key) {
const yearIndex = years.findIndex(v => v == nowDate.year)
const prveyearIndex = years.findIndex(v => v == nowDate.year) - 1
const nowMonthIndex = nowDate.month - 1
const nowDayIndex = nowDate.day - 1
const dataMap = {
now: function() {
return {
start: {
year: yearIndex,
month: nowMonthIndex,
day: nowDayIndex
},
end: {
year: yearIndex,
month: nowMonthIndex,
day: nowDayIndex
}
}
},
prve: function() {
const oneDay = 1000 * 60 * 60 * 24
const date = new Date(new Date(nowDate.year, nowDate.month, nowDate.day, 0, 0, 0).getTime() -
oneDay)
return {
start: {
year: years.findIndex(v => v == date.getFullYear()),
month: date.getMonth() - 1 < 0 ? 11 : date.getMonth() - 1,
day: date.getDate() - 1
},
end: {
year: years.findIndex(v => v == date.getFullYear()),
month: date.getMonth() - 1 < 0 ? 11 : date.getMonth() - 1,
day: date.getDate() - 1
}
}
},
nowMonth: function() {
return {
start: {
year: yearIndex,
month: nowMonthIndex,
day: 0
},
end: {
year: yearIndex,
month: nowMonthIndex,
day: new Date(nowDate.year, nowDate.month, 0).getDate() - 1
}
}
},
prveMonth: function() {
const oneDay = 1000 * 60 * 60 * 24
const date = new Date(new Date(nowDate.year, nowDate.month - 1, 0, 0, 0).getTime() - oneDay)
console.log(date.getMonth());
return {
start: {
year: years.findIndex(v => v == date.getFullYear()),
month: date.getMonth(),
day: 0
},
end: {
year: years.findIndex(v => v == date.getFullYear()),
month: date.getMonth(),
day: date.getDate()
}
}
}
}
const data = dataMap[key]()
setDay(data.start, data.end)
changeDays(false, value.value)
changeDays(true, value1.value)
console.log(value1.value);
const start = returnDateString(value.value)
const end = returnDateString(value1.value)
function changeTime(e) {
console.log(e)
const start = e.start
const end = e.end
emits('confirm', {
text: `${start}——${end}`,
start,