|
|
@@ -0,0 +1,523 @@
|
|
|
+var _request = require('../../../../utils/request.js')
|
|
|
+var _handle = require('../../../../utils/handle.js')
|
|
|
+Page({
|
|
|
+ data: {
|
|
|
+ page: 1,
|
|
|
+ per_page: 10,
|
|
|
+ curItem: {},
|
|
|
+ radishCount: 0,
|
|
|
+ checkIntegral: {},
|
|
|
+ companyList: [],
|
|
|
+ more: true,
|
|
|
+ showPanel: false,
|
|
|
+ showPwdDialog: false,
|
|
|
+ ydCodeDialog: false,
|
|
|
+ ydExchangeDialog: false,
|
|
|
+ clogo: '',
|
|
|
+ integralTotal: 0,
|
|
|
+ originInToTal: 0,
|
|
|
+ countdown: 0,
|
|
|
+ servicePwd: '',
|
|
|
+ phoneCode: '',
|
|
|
+ useIntegral: 0,
|
|
|
+ panelId: '',
|
|
|
+ show: false,
|
|
|
+ imgUrls: [
|
|
|
+ ],
|
|
|
+ indicatorDots: true,
|
|
|
+ autoplay: true,
|
|
|
+ interval: 5000,
|
|
|
+ duration: 1000,
|
|
|
+ circular: true,
|
|
|
+ bindTel: false,
|
|
|
+ checkData: {},
|
|
|
+ lock: false
|
|
|
+ },
|
|
|
+ onLoad: function () {
|
|
|
+ // this.getBalanceInfo()
|
|
|
+ this.getCompanyList()
|
|
|
+ this.check()
|
|
|
+ this.getBanners()
|
|
|
+ },
|
|
|
+ onReachBottom: function () {
|
|
|
+ if (this.data.more) {
|
|
|
+ var page = this.data.page + 1
|
|
|
+ this.setData({
|
|
|
+ page: page
|
|
|
+ })
|
|
|
+ this.getCompanyList()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getCode () {
|
|
|
+ var that = this
|
|
|
+ var url = 'v1/platforms/yidong/send_code'
|
|
|
+ var params = {
|
|
|
+ }
|
|
|
+ var success = function (res) {
|
|
|
+ wx.setStorageSync('sms_request_time', Date.now())
|
|
|
+ that.startCountdown()
|
|
|
+ }
|
|
|
+ _request.$get(url, params, success)
|
|
|
+ },
|
|
|
+ startCountdown: function () {
|
|
|
+ var smsRequestTime = wx.getStorageSync('sms_request_time')
|
|
|
+ if (smsRequestTime) {
|
|
|
+ var count = parseInt((60000 - (new Date() - smsRequestTime)) / 1000)
|
|
|
+ this.setData({
|
|
|
+ countdown: count
|
|
|
+ })
|
|
|
+ if (this.data.countdown > 0) {
|
|
|
+ var timer = setInterval(() => {
|
|
|
+ var countdown = this.data.countdown - 1
|
|
|
+ this.setData({
|
|
|
+ countdown: countdown
|
|
|
+ })
|
|
|
+ if (this.data.countdown <= 0) {
|
|
|
+ clearInterval(timer)
|
|
|
+ }
|
|
|
+ }, 1000)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getBalanceInfo: function () {
|
|
|
+ var that = this
|
|
|
+ var url = "v1/user/balance/info";
|
|
|
+ var params = {}
|
|
|
+ var success = function (val) {
|
|
|
+ that.setData({
|
|
|
+ balanceInfo: val.data,
|
|
|
+ bindTel : true
|
|
|
+ });
|
|
|
+ }
|
|
|
+ _request.$get(url, params, success)
|
|
|
+ },
|
|
|
+ getCompanyList: function () {
|
|
|
+ var that = this
|
|
|
+ var url = "v1/platforms";
|
|
|
+ var params = {
|
|
|
+ page: that.data.page,
|
|
|
+ per_page: that.data.per_page,
|
|
|
+ cache: false
|
|
|
+ }
|
|
|
+ var success = function (res) {
|
|
|
+ var result = that.data.companyList.concat(res.data.list || [])
|
|
|
+ console.log(result)
|
|
|
+ that.setData({
|
|
|
+ companyList: result
|
|
|
+ })
|
|
|
+ var listMore = res.data.list_count > that.data.companyList.length
|
|
|
+ that.setData({
|
|
|
+ more: listMore
|
|
|
+ })
|
|
|
+ }
|
|
|
+ _request.$get(url, params, success)
|
|
|
+ },
|
|
|
+ radishCountInput: function (e) {
|
|
|
+ var that = this
|
|
|
+ var item = that.data.curItem
|
|
|
+ if (e.detail.value) {
|
|
|
+ that.data.radishCount = Number(e.detail.value)
|
|
|
+ that.data.integralTotal = (that.data.originInToTal - ((e.detail.value * item.p_count) / item.labi_count)).toFixed(2)
|
|
|
+ } else if (e.detail.value === '') {
|
|
|
+ that.data.integralTotal = 0
|
|
|
+ }
|
|
|
+ if ((that.data.originInToTal - that.data.integralTotal) * 100 % 100 === 0) {
|
|
|
+ that.data.useIntegral = that.data.originInToTal - that.data.integralTotal
|
|
|
+ } else {
|
|
|
+ that.data.useIntegral = (that.data.originInToTal - that.data.integralTotal).toFixed(2)
|
|
|
+ }
|
|
|
+ this.setData({
|
|
|
+ integralTotal: that.data.integralTotal,
|
|
|
+ useIntegral: that.data.useIntegral
|
|
|
+ })
|
|
|
+ },
|
|
|
+ checkUserIntegral: function (tag) {
|
|
|
+ var that = this
|
|
|
+ var url
|
|
|
+ if (tag === 'liantong' || tag === 'yidong' || tag === 'yizhifu' ) {
|
|
|
+ url = "v1/platform/" + tag + "/check";
|
|
|
+ } else {
|
|
|
+ url = "v1/platform/" + that.data.curItem.id + "/check";
|
|
|
+ }
|
|
|
+ var params
|
|
|
+ if (tag === 'yidong') {
|
|
|
+ params = {
|
|
|
+ code: that.data.phoneCode
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ params = {}
|
|
|
+ }
|
|
|
+ var success = function (val) {
|
|
|
+ var integral
|
|
|
+ var item = that.data.curItem
|
|
|
+ that.data.originInToTal = val.data.total
|
|
|
+ if (val.data.total >= 0 && that.data.curItem.tag === 'yidong') {
|
|
|
+ that.ydDialog()
|
|
|
+ that.setData({
|
|
|
+ showPanel: that.data.showPanel,
|
|
|
+ panelId: that.data.curItem.id,
|
|
|
+ clogo: that.data.curItem.logo
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if (val.data.total) {
|
|
|
+ // integral = item.p_start_count * item.labi_count / item.p_count
|
|
|
+ // that.data.integralTotal = val.data.total - ((integral * item.p_count) / item.labi_count)
|
|
|
+ integral = Math.floor(val.data.total / item.p_count) * item.labi_count
|
|
|
+ that.data.integralTotal = (val.data.total - (integral * item.p_count / item.labi_count)).toFixed(2)
|
|
|
+ that.data.radishCount = integral
|
|
|
+ } else {
|
|
|
+ integral = 0
|
|
|
+ that.data.integralTotal = 0
|
|
|
+ }
|
|
|
+ if ((that.data.originInToTal - that.data.integralTotal) * 100 % 100 === 0) {
|
|
|
+ that.data.useIntegral = that.data.originInToTal - that.data.integralTotal
|
|
|
+ } else {
|
|
|
+ that.data.useIntegral = (that.data.originInToTal - that.data.integralTotal).toFixed(2)
|
|
|
+ }
|
|
|
+ that.setData({
|
|
|
+ checkIntegral: val.data,
|
|
|
+ integralTotal: that.data.integralTotal,
|
|
|
+ useIntegral: that.data.useIntegral,
|
|
|
+ radishCount: integral,
|
|
|
+ originInToTal: val.data.total
|
|
|
+ });
|
|
|
+ }
|
|
|
+ _request.$get(url, params, success)
|
|
|
+ },
|
|
|
+ exchange: function (e) {
|
|
|
+ _handle.setFormId(e)
|
|
|
+ var that = this
|
|
|
+ that.data.lock = true
|
|
|
+ var ratio = e.detail.target.dataset.ratio
|
|
|
+ var url = "v1/platform/" + e.detail.target.dataset.id + "/exchange"
|
|
|
+ var params = {
|
|
|
+ count: that.data.radishCount
|
|
|
+ }
|
|
|
+ var success = function (val) {
|
|
|
+ that.data.lock = false
|
|
|
+ wx.redirectTo({
|
|
|
+ url: '/packageUser/pages/user/exchangeSuccess/exchangeSuccess'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if (that.data.radishCount) {
|
|
|
+ if (e.detail.target.dataset.tag === 'yizhifu') {
|
|
|
+ that.getdianxin()
|
|
|
+ } else {
|
|
|
+ if (that.data.integralTotal >= 0) {
|
|
|
+ if (that.data.radishCount % that.data.curItem.labi_range === 0) {
|
|
|
+ if (e.detail.target.dataset.tag === 'liantong') {
|
|
|
+ that.showDialog()
|
|
|
+ } else if (e.detail.target.dataset.tag === 'yidong') {
|
|
|
+ that.data.ydExchangeDialog = !that.data.ydExchangeDialog
|
|
|
+ that.setData({
|
|
|
+ ydExchangeDialog: that.data.ydExchangeDialog
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ if (that.data.lock) {
|
|
|
+ _request.$post(url, params, success)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '请以' + that.data.curItem.labi_range + '的倍数输入代金券数',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '代金券余额不足~',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '请输入兑换的代金券~',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getdianxin () {
|
|
|
+ var that = this
|
|
|
+ var url = 'v1/pf/yizhifu/page/exchange'
|
|
|
+ var params = {
|
|
|
+ count: that.data.radishCount
|
|
|
+ }
|
|
|
+ var success = function (val) {
|
|
|
+ console.log(val)
|
|
|
+ wx.navigateTo({
|
|
|
+ url: '/pages/web/web?id=' + val.result_str
|
|
|
+ })
|
|
|
+ }
|
|
|
+ _request.$post(url, params, success)
|
|
|
+ },
|
|
|
+ servicePwdInput (e) {
|
|
|
+ var that = this
|
|
|
+ that.data.servicePwd = e.detail.value
|
|
|
+ },
|
|
|
+ phoneCodeInput (e) {
|
|
|
+ var that = this
|
|
|
+ that.data.phoneCode = e.detail.value
|
|
|
+ },
|
|
|
+ checkYDIntegral () {
|
|
|
+ var that = this
|
|
|
+ if (that.data.phoneCode) {
|
|
|
+ that.openPanelTwo()
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '验证码不能为空',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 1000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ sumbit () {
|
|
|
+ var that = this
|
|
|
+ var url = "v1/platform/liantong/exchange"
|
|
|
+ var params = {
|
|
|
+ count: that.data.radishCount,
|
|
|
+ pwd: that.data.servicePwd
|
|
|
+ }
|
|
|
+ var success = function (val) {
|
|
|
+ wx.redirectTo({
|
|
|
+ url: '/packageUser/pages/user/exchangeSuccess/exchangeSuccess'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ _request.$post(url, params, success)
|
|
|
+ },
|
|
|
+ sumbitYD () {
|
|
|
+ var that = this
|
|
|
+ var url = "v1/platform/yidong/exchange"
|
|
|
+ var params = {
|
|
|
+ count: that.data.radishCount,
|
|
|
+ code: that.data.phoneCode
|
|
|
+ }
|
|
|
+ var success = function (val) {
|
|
|
+ wx.redirectTo({
|
|
|
+ url: '/packageUser/pages/user/exchangeSuccess/exchangeSuccess'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if (that.data.phoneCode) {
|
|
|
+ _request.$post(url, params, success)
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '验证码不能为空',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 1000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ openPanel (e) {
|
|
|
+ var that = this
|
|
|
+ that.data.curItem = e.currentTarget.dataset.item
|
|
|
+ if (e.currentTarget.dataset.item.tag === 'yidong') {
|
|
|
+ if (that.data.curItem.state === 1) {
|
|
|
+ if (!that.data.showPanel) {
|
|
|
+ that.ydDialog()
|
|
|
+ that.setData({
|
|
|
+ clogo: that.data.curItem.logo
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ that.data.showPanel = !that.data.showPanel
|
|
|
+ that.setData({
|
|
|
+ showPanel: that.data.showPanel,
|
|
|
+ transferR: 90,
|
|
|
+ radishCount: 0,
|
|
|
+ originInToTal: 0,
|
|
|
+ integralTotal: 0
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } //else if (e.currentTarget.dataset.item.tag === 'yizhifu') {
|
|
|
+ // that.data.showPanel = !that.data.showPanel
|
|
|
+ // that.data.show = !that.data.show
|
|
|
+ // that.setData({
|
|
|
+ // showPanel: that.data.showPanel,
|
|
|
+ // show : that.data.show
|
|
|
+ // })
|
|
|
+ // }
|
|
|
+ else {
|
|
|
+ that.openPanelTwo()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ openPanelTwo () {
|
|
|
+ var that = this
|
|
|
+ if (that.data.curItem.state === 1) {
|
|
|
+ that.data.showPanel = !that.data.showPanel
|
|
|
+ if (that.data.showPanel) {
|
|
|
+ that.checkUserIntegral(that.data.curItem.tag)
|
|
|
+ if (that.data.curItem.tag === 'yizhifu') {
|
|
|
+ that.setData({
|
|
|
+ show: true
|
|
|
+ })
|
|
|
+ }
|
|
|
+ that.setData({
|
|
|
+ transferR: -90,
|
|
|
+ // show: false
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ that.setData({
|
|
|
+ transferR: 90,
|
|
|
+ radishCount: 0,
|
|
|
+ originInToTal: 0,
|
|
|
+ integralTotal: 0,
|
|
|
+ show: false,
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if (that.data.curItem.tag !== 'yidong') {
|
|
|
+ that.setData({
|
|
|
+ showPanel: that.data.showPanel,
|
|
|
+ panelId: that.data.curItem.id,
|
|
|
+ clogo: that.data.curItem.logo,
|
|
|
+ })
|
|
|
+ }
|
|
|
+ // if (that.data.curItem.tag === 'yizhifu') {
|
|
|
+ // console.log(4444)
|
|
|
+ // that.setData({
|
|
|
+ // showPanel: that.data.showPanel,
|
|
|
+ // panelId: that.data.curItem.id,
|
|
|
+ // clogo: that.data.curItem.logo,
|
|
|
+ // })
|
|
|
+ // }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ showDialog () {
|
|
|
+ var that = this
|
|
|
+ that.data.showPwdDialog = !that.data.showPwdDialog
|
|
|
+ that.setData({
|
|
|
+ showPwdDialog: that.data.showPwdDialog
|
|
|
+ })
|
|
|
+ },
|
|
|
+ ydDialog () {
|
|
|
+ var that = this
|
|
|
+ that.data.ydCodeDialog = !that.data.ydCodeDialog
|
|
|
+ that.setData({
|
|
|
+ ydCodeDialog: that.data.ydCodeDialog
|
|
|
+ })
|
|
|
+ },
|
|
|
+ ydExDialog () {
|
|
|
+ var that = this
|
|
|
+ that.data.ydExchangeDialog = !that.data.ydExchangeDialog
|
|
|
+ if (!that.data.ydExchangeDialog) {
|
|
|
+ that.data.showPanel = !that.data.showPanel,
|
|
|
+ that.setData({
|
|
|
+ showPanel: that.data.showPanel,
|
|
|
+ ydExchangeDialog: that.data.ydExchangeDialog
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ that.setData({
|
|
|
+ ydExchangeDialog: that.data.ydExchangeDialog
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ minus () {
|
|
|
+ var that = this
|
|
|
+ var item = that.data.curItem
|
|
|
+ var minRadishCount = item.p_start_count * item.labi_count / item.p_count
|
|
|
+ var left = that.data.radishCount - item.labi_range
|
|
|
+ if (left >= minRadishCount) {
|
|
|
+ that.data.radishCount = left
|
|
|
+ that.data.integralTotal = (that.data.checkIntegral.total - ((that.data.radishCount * item.p_count) / item.labi_count)).toFixed(2)
|
|
|
+ if ((that.data.originInToTal - that.data.integralTotal) * 100 % 100 === 0) {
|
|
|
+ that.data.useIntegral = that.data.originInToTal - that.data.integralTotal
|
|
|
+ } else {
|
|
|
+ that.data.useIntegral = (that.data.originInToTal - that.data.integralTotal).toFixed(2)
|
|
|
+ }
|
|
|
+ that.setData({
|
|
|
+ radishCount: that.data.radishCount,
|
|
|
+ integralTotal: that.data.integralTotal,
|
|
|
+ useIntegral: that.data.useIntegral
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '兑换代金券数量不对',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ plus () {
|
|
|
+ var that = this
|
|
|
+ var item = that.data.curItem
|
|
|
+ that.data.radishCount = that.data.radishCount + item.labi_range
|
|
|
+ that.data.integralTotal = (that.data.checkIntegral.total - ((that.data.radishCount * item.p_count) / item.labi_count)).toFixed(2)
|
|
|
+ if ((that.data.originInToTal - that.data.integralTotal) * 100 % 100 === 0) {
|
|
|
+ that.data.useIntegral = that.data.originInToTal - that.data.integralTotal
|
|
|
+ } else {
|
|
|
+ that.data.useIntegral = (that.data.originInToTal - that.data.integralTotal).toFixed(2)
|
|
|
+ }
|
|
|
+ that.setData({
|
|
|
+ radishCount: that.data.radishCount,
|
|
|
+ integralTotal: that.data.integralTotal,
|
|
|
+ useIntegral: that.data.useIntegral
|
|
|
+ })
|
|
|
+ },
|
|
|
+ toUrl () {
|
|
|
+ var that = this
|
|
|
+ if (that.data.curItem.get_url_type === 'internal') {
|
|
|
+ wx.navigateTo({
|
|
|
+ url: that.data.curItem.get_url
|
|
|
+ })
|
|
|
+ } else if (that.data.curItem.get_url_type === 'external') {
|
|
|
+ wx.navigateTo({
|
|
|
+ url: '/pages/web/web?id=' + that.data.curItem.get_url
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '未设置链接',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ check () {
|
|
|
+ var that = this
|
|
|
+ var url = 'v1/user/check'
|
|
|
+ var params = {
|
|
|
+ }
|
|
|
+ var success = function (res) {
|
|
|
+ if (res.data.wx_user_id <= 0) {
|
|
|
+ wx.login({
|
|
|
+ success: res => {
|
|
|
+ _request.login(res)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ that.setData({
|
|
|
+ checkData: res.data
|
|
|
+ })
|
|
|
+ if (that.data.checkData.merchant_id > 0) {
|
|
|
+ // that.getmerchant()
|
|
|
+ }
|
|
|
+ if (res.data.user_id > 0 && !that.data.bindTel) {
|
|
|
+ that.setData({
|
|
|
+ bindTel: true
|
|
|
+ })
|
|
|
+ that.getBalanceInfo()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ _request.$get(url, params, success)
|
|
|
+ },
|
|
|
+ getBanners () {
|
|
|
+ var item = 'lol'
|
|
|
+ var that = this
|
|
|
+ var url = 'v1/ad/' + item + '/items'
|
|
|
+ var params = {
|
|
|
+ }
|
|
|
+ var success = function (res) {
|
|
|
+ that.setData({
|
|
|
+ imgUrls: res.data
|
|
|
+ })
|
|
|
+ }
|
|
|
+ _request.$get(url, params, success)
|
|
|
+ },
|
|
|
+ onShareAppMessage: function (val) {
|
|
|
+ return _request.share({
|
|
|
+ sc: 'xcx_user_exchange'
|
|
|
+ })
|
|
|
+ }
|
|
|
+})
|