HistoryRecordFrom.vue
3.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<template>
<div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item>
<el-date-picker
v-model="queryParams.time"
type="datetimerange"
:picker-options="pickerOptions"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
align="right"
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh-right" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
</template>
<script>
//这里可以导入其他文件(比如:组件,工具js,第三方插件js,json文件,图片文件等等),
//例如:import 《组件名称》 from '《组件路径》,
export default {
name: "HistoricalRecordForm",
//import引入的组件需要注入到对象中才能使用"
components: {},
props: {
queryParams: {
type: Object,
default: {}
}
},
data() {
//这里存放数据"
return {
// 显示搜索条件
showSearch: true,
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
picker.$emit('pick', [start, end])
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
picker.$emit('pick', [start, end])
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
picker.$emit('pick', [start, end])
}
}]
}
}
},
//计算属性 类似于data概念",
computed: {},
//监控data中的数据变化",
watch: {},
//方法集合",
methods: {
handleQuery() {
this.$emit('handleQuery', this.queryParams)
},
resetQuery() {
this.queryParams.time = this.getYesterdayRange()
},
refreshQuery() {
this.$emit('refreshQuery', this.queryParams)
},
getYesterdayRange() {
const today = new Date(); // 获取当前日期
const yesterday = new Date(today); // 复制当前日期
yesterday.setDate(today.getDate() - 1); // 设置为昨天
// 昨天的开始时间(00:00:00.000)
const startOfYesterday = new Date(yesterday);
startOfYesterday.setHours(0, 0, 0, 0);
// 昨天的结束时间(23:59:59.999)
const endOfYesterday = new Date(yesterday);
endOfYesterday.setHours(23, 59, 59, 999);
return [startOfYesterday, endOfYesterday];
}
},
//生命周期 - 创建完成(可以访问当前this实例)",
created() {
this.resetQuery()
},
//生命周期 - 挂载完成(可以访问DOM元素)",
mounted() {
},
beforeCreate() {
}, //生命周期 - 创建之前",
beforeMount() {
}, //生命周期 - 挂载之前",
beforeUpdate() {
}, //生命周期 - 更新之前",
updated() {
}, //生命周期 - 更新之后",
beforeDestroy() {
}, //生命周期 - 销毁之前",
destroyed() {
}, //生命周期 - 销毁完成",
activated() {
} //如果页面有keep-alive缓存功能,这个函数会触发",
}
</script>
<style scoped>
</style>