618活动修改

This commit is contained in:
liuyuan
2025-06-12 17:09:54 +08:00
parent 100eea9147
commit 5ecf2dc1fa
15 changed files with 210 additions and 153 deletions

View File

@@ -6,7 +6,7 @@ if (process.env.NODE_ENV === 'development') {
baseUrl = "https://api.nuttyreading.com/"; // 线上正式
} else if (process.env.NODE_ENV === 'production') {
// 生产环境11
// baseUrl = "http://192.168.110.100:9200/pb/"; // 张川川
//baseUrl = "http://192.168.110.100:9200/pb/"; // 张川川
baseUrl = "https://api.nuttyreading.com/"; //1
}
const courtConfig = {
@@ -37,7 +37,7 @@ const courtConfig = {
//手机号验证正则表达式
// (中国大陆)
// const phoneRegular = /^1\d{10}$/;
const phoneRegular = /^1([358][0-9]|4[579]|66|7[0135678]|9[89])\d{8}$/;
const phoneRegular = /^1(3[0-9]|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/;
// const phoneRegular = /^[1][3-8]\d{9}$|^([6|9])\d{7}$|^[0][9]\d{8}$|^[6]([8|6])\d{5}$/;
// 手机号码验证 支持港澳台 大陆
// const phoneRegular = /^[1][3-8]\d{9}$|^([6|9])\d{7}$|^[0][9]\d{8}$|^[6]([8|6])\d{5}$|^(00){0,1}(65){1}[13689]\d{6,7}$/;

View File

@@ -31,11 +31,9 @@ Vue.prototype.$commonJS = commonJS
import http from '@/config/requestConfig.js';
Vue.prototype.$http = http
// 地址
// Vue.prototype.$baseUrl = "https://testapi.nuttyreading.com/"
// Vue.prototype.$baseUrl = "http://192.168.110.100:9200/pb/"
// Vue.prototype.$baseUrl = "http://59.110.212.44:9100/pb/"
//Vue.prototype.$baseUrl = "http://192.168.110.100:9200/pb/"
Vue.prototype.$baseUrl = "https://api.nuttyreading.com/"
// Vue.prototype.$baseUrl = "http://101.201.146.165:8088/App-EH/"//app
// 安卓安卓包下载地址
// Vue.prototype.$apkUrl = "https://www.nuttyreading.com/nuttyreading.apk" // 本地地址
Vue.prototype.$apkUrl = "https://a.app.qq.com/o/simple.jsp?pkgname=com.cn.zmzm" // 应用宝

View File

@@ -12,8 +12,8 @@
"src" : "图片路径"
}
],
"versionName" : "1.0.40",
"versionCode" : 1040,
"versionName" : "1.0.41",
"versionCode" : 1041,
"app-plus" : {
"nvueCompiler" : "weex",
"compatible" : {

View File

@@ -2404,7 +2404,7 @@ export default {
width: auto !important;
}
.highlight {
color: $uni-color-primary;
color: $themeColor;
}
.tanchu {
padding: 40rpx 30rpx 40rpx 30rpx;

View File

@@ -36,8 +36,9 @@
<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

@@ -81,11 +81,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

@@ -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

@@ -1431,6 +1431,6 @@ export default {
}
.highlight {
color: $uni-color-primary;
color: $themeColor;
}
</style>

View File

@@ -72,87 +72,18 @@
}`"
>
<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"
@@ -273,7 +204,6 @@ export default {
// 隐藏原生的tabbar
uni.hideTabBar();
this.getData();
// this.getCourpe();
},
components: {
musicPlay,
@@ -343,12 +273,6 @@ export default {
this.cardList = res.couponVos;
});
},
// 切换优惠券
couponTabCLi(e) {
this.couponListTab = e;
this.getCourpe();
},
// 充值天医币
buPoint() {
uni.navigateTo({
@@ -460,15 +384,16 @@ export default {
width: 100%;
font-size: 28rpx;
margin-top: 20rpx;
margin-bottom: 15rpx;
// white-space: nowrap;
color: #888;
float: left;
display: inline-block;
}
.AC_note {
color: #888;
font-size: 26rpx;
}
.AC_time {
color: #bababa;
font-size: 28rpx;
font-size: 26rpx;
}
}
}

View File

@@ -45,10 +45,9 @@
>
<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>
>
<view class="AC_mark" v-if="slotProps.row.remark">{{slotProps.row.remark}}</view>
<view class="AC_time">{{ slotProps.row.createTime }}</view>
</view>
</template>
</common-list>

View File

@@ -25,11 +25,19 @@
"
>
<view class="pr_jg">{{ item.realMoney }}</view>
<view class="pr_yl">{{ item.money }} 天医币</view>
<view class="pr_lj">限时特惠</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 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>
@@ -94,8 +102,6 @@
</view>
<view class="char_btn">
<view @click="goToPay">立即充值</view>
<!-- <view @click="iosPay" >立即充值</view> -->
</view>
</view>
<!-- 充值协议 -->
@@ -176,6 +182,8 @@ export default {
urlList: {
list: "common/bookBuyConfig/getBookBuyConfigList",
},
limitVal: '',
activityContent: {}
};
},
//第一次加载
@@ -192,6 +200,8 @@ export default {
this.chargeOrderSn = options.orderSn;
uni.hideTabBar();
this.getDevName();
this.getActivity();
// console.log(e.orderSn,'orderSn')
},
//页面显示
@@ -536,7 +546,7 @@ export default {
// 点击充值金额
chosPric(e) {
this.stepsCj = e;
console.log(e);
this.limitVal = '';
},
// 选择支付方式1
@@ -544,7 +554,28 @@ export default {
let that = this;
that.payType = e;
},
//获取活动文案
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();
@@ -558,6 +589,31 @@ export default {
});
return false;
}
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({
@@ -809,7 +865,6 @@ export default {
.cj_title {
font-size: 46rpx;
color: $themeColor;
// font-weight: bold;
}
.cj_xiang {
@@ -821,30 +876,43 @@ export default {
width: 47%;
margin: 0 5% 30rpx 0;
text-align: center;
padding: 20rpx;
padding: 30rpx 0 0;
border-radius: 15rpx;
position: relative;
color: #2d2d2d;
height: 160rpx;
.pr_jg {
font-size: 45rpx;
margin: 20rpx 0 10rpx 0;
font-weight: bold;
}
.pr_yl {
padding-top: 10rpx;
font-size: 26rpx;
// text-decoration: line-through;
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, #3ab3ae 0%, $themeColor 100%);
background-image: linear-gradient(180deg, #3ab3ae 0%, #77c9c6 100%);
color: #fff;
position: absolute;
top: -30rpx;
right: -20rpx;
top: -22rpx;
right: -22rpx;
font-size: 24rpx;
line-height: 20px;
padding: 5rpx 10rpx;
border-top-left-radius: 20rpx;
border-bottom-right-radius: 20rpx;
@@ -856,17 +924,18 @@ export default {
}
.Tab_cj {
// box-shadow: 0 0 20rpx 0 #fe700bcc;
box-shadow: 0px 0px 3px 0px $themeColor !important;
color: #259f9a;
background: #b7e0e2 !important;
box-shadow: 0px 0px 5px 0px $themeColor !important;
color: $themeColor;
.pr_yl{
color: $themeColor;
}
}
}
}
.highlight {
color: $uni-color-primary;
color: $themeColor;
}
.cha_fangsh {
@@ -911,22 +980,23 @@ export default {
}
.char_btn {
position: fixed;
left: 0;
right: 0;
bottom: 30rpx;
width: 100%;
background: #fff;
padding: 20rpx 0;
position: fixed;
right: 0;
bottom: 0;
view {
background-image: linear-gradient(90deg, #3ab3ae 0%, $themeColor 100%);
color: #fff;
width: 90%;
margin: 0 auto;
text-align: center;
font-size: 35rpx;
font-weight: bold;
padding: 25rpx 0;
border-radius: 50rpx;
}
view {
background: $themeBgColor;
color: #fff;
width: 90%;
margin: 0 auto;
text-align: center;
font-size: 30rpx;
padding: 20rpx 0;
border-radius: 50rpx;
}
}
.pay_item_img {
@@ -943,4 +1013,62 @@ export default {
.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(58, 179, 174, 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

@@ -1,7 +1,7 @@
@charset "utf-8";
//主题色
$themeColor: #3AB3AE;
$themeBgColor: #EDF6F5 !important;
$themeColor: #3ab3ae;
$themeBgColor: #3ab3ae !important;
$containerColor: #f4f7ff;
$imgBg: #edf3ff;
@keyframes example1 {

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