import { OSSBaseUrl } from '@/utils/config'; import { loginStatusPage, post } from '@/utils/https'; import { formatFileSize, getAuthInfo, getDataSet, getFileType, mediaPreview, toArray, } from '@/utils/util'; Page({ /** * 页面的初始数据 */ data: { order_no: '', head_id: '', head_id2: '', list: [] as any[], fileIcon: { file: 'file', excel: 'file-excel', pdf: 'file-pdf' }, }, handleLogin(e: any) { this.setData({ isLogin: e.detail }); if (e.detail) { this.init(); } }, init() { this.setData({ authInfo: getAuthInfo() }); this.getList(); }, formatData(data: any) { const list = toArray(data).map((el) => { el._file_type = getFileType(el.file_name); el.file_path = `${OSSBaseUrl}${el.file_path}`; el._file_size = formatFileSize(el.file_size); return el; }); this.setData({ list }); }, getList() { if (this.data.order_no) { // 销售订单 post('Orders/getOrderFiles', { order_no: this.data.order_no }).then((res: any) => { this.formatData(res.files); }); } else if (this.data.head_id) { // 仓库采购 post('ErpDepot/fileList', { head_id: this.data.head_id }).then((res: any) => { this.formatData(res.data); }); } else if (this.data.head_id2) { // 财务 post('ErpFinance/fileList', { head_id: this.data.head_id2 }).then((res: any) => { this.formatData(res.data); }); } }, onPreview(e: any) { const data = getDataSet(e); const index = data.index; const item = this.data.list[index]; if (item._file_type != 'file') { mediaPreview([item.file_path], item.file_path); } }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { const { title, order_no = '', head_id = '', head_id2 = '' } = options || {}; if (title) { wx.setNavigationBarTitle({ title: decodeURIComponent(title) }); } this.data.order_no = order_no; this.data.head_id = head_id; this.data.head_id2 = head_id2; loginStatusPage(this); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() {}, /** * 生命周期函数--监听页面显示 */ onShow() {}, /** * 生命周期函数--监听页面隐藏 */ onHide() {}, /** * 生命周期函数--监听页面卸载 */ onUnload() {}, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() {}, /** * 页面上拉触底事件的处理函数 */ onReachBottom() {}, /** * 用户点击右上角分享 */ onShareAppMessage() {}, });