diff --git a/.hbuilderx/launch.json b/.hbuilderx/launch.json index d43c75c..e608e7a 100644 --- a/.hbuilderx/launch.json +++ b/.hbuilderx/launch.json @@ -6,8 +6,8 @@ "type" : "uni-app:app-ios" }, { - "customPlaygroundType" : "device", - "playground" : "standard", + "customPlaygroundType" : "local", + "playground" : "custom", "type" : "uni-app:app-android" } ] diff --git a/App.vue b/App.vue index e436329..4f79456 100644 --- a/App.vue +++ b/App.vue @@ -163,6 +163,9 @@ export default { Object.keys(storageData).forEach(key => { uni.setStorageSync(key, storageData[key]) }) + if (extraData['isCombo']) { + uni.setStorageSync('isCombo', extraData['isCombo']) + } }, /** diff --git a/common/global.css b/common/global.css index c3d40fd..d74ed6e 100644 --- a/common/global.css +++ b/common/global.css @@ -130,401 +130,401 @@ text { } .codefun-ml-2 { - margin-left: 4rpx; + margin-left: 2px; } .codefun-mt-2 { - margin-top: 4rpx; + margin-top: 2px; } .codefun-ml-4 { - margin-left: 8rpx; + margin-left: 4px; } .codefun-mt-4 { - margin-top: 8rpx; + margin-top: 4px; } .codefun-ml-6 { - margin-left: 12rpx; + margin-left: 6px; } .codefun-mt-6 { - margin-top: 12rpx; + margin-top: 6px; } .codefun-ml-8 { - margin-left: 16rpx; + margin-left: 8px; } .codefun-mt-8 { - margin-top: 16rpx; + margin-top: 8px; } .codefun-ml-10 { - margin-left: 20rpx; + margin-left: 10px; } .codefun-mt-10 { - margin-top: 20rpx; + margin-top: 10px; } .codefun-ml-12 { - margin-left: 24rpx; + margin-left: 12px; } .codefun-mt-12 { - margin-top: 24rpx; + margin-top: 12px; } .codefun-ml-14 { - margin-left: 28rpx; + margin-left: 14px; } .codefun-mt-14 { - margin-top: 28rpx; + margin-top: 14px; } .codefun-ml-16 { - margin-left: 32rpx; + margin-left: 16px; } .codefun-mt-16 { - margin-top: 32rpx; + margin-top: 16px; } .codefun-ml-18 { - margin-left: 36rpx; + margin-left: 18px; } .codefun-mt-18 { - margin-top: 36rpx; + margin-top: 18px; } .codefun-ml-20 { - margin-left: 40rpx; + margin-left: 20px; } .codefun-mt-20 { - margin-top: 40rpx; + margin-top: 20px; } .codefun-ml-22 { - margin-left: 44rpx; + margin-left: 22px; } .codefun-mt-22 { - margin-top: 44rpx; + margin-top: 22px; } .codefun-ml-24 { - margin-left: 48rpx; + margin-left: 24px; } .codefun-mt-24 { - margin-top: 48rpx; + margin-top: 24px; } .codefun-ml-26 { - margin-left: 52rpx; + margin-left: 26px; } .codefun-mt-26 { - margin-top: 52rpx; + margin-top: 26px; } .codefun-ml-28 { - margin-left: 56rpx; + margin-left: 28px; } .codefun-mt-28 { - margin-top: 56rpx; + margin-top: 28px; } .codefun-ml-30 { - margin-left: 60rpx; + margin-left: 30px; } .codefun-mt-30 { - margin-top: 60rpx; + margin-top: 30px; } .codefun-ml-32 { - margin-left: 64rpx; + margin-left: 32px; } .codefun-mt-32 { - margin-top: 64rpx; + margin-top: 32px; } .codefun-ml-34 { - margin-left: 68rpx; + margin-left: 34px; } .codefun-mt-34 { - margin-top: 68rpx; + margin-top: 34px; } .codefun-ml-36 { - margin-left: 72rpx; + margin-left: 36px; } .codefun-mt-36 { - margin-top: 72rpx; + margin-top: 36px; } .codefun-ml-38 { - margin-left: 76rpx; + margin-left: 38px; } .codefun-mt-38 { - margin-top: 76rpx; + margin-top: 38px; } .codefun-ml-40 { - margin-left: 80rpx; + margin-left: 40px; } .codefun-mt-40 { - margin-top: 80rpx; + margin-top: 40px; } .codefun-ml-42 { - margin-left: 84rpx; + margin-left: 42px; } .codefun-mt-42 { - margin-top: 84rpx; + margin-top: 42px; } .codefun-ml-44 { - margin-left: 88rpx; + margin-left: 44px; } .codefun-mt-44 { - margin-top: 88rpx; + margin-top: 44px; } .codefun-ml-46 { - margin-left: 92rpx; + margin-left: 46px; } .codefun-mt-46 { - margin-top: 92rpx; + margin-top: 46px; } .codefun-ml-48 { - margin-left: 96rpx; + margin-left: 48px; } .codefun-mt-48 { - margin-top: 96rpx; + margin-top: 48px; } .codefun-ml-50 { - margin-left: 100rpx; + margin-left: 50px; } .codefun-mt-50 { - margin-top: 100rpx; + margin-top: 50px; } .codefun-ml-52 { - margin-left: 104rpx; + margin-left: 52px; } .codefun-mt-52 { - margin-top: 104rpx; + margin-top: 52px; } .codefun-ml-54 { - margin-left: 108rpx; + margin-left: 54px; } .codefun-mt-54 { - margin-top: 108rpx; + margin-top: 54px; } .codefun-ml-56 { - margin-left: 112rpx; + margin-left: 56px; } .codefun-mt-56 { - margin-top: 112rpx; + margin-top: 56px; } .codefun-ml-58 { - margin-left: 116rpx; + margin-left: 58px; } .codefun-mt-58 { - margin-top: 116rpx; + margin-top: 58px; } .codefun-ml-60 { - margin-left: 120rpx; + margin-left: 60px; } .codefun-mt-60 { - margin-top: 120rpx; + margin-top: 60px; } .codefun-ml-62 { - margin-left: 124rpx; + margin-left: 62px; } .codefun-mt-62 { - margin-top: 124rpx; + margin-top: 62px; } .codefun-ml-64 { - margin-left: 128rpx; + margin-left: 64px; } .codefun-mt-64 { - margin-top: 128rpx; + margin-top: 64px; } .codefun-ml-66 { - margin-left: 132rpx; + margin-left: 66px; } .codefun-mt-66 { - margin-top: 132rpx; + margin-top: 66px; } .codefun-ml-68 { - margin-left: 136rpx; + margin-left: 68px; } .codefun-mt-68 { - margin-top: 136rpx; + margin-top: 68px; } .codefun-ml-70 { - margin-left: 140rpx; + margin-left: 70px; } .codefun-mt-70 { - margin-top: 140rpx; + margin-top: 70px; } .codefun-ml-72 { - margin-left: 144rpx; + margin-left: 72px; } .codefun-mt-72 { - margin-top: 144rpx; + margin-top: 72px; } .codefun-ml-74 { - margin-left: 148rpx; + margin-left: 74px; } .codefun-mt-74 { - margin-top: 148rpx; + margin-top: 74px; } .codefun-ml-76 { - margin-left: 152rpx; + margin-left: 76px; } .codefun-mt-76 { - margin-top: 152rpx; + margin-top: 76px; } .codefun-ml-78 { - margin-left: 156rpx; + margin-left: 78px; } .codefun-mt-78 { - margin-top: 156rpx; + margin-top: 78px; } .codefun-ml-80 { - margin-left: 160rpx; + margin-left: 80px; } .codefun-mt-80 { - margin-top: 160rpx; + margin-top: 80px; } .codefun-ml-82 { - margin-left: 164rpx; + margin-left: 82px; } .codefun-mt-82 { - margin-top: 164rpx; + margin-top: 82px; } .codefun-ml-84 { - margin-left: 168rpx; + margin-left: 84px; } .codefun-mt-84 { - margin-top: 168rpx; + margin-top: 84px; } .codefun-ml-86 { - margin-left: 172rpx; + margin-left: 86px; } .codefun-mt-86 { - margin-top: 172rpx; + margin-top: 86px; } .codefun-ml-88 { - margin-left: 176rpx; + margin-left: 88px; } .codefun-mt-88 { - margin-top: 176rpx; + margin-top: 88px; } .codefun-ml-90 { - margin-left: 180rpx; + margin-left: 90px; } .codefun-mt-90 { - margin-top: 180rpx; + margin-top: 90px; } .codefun-ml-92 { - margin-left: 184rpx; + margin-left: 92px; } .codefun-mt-92 { - margin-top: 184rpx; + margin-top: 92px; } .codefun-ml-94 { - margin-left: 188rpx; + margin-left: 94px; } .codefun-mt-94 { - margin-top: 188rpx; + margin-top: 94px; } .codefun-ml-96 { - margin-left: 192rpx; + margin-left: 96px; } .codefun-mt-96 { - margin-top: 192rpx; + margin-top: 96px; } .codefun-ml-98 { - margin-left: 196rpx; + margin-left: 98px; } .codefun-mt-98 { - margin-top: 196rpx; + margin-top: 98px; } .codefun-ml-100 { - margin-left: 200rpx; + margin-left: 100px; } .codefun-mt-100 { - margin-top: 200rpx; + margin-top: 100px; } \ No newline at end of file diff --git a/pages.json b/pages.json index 87b19e5..da23e09 100644 --- a/pages.json +++ b/pages.json @@ -172,10 +172,16 @@ } }, { - "path" : "card/card", - "style" : - { - "navigationBarTitleText" : "身份证", + "path": "card/card", + "style": { + "navigationBarTitleText": "身份证", + "navigationStyle": "custom" + } + }, + { + "path": "train-tickets/ctrip-train-tickets/ctrip-train-tickets", + "style": { + "navigationBarTitleText": "携程火车票", "navigationStyle": "custom" } } diff --git a/pages/common/recharge/index.vue b/pages/common/recharge/index.vue index 6930d26..072f574 100644 --- a/pages/common/recharge/index.vue +++ b/pages/common/recharge/index.vue @@ -4,8 +4,19 @@ - + + + + + + + + + {{ item.name }} + + @@ -361,43 +372,43 @@ const data = reactive({ url: "/static/image/recharge/icon2.png" }, { - name: "专属客服", + name: "微信模拟", url: "/static/image/recharge/icon3.png" }, { - name: "多设备", + name: "小宝模拟", url: "/static/image/recharge/icon4.png" }, { - name: "AI聊天模板", + name: "机票", url: "/static/image/recharge/icon5.png" }, { - name: "聊天转账", + name: "高铁票", url: "/static/image/recharge/icon6.png" }, { - name: "限额设置", + name: "工资单", url: "/static/image/recharge/icon7.png" }, { - name: "零钱修改", + name: "群聊", url: "/static/image/recharge/icon8.png" }, { - name: "零钱通", + name: "豪车模拟", url: "/static/image/recharge/icon9.png" }, { - name: "分付", + name: "模拟来电", url: "/static/image/recharge/icon10.png" }, { - name: "账单", + name: "多设备", url: "/static/image/recharge/icon11.png" }, { - name: "朋友圈", + name: "其他权益", url: "/static/image/recharge/icon12.png" } ], @@ -433,6 +444,7 @@ const data = reactive({ // 添加一个标志位来防止快速连续点击导致的价格显示错误 isProcessingClick: false, banner: '/static/image/recharge/banner1.png', + isCombo: false, }) let { @@ -597,8 +609,24 @@ onLoad(async () => { }) -onShow(async () => { - +onShow(() => { + if (data.isCombo) { + uni.showModal({ + title: '提示', + content: '是否支付成功?', + cancelText: '未支付', + confirmText: "已支付", + success: function (res) { + if (res.confirm) { + console.log('用户点击确定'); + paymentResult(uni.getStorageSync('orderId'), paymentMethod.value) + } else if (res.cancel) { + console.log('用户点击取消'); + } + } + }); + data.isCombo = false + } }) onUnload(() => { // uni.offNativeEventReceive() @@ -1106,11 +1134,11 @@ async function activateVip(type = '') { "支付方式": paymentMethod.value == "wxpay" ? '微信' : "支付宝", }) - + let isComBo = uni.getStorageSync('isCombo') == 'ok' let paymentRes = await postJson('a', 'api/order', { goods_id: data.goods.goods_id, coupon: data.active_id ? data.active_id : '', - pay_type: paymentMethod.value == "wxpay" ? 'weixin' : "alipay", + pay_type: paymentMethod.value == "wxpay" ? (data.goods.weixinMpOriId && isComBo ? 'combo' : 'weixin') : "alipay", "pay_source": "app", source: "uni_alipay", }) @@ -1120,23 +1148,38 @@ async function activateVip(type = '') { if (paymentRes.code == 0) { let payData = {} if (paymentMethod.value == "wxpay") { - payData = { - "appid": paymentRes.data.appId, // 应用ID - "noncestr": paymentRes.data.nonceStr, // 随机字符串 - "package": "Sign=WXPay", // 固定值 - "partnerid": paymentRes.data.partnerId, // 商户号 - "prepayid": paymentRes.data.prepayId, // 预支付交易会话ID - "timestamp": Number(paymentRes.data.timeStamp), // 时间戳(秒!) - "sign": paymentRes.data.sign // 签名 - } - uni.setStorageSync('orderId', paymentRes.data.orderId) - //安卓wx支付开始传递开始 - if (proxy.$system != 'iOS') { - uni.sendNativeEvent('wx_pay_start_alipay', paymentRes.data.orderId, ret => { + + if (data.goods.weixinMpOriId && isComBo) { + console.log(paymentRes) + let SZappData = { + weixinMpOriId: data.goods.weixinMpOriId, + outTradeNo: paymentRes.data.outTradeNo + } + uni.setStorageSync('orderId', paymentRes.data.orderId) + uni.sendNativeEvent('start_combo_pay', SZappData, ret => { console.log('宿主App回传的数据:' + ret); }); + data.isCombo = true + uni.hideLoading(); + return + } else { + payData = { + "appid": paymentRes.data.appId, // 应用ID + "noncestr": paymentRes.data.nonceStr, // 随机字符串 + "package": "Sign=WXPay", // 固定值 + "partnerid": paymentRes.data.partnerId, // 商户号 + "prepayid": paymentRes.data.prepayId, // 预支付交易会话ID + "timestamp": Number(paymentRes.data.timeStamp), // 时间戳(秒!) + "sign": paymentRes.data.sign // 签名 + } + uni.setStorageSync('orderId', paymentRes.data.orderId) + //安卓wx支付开始传递开始 + if (proxy.$system != 'iOS') { + uni.sendNativeEvent('wx_pay_start_alipay', paymentRes.data.orderId, ret => { + console.log('宿主App回传的数据:' + ret); + }); + } } - } else { payData = paymentRes.data.payParam uni.setStorageSync('orderId', paymentRes.data.orderId) @@ -2411,4 +2454,46 @@ function shouldBeTrue(obj) { left: 15px; z-index: 999999; } + +.vipContent { + background-color: #fff; + margin-left: 16px; + width: calc(100% - 32px); + border-radius: 16px; + margin-bottom: 20px; + + .top { + image { + width: 100%; + } + } + + .vipList { + display: flex; + flex-wrap: wrap; + padding: 10px; + + .item { + width: 25%; + height: 75px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + image { + width: 38px; + height: 38px; + } + + text { + margin-top: 5px; + font-size: 10px; + color: #1A1A1A; + line-height: 15px; + text-align: center; + } + } + } +} \ No newline at end of file diff --git a/pages/index/index.nvue b/pages/index/index.nvue index c2c4650..bcdf6f9 100644 --- a/pages/index/index.nvue +++ b/pages/index/index.nvue @@ -219,8 +219,6 @@ path: "/pages/ant-credit-pay/index" }, ] - - const otherList = [{ icon: "/static/image/index/qita/jipiao.png", name: "机票", diff --git a/pages/other/tickets-app/index.vue b/pages/other/tickets-app/index.vue index 06dc619..724bf85 100644 --- a/pages/other/tickets-app/index.vue +++ b/pages/other/tickets-app/index.vue @@ -1,10 +1,11 @@