618活动修改

This commit is contained in:
liuyuan
2025-06-12 17:08:34 +08:00
parent 29b2a8b206
commit e0556ef0fd
11 changed files with 219 additions and 197 deletions

View File

@@ -36,8 +36,11 @@
<text class="font_bold" style=" display: block;" v-if="item.type==1||item.type==2">超级VIP权限</text>
<text class="font_bold" style=" display: block;" v-else>VIP权限</text>
<view class="vip_qx_v" v-if="item.type==1">无限制观看吴门医述APP中医学中西汇通学针灸学肿瘤学四个板块任意课程</view>
<view class="vip_qx_v" v-else-if="item.type==2">无限制观看众妙之门APP与吴门医述APP心理学板块任意课程</view>
<view class="vip_qx_v" v-else-if="item.type==2">无限制观看众妙之门APP与心灵空间APP任意课程</view>
<view class="vip_qx_v" v-else-if="item.type==7">无限制观看众妙之门APP任意课程</view>
<view class="vip_qx_v" v-else-if="item.type == 8"
>无限制观看心灵空间APP任意课程</view
>
<view class="vip_qx_v" v-else>无限制观看吴门医述APP{{item.title.replace(/VIP/g, '')}}板块任意课程</view>
<view class="vip_qx_v">

View File

@@ -91,11 +91,14 @@
>无限制观看吴门医述APP中医学中西汇通学针灸学肿瘤学四个板块任意课程</view
>
<view class="vip_qx_v" v-else-if="item.type == 2"
>无限制观看众妙之门APP与吴门医述APP心理学板块任意课程</view
>无限制观看众妙之门APP与心灵空间APP任意课程</view
>
<view class="vip_qx_v" v-else-if="item.type == 7"
>无限制观看众妙之门APP任意课程</view
>
<view class="vip_qx_v" v-else-if="item.type == 8"
>无限制观看心灵空间APP任意课程</view
>
<view class="vip_qx_v" v-else
>无限制观看吴门医述APP{{
item.title.replace(/VIP/g, "")

View File

@@ -22,7 +22,7 @@
>
</u-alert>
<view class="ACTable">
<view class="ACTable" style=" background: #eff5f8;">
<!-- <u-tabs :list="tab_list" @click="tab_click" lineColor="#54a966 100% 100%"
:activeStyle="{color: '#303133',fontWeight: 'bold',transform: 'scale(1.1)'}" ></u-tabs> -->
@@ -40,7 +40,7 @@
>充值</text
> -->
</view>
<view style="padding: 0 30rpx; padding-top: 0">
<view style="padding: 0 20rpx; padding-top: 0">
<view
class="AC_chong"
@click="onPageJump('/pages/mine/wallet/recharge/index')"
@@ -59,7 +59,7 @@
></image> -->
</view>
</view>
<view style="padding: 30rpx; padding-top: 0">
<view style="padding: 0 20rpx;">
<view class="AC_con">
<view class="AC_jilu PM_font">充值消费记录</view>
<common-list
@@ -81,87 +81,17 @@
}`"
>
<text v-if="slotProps.row.changeAmount > 0">+</text>
<text>{{ slotProps.row.changeAmount }}</text> </view
><view class="AC_mark" v-if="slotProps.row.remark">{{
slotProps.row.remark
}}</view
><view class="AC_time">{{ slotProps.row.createTime }}</view>
<text>{{ slotProps.row.changeAmount }}</text> </view>
<view class="AC_mark" v-if="slotProps.row.remark">{{slotProps.row.remark}}</view>
<view class="AC_note" v-if="slotProps.row.note&&slotProps.row.note!='null'">说明{{slotProps.row.note}}</view>
<view class="AC_time">{{ slotProps.row.createTime }}</view>
</view>
</template>
</common-list>
</view>
</view>
</view>
<!-- <view v-if="tab_muJian==1">
<view class="couponList">
<view v-for="(item,index) in couponTabs" @click="couponTabCLi(index)"
:class="couponListTab==index?'couStyle':''">{{item.name}}</view>
</view>
<view>
<view class="card" v-for="item in cardList">
<view>
<view class="content">
<view :class="couponListTab==0?'page-group':'page-group grey'">
<i class="fold-page"></i>
<span class="page">优惠券</span>
</view>
<i class="dot-left"></i>
<i class="dot-right"></i>
<view class="coupon-detail">
<view :class="couponListTab==0?'':'grey'">
<span></span>
<span>{{item.coupons.amount}}</span>
</view>
<view>
<view>{{item.coupons.couponName}}</view>
<view>{{item.coupons.useLevel}}元可用</view>
<view>
<span v-if="item.coupons.couponProType == 0">使用类型商品类</span>
<span v-if="item.coupons.couponProType == 1">使用类型电子书</span>
</view>
</view>
<view>
<view v-if="couponListTab==0" @click="onPageJump('../bookShop/bookShopIndex')">
立即使用</view>
</view>
</view>
</view>
<view class="footer">
<view style="margin: 0 0 8rpx 0;">使用时间{{item.coupons.takeEffectDate}} -
{{item.coupons.expirationDate}}
</view>
<view>{{item.coupons.note}}</view>
<view class="arrow"></view>
<view class="arrow-up"></view>
</view>
<view class="ribbon" v-if="couponListTab==0">未使用</view>
<view class="ribbon grey" v-if="couponListTab==1">已使用</view>
<view class="ribbon grey" v-if="couponListTab==2">已过期</view>
</view>
</view>
<view v-if="cardList.length==0" style="text-align: center;font-size: 30rpx;color: #666;">暂无代金券
</view>
</view>
</view> -->
<!-- <view>
<view v-if="status == 0" style="text-align: center">
<u-loading-icon style="display: inline-block"></u-loading-icon>
<font
style="
vertical-align: super;
margin-left: 10px;
font-size: 26rpx;
color: #909399;
"
>努力加载中</font
>
</view>
<view v-if="status == 1">
<u-divider text="全部加载完成"></u-divider>
</view>
</view> -->
<view style="padding-bottom: 20rpx">
<u-back-top
:scroll-top="scrollTop"
@@ -281,7 +211,6 @@ export default {
// 隐藏原生的tabbar
uni.hideTabBar();
this.getData();
// this.getCourpe();
},
components: {
musicPlay,
@@ -337,27 +266,6 @@ export default {
tab_click(e) {
this.tab_muJian = e.index;
},
// 优惠券
getCourpe() {
this.$http
.post(
"/book/couponhistory/appGetUserCenterCoupon?userId=" +
this.userInfo.id +
"&useStatus=" +
this.couponListTab
)
.then((res) => {
// this.cardList = res.couponVos
this.cardList = res.couponVos;
});
},
// 切换优惠券
couponTabCLi(e) {
this.couponListTab = e;
this.getCourpe();
},
// 充值天医币
buPoint() {
uni.navigateTo({
@@ -413,11 +321,9 @@ export default {
.AC_con {
background-color: #fff;
overflow: hidden;
// margin-top: 50rpx;
// padding: 30rpx 30rpx;
box-shadow: 0 0px 10px 1px #d3d1d133;
border-radius: 15rpx;
border-radius: 0 0 15rpx 15rpx;
margin-bottom: 40rpx;
font-size: 30rpx;
padding-bottom: 30rpx;
@@ -470,10 +376,13 @@ export default {
color: #888;
display: inline-block;
}
.AC_note {
color: #888;
font-size: 26rpx;
}
.AC_time {
color: #bababa;
font-size: 28rpx;
font-size: 26rpx;
display: inline-block;
}
}

View File

@@ -2,7 +2,7 @@
<view class="commonPageBox" style="height: 100vh">
<!-- 公共组件-每个页面必须引入 -->
<public-module></public-module>
<z-nav-bar title="我的积分" bgColor="" fontColor="#000000"> </z-nav-bar>
<z-nav-bar title="我的积分" bgColor="#258feb" fontColor="#fff"> </z-nav-bar>
<view class="ACTable">
<!-- <u-tabs :list="tab_list" @click="tab_click" lineColor="#54a966 100% 100%"
:activeStyle="{color: '#303133',fontWeight: 'bold',transform: 'scale(1.1)'}" ></u-tabs> -->
@@ -44,11 +44,8 @@
>
<text v-if="slotProps.row.changeAmount > 0">+</text>
<text>{{ slotProps.row.changeAmount }}</text>
</view
><view class="AC_mark" v-if="slotProps.row.remark">{{
slotProps.row.remark
}}</view
>
</view>
<view class="AC_mark" v-if="slotProps.row.remark">{{slotProps.row.remark}}</view>
</view>
<!-- <text class="order" style="font-size: 12px;" v-if="slotProps.row.relationId" @click="goClick(slotProps.row.relationId)">订单详情</text> -->
</template>
@@ -334,7 +331,7 @@ export default {
<style lang="scss" scoped>
@import "@/style/mixin.scss";
.commonPageBox {
background-color: #dbeff9;
background-color: #eff5f8;
// background-image: url("@/static/icon/mine_bg.png");
// background-repeat: no-repeat;
// background-size: 100% 100%;

View File

@@ -7,7 +7,7 @@
<view>
<view class="cha_jine">
<view class="cj_title PM_font">充值金额
<view class="cf_title PM_font">充值金额
</view>
@@ -17,33 +17,25 @@
? 'Tab_cj cj_price'
: 'cj_price'
">
<view
class="pr_jg"
style="display: flex; align-items: center; justify-content: center"
>
<image
src="@/static/icon/currency.png"
alt=""
style="width: 40rpx; height: 40rpx; margin-right: 10rpx"
/>
{{ item.money }}
</view>
<view class="pr_yl" style="color: #565455"
>{{ item.realMoney }}</view
>
<view class="pr_lj" v-if="item.description&&item.description!=''"
> {{item.description}}</view
>
<view
class="pr_jg"
style="display: flex; align-items: center; justify-content: center; font-size:44rpx;"
>
{{ item.realMoney }}
</view>
<view class="pr_yl" :style="item.givejf&&item.givejf>0?' paddingTop: 0':''">{{ item.money }}天医币<text v-if="item.givejf&&item.givejf>0">{{ item.givejf }}积分</text></view>
<view class="pr_lj" v-if="item.description&&item.description!=''">{{item.description}}</view>
</view>
<br clear="both" />
</view>
<view
><text style="font-size: 24rpx; color: #8e8e8e; font-weight: 500"
>说明 : 天医币属于虚拟产品一经购买概不退还</text
></view
>
<view class="limitBlock" v-if="isAndroid">
<text>其他金额</text>
<input type="text" v-model="limitVal" placeholder="请输入充值金额" placeholder-class="limit-placeholder" @input="input()" />
</view>
<view>
<text style="font-size: 24rpx; color: #8e8e8e;">说明 : 天医币属于虚拟产品一经购买概不退还</text>
</view>
<view class="active_block" v-if="isAndroid&&activityContent.remark" v-html="activityContent.remark"></view>
</view>
<view class="cha_fangsh">
<view class="cf_title PM_font">支付方式</view>
@@ -85,8 +77,6 @@
</view>
<view class="char_btn">
<view @click="goToPay">立即充值</view>
<!-- <view @click="iosPay" >立即充值</view> -->
</view>
</view>
<!-- 充值协议 -->
@@ -174,6 +164,8 @@
urlList: {
list: "common/bookBuyConfig/getBookBuyConfigList",
},
limitVal: '',
activityContent: {}
};
},
//第一次加载
@@ -187,6 +179,8 @@
} else {
this.payType = 1;
}
this.getActivity();
},
//页面显示
onShow() {
@@ -528,7 +522,7 @@
// 点击充值金额
chosPric(e) {
this.stepsCj = e;
console.log(e);
this.limitVal = '';
},
// 选择支付方式1
@@ -544,12 +538,59 @@
// 3.请求并创建新的订单
this.iphonepay();
},
//获取活动文案
getActivity(){
$http.request({
url: "common/bookBuyConfig/getRechargeActivity",
method: "POST",
data: {},
header: {
"Content-Type": "application/json",
},
})
.then((data) => {
if(data.code==0){
if(data.res&&data.res.length>0){
this.activityContent = data.res[0];
}
}
})
},
//输入金额
input(val){
this.stepsCj = {};
},
// 充值
goToPay() {
this.kaiChar();
},
// 正常充值
kaiChar() {
if(!this.stepsCj.priceTypeId&&!this.limitVal){
uni.showToast({
title: "请选择充值商品",
icon: "none",
});
return false;
}
const regex = /^[1-9]\d*$/;
//如果输入其他金额
if(this.limitVal){
if(!regex.test(this.limitVal)){
uni.showToast({
title: "充值金额必须为正整数",
icon: "none",
});
return false;
}
//设置充值金额和id
this.stepsCj = {
money: this.limitVal,
priceTypeId: 0
}
}
// 常规充值
if (this.radioValue == "1") {
uni.showLoading({
@@ -792,7 +833,7 @@
}
.cha_jine {
margin: 40rpx 30rpx 0 30rpx;
margin: 40rpx 30rpx 20rpx 30rpx;
.cj_title {
font-size: 36rpx;
@@ -803,57 +844,65 @@
margin-top: 40rpx;
.cj_price {
border: 4rpx solid #ebebeb;
// box-shadow: 0 0 20rpx 0 #0000001a;
box-shadow: 0 0 20rpx 0 #0000001a;
float: left;
width: 31%;
margin: 0 3% 30rpx 0;
text-align: center;
padding: 25rpx 0 30rpx 0;
width: 47%;
margin: 0 5% 30rpx 0;
text-align: center;
padding: 30rpx 0 0;
border-radius: 15rpx;
position: relative;
color: #2d2d2d;
height: 160rpx;
.pr_jg {
font-size: 38rpx;
margin: 0rpx 0 10rpx 0;
font-weight: bold;
}
.pr_yl {
font-size: 28rpx;
// text-decoration: line-through;
padding-top: 10rpx;
font-size: 26rpx;
color: #575555;
text{
width: 100%;
text-align: center;
line-height: 40rpx;
position: absolute;
left: 0;
bottom: 10rpx;
color: red;
display: block;
font-size: 24rpx;
}
}
.pr_lj {
background-image: linear-gradient(90deg, #258feb 0%, $themeColor 100%);
background-image: linear-gradient(180deg, #258feb 0%, #abcbfb 100%);
color: #fff;
position: absolute;
top: -22rpx;
right: -22rpx;
font-size: 24rpx;
padding: 5rpx 4rpx;
border-top-left-radius: 20rpx;
border-bottom-right-radius: 20rpx;
right: -22rpx;
font-size: 24rpx;
line-height: 20px;
padding: 5rpx 10rpx;
border-top-left-radius: 20rpx;
border-bottom-right-radius: 20rpx;
}
}
.cj_price:nth-child(3n) {
.cj_price:nth-child(2n) {
margin-right: 0;
}
.Tab_cj {
// box-shadow: 0 0 20rpx 0 #fe700bcc;
box-shadow: 0px 0px 3px 0px $themeColor !important;
border: 4rpx solid $themeColor;
color: #258feb;
background: #e3f7ff !important;
box-shadow: 0px 0px 5px 0px $themeColor !important;
color: $themeColor;
.pr_yl {
color: #258feb !important;
}
.pr_yl{
color: $themeColor;
}
}
}
}
@@ -861,15 +910,15 @@
.highlight {
color: $uni-color-primary;
}
.cf_title {
font-size: 46rpx;
color: $themeColor;
}
.cha_fangsh {
padding: 40rpx 30rpx;
.cf_title {
font-size: 46rpx;
color: $themeColor;
}
.cf_radio {
margin-top: 20rpx;
@@ -904,10 +953,12 @@
}
.char_btn {
width: 100%;
background: #fff;
padding: 20rpx 0;
position: fixed;
left: 0;
right: 0;
bottom: 30rpx;
bottom: 0;
view {
background-image: linear-gradient(90deg, #258feb 0%, $themeColor 100%);
@@ -915,9 +966,8 @@
width: 90%;
margin: 0 auto;
text-align: center;
font-size: 35rpx;
font-weight: bold;
padding: 25rpx 0;
font-size: 30rpx;
padding: 20rpx 0;
border-radius: 50rpx;
}
}
@@ -936,4 +986,62 @@
.commonPageBox {
background-color: #fff !important;
}
.limitBlock{
display: flex;
align-items: center;
margin-bottom: 10rpx;
text{
font-size: 28rpx;
}
input{
display: inline-block;
margin-left: 20rpx;
width: 300rpx;
height: 70rpx;
border: 1rpx solid #ededed;
border-radius: 10rpx;
line-height: 40rpx;
padding: 20rpx;
font-size: 28rpx;
color: #666;
}
}
.limit-placeholder{
font-size: 25rpx;
color: #8b8c90 !important;
}
.active_block{
width: 100%;
background-color: rgba(37, 143, 235, 0.2);
border-radius: 10rpx;
padding: 10rpx 20rpx;
font-size: 28rpx;
line-height: 42rpx;
margin-top: 15rpx;
color: #333;
}
/deep/.active_block span{
color: red;
font-size: 32rpx;
font-weight: bold;
padding: 0 5rpx;
}
/deep/.active_block span:first-child{
padding: 0 5rpx 0 0;
}
/deep/.active_block p{
padding-top: 10rpx;
color: #666;
font-size: 24rpx;
line-height: 34rpx;
}
/deep/.active_block p span{
padding: 0 5rpx !important;
}
</style>

View File

@@ -50,16 +50,16 @@
</view>
<view class="optionsBox">
<view :class="['item','border_radius_10',
item.rightWrong == 1 ? 'right' : '',
checkAnswer(item.id) && item.rightWrong == 0 ? 'wrong' : '',
checkAnswer(item.id) && item.rightWrong == 1 ? 'right' : ''
item.right_wrong == 1 ? 'right' : '',
checkAnswer(item.id) && item.right_wrong == 0 ? 'wrong' : '',
checkAnswer(item.id) && item.right_wrong == 1 ? 'right' : ''
]"
v-for="(item, index) in curQuestion.options" :key="index">
<!-- {{checkAnswer(item.id) ? '包含' : '不包含'}} -->
<view class="flex_box flex_between">
<text>{{item.content}}</text>
<text
v-if="checkAnswer(item.id)">{{item.rightWrong == 1 ? '正确':'错误'}}</text>
v-if="checkAnswer(item.id)">{{item.right_wrong == 1 ? '正确':'错误'}}</text>
</view>
</view>
@@ -236,6 +236,8 @@ checkAnswer(id){
})
this.questionList = subOptions
console.log('this.questionListthis.questionListthis.questionList', this.questionList)
this.testPaper = res.examPaper
console.log('试卷信息', this.testPaper);
this.answerIdsList = JSON.parse(res.examPaper.answer)