/** * 分期还款 * @author: wsl<shuiling.wang@yoho.cn> * @date: 2016/08/04 */ let $ = require('yoho-jquery'), Repayment = require('./repayment'), tip = require('plugin/tip'), bp = require('./burying-point'); let CHECKBOX_SELECTOR = '.repay-list input'; let curTermNo = { 1: 1, 3: 2, 6: 3, 9: 4, 12: 5 }; let repayment = new Repayment({ onGetSelection: function() { let ret = []; $(CHECKBOX_SELECTOR + ':checked').each(function(key, item) { let li = $(item).parents('li'); let data = { index: li.index(), orderCode: li.data('billNo'), termNo: li.data('currterm'), amount: parseFloat(li.data('curramt')), fee: parseFloat(li.data('currfee')) + 0 }; ret.push(data); }); return ret; }, onGetSelectableCount: function() { return $(CHECKBOX_SELECTOR).length; }, onDeselectAll: function() { $(CHECKBOX_SELECTOR + ':checked').prop('checked', false); return []; }, onSelectAll: function() { $(CHECKBOX_SELECTOR + ':not(:checked)').prop('checked', true); return this.getSelection(); } }); require('./overdue-notice'); $(CHECKBOX_SELECTOR + ':checkbox').click(function() { let isSkipped = false, self = this, billNo = $(self).parent().data('billNo'), li = $('li[data-bill-no=' + billNo + ']'), selection = li.find('input:checked'), lastIndex = li.eq(0).data('currterm'); selection.parent().each(function(index, sel) { let key = $(sel).data('currterm'); if ((key + 1) - lastIndex > 1) { isSkipped = true; } else { lastIndex = key + 1; } }); if (isSkipped) { setTimeout(function() { tip.show('同一个分期订单不能跨期还款,请按时间顺序还款'); }, 0); return false; } repayment.update(); }); repayment.update(); $(window).load(function() { // 统计:各模块的落地页进入时 bp.setContYas({ op: 'YB_INST_REPAYMENT', appop: 'YB_H5_INST_REPAYMENT_C' }, { POS_ID: $('.repayment-list-page').data('posId') }, true); }); // 统计yas 需要传的参数 function countYasParams() { let curBillNo = ''; let opt = { billNoAll: '', termNoAll: '' }; $(CHECKBOX_SELECTOR + ':checked').each(function(key, item) { curBillNo = $(item).parent().data('billNo'); if (opt.billNoAll.indexOf(curBillNo) < 0) { opt.billNoAll += (key !== 0) ? ',' : ''; opt.termNoAll += (key !== 0) ? ',' : ''; opt.billNoAll += curBillNo; opt.termNoAll += curTermNo[$(item).parent().data('terms')]; } }); return opt; } // 统计:立即还款按钮点击时 $('.repayment-btn').on('click', function() { let opt = countYasParams(); bp.setContYas({ op: 'YB_INST_TOPAY_CLICK', appop: 'YB_H5_INST_TOPAY_C' }, { POS_ID: $('.repayment-list-page').data('posId'), ORDER_CODE: opt.billNoAll, INST_STYLE: opt.termNoAll }, true); }); // 统计:列表项点击右边箭头时 $('.list-right a').on('click', function() { let li = $(this).parents('li'); bp.setContYas({ op: 'YB_INST_TOPAY_INFO', appop: 'YB_H5_INST_TOPAY_INFO_C' }, { POS_ID: $('.repayment-list-page').data('posId'), ORDER_CODE: li.data('billNo'), INST_STYLE: curTermNo[li.data('terms')], PERIODS: li.data('currterm') }, true); });