前端展示
时间控件使用 moment
<el-form-item label="操作时间" prop="sendtime">
<el-date-picker
v-model="queryParams.timeFrom"
@change="setTime"
type="datetimerange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['12:00:00']"
>
</el-date-picker>
data(){
queryParams: {
timeFrom: [],
}
},
created() {
this.queryParams.timeFrom = this.getNowTime();
this.getList();
},
method(){
getNowTime() {
const start = this.$moment().subtract(7, "days").format("YYYY-MM-DD HH:mm:ss")
const end = this.$moment().format("YYYY-MM-DD HH:mm:ss")
return [start, end];
},
setTime(e) {
this.queryParams.timeFrom[0] = this.$moment(e[0]).format(
"YYYY-MM-DD HH:mm:ss"
);
this.queryParams.timeFrom[1] = this.$moment(e[1]).format(
"YYYY-MM-DD HH:mm:ss"
);
},
},
后端部分
private String[] timeFrom;
。。。省略 get set
// 注意一定要写上 JAVATYPE=STRING 不然会报错
// 这里用between也可以
and sendtime >#{timeFrom[0],javaType=string}
and #{timeFrom[1],javaType=string}>sendtime