You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

143 lines
4.6 KiB

import moment from "moment"
Component({
data: {
timelist: ['二十四小时', '最近七天', '最近三十天', '自定义'],
valList: ['34', '3', '20', '4'],
sStartTime: '',
sEndTime: '',
sTimeType: '34',
intervalSel: 0,
show: false,
start: moment().format('YYYY-MM-DD HH:mm:ss'),
startTime: moment().valueOf(),
end: moment().format("YYYY-MM-DD HH:mm:ss"),
endTime: moment().valueOf(),
show1: false,
show2: false,
dt: '',
dt1: '',
showDialog: false
},
lifetimes: {
attached() {
let st = wx.getStorageSync('sTimeType')
if (st) {
let n = this.data.valList.findIndex(ele => ele == st);
this.setData({
intervalSel: n
})
if(st == '4') {
this.setData({
show: true,
start:moment(wx.getStorageSync('sStartTime')).format('YYYY-MM-DD HH:mm:ss'),
end:moment(wx.getStorageSync('sEndTime')).format('YYYY-MM-DD HH:mm:ss'),
})
}
} else {
wx.setStorageSync('sTimeType', 34);
wx.setStorageSync('sStartTime', '');
wx.setStorageSync('sEndTime', '');
}
}
},
methods: {
priceSel(e){
this.setData({
intervalSel: e.currentTarget.dataset.index
})
wx.setStorageSync('sTimeType', this.data.valList[this.data.intervalSel]);
let start = "";
let end = "";
if(this.data.intervalSel === 3) {
let st = moment().subtract(1, 'day').format('YYYY-MM-DD HH:mm:ss')
wx.setStorageSync('sStartTime', st);
wx.setStorageSync('sEndTime', this.data.end);
start = st;
end = this.data.end;
this.setData({
show: true,
start: st,
})
} else {
wx.setStorageSync('sStartTime', '');
wx.setStorageSync('sEndTime', '');
start = '';
end = '';
this.setData({
show: false
})
}
this.triggerEvent('change', {sTimeType: this.data.valList[this.data.intervalSel], sStartTime: start, sEndTime: end})
},
onDisplay() {
this.setData({
show1: true
});
},
onDisplay1() {
this.setData({
show2: true
});
},
onInput(event) {
let dt = moment(event.detail).format("YYYY-MM-DD HH:mm:ss");
this.setData({
dt: dt
});
},
onInput1(event) {
let dt = moment(event.detail).format("YYYY-MM-DD HH:mm:ss");
this.setData({
dt1: dt,
});
},
onConfirm() {
let isBefore = moment(this.data.dt).isBefore(this.data.dt1)
if(!isBefore) {
this.setData({
showDialog: true,
});
return
}
this.setData({
show1: false,
start: this.data.dt
});
wx.setStorageSync('sStartTime', this.data.start);
this.triggerEvent('change', {sTimeType: this.data.valList[this.data.intervalSel], sStartTime: this.data.start, sEndTime: this.data.end})
},
onConfirm1() {
let isBefore = moment(this.data.dt).isBefore(this.data.dt1)
if(!isBefore) {
this.setData({
showDialog: true,
});
return
}
this.setData({
show2: false,
end: this.data.dt1
});
wx.setStorageSync('sEndTime', this.data.end);
this.triggerEvent('change', {sTimeType: this.data.valList[this.data.intervalSel], sStartTime: this.data.start, sEndTime: this.data.end})
},
onCancel() {
this.setData({
show1: false,
});
},
onCancel1() {
this.setData({
show2: false,
});
},
cdialog() {
this.setData({
showDialog: false,
});
}
}
})