import { loginStatus, post } from '@/utils/https'; import { cloneLite, getAuthInfo, getDataSet, getDay, searchValueFormat, showModal, sleep, toArray, toastSuccess, toNumber, } from '@/utils/util'; const defaultParams = { curr_page: 1, page_count: 20, head_type: 8 }; Page({ /** * 页面的初始数据 */ data: { params: cloneLite(defaultParams) as any, list: [] as any[], count: 0, states: [ { value: '', label: '全部' }, { value: '1', label: '未审核' }, { value: '2', label: '已审核' }, ], sort: [{ label: '创建日期', value: 'create_date' }], }, handleLogin(e: any) { this.setData({ isLogin: e.detail }); if (e.detail) { this.init(); } }, init() { this.setData({ authInfo: getAuthInfo() }); this.getList(); }, searchChange(e: any) { const key = getDataSet(e).key; const val = searchValueFormat(e.detail.value); if (val) { this.data.params[key] = val; } else { delete this.data.params[key]; } this.setData({ params: this.data.params }); }, searchOk() { this.getList(1); }, searchReset() { this.data.params = cloneLite(defaultParams); this.getList(1); }, onSort(e: any) { this.data.params.order = e.detail.value; this.setData({ params: this.data.params }); this.getList(1); }, paginationChange(e: any) { this.getList(e.detail.curr_page); }, getList(curr: number = 1) { this.data.params.curr_page = curr; this.setData({ params: this.data.params }); const temp = cloneLite(this.data.params); if (temp.order_step && temp.order_step.length) { temp.order_step = temp.order_step.join(','); } else { delete temp.order_step; } if (temp.process_state && temp.process_state.length) { temp.process_state = temp.process_state.join(','); } else { delete temp.process_state; } post('ErpDepot/depotHeadList', temp).then((res: any) => { const list = toArray(res.data); if (list.length == 0 && this.data.params.curr_page > 1) { this.getList(this.data.params.curr_page - 1); } this.setData({ count: toNumber(res.count), list: list, }); }); }, onOrderDel(e: any) { const data = getDataSet(e); const index = data.index; const item = this.data.list[index]; showModal({ content: `确认删除 ${item.bill_no}?` }).then(() => { post('ErpDepot/depotHeadDel', { head_id: item.head_id }).then(() => { toastSuccess('删除成功'); sleep(() => { this.getList(); }, 1000); }); }); }, onViewAttachment(e: any) { const data = getDataSet(e); const index = data.index; const item = this.data.list[index]; wx.navigateTo({ url: `/pages/base/viewAttachment/viewAttachment?head_id=${ item.head_id }&title=${encodeURIComponent(`${item.bill_no} 附件`)}`, }); }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { const { type } = options; if (type == 'today') { this.data.params.create_dateL = getDay(); this.data.params.create_dateU = getDay(); } }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() {}, /** * 生命周期函数--监听页面显示 */ onShow() { this.setData({ loading: true }); loginStatus() .then(() => { this.setData({ isLogin: true, loading: false }); this.init(); }) .catch((err) => { this.setData({ isLogin: false, loading: false }); console.log('调用登录状态请求失败', err); }); }, /** * 生命周期函数--监听页面隐藏 */ onHide() {}, /** * 生命周期函数--监听页面卸载 */ onUnload() {}, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() {}, /** * 页面上拉触底事件的处理函数 */ onReachBottom() {}, /** * 用户点击右上角分享 */ onShareAppMessage() {}, });