// pages/module_ledger/ledgerhome/ledgerhome.js const ledgerservice = require("../../../service/ledgerservice") const moment = require('../../../utils/moment.min') const app = getApp() Page({ /** * 页面的初始数据 */ data: { deadline: '', leftday:0 , currentTab: 0, tabList: [], pageList: [], pageheight: '300px' }, //每月台账提交期限日 DEADLINEDAY: 10, /** * 生命周期函数--监听页面加载 */ onLoad(options) { this.getLedgerType() var deadline = moment().format(`MM-${this.DEADLINEDAY}`) var leftday = this.DEADLINEDAY + 1 - moment().date() this.setData({ deadline: deadline, leftday: leftday }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, getLedgerType () { var that = this var time = moment().format('YYYY-MM-DD') ledgerservice.getLedgerSummary(app.globalData.accessToken.userId, app.globalData.userInfo.extension2, time, { success (res) { // console.log(res); let r = that.parseLedgerType(res) that.setData({ tabList: r[0], pageList: r[1] }) } }) }, parseLedgerType (subtypes) { var map = new Map() subtypes.forEach(s => { if (s.upLoad) { s.tag = '/res/icons/round_check_fill.png' } else if (s.ledgerFinished) { s.tag = '/res/icons/warning_yellow.png' } else if (!s.needUpdate) { s.tag = '/res/icons/round_check_fill.png' } else { s.tag = '/res/icons/warning_red.png' } if (!map.has(s.ledgerType)) { map.set(s.ledgerType, []) } map.get(s.ledgerType).push(s) }); var t = [] var p = [] for(let item of map){ console.log(item); t.push(item[0]) p.push(item[1]) } return [t, p] }, gotoLedgerDetail (e) { var i = e.currentTarget.dataset.index.split(',') var indexGroup = [parseInt(i[0]), parseInt(i[1])] var ledger = this.data.pageList[indexGroup[0]][indexGroup[1]] console.log(indexGroup); var that = this wx.navigateTo({ url: '/pages/module_ledger/ledgerupload/ledgerupload', events: { uploadOver: function (data) { let i = data.indexGroup let pageList = that.data.pageList pageList[i[0]][i[1]].upLoad = true pageList[i[0]][i[1]].tag = '/res/icons/round_check_fill.png' that.setData({ pageList }) } }, success: (res) => { // 通过 eventChannel 向被打开页面传送数据 res.eventChannel.emit('acceptDataFromOpenerPage', { ledger: ledger, indexGroup: indexGroup }) }, }) }, //计算swiper高度方法(在切换的时候调用) tabsHeight(element) { let that = this; let query = wx.createSelectorQuery(); //必须要先创建一个查询 query.select(element).boundingClientRect(function (rect) { that.setData({ pageheight: rect.height + 'px' }); }).exec(); }, swichNav: function (e) { var that = this; if (this.data.currentTab === e.target.dataset.current) { return false; } else { that.setData({ currentTab: e.target.dataset.current, navScrollLeft: e.target.dataset.current >= 3 ? ((e.target.dataset.current) * 60) : 0 //判断当前选中的个数是否是第5个 }) that.tabsHeight('.page'+e.target.dataset.current); //查询哪一个元素 } }, bindChange: function (e) { var that = this; that.setData({ currentTab: e.detail.current, navScrollLeft: e.detail.current >= 3 ? ((e.detail.current) * 60) : 0 //判断当前选中的个数是否是第5个 }); // that.tabsHeight('.page'+e.target.dataset.current); //查询哪一个元素 }, })