var businessT = require('../../../../tool/business-tool.js') var sysT = require('../../../../tool/sys-tool.js') var url = require('../../../../constant/url.js') import Net from '../../../../tool/net.js' var net = new Net() var pay = require('../../../../public/pay.js') var businessType = require('../../../../public/business-type.js') Page({ /** * 页面的初始数据 */ data: { scroll: true, isLoading: true, detailsView: { data: {}, scroll: false, left: 0, hidden: true, animation: {}, discountU: false, status: 1, sa: false }, tab: { id: '1', animation: {} }, // bgScrollView: { // scroll: false, // left: 0 // }, data: [[],[]],//bs1是只有左边按钮,2是右边有一按钮,3都展示 bgAnimation: {} }, tabChoose: businessT.action(function (sender) { if (sender.currentTarget.id == this.data.tab.id) { return } // this.data.bgScrollView.scroll = true; // this.setData({ // bgScrollView: this.data.bgScrollView // }) var animation = wx.createAnimation({ duration: 300, timingFunction: 'ease', }) var bgAnimation = wx.createAnimation({ duration: 300, timingFunction: 'ease', }) var w = sysT.sysInfo().windowWidth var s = sender.currentTarget.id - 1 // if (sender.currentTarget.id == "1") { // animation.translateX(0).step() // this.data.bgScrollView.left = 0 // } else { // animation.translateX(w / 2).step() // this.data.bgScrollView.left = sysT.sysInfo().windowWidth // } animation.translateX(s * w / 2).step() bgAnimation.translateX(-w * s).step() this.data.tab.id = sender.currentTarget.id this.data.tab.animation = animation.export() // this.data.bgScrollView.scroll = false; this.setData({ tab: this.data.tab, bgAnimation: bgAnimation.export() // bgScrollView: this.data.bgScrollView }) }), payAction: businessT.action(function (sender) { businessT.debugLog(sender) this.showDetails(sender.currentTarget.id) this.detailsScroll(1, false) }), showDetails: function (i) { if (!this.data.detailsView.hidden) { return } var data = this.data.data[0][i] this.data.detailsView.data = data this.data.detailsView.status = data.status this.data.detailsView.hidden = false //为了兼容iOS低版本系统,不能用bottom,所以计算margan-top的位置 sysT.adaptor() businessT.debugLog(sysT.sysInfo().windowHeight) var s = this.data.detailsView.suffix == '-X' ? -1068 : -1000 s = sysT.rpxToPx() * s this.data.detailsView.top = sysT.sysInfo().windowHeight - s this.setData({ detailsView: this.data.detailsView, scroll: false }) setTimeout(function () { var animation = wx.createAnimation({ duration: 300, timingFunction: 'ease', }) // animation.bottom('0rpx').step() animation.translateY(s).step() this.data.detailsView.animation = animation.export() this.setData({ detailsView: this.data.detailsView }) }.bind(this), 100) }, hiddenDetails: businessT.action(function (sender) { var animation = wx.createAnimation({ duration: 300, timingFunction: 'ease', }) animation.translateY(0).step() this.data.detailsView.animation = animation.export() this.setData({ detailsView: this.data.detailsView }) setTimeout(function () { this.data.detailsView.hidden = true this.setData({ detailsView: this.data.detailsView, scroll: true }) }.bind(this), 300) }), detailsScroll: function (i, a) { this.data.detailsView.scroll = true this.data.detailsView.sa = a this.setData({ detailsView: this.data.detailsView }) this.data.detailsView.left = i * sysT.sysInfo().windowWidth this.data.detailsView.scroll = false; this.setData({ detailsView: this.data.detailsView }) }, detailsConfirmPay: businessT.action(function (sender) { wx.showLoading({ title: '正在提交订单', mask: true }) pay.prepay({ success: e => { this.createOrder() }, fail: e => { wx.hideLoading() businessT.showFailTips(err, '提交订单失败') } }) }), createOrder: function () { var data = this.data.detailsView.data net.connectNeedLogin({ url: url.app_host + url.createPriceDifferencePaymentOrder, data: { added_no: data.added_no, pay_channel: 5 }, success: (err, res) => { pay.wxPay({ data: res.data, success: e => { var pages = getCurrentPages() pages[0].route('../../public/pages/pay-success/pay-success?type=none') }, fail: e => { wx.hideLoading() businessT.showFailTips(err, '提交订单失败') } }) }, fail: (err, res) => { wx.hideLoading() businessT.showFailTips(err, '提交订单失败') } }, true) }, cancelAction: businessT.action(function (sender) { businessT.debugLog(sender) }), detailsAction: businessT.action(function (sender) { businessT.debugLog(sender) var t = Number(this.data.tab.id) var data = this.data.data[t - 1][sender.currentTarget.id] wx.showModal({ title: '补缴月份', content: data.allMonths, confirmText: '我知道了', showCancel: false, confirmColor: '#3296FB', cancelColor: '#3296FB', }) }), getOrderData: function () { wx.showLoading({ title: '加载中', mask: true }) net.connectNeedLogin({ url: url.app_host + url.getPayPriceDifferenceList, data: {}, success: (err, res) => { this.data.data = this.handleOrderData(res.data) businessT.debugLog(this.data.data) this.data.isLoading = false this.setData({ data: this.data.data, isLoading: this.data.isLoading }) wx.hideLoading() }, fail: (err, res) => { wx.hideLoading() businessT.showFailTips(err, '加载失败') setTimeout(function () { wx.navigateBack({ }) }.bind(this), 1000) } }, true) }, handleOrderData: function (data) { var w = [] var f = [] for (var i in data) { var item = data[i] item.orderListType = businessType.OrderListType.orderListTypePPD item.a = item.amount.toFixed(2) item.details = '查看补差额月份' if (item.title.indexOf('社保') != -1) { item.i = 's_pay_s' item.ct = '参保姓名\n所在城市\n补差额月份\n补差额原因' } else { item.i = 's_pay_a' item.ct = '购买人姓名\n所在城市\n补差额月份\n补差额原因' } var months = item.months.split(',') var allMonths = '' for (var i in months) { var m = months[i] var m = String(m).slice(0, 4) + '年' + String(m).slice(4, 6) + '月' if (Number(i) == months.length - 1) { allMonths = allMonths + m } else { allMonths = allMonths + m + '、' } } item.allMonths = allMonths var t = months.length + '个月' var reason = item.reason if (reason.length > 12) { reason = reason.substring(0, 12) + '...' } item.c = item.u_name + '\n' + item.city_name + '\n' + t + '\n' + reason if (item.status == 1) { item.s = { t: '等待付款', c: 'order-item-status-w' } item.bs = 2 w.push(item) } else if (item.status == 2) { item.s = { t: '交易完成', c: 'order-item-status-f' } item.bs = 1 f.push(item) } } return [w, f] }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { this.data.detailsView.suffix = sysT.suffixOfClass() this.getOrderData() }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { return { path: '/page/home/index', imageUrl: '../../../../icon/public/share_img.png', title: '自助缴社保公积金,覆盖200多个城市,专业团队操作' } } })