123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283 |
- import recordSource from '../../utils/recordSource';
- const config = require('../../config.js')
- const getReq = config.getReq
- const buyVGoods = config.buyVGoods
- let app = getApp();
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- fGoodsRequesting:false,
- currentIndex: 0, //页签索引
- rechargeGearActiveIndex: 0, //挡位项目索引
- tips:'', //顶部tips
- inviter_tip:'',
- goods_inviter_tips: new Map(),
- goods:[], //挡位数据
- goods_id:'', //当前选中挡位的goods_id
- sinopec: { card_no: '', card_type: 'sinopec' },
- petrochina: { card_no: '', card_type: 'petrochina' },
- phone: { card_no: '', card_type: 'phone' },
- member_mobile:'',
- tabsData: [
- { id: 0, icon: '/image/postage/sinopec.png', title: '中国石化', tips: '选择油卡', card_type: 'sinopec', card_no: '' },
- { id: 1, icon: '/image/postage/petrochina.png', title: '中国石油', tips: '选择油卡', card_type: 'petrochina', card_no: '' }
- ],
- fromSource: '',
- payInfoChecked:true,
- showShareDialog:false,
- shareGoodsId:0,
- showtermsOfServiceDialog:false
- },
- onShowShareDialog(){
- var goods_id = this.data.goods_id
- this.setData({
- showShareDialog:true,
- shareGoodsId: goods_id,
- })
- },
- onCloseShareDialog(){
- this.setData({
- showShareDialog:false
- })
- },
- onCheckedPayInfo(){
- this.setData({
- payInfoChecked:!this.data.payInfoChecked
- })
- },
- onShowPayInfoModal(){
- this.setData({
- showtermsOfServiceDialog:true
- })
- },
- onShowtermsOfServiceDialog(){
- this.setData({
- showtermsOfServiceDialog:false
- })
- },
- // 页签切换
- handlerClickTabItem(e) {
- var dataset = e.currentTarget.dataset
- const { activeindex, cardtype } = dataset
- console.log('handlerClickTabItem activeindex=', activeindex,'cart_type=', cardtype)
- this.setData({currentIndex: activeindex});
- },
- //充值档位切换
- handlerClickRechargeGear(e) {
- var dataset = e.currentTarget.dataset
- console.log('handlerClickRechargeGear dataset:', e.currentTarget.dataset)
- let goods_id = dataset.currentvalue
- this.setData({
- rechargeGearActiveIndex: dataset.activeindex,
- goods_id: goods_id,
- inviter_tip: this.data.goods_inviter_tips.get(goods_id)
- });
- },
- //跳转到油卡管理页面
- handlerAddCard(e){
- const { cardtype } = e.currentTarget.dataset
- app.navigateto(`/pages/postageManage/postageManage?card_type=${cardtype}`)
- },
- onAuthenPhone()
- {
- if (!app.globalData.hasmobile) {
- app.navigateto('/pages/auth/auth')
- return;
- }
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad: function (options)
- {
- this.requestGoods();
- },
- requestGoods()
- {
- if(this.fGoodsRequesting) return;
- this.fGoodsRequesting = true
- let fromSource = recordSource(app, `act=index&op=card_goods`)
- this.setData({
- fromSource: app.globalData.fromSource,
- });
- getReq(app, {
- act: 'index',
- op: 'card_goods',
- page_type: 'oil',
- from: fromSource
- }, (res) => {
- wx.stopPullDownRefresh()
- if (res.code == 200) {
- if (res.datas && res.datas.goods) {
- const datas = res.datas
- let goods_inviter_tips = this.formGoodsInviterTips(res.datas.goods_inviter_tips)
- const { tips = '', goods = [], cards = [], member_mobile} = datas
- let phone = app.getValueByKey('phone', cards)
- let petrochina = app.getValueByKey('petrochina', cards)
- let sinopec = app.getValueByKey('sinopec', cards)
-
- phone = app.isNullObject(phone) ? { card_no: '', card_type: 'phone' } : phone
- petrochina = app.isNullObject(petrochina) ? { card_no: '', card_type: 'petrochina' } : petrochina
- sinopec = app.isNullObject(sinopec) ? { card_no: '', card_type: 'sinopec' } : sinopec
- let goods_id = datas.goods[0].goods_id
- let inviter_tip = goods_inviter_tips.get(goods_id)
- this.setData({tips, goods_inviter_tips, inviter_tip, goods, sinopec, petrochina, phone, goods_id, member_mobile});
- }
- }
- else {
- app.showToast(res.message)
- }
- this.fGoodsRequesting = false
- })
- },
- formGoodsInviterTips(godosInviterTips)
- {
- let ret = new Map();
- godosInviterTips.forEach(item => {
- let goods_id = item.goods_id
- let tip = item.tip
- ret.set(goods_id,tip)
- });
- return ret;
- },
- // 立即充值
- handlerRecharge()
- {
- if(!this.data.payInfoChecked) {
- wx.showToast({
- icon:'none',
- title: '请同意充值代缴服务说明'
- })
- return;
- }
- if (!app.globalData.hasmobile) {
- app.navigateto('/pages/auth/auth')
- return;
- }
- console.log('handlerRecharge:',this.data)
- const { goods_id } = this.data
- let card_type = ''
- let card_no = ''
- if (this.data.currentIndex == 0) {
- card_type = 'sinopec'
- card_no = this.data.sinopec.card_no
- } else {
- card_type = 'petrochina'
- card_no = this.data.petrochina.card_no
- }
- if(!card_no){
- app.showToast('卡号不能为空')
- return
- }
- buyVGoods(app,goods_id,1,{ card_no,card_type }, (res) => {
- console.table({card_no,card_type})
- console.log('res:',res)
- let page = getCurrentPages().pop();
- page.onLoad()
- }, (err) => {
- wx.showToast({
- icon: 'none',
- title: '支付未完成,订单将在10分钟后取消...',
- duration: 5000
- })
- let page = getCurrentPages().pop();
- page.onLoad()
- })
- },
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady: function () {
- },
- /**
- * 生命周期函数--监听页面显示
- */
- onShow: function ()
- {
- const record = app.globalData.record || {}
- const { card_no = '', card_type = '' } = record
- app.setFromSource(this.data.fromSource)
- console.log('onShow ')
- if (!app.isNullObject(record) && card_no && card_type)
- {
- if (card_type === 'sinopec'){
- this.setData({ sinopec: { card_no: card_no, card_type:'sinopec'} })
- } else if(card_type === 'petrochina') {
- this.setData({ petrochina: { card_no: card_no, card_type: 'petrochina' }})
- }
- console.log(this.sinopec, this.petrochina)
- }
- },
- /**
- * 生命周期函数--监听页面隐藏
- */
- onHide: function () {
- this.setData({
- showShareDialog:false,
- shareGoodsId:0,
- showtermsOfServiceDialog:false
- })
- },
- onShareInfo: function () {
- console.log('onShareInfo')
- wx.getShareInfo({
- success: function (res) {
- console.log(res)
- }
- })
- },
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload: function () {
- },
- /**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh: function () {
- this.requestGoods();
- },
- /**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom: function () {
- },
- onShareAppMessage: function () {
- return app.cardShareInfo();
- }
- })
|