122 lines
2.7 KiB
TypeScript
122 lines
2.7 KiB
TypeScript
import { loginStatusPage, post } from '@/utils/https';
|
|
import {
|
|
cloneLite,
|
|
getAuthInfo,
|
|
getDataSet,
|
|
sleep,
|
|
toastError,
|
|
toastSuccess,
|
|
toNumber,
|
|
toObject,
|
|
} from '@/utils/util';
|
|
|
|
const defaultParams = { comments: '', account_name: '' };
|
|
|
|
Page({
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
params: cloneLite(defaultParams) as any,
|
|
mode: 'new' as 'new' | 'edit',
|
|
},
|
|
handleLogin(e: any) {
|
|
this.setData({ isLogin: e.detail });
|
|
if (e.detail) {
|
|
this.init();
|
|
}
|
|
},
|
|
init() {
|
|
this.setData({ authInfo: getAuthInfo() });
|
|
},
|
|
onChange(e: any) {
|
|
const key = getDataSet(e).key;
|
|
const val = e.detail.value;
|
|
this.data.params[key] = val;
|
|
this.setData({ params: this.data.params });
|
|
},
|
|
onBlur(e: any) {
|
|
const key = getDataSet(e).key;
|
|
if (key == 'init_amount') {
|
|
const val = e.detail.value;
|
|
this.data.params[key] = val ? toNumber(val).toFixed(2) : val;
|
|
this.setData({ params: this.data.params });
|
|
}
|
|
},
|
|
onCheckboxChange(e: any) {
|
|
const key = getDataSet(e).key;
|
|
this.data.params[key] = e.detail.checked ? 1 : 2;
|
|
this.setData({ params: this.data.params });
|
|
},
|
|
onSave() {
|
|
// console.log(this.data.params);
|
|
if (this.data.mode == 'new') {
|
|
this.data.params.current_amount = this.data.params.init_amount;
|
|
}
|
|
if (this.data.params.account_name) {
|
|
post(this.data.mode == 'new' ? 'ErpAccount/add' : 'ErpAccount/edit', this.data.params).then(
|
|
() => {
|
|
toastSuccess('保存成功');
|
|
sleep(() => {
|
|
wx.navigateBack();
|
|
}, 1000);
|
|
},
|
|
);
|
|
} else {
|
|
toastError('账户名称必填');
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(_options) {
|
|
const eventChannel: any = this.getOpenerEventChannel();
|
|
|
|
eventChannel?.on('accountEdit', (e: any) => {
|
|
const data = toObject(e.data);
|
|
wx.setNavigationBarTitle({
|
|
title: data.account_id ? `${data.account_name} 修改` : '新增结算账户',
|
|
});
|
|
this.setData({ params: data, mode: data.account_id ? 'edit' : 'new' });
|
|
});
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面初次渲染完成
|
|
*/
|
|
onReady() {},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面显示
|
|
*/
|
|
onShow() {
|
|
loginStatusPage(this);
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面隐藏
|
|
*/
|
|
onHide() {},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面卸载
|
|
*/
|
|
onUnload() {},
|
|
|
|
/**
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
*/
|
|
onPullDownRefresh() {},
|
|
|
|
/**
|
|
* 页面上拉触底事件的处理函数
|
|
*/
|
|
onReachBottom() {},
|
|
|
|
/**
|
|
* 用户点击右上角分享
|
|
*/
|
|
onShareAppMessage() {},
|
|
});
|