This commit is contained in:
liuyuan
2025-04-21 09:14:33 +08:00
23 changed files with 14254 additions and 12237 deletions

View File

@@ -10,8 +10,8 @@
"sizes": "分辨率192x192",
"src": "图片路径"
}],
"versionName": "1.0.37",
"versionCode": 1037,
"versionName": "1.0.39",
"versionCode": 1039,
"app-plus": {
"nvueCompiler": "weex",
"compatible": {

View File

@@ -10,7 +10,7 @@
>
<u-icon
name="map-fill"
color="#3AB3AE"
class="themeColor"
size="23"
style="display: inline-block; margin-right: 10rpx"
></u-icon>
@@ -246,7 +246,7 @@
v-if="v.type == 4 && initData.user.jf > 0"
>
<view class="jf_box">
<text style="color: #3AB3AE; font-weight: 600"
<text class="themeColor" style="font-weight: 600"
>可用积分({{ jfNumberMax }})</text
>
<view class="jf_input">
@@ -285,7 +285,8 @@
<template v-if="v.type == 4">
<text> {{ v.text }}</text>
<text
style="color: #3AB3AE; font-weight: 600; margin-left: 10rpx"
class="themeColor"
style="font-weight: 600; margin-left: 10rpx"
>
(余额{{
initData && initData.user ? initData.user.peanutCoin : 0
@@ -300,7 +301,7 @@
<radio
v-if="i == 2"
:value="v.value"
color="#3AB3AE"
:color="themeColor"
:checked="selectPayIndex == i ? true : false"
@click="radioChange(i)"
size="10"
@@ -309,7 +310,7 @@
<template v-else>
<radio
:value="v.value"
color="#3AB3AE"
:color="themeColor"
:checked="selectPayIndex == i ? true : false"
@click="radioChange(i)"
size="10"
@@ -332,7 +333,7 @@
<view class="linlanzhifu">
<u-icon
name="error-circle"
color="#3AB3AE"
class="themeColor"
size="20"
style="display: inline-block; margin-right: 10rpx"
></u-icon>
@@ -363,16 +364,16 @@
支付时使用的信用卡需要带有Visa或MasterCard的标识请向邮箱
<text
@click="fnCopy('publisher@tmrjournals.com', '邮箱')"
class="aui-text-success"
style="text-decoration: underline; color: #3AB3AE"
class="aui-text-success themeColor"
style="text-decoration: underline"
>
publisher@tmrjournals.com
</text>
点击复制发送支付请求内容需包含拟购买的课程名称支付金额APP注册姓名及手机号码或者加一路健康客服微信
<text
class="aui-text-success"
class="aui-text-success themeColor"
@click="fnCopy('yilujiankangkefu', '微信名')"
style="text-decoration: underline; color: #3AB3AE"
style="text-decoration: underline"
>
yilujiankangkefu </text
>点击复制联系我们我们将在24小时内向您的邮箱或者微信发送支付链接根据提示即可完成信用卡支付无需兑换外币
@@ -424,6 +425,28 @@
</view>
</template>
</common-goods-nav>
<view
class="agree_wo"
style="background-color: #fff"
v-if="pageType == 'vip'"
>
<radio-group class="agree">
<view v-for="(item, index) in argee" :key="index">
<radio
class="agreeRadio"
:value="item.id"
:checked="item.id == radioValue"
color="#7dc1f0"
@click="radioCheck(index)"
></radio>
</view>
</radio-group>
<view
>* 我已阅读并同意<span class="highlight" @click="showXieyi"
>会员服务协议</span
></view
>
</view>
</view>
<u-popup :show="show" mode="right">
@@ -482,10 +505,19 @@
@confirmCoupon="confirmCoupon"
@close="closeCoupon"
></order-coupon>
<u-popup :show="xieyiShow" :round="10" @close="xieyiShow = false">
<view class="tanchu">
<view class="dp_title">{{ xieyi.title }}</view>
<view style="max-height: 1000rpx; overflow-y: scroll">
<view v-html="xieyi.content"></view>
</view>
</view>
</u-popup>
</view>
</template>
<script>
var themeColor='#3ab3ae';
import orderCoupon from "@/components/orderCoupon.vue";
import courseDescription from "@/pages/component/commonComponents/list";
import { setPay, setPayAssign, setWXPay } from "@/config/utils";
@@ -502,6 +534,7 @@ export default {
"priceKey",
"initData",
"urlList",
"isHideJf",
],
components: {
courseDescription, //课程说明
@@ -556,6 +589,15 @@ export default {
},
data() {
return {
appName: "zmzm",
come: 1,
argee: [{ value: false, id: "1" }], // 同意权限
radioValue: "",
xieyi: {
title: "",
content: "",
},
xieyiShow: false,
vipPrice: 0,
districtAmount: 0,
historyOrderInfo: undefined, //上一个订单的参数
@@ -602,10 +644,11 @@ export default {
curriculumData: {},
curriculumInfo: {},
detailInfo: {},
themeColor:themeColor,
fdButtonStyle: {
width: "120rpx",
"border-color": "#3AB3AE",
color: "#3AB3AE",
"border-color": themeColor,
color: themeColor,
float: "right",
"margin-right": "20rpx",
"margin-left": "30rpx",
@@ -664,7 +707,7 @@ export default {
{
width: "200rpx",
text: "立即支付",
backgroundColor: "linear-gradient(90deg, #3AB3AE 0%,#3AB3AE 100%)",
backgroundColor: `linear-gradient(90deg, ${themeColor} 0%,${themeColor} 100%)`,
color: "#fff",
},
],
@@ -672,7 +715,7 @@ export default {
{
with: 200,
text: "确定",
backgroundColor: "linear-gradient(90deg, #3AB3AE 0%,#3AB3AE 100%)",
backgroundColor: `linear-gradient(90deg, ${themeColor} 0%,${themeColor} 100%)`,
color: "#fff",
},
],
@@ -744,6 +787,30 @@ export default {
...mapState(["userInfo"]),
},
methods: {
radioCheck(index) {
this.argee.forEach((item) => {
item.isCheck = false;
});
if (this.radioValue == this.argee[index].id) {
this.radioValue = null;
} else {
this.radioValue = this.argee[index].id;
}
},
//会员协议
async showXieyi() {
var data = await this.$commonJS.getAgreement(105);
if (data.content) {
data.content = data.content.replace(
/<h5>/g,
'<view style="font-weight: bold;font-size: 32rpx;margin-top: 20rpx;margin-bottom: 20rpx;">'
);
data.content = data.content.replace(/<\/h5>/g, "</view>");
}
this.xieyi = data;
this.xieyiShow = true;
},
async getGoodsList() {
//获取商品信息
// await this.getGoodsDataInfo();
@@ -1069,7 +1136,7 @@ export default {
}
this.isShowAddress = !this.isHideAddress;
if (!this.isShowAddress) {
if (!this.isShowAddress&&this.initData.user.jf>0) {
this.priceBreakdownList.push({
text: "积分",
imgUrl: require("@/static/icon/jifen.png"),
@@ -1268,6 +1335,16 @@ export default {
}
},
async goBuyJie() {
if (this.pageType == "vip") {
if (this.radioValue != "1") {
uni.showToast({
title: "请勾选 已阅读会员服务协议",
icon: "none",
});
return false;
}
}
if (this.buyingFlag) {
uni.showToast({
title: "操作太频繁了,休息下吧",
@@ -1281,6 +1358,7 @@ export default {
setTimeout(() => {
this.nowClick = true;
}, 5000);
let xiaBiao = [];
let data = {};
@@ -1303,7 +1381,7 @@ export default {
remark: this.goodsDataList
.map((e) => e.productId + "," + e.productName)
.join(","), //productId,商品名
come: "2",
come: this.come,
};
} else if (this.pageType == "vip") {
data = {
@@ -1313,7 +1391,7 @@ export default {
shippingMoney: 0, //运费
jfDeduction: this.jfNumber,
vipBuyConfigId: this.goodsDataList[0].id,
come: 2, //订单来源0疯子读书1国学众妙之门2医学吴门医述
come: this.come, //订单来源0疯子读书1国学众妙之门2医学吴门医述
};
} else {
if (this.options.goods[0].goodsType != "05") {
@@ -1355,8 +1433,8 @@ export default {
orderType: "order", //订单类型
addressId:
this.options.goods[0].goodsType != "05" ? this.addressData.id : 0, // 地址ID
appName: "wumen",
come: "2",
appName: this.appName,
come: this.come,
};
var productList = [...data.productList];
var thisproduct = productList.map((item) => {
@@ -2071,7 +2149,7 @@ export default {
border-color: #e6e6e6;
border-left-color: transparent;
border-style: solid;
// background-color: #3AB3AE;
// background-color: #258feb;
border-top-right-radius: 10rpx;
border-bottom-right-radius: 10rpx;
@@ -2259,6 +2337,8 @@ export default {
}
.popup_box {
padding: 20rpx;
box-sizing: border-box;
.curriulum_title_box {
.title {
text-align: center;
@@ -2308,4 +2388,37 @@ export default {
justify-content: center;
align-items: center;
}
.agree_wo {
display: flex;
align-items: center;
justify-content: flex-end;
color: #aaa;
line-height: 30rpx;
font-size: 28rpx;
padding: 10rpx 10rpx 20rpx 0;
}
.agreeRadio {
zoom: 0.8;
}
.agree {
width: auto !important;
}
.highlight {
color: $uni-color-primary;
}
.tanchu {
padding: 40rpx 30rpx 40rpx 30rpx;
position: relative;
.dp_title {
font-size: 32rpx;
margin-bottom: 50rpx;
color: #555;
text-align: center;
font-weight: bold;
}
}
.themeColor {
color: $themeColor;
}
</style>

View File

@@ -315,12 +315,13 @@
this.$forceUpdate();
},
onHandleClickBuy(e) {
console.log('e at line 317:', e)
var mynavData = JSON.stringify({
goods: [this.selectGoodsData],
typeId: 0,
navTitle: this.options.navTitle,
title: this.options.title,
navTitle: '',
title: '',
sourceType: "curriculum",
isFudu: this.isFudu,
fuduId: this.fuduId

View File

@@ -7,6 +7,7 @@
<common-order-submit
v-if="showOrder"
:options="options"
:urlList="urlList"
:initData="initData"
:priceKey="priceKey"
@@ -260,15 +261,18 @@ export default {
for (const item of data) {
// Check if vcbList exists and loop through each item in vcbList
if (item.vcbList) {
this.isHideJf=true
const vcbItem = item.vcbList.find((vcb) => vcb.id === id);
if (vcbItem) {
return vcbItem; // Return the matching item
return {...vcbItem,}; // Return the matching item
}
}
if (item.yanqiList) {
this.isHideJf=false
const vcbItem = item.yanqiList.find((vcb) => vcb.id === id);
if (vcbItem) {
return vcbItem; // Return the matching item
return {...vcbItem,}; // Return the matching item
}
}
}
@@ -291,6 +295,7 @@ export default {
this.goodsDataList = res.productList.filter(
(e) => this.options.goods[0].productName == e.productName
);
});
},
@@ -307,6 +312,9 @@ export default {
.then(async (res) => {
console.log("res at line 846:", res);
var data = await this.findById(this.options.goods[0].id, res.res);
if(this.isHideJf){
this.initData.user.jf=0;
}
console.log("data at line 200:", data);
this.goodsDataList = [
{

View File

@@ -199,6 +199,7 @@ export default {
}); // 这里转换成 字符串
console.log('mynavData at line 192:', mynavData)
this.$refs.commonSelectGoods.close();
uni.navigateTo({
url: `/pages/goods/order/index?data=${mynavData}`,
});

View File

@@ -517,7 +517,7 @@ export default {
shippingMoney: 0, //运费
jfDeduction: this.jfNumber, //积分抵扣
vipBuyConfigId: this.dataInfo.id,
come: 2, //订单来源0疯子读书1国学众妙之门2医学吴门医
come: 1, //订单来源0疯子读书1国学众妙之门2医学吴门医
paymentMethod: this.payType, //1微信2支付宝3苹果支付4虚拟币
orderMoney: this.dataInfo.lastFee, //订单金额

View File

@@ -58,6 +58,7 @@
:dataList="MoneyRecord"
isCondition="true"
isNoIcon="true"
@hancleClick="goClick"
label="orderType"
>
<template slot="labelSlot" slot-scope="slotProps">
@@ -278,7 +279,17 @@ export default {
musicPlay,
},
//方法
methods: {
methods: {goClick(data){
if(data.relationId){
uni.navigateTo({
url: "/pages/bookShop/orderLCont?orderId=" +
data.relationId
});
}
},
// 获取
getData() {
var data = {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.