123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335 |
- // subPackagesB/pages/GroupConfirm/GroupConfirm.js
- import {
- get,
- post
- } from '../../../utils/http'
- var timer;
- Page({
- /**
- * 页面的初始数据
- */
- data: {
- store_name: '', //店铺名称
- goodsDetailsList: '', //美妆产品详情
- cardDetailList: '', //次卡产品详情
- source: '', //产品类型
- store_id: '', //店铺ID
- goods_id: '', //美妆产品ID
- payNow: false, //控制提交订单弹出框
- inserllAmount: '', // 我的储值
- pay_methon: 1, //支付方式 1微信2储值
- orderId: '', //订单ID
- groupPrice: '', //拼团价格
- isGrouping: '', //是否是拼团购买
- original_price: '', //原价
- groupID: '', //拼团活动ID
- isSuccess: '', //是否是去拼团进入
- grouping_id: '', //拼团记录ID
- isCheckOrder: true, //判断支付后是否成功
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad(options) {
- // 禁用分享
- wx.hideShareMenu()
- // 获取美妆产品Id&&产品类型&&店铺ID
- console.log(options);
- let isSuccess = false
- if (options.isSuccess) {
- isSuccess = true
- }
- this.setData({
- goods_id: options.productId,
- source: options.source,
- store_id: options.store_id || wx.getStorageSync('store_id'),
- groupPrice: options.groupPrice,
- isGrouping: JSON.parse(options.isGrouping),
- original_price: options.original_price,
- groupID: options.groupID,
- isSuccess,
- grouping_id: options.grouping_id
- })
- if (options.source == 'goods') {
- // 获取美妆产品详情
- this.getGoodsDetail()
- } else {
- // 获取次卡详情
- this.getCardDetail()
- }
- },
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady() {
- },
- /**
- * 生命周期函数--监听页面显示
- */
- onShow() {
- },
- /**
- * 生命周期函数--监听页面隐藏
- */
- onHide() {
- clearTimeout(timer)
- },
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload() {
- },
- /**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh() {
- },
- /**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom() {
- },
- /**
- * 用户点击右上角分享
- */
- onShareAppMessage() {
- },
- // 获取美妆产品详情
- getGoodsDetail() {
- let params = {
- goods_ids: this.data.goods_id,
- store_id: this.data.store_id,
- type: 2
- }
- post('v2/api/goods_order/confirm', params, (res) => {
- if (res.code == 200) {
- console.log(res);
- this.setData({
- store_name: res.data.store_name,
- goodsDetailsList: res.data.list
- })
- }
- })
- },
- // 获取次卡详情
- getCardDetail() {
- get('v2/api/card/info', {
- id: this.data.goods_id,
- store_id: this.data.store_id || wx.getStorageSync('store_id')
- }, (res) => {
- this.setData({
- cardDetailList: res.data
- })
- })
- },
- // 单独购买提交订单
- onCardgoodsPay() {
- // 判断是美妆还是次卡下单
- let url = this.data.source == 'goods' ? 'v2/api/car/closing' : 'v2/api/order/card/add'
- let params = this.data.source == 'goods' ? {
- goods_ids: this.data.goods_id,
- store_id: this.data.store_id || wx.getStorageSync('store_id'),
- type: 2,
- } : {
- store_id: this.data.store_id || wx.getStorageSync('store_id'),
- id: this.data.goods_id,
- group_type: 1,
- group: '',
- }
- post(url, params, res => {
- if (res.code == 200) {
- if (res.data.pay_status == 1) {
- wx.showToast({
- title: '支付成功',
- icon: 'success'
- })
- // 只有项目购买,需要订阅消息
- wx.reLaunch({
- url: `/pages/paySuccess/paySuccess?current=1&source=goods&order_id=${res.data.order_id}`
- })
- } else {
- this.setData({
- payNow: true,
- orderId: res.data.order_id
- })
- this.getAmount()
- }
- }
- })
- },
- // 拼团购买提交订单
- onNewPay() {
- post('v2/api/grouping/buy', {
- id: this.data.groupID,
- store_id: this.data.store_id,
- grouping_id: this.data.grouping_id || ''
- }, res => {
- this.setData({
- payNow: true,
- orderId: res.data.order_id
- })
- this.getAmount()
- })
- },
- // 获取拼团记录ID
- getGroupRecordID(order_id, goods_type) {
- get('v2/api/grouping/get_grouping_id', {
- order_id,
- goods_type
- }, (res) => {
- if (res.data.grouping_id != '') {
- this.setData({
- isCheckOrder: false
- })
- }
- // 判断是否是去拼团 进入购买 是就跳转到拼团成功页面
- if (this.data.isCheckOrder) {
- return
- }
- if (this.data.isSuccess) {
- // 拼团成功返回首页
- wx.reLaunch({
- url: `/subPackagesB/pages/groupOrder/groupOrder?groupStatus=1&&userGroupId=${this.data.grouping_id}`
- })
- } else {
- wx.reLaunch({
- url: `/subPackagesB/pages/successOrder/successOrder?goods_id=${this.data.goods_id}&&original_price=${this.data.original_price}&&source=${this.data.source}&&grouping_id=${res.data.grouping_id}&&groupID=${this.data.groupID}`
- })
- }
- })
- },
- /**
- * 订单支付
- */
- payOrder() {
- let that = this
- let url = this.data.source == 'goods' ? 'v2/api/order/goods/pay' : 'v2/api/order/card/pay'
- post(
- url, {
- pay_way: this.data.pay_methon == 1 ? 'weixin' : 'amount',
- order_id: this.data.orderId
- },
- (res) => {
- that.setData({
- payNow: false
- })
- if (that.data.pay_methon == 2) {
- that.goToOrder('支付成功')
- return
- }
- wx.requestPayment({
- timeStamp: res.data.pay_data.timeStamp,
- nonceStr: res.data.pay_data.nonceStr,
- package: res.data.pay_data.package,
- signType: res.data.pay_data.signType,
- paySign: res.data.pay_data.paySign,
- success(res) {
- if (res.errMsg == 'requestPayment:ok') {
- that.goToOrder('支付成功')
- }
- },
- fail(res) {
- that.goToOrder('支付失败')
- }
- })
- }
- )
- },
- // 判断是否完成订单支付
- checkOrder() {
- timer = setTimeout(res => {
- if (!this.data.isCheckOrder) {
- clearTimeout(timer)
- return
- }
- this.getGroupRecordID(this.data.orderId, this.data.source == 'goods' ? 1 : 2)
- this.checkOrder()
- }, 1000)
- },
- /**
- * 跳转订单列表
- */
- goToOrder(text) {
- let that = this
- wx.showToast({
- title: text,
- icon: text == '支付成功' ? 'success' : 'error'
- })
- if (text == '支付成功') {
- // 只有项目购买,需要订阅消息
- if (this.data.isGrouping) {
- this.checkOrder()
- } else {
- wx.reLaunch({
- url: `/pages/paySuccess/paySuccess?current=1&source=${this.data.source}&order_id=${that.data.orderId}`
- })
- }
- return
- } else if(this.data.isGrouping){
- setTimeout(() => {
- wx.reLaunch({
- url: '/subPackagesB/pages/joinGroup/joinGroup'
- })
- }, 1000)
- }else if(!this.data.isGrouping&&this.data.source=='secondaryCard'){
- setTimeout(() => {
- wx.reLaunch({
- url: '/subPackagesB/pages/joinGroup/joinGroup'
- })
- }, 1000)
- }else{
- let failUrl = `/pages/goods/orderList/orderList?current=0`
- setTimeout(() => {
- wx.reLaunch({
- url: failUrl
- })
- }, 1000)
- }
- },
- // 关闭提交订单框
- onClosePay() {
- this.setData({
- payNow: false
- })
- },
- // 选择微信支付
- pay_methonw() {
- this.setData({
- pay_methon: 1
- })
- },
- // 选择储值支付
- pay_methonc() {
- this.setData({
- pay_methon: 2
- })
- },
- /**
- * 获取我的储值
- * api/user
- */
- getAmount() {
- get('api/user/amount', {}, (res) => {
- if (res.data) {
- this.setData({
- inserllAmount: res.data.amount
- })
- }
- })
- },
- })
|