95 lines
2.8 KiB
JavaScript
95 lines
2.8 KiB
JavaScript
const app = getApp();
|
|
Page({
|
|
data: {
|
|
sid: -1,
|
|
showSetMoney: false,
|
|
currentMoney: 0,
|
|
currentMoneyText: 0,
|
|
expendBalance: 0,
|
|
incomeBalance: 0,
|
|
priceError: false,
|
|
visible : false,
|
|
dateRangeText : null,
|
|
dateRange : null,
|
|
minDate: new Date().getTime() - 365 * 24 * 60 * 60 * 1000,
|
|
maxDate: new Date().getTime(),
|
|
incomeList : [],
|
|
payList : []
|
|
},
|
|
onLoad: function (options) {
|
|
let sid = options.sid
|
|
let currentMoney = options.balance
|
|
let currentMoneyText = options.balance
|
|
this.setData({sid,currentMoney,currentMoneyText})
|
|
let dateRange = [new Date().getTime()- 24 * 60 * 60 * 1000,new Date().getTime()]
|
|
let dateRangeText = app.$utils.formatDate(new Date(dateRange[0])) + '至' +
|
|
(dateRange[1] ? app.$utils.formatDate(new Date(dateRange[1])) : app.$utils.formatDate(new Date()));
|
|
this.setData({dateRange,dateRangeText})
|
|
},
|
|
onShow() {
|
|
app.$api.listBillByAccount({
|
|
sid:this.data.sid,
|
|
dateRange:this.data.dateRangeText,
|
|
}).then(res => {
|
|
if (res.data){
|
|
let incomeList = res.data.incomeList;
|
|
let payList = res.data.incomeList;
|
|
let expendBalance = res.data.expendBalance;
|
|
let incomeBalance = res.data.incomeBalance;
|
|
this.setData({
|
|
incomeList,payList,expendBalance,incomeBalance
|
|
})
|
|
}
|
|
})
|
|
},
|
|
handleCalendar() {
|
|
this.setData({ visible: true });
|
|
},
|
|
handleConfirm(e) {
|
|
const { value } = e.detail;
|
|
console.log(value);
|
|
let valueText = app.$utils.formatDate(new Date(value[0])) + '至' +
|
|
(value[1] ? app.$utils.formatDate(new Date(value[1])) : app.$utils.formatDate(new Date()));
|
|
this.setData({
|
|
visible: false,
|
|
dateRange: value,
|
|
dateRangeText: valueText
|
|
});
|
|
},
|
|
|
|
showDialog() {
|
|
this.setData({
|
|
showSetMoney: true,
|
|
currentMoney: this.data.currentMoneyText
|
|
})
|
|
},
|
|
onPriceInput(e) {
|
|
this.setData({
|
|
currentMoney: e.detail.value
|
|
})
|
|
},
|
|
onConfirm () {
|
|
const isNumber = /^\d+(\.\d+)?$/.test(this.data.currentMoney);
|
|
if (!isNumber) {
|
|
this.setData({
|
|
priceError: true
|
|
})
|
|
return;
|
|
}
|
|
this.setData({
|
|
currentMoneyText:this.data.currentMoney,
|
|
priceError: false
|
|
})
|
|
app.$api.editAccount({sid:this.data.sid,balance:this.data.currentMoney}).then(res => {
|
|
if (res){
|
|
this.closeDialog()
|
|
}
|
|
})
|
|
},
|
|
closeDialog() {
|
|
this.setData({
|
|
showSetMoney: false
|
|
})
|
|
}
|
|
});
|