@@ -1,7 +1,7 @@ | |||||
<!-- | <!-- | ||||
* @Date: 2022-08-17 16:19:13 | * @Date: 2022-08-17 16:19:13 | ||||
* @LastEditors: JinxChen | * @LastEditors: JinxChen | ||||
* @LastEditTime: 2023-04-15 12:59:37 | |||||
* @LastEditTime: 2023-04-28 16:04:03 | |||||
* @FilePath: \TelpoH5FrontendWeb\README.md | * @FilePath: \TelpoH5FrontendWeb\README.md | ||||
* @description: 项目说明 | * @description: 项目说明 | ||||
--> | --> | ||||
@@ -366,3 +366,37 @@ update | |||||
update | update | ||||
- packageHome | - packageHome | ||||
- 修改 判断imei函数顺序 | - 修改 判断imei函数顺序 | ||||
## v1.0.43 | |||||
`2023.4.17` | |||||
update | |||||
- cardInfo | |||||
- 优化 话费查询,购买功能 | |||||
## v1.0.44 | |||||
`2023.4.17` | |||||
update | |||||
- packageHome | |||||
- 增加 进入充值首页时已充值跳转到话费查询页面 | |||||
- cardInfo | |||||
- 修复 code重复的问题 | |||||
## v1.0.45 | |||||
`2023.4.19` | |||||
update | |||||
- packageList | |||||
- packageBuy | |||||
- 增加 下单接口 pkId 参数 | |||||
## v1.0.46 | |||||
`2023.4.27` | |||||
update | |||||
- packageBuy | |||||
- 修改 加油包 下单接口 productId 参数,从原来 packagesId 变成 payTypeList[0].productId 即收单系统id | |||||
## v1.0.47 | |||||
`2023.4.28` | |||||
fix | |||||
- buyRecord | |||||
- 修复 购买记录时间格式转换异常导致数据显示不出来的问题 |
@@ -1,11 +1,11 @@ | |||||
/* | /* | ||||
* @Date: 2021-11-20 10:26:39 | * @Date: 2021-11-20 10:26:39 | ||||
* @LastEditors: JinxChen | * @LastEditors: JinxChen | ||||
* @LastEditTime: 2023-04-14 10:27:11 | |||||
* @LastEditTime: 2023-04-28 09:18:52 | |||||
* @FilePath: \TelpoH5FrontendWeb\src\config\models.js | * @FilePath: \TelpoH5FrontendWeb\src\config\models.js | ||||
* @description: | * @description: | ||||
*/ | */ | ||||
export const VERSION_MODEL = '1.0.42F'; //版本号 | |||||
export const VERSION_MODEL = '1.0.47F'; //版本号 | |||||
export const IMAGE_URL = { | export const IMAGE_URL = { | ||||
production: 'http://zfb.ssjlai.com/web/', | production: 'http://zfb.ssjlai.com/web/', | ||||
test: 'http://zfb.ssjlai.com/web/', | test: 'http://zfb.ssjlai.com/web/', | ||||
@@ -1,7 +1,7 @@ | |||||
<!-- | <!-- | ||||
* @Date: 2022-11-21 11:04:12 | * @Date: 2022-11-21 11:04:12 | ||||
* @LastEditors: JinxChen | * @LastEditors: JinxChen | ||||
* @LastEditTime: 2023-02-26 15:02:53 | |||||
* @LastEditTime: 2023-04-28 09:16:24 | |||||
* @FilePath: \TelpoH5FrontendWeb\src\views\buy-record\index.vue | * @FilePath: \TelpoH5FrontendWeb\src\views\buy-record\index.vue | ||||
* @description: | * @description: | ||||
--> | --> | ||||
@@ -20,7 +20,7 @@ | |||||
<p>{{item.packageName}}</p> | <p>{{item.packageName}}</p> | ||||
</div> | </div> | ||||
<div class="bottom"> | <div class="bottom"> | ||||
<div class="btn-left"><span>{{new Date(item.orderTime).Format("yyyy-MM-dd hh:mm")}}</span></div> | |||||
<div class="btn-left"><span>{{item.orderTime}}</span></div> | |||||
<div class="btn-right"><span>{{item.packagePrice}}</span><span class="btn-price">元</span></div> | <div class="btn-right"><span>{{item.packagePrice}}</span><span class="btn-price">元</span></div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
@@ -95,7 +95,7 @@ export default { | |||||
onNavBack() { | onNavBack() { | ||||
this.$router.replace({ | this.$router.replace({ | ||||
name: "cardInfo", | name: "cardInfo", | ||||
query: { imei: this.$route.query.imei, iccid: this.$route.query.iccid, isShowMenu: true} | |||||
query: { imei: this.$route.query.imei, iccid: this.$route.query.iccid, isShowMenu: true, isHasCode: true} | |||||
}); | }); | ||||
}, | }, | ||||
// 复制订单号 | // 复制订单号 | ||||
@@ -156,6 +156,7 @@ export default { | |||||
} | } | ||||
} | } | ||||
.name { | .name { | ||||
text-align: left; | |||||
margin-top: 20px; | margin-top: 20px; | ||||
} | } | ||||
.bottom { | .bottom { | ||||
@@ -1,12 +1,12 @@ | |||||
<!-- | <!-- | ||||
* @Date: 2022-04-15 10:22:36 | * @Date: 2022-04-15 10:22:36 | ||||
* @LastEditors: JinxChen | * @LastEditors: JinxChen | ||||
* @LastEditTime: 2023-03-14 11:42:57 | |||||
* @LastEditTime: 2023-04-17 17:40:01 | |||||
* @FilePath: \TelpoH5FrontendWeb\src\views\card-info\index.vue | * @FilePath: \TelpoH5FrontendWeb\src\views\card-info\index.vue | ||||
* @description: | * @description: | ||||
--> | --> | ||||
<template> | <template> | ||||
<div class="card-info-container"> | |||||
<div class="card-info-container" v-show="isShowPage"> | |||||
<van-nav-bar title="话费查询" | <van-nav-bar title="话费查询" | ||||
:left-arrow="false" | :left-arrow="false" | ||||
:border="true"> | :border="true"> | ||||
@@ -74,6 +74,7 @@ import APIWx from "@/api/wx"; | |||||
import { APIPay } from "@/api/pay"; | import { APIPay } from "@/api/pay"; | ||||
import { isNotNull } from "@/utils/index"; | import { isNotNull } from "@/utils/index"; | ||||
import APICore from "@/api/core"; | import APICore from "@/api/core"; | ||||
import AppId from "@/config/appId"; | |||||
export default { | export default { | ||||
name:'cardInfo', | name:'cardInfo', | ||||
inject: ["reload"], | inject: ["reload"], | ||||
@@ -92,7 +93,8 @@ export default { | |||||
isUnicom: null, //是否是联通 | isUnicom: null, //是否是联通 | ||||
}, | }, | ||||
isShowMenu: this.$route.query.isShowMenu, | isShowMenu: this.$route.query.isShowMenu, | ||||
params: {} | |||||
params: {}, | |||||
isShowPage: false, //是否显示整个页面 | |||||
} | } | ||||
}, | }, | ||||
computed: { | computed: { | ||||
@@ -107,8 +109,10 @@ export default { | |||||
}, | }, | ||||
created() { | created() { | ||||
this.getAuth(); | this.getAuth(); | ||||
this.getToken(); | |||||
this.getParams(); | this.getParams(); | ||||
this.getCardInfo(); | this.getCardInfo(); | ||||
}, | }, | ||||
methods: { | methods: { | ||||
// 获取core token | // 获取core token | ||||
@@ -117,51 +121,78 @@ export default { | |||||
APICore.getAuth({ manufactorId: manufactorId }).then(res => { | APICore.getAuth({ manufactorId: manufactorId }).then(res => { | ||||
this.$store.commit("gatewayToken", res.data.data); | this.$store.commit("gatewayToken", res.data.data); | ||||
}); | }); | ||||
}, | |||||
// 获取token | |||||
getToken() { | |||||
let manufacturerNo = '9f166b07-ff83-4991-84dc-ca6ad4a6b95b'; | |||||
APIPay.getToken(manufacturerNo).then(res => { | |||||
console.log("token的数据", res.data) | |||||
let data = res.data; | |||||
if(data.code === 20000) { | |||||
this.$store.commit("token", data.token); | |||||
console.log("token的数据", localStorage.getItem('token')) | |||||
} | |||||
}) | |||||
}, | }, | ||||
// 获取url传过来的参数 | // 获取url传过来的参数 | ||||
getParams() { | getParams() { | ||||
let params = this.$route.query; | let params = this.$route.query; | ||||
if (params) { | if (params) { | ||||
this.params = {...params}; | |||||
let url = window.location.href.split("?code=")[1]; | let url = window.location.href.split("?code=")[1]; | ||||
if ( isNotNull(url) || window.location.href.indexOf("code") > -1) { | if ( isNotNull(url) || window.location.href.indexOf("code") > -1) { | ||||
let timeStamp = new Date().getTime(); | let timeStamp = new Date().getTime(); | ||||
let code = url.split("&")[0]; | let code = url.split("&")[0]; | ||||
if (isNotNull(code)) { | if (isNotNull(code)) { | ||||
this.$store.commit("wxAuthCode", `${code}`); | |||||
this.getOpenId(); | |||||
this.isShowPage = true; | |||||
if(!params.isHasCode) { | |||||
this.getOpenId(code); | |||||
} | |||||
} else { | |||||
this.$dialog({ | |||||
message: '系统繁忙,请重新进入' | |||||
}) | |||||
} | } | ||||
} else { | |||||
this.getWxCode(); | |||||
} | } | ||||
this.params = {...params}; | |||||
} | } | ||||
}, | |||||
getWxCode() { | |||||
let params = this.params; | |||||
let commonUrl = process.env.VUE_APP_BASE_API; | |||||
let redUrl = encodeURIComponent(`${commonUrl}/h5-frontendweb/#/cardInfo?imei=${params.imei}&iccid=${params.iccid}`); | |||||
let url = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${AppId}&redirect_uri=${redUrl}&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect`; | |||||
window.location.href = url; | |||||
}, | }, | ||||
// 根据code获取openId | // 根据code获取openId | ||||
getOpenId() { | |||||
let code = this.$store.getters.wxAuthCode; | |||||
getOpenId(code) { | |||||
let openId = this.$store.getters.openId; | let openId = this.$store.getters.openId; | ||||
if(isNotNull(openId)) { | |||||
console.log("已经存在openId"); | |||||
} else { | |||||
APIPay.getOpenId(code).then(res => { | |||||
let data= res.data; | |||||
if(data.code === 20000) { | |||||
this.$store.commit("openId", data.data.openId); | |||||
} | |||||
}) | |||||
} | |||||
APIPay.getOpenId(code).then(res => { | |||||
let data= res.data; | |||||
if(data.code === 20000) { | |||||
this.$store.commit("openId", data.data.openId); | |||||
}else if (data.state === false) { | |||||
console.log("token过期"); | |||||
this.getToken(); | |||||
this.getOpenId(this.code); | |||||
} | |||||
}) | |||||
}, | }, | ||||
//获取小台风物联网卡信息 | //获取小台风物联网卡信息 | ||||
getCardInfo() { | getCardInfo() { | ||||
if( !this.isShowPage ) {return} | |||||
this.$toast.loading({ message: '查询中...' }); | this.$toast.loading({ message: '查询中...' }); | ||||
let reqBody = { | let reqBody = { | ||||
imei: this.$route.query.imei, | imei: this.$route.query.imei, | ||||
iccid: '' || this.$route.query.iccid | |||||
iccid: this.$route.query.iccid || '' | |||||
} | } | ||||
APIWx.GetCardInfo(reqBody) | APIWx.GetCardInfo(reqBody) | ||||
.then(res => { | .then(res => { | ||||
let data = res.data; | let data = res.data; | ||||
if (data.stateCode === 1 ) { | if (data.stateCode === 1 ) { | ||||
let item = data.data; | let item = data.data; | ||||
this.setMeal.expireTime = this.$dayjs(item.expireTime).format("YYYY-MM-DD"); | |||||
this.setMeal.expireTime = item.expireTime == '' ? "": this.$dayjs(item.expireTime).format("YYYY-MM-DD"); | |||||
this.setMeal.residueVoiceData = item.availableVoiceData; | this.setMeal.residueVoiceData = item.availableVoiceData; | ||||
this.setMeal.residueFlow = item.availableData; | this.setMeal.residueFlow = item.availableData; | ||||
this.setMeal.cardState = item.cardState; | this.setMeal.cardState = item.cardState; | ||||
@@ -1,16 +1,16 @@ | |||||
<!-- | <!-- | ||||
* @Date: 2023-03-14 09:32:37 | * @Date: 2023-03-14 09:32:37 | ||||
* @LastEditors: JinxChen | * @LastEditors: JinxChen | ||||
* @LastEditTime: 2023-03-23 15:48:00 | |||||
* @LastEditTime: 2023-04-27 14:34:26 | |||||
* @FilePath: \TelpoH5FrontendWeb\src\views\package-buy\index.vue | * @FilePath: \TelpoH5FrontendWeb\src\views\package-buy\index.vue | ||||
* @description: | * @description: | ||||
--> | --> | ||||
<template> | <template> | ||||
<div class="package-buy-container"> | <div class="package-buy-container"> | ||||
<van-nav-bar :left-arrow="false" :border="true"> | |||||
<template #title> | |||||
<van-nav-bar :left-arrow="true" title="套餐订购" :border="true" @click-left="onNavBack"> | |||||
<!-- <template #title> | |||||
<h5 style="font-size: 16px">套餐订购</h5> | <h5 style="font-size: 16px">套餐订购</h5> | ||||
</template> | |||||
</template> --> | |||||
</van-nav-bar> | </van-nav-bar> | ||||
<!-- 套餐内容 --> | <!-- 套餐内容 --> | ||||
<div class="package-container"> | <div class="package-container"> | ||||
@@ -150,6 +150,12 @@ export default { | |||||
} | } | ||||
}, | }, | ||||
methods: { | methods: { | ||||
onNavBack() { | |||||
this.$router.replace({ | |||||
name: "cardInfo", | |||||
query: { imei: this.$route.query.imei, iccid: this.$route.query.iccid, isShowMenu: true, isHasCode: true} | |||||
}); | |||||
}, | |||||
// 获取core token | // 获取core token | ||||
getAuth() { | getAuth() { | ||||
let manufactorId = "5bf13062-a41e-4d00-ba14-1101aad12650"; | let manufactorId = "5bf13062-a41e-4d00-ba14-1101aad12650"; | ||||
@@ -292,14 +298,16 @@ export default { | |||||
wxPay(data, packageType) { | wxPay(data, packageType) { | ||||
let that = this; | let that = this; | ||||
const orderData = data; | const orderData = data; | ||||
console.log("orderData", orderData); | |||||
let reqBody = { | let reqBody = { | ||||
openId: this.$store.getters.openId, //openId | openId: this.$store.getters.openId, //openId | ||||
imei: that.$route.query.imei, //imei | imei: that.$route.query.imei, //imei | ||||
iccid: that.$route.query.iccid, | iccid: that.$route.query.iccid, | ||||
productId: orderData.packagesId, //套餐id | |||||
productId: orderData.payTypeList[0].productId, //套餐id | |||||
packageName: | packageName: | ||||
orderData.productModel + "," + orderData.packagesName, //套餐名字 | orderData.productModel + "," + orderData.packagesName, //套餐名字 | ||||
packagePayType: '1', //支付类型, 默认微信 | packagePayType: '1', //支付类型, 默认微信 | ||||
pkId: data.packagesCardId, | |||||
packageIssue: orderData.packageIssue, //分期 | packageIssue: orderData.packageIssue, //分期 | ||||
packagePrice: orderData.packagesPrice * 100 | packagePrice: orderData.packagesPrice * 100 | ||||
}; | }; | ||||
@@ -311,6 +319,11 @@ export default { | |||||
setTimeout(() => { | setTimeout(() => { | ||||
this.wxPay(orderData); | this.wxPay(orderData); | ||||
}, 1000); | }, 1000); | ||||
} else if ( res.data.code !== 0){ | |||||
return this.$dialog.confirm({ | |||||
message: `请反馈给一线人员,\n${res.data.message}`, | |||||
showCancelButton: false | |||||
}) | |||||
} | } | ||||
let wxData = res.data.data; | let wxData = res.data.data; | ||||
let outTradeNo = wxData.out_trade_no; | let outTradeNo = wxData.out_trade_no; | ||||
@@ -318,54 +331,75 @@ export default { | |||||
//this.checkWxPayResult(outTradeNo); | //this.checkWxPayResult(outTradeNo); | ||||
//this.closeTime(); | //this.closeTime(); | ||||
// 调起微信支付收银台 | // 调起微信支付收银台 | ||||
wx.chooseWXPay({ | |||||
timestamp: wxData.timeStamp, // 支付签名时间戳,注意微信 jssdk 中的所有使用 timestamp 字段均为小写。但最新版的支付后台生成签名使用的 timeStamp 字段名需大写其中的 S 字符 | |||||
nonceStr: wxData.nonceStr, // 支付签名随机串,不长于 32 位 | |||||
package: wxData.package, // 统一支付接口返回的prepay_id参数值,提交格式如:prepay_id=\*\*\*) | |||||
signType: wxData.signType, // 微信支付V3的传入 RSA ,微信支付V2的传入格式与V2统一下单的签名格式保持一致 | |||||
paySign: wxData.paySign, // 支付签名 | |||||
success: function(res) { | |||||
console.log("微信支付成功::", res); | |||||
if(packageType === 1) { | |||||
// 加油包不用跳转,直接提示支付成功 | |||||
that.$toast.success({ | |||||
message: '支付成功' | |||||
}); | |||||
} else { | |||||
// 套餐订购,跳转查询页面 | |||||
that.$router.replace({ | |||||
name: "payResult", | |||||
query: { | |||||
outTradeNo: that.outTradeNo, | |||||
price: that.price, | |||||
rechargeUrl: data.rechargeUrl, | |||||
iccid: that.$route.query.iccid, | |||||
isAdmin: that.$route.query.isAdmin || false, | |||||
serialNo: that.$route.query.imei, | |||||
issue: that.packageIssue | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
fail: err => { | |||||
console.log("支付出错了::", err); | |||||
that.$dialog.confirm({ | |||||
title: "支付失败", | |||||
message: "出错了,请您联系管理员" | |||||
}); | |||||
}, | |||||
cancel: function(err) { | |||||
// 用户取消支付 | |||||
that.$dialog.confirm({ | |||||
message: "您取消了支付" | |||||
}); | |||||
} | |||||
}); | |||||
this.onWxPay(wxData,packageType); | |||||
}) | }) | ||||
.catch(error => { | .catch(error => { | ||||
console.log("error", error); | console.log("error", error); | ||||
}) | }) | ||||
}, | }, | ||||
onWxPay(data,packageType) { | |||||
let that = this; | |||||
function onBridgeReady() { | |||||
WeixinJSBridge.invoke( | |||||
"getBrandWCPayRequest", | |||||
{ | |||||
appId: AppId, //公众号ID,由商户传入 | |||||
timeStamp: data.timeStamp, //时间戳,自1970年以来的秒数 | |||||
nonceStr: data.nonceStr, //随机串 | |||||
package: data.package, | |||||
signType: data.signType, //微信签名方式: | |||||
paySign: data.paySign //微信签名 | |||||
}, | |||||
function(res) { | |||||
if (res.err_msg == "get_brand_wcpay_request:ok") { | |||||
// 使用以上方式判断前端返回,微信团队郑重提示: | |||||
//res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。 | |||||
if(packageType === 1) { | |||||
// 加油包不用跳转,直接提示支付成功 | |||||
that.$toast.success({ | |||||
message: '支付成功' | |||||
}); | |||||
} else { | |||||
that.$router.replace({ | |||||
name: "payResult", | |||||
query: { | |||||
outTradeNo: that.outTradeNo, | |||||
price: that.price, | |||||
rechargeUrl: data.rechargeUrl, | |||||
iccid: that.$route.query.iccid, | |||||
isAdmin: that.$route.query.isAdmin || false, | |||||
serialNo: that.$route.query.imei, | |||||
issue: that.packageIssue | |||||
} | |||||
}); | |||||
} | |||||
} else { | |||||
that.$dialog.confirm({ | |||||
message: "您取消了支付", | |||||
showCancelButton: false | |||||
}); | |||||
} | |||||
} | |||||
); | |||||
} | |||||
if (typeof WeixinJSBridge == "undefined") { | |||||
if (document.addEventListener) { | |||||
document.addEventListener( | |||||
"WeixinJSBridgeReady", | |||||
onBridgeReady, | |||||
false | |||||
); | |||||
} else if (document.attachEvent) { | |||||
document.attachEvent("WeixinJSBridgeReady", onBridgeReady); | |||||
document.attachEvent( | |||||
"onWeixinJSBridgeReady", | |||||
onBridgeReady | |||||
); | |||||
} | |||||
} else { | |||||
onBridgeReady(); | |||||
} | |||||
}, | |||||
// 跳转到支付宝花呗外部链接 | // 跳转到支付宝花呗外部链接 | ||||
aliPay(data) { | aliPay(data) { | ||||
console.log("选择了支付宝::", data); | console.log("选择了支付宝::", data); | ||||
@@ -379,6 +413,7 @@ export default { | |||||
imei: that.$route.query.imei, //imei | imei: that.$route.query.imei, //imei | ||||
iccid: that.$route.query.iccid, | iccid: that.$route.query.iccid, | ||||
productId: this.payProductId, //套餐id | productId: this.payProductId, //套餐id | ||||
pkId: data.packagesCardId, | |||||
packageName: /* data.productModel + ',' + */data.packagesName, //套餐名字 | packageName: /* data.productModel + ',' + */data.packagesName, //套餐名字 | ||||
packagePayType: Number(this.payType), //支付类型 | packagePayType: Number(this.payType), //支付类型 | ||||
packageIssue: this.packageIssue, //分期 | packageIssue: this.packageIssue, //分期 | ||||
@@ -428,8 +463,6 @@ export default { | |||||
}, | }, | ||||
}, | }, | ||||
created() { | created() { | ||||
/* this.getAuth(); */ | |||||
this.getWxAutograph(); | |||||
// 套餐列表 | // 套餐列表 | ||||
this.getDevicePayPackage(); | this.getDevicePayPackage(); | ||||
}, | }, | ||||
@@ -1,7 +1,7 @@ | |||||
<!-- | <!-- | ||||
* @Date: 2023-02-24 14:18:25 | * @Date: 2023-02-24 14:18:25 | ||||
* @LastEditors: JinxChen | * @LastEditors: JinxChen | ||||
* @LastEditTime: 2023-04-15 13:53:30 | |||||
* @LastEditTime: 2023-04-17 16:34:52 | |||||
* @FilePath: \TelpoH5FrontendWeb\src\views\package-home\index.vue | * @FilePath: \TelpoH5FrontendWeb\src\views\package-home\index.vue | ||||
* @description: | * @description: | ||||
--> | --> | ||||
@@ -110,13 +110,16 @@ export default { | |||||
// todo 暂时去掉 | // todo 暂时去掉 | ||||
if(this.isRecharge) { | if(this.isRecharge) { | ||||
// 如果是已经支付,但未激活,跳转激活界面 | // 如果是已经支付,但未激活,跳转激活界面 | ||||
this.$router.replace({ | |||||
/* this.$router.replace({ | |||||
name: 'cardActive', | name: 'cardActive', | ||||
query: { | query: { | ||||
imei: params.imei, | imei: params.imei, | ||||
iccid: params.iccid | iccid: params.iccid | ||||
} | } | ||||
}) | |||||
}) */ | |||||
let redUrl = encodeURIComponent(`${commonUrl}/h5-frontendweb/#/cardInfo?imei=${params.imei}&iccid=${params.iccid}`); | |||||
let url = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${AppId}&redirect_uri=${redUrl}&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect`; | |||||
window.location.href = url; | |||||
} else { | } else { | ||||
let redUrl = encodeURIComponent(`${commonUrl}/h5-frontendweb/#/${params.routerName}?imei=${params.imei}&iccid=${params.iccid}`); | let redUrl = encodeURIComponent(`${commonUrl}/h5-frontendweb/#/${params.routerName}?imei=${params.imei}&iccid=${params.iccid}`); | ||||
let url = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${AppId}&redirect_uri=${redUrl}&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect`; | let url = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${AppId}&redirect_uri=${redUrl}&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect`; | ||||
@@ -1,7 +1,7 @@ | |||||
<!-- | <!-- | ||||
* @Date: 2022-03-29 16:57:58 | * @Date: 2022-03-29 16:57:58 | ||||
* @LastEditors: JinxChen | * @LastEditors: JinxChen | ||||
* @LastEditTime: 2023-04-14 10:25:19 | |||||
* @LastEditTime: 2023-04-19 15:38:05 | |||||
* @FilePath: \TelpoH5FrontendWeb\src\views\package-list\index.vue | * @FilePath: \TelpoH5FrontendWeb\src\views\package-list\index.vue | ||||
* @description: TODO 小台风充值h5 | * @description: TODO 小台风充值h5 | ||||
--> | --> | ||||
@@ -351,6 +351,7 @@ export default { | |||||
packageName: /* data.productModel */ data.packagesName, //套餐名字 | packageName: /* data.productModel */ data.packagesName, //套餐名字 | ||||
packagePayType: Number(this.payType), //支付类型 | packagePayType: Number(this.payType), //支付类型 | ||||
packageIssue: 0, //分期 | packageIssue: 0, //分期 | ||||
pkId: data.packagesCardId, | |||||
packagePrice: process.env.NODE_ENV === "production" ? data.packagesPrice * 100 : 1 //总金额单位为分,测试环境写死 | packagePrice: process.env.NODE_ENV === "production" ? data.packagesPrice * 100 : 1 //总金额单位为分,测试环境写死 | ||||
}; | }; | ||||
this.$toast.clear(); | this.$toast.clear(); | ||||
@@ -509,6 +510,7 @@ export default { | |||||
productId: this.payProductId, //套餐id | productId: this.payProductId, //套餐id | ||||
packageName: /* data.productModel + ',' + */data.packagesName, //套餐名字 | packageName: /* data.productModel + ',' + */data.packagesName, //套餐名字 | ||||
packagePayType: Number(this.payType), //支付类型 | packagePayType: Number(this.payType), //支付类型 | ||||
pkId: data.packagesCardId, | |||||
packageIssue: this.packageIssue, //分期 | packageIssue: this.packageIssue, //分期 | ||||
packagePrice: process.env.NODE_ENV === "production" ? data.packagesPrice * 100 : 1 //总金额单位为分,测试环境写死 | packagePrice: process.env.NODE_ENV === "production" ? data.packagesPrice * 100 : 1 //总金额单位为分,测试环境写死 | ||||
}; | }; | ||||