更新项目,ios打包

This commit is contained in:
liuyuan
2025-03-17 17:00:10 +08:00
parent efb76a1716
commit 896f897014
27 changed files with 1147 additions and 237 deletions

View File

@@ -1,6 +1,6 @@
<template>
<view style="width: 100%; height: 100%">
<scroll-view @scrolltolower="lower" scroll-y="true" class="scroll-Y" v-if="dataList.length > 0">
<scroll-view @scrolltolower="lower" scroll-y="true" class="scroll-Y" v-if="dataList.length > 0">
<view
@click="gotoDetail(item)"
class="scroll-view-item list_item"

View File

@@ -1,83 +1,105 @@
<template>
<view class="commonPageBox commonDetailPage" style="height: auto !important;padding-bottom: 0 !important;">
<u-popup :show="show" mode="bottom" @close="close" class="popup_box">
<view class="popup_top">
<view class="product_image">
<image
:src="selectGoodsData.productImages"
mode="aspectFit"
class="goods_image"
></image>
</view>
<view class="title">已选{{ selectGoodsData.productName }}</view>
</view>
<view :class="`common_radius_box goods_box popup_content`">
<view class="title title_box"
><text class="title_price">{{ selectGoodsData.activityPrice?selectGoodsData.activityPrice:selectGoodsData.price }}</text
>
<u-icon
name="close"
color="#333"
size="18"
@click="close"
style="display: inline-block"
></u-icon
></view>
<view class="title title_list"
><text>商品列表{{ goodsList.length }}</text></view
>
<common-list
imgUrl="url"
isNoIcon
imgMode="aspectFit"
defaultUrl=""
:isCondition="true"
:dataList="goodsList"
@hancleClick="selectGoods"
label="title"
>
<template slot="labelSlot" slot-scope="slotProps">
<!-- isSelectGoods -->
<view
class="related_courses_name"
:class="`goods_item ${
selectGoodsData &&
selectGoodsData.productId == slotProps.row.productId
? 'isSelectGoods color_shandow'
: ''
}`"
>
<view class="image_box" style="margin-right: 10rpx">
<image
:src="slotProps.row.productImages"
mode="aspectFit"
class="goods_image"
></image>
</view>
<view :class="`goods_info `">
<view class="name">{{ slotProps.row.productName }}</view>
<view class="price" style=" color: #333;">
{{ slotProps.row.activityPrice?slotProps.row.activityPrice:slotProps.row.price }}</view>
<view class="commonPageBox commonDetailPage" style="height: auto !important;padding-bottom: 0 !important;">
<u-popup :show="show" mode="bottom" @close="close" class="popup_box">
<view class="popup_top">
<view class="product_image">
<image
:src="selectGoodsData.productImages"
mode="aspectFit"
class="goods_image"
></image>
</view>
</view>
</template>
</common-list>
<view class="title">已选{{ selectGoodsData.productName }}</view>
</view>
<view class="goods_nav_box">
<uni-goods-nav
:fill="true"
:options="buyOptions"
:button-group="customButtonGroup1"
@click="onHandleClickBuy"
@buttonClick="onHandleClickBuy"
/>
</view>
</view>
</u-popup></view
>
<view :class="`common_radius_box goods_box popup_content`">
<view class="title title_box">
<view class="title_price" v-if="selectGoodsData.isVipPrice==1&&selectGoodsData.vipPrice!=null&&selectGoodsData.vipPrice!=0">
{{selectGoodsData.vipPrice}}
<text style=" font-weight: normal; padding-left: 15rpx; font-size: 26rpx;">VIP到手价</text>
</view>
<view class="title_price" v-else-if="selectGoodsData.activityPrice&&selectGoodsData.activityPrice>0">
{{selectGoodsData.activityPrice}}
<text style=" font-weight: normal; padding-left: 15rpx; font-size: 26rpx; color: #999;">活动价</text>
</view>
<text class="title_price" v-else>
{{selectGoodsData.price}}
</text>
<u-icon
name="close"
color="#333"
size="18"
@click="close"
style="display: inline-block"
></u-icon>
</view>
<view class="title title_list">
<text>商品列表{{ goodsList.length }}</text>
</view>
<common-list
imgUrl="url"
isNoIcon
imgMode="aspectFit"
defaultUrl=""
:isCondition="true"
:dataList="goodsList"
@hancleClick="selectGoods"
label="title"
>
<template slot="labelSlot" slot-scope="slotProps">
<!-- isSelectGoods -->
<view
class="related_courses_name"
:class="`goods_item ${
selectGoodsData &&
selectGoodsData.productId == slotProps.row.productId
? 'isSelectGoods color_shandow'
: ''
}`"
>
<view class="image_box" style="margin-right: 10rpx">
<image
:src="slotProps.row.productImages"
mode="aspectFit"
class="goods_image"></image>
</view>
<view :class="`goods_info `">
<view class="name">{{ slotProps.row.productName }}</view>
<view class="price">
<view class="goods_price" v-if="slotProps.row.isVipPrice==1&&slotProps.row.vipPrice!=null&&slotProps.row.vipPrice!=0">
{{slotProps.row.vipPrice}}
<text class="line_text">{{slotProps.row.price}}</text>
</view>
<view class="goods_price" v-else-if="slotProps.row.activityPrice&&slotProps.row.activityPrice>0">
{{slotProps.row.activityPrice}}
<text class="line_text">{{slotProps.row.price}}</text>
</view>
<text v-else>
{{slotProps.row.price}}
</text>
<text class="goods_text" v-if="slotProps.row.isVipPrice==1&&slotProps.row.vipPrice!=null&&slotProps.row.vipPrice!=0">
VIP优惠
</text>
</view>
</view>
</view>
</template>
</common-list>
<view class="goods_nav_box">
<uni-goods-nav
:fill="true"
:options="buyOptions"
:button-group="customButtonGroup1"
@click="onHandleClickBuy"
@buttonClick="onHandleClickBuy"
/>
</view>
</view>
</u-popup>
</view>
</template>
<script>
@@ -177,9 +199,6 @@ export default {
.goods_info {
width: calc(100%);
box-sizing: border-box;
display: flex;
align-items: center;
justify-content: space-between;
float: left;
.name {
font-size: 26rpx;
@@ -188,6 +207,8 @@ export default {
.price {
font-size: 26rpx;
color: #aaa;
display: flex;
align-items: center;
}
}
.isSelectGoods {
@@ -298,4 +319,19 @@ export default {
font-weight: 700;
}
}
.line_text{
text-decoration: line-through;
font-size: 24rpx;
padding: 0 20rpx;
color: #999;
}
.goods_price{
color: #ff1f00;
font-weight: bold;
}
.goods_text{
font-size: 22rpx;
color: #ff1f00;
font-weight: bold;
}
</style>

View File

@@ -237,8 +237,6 @@ export default {
});
},
openVideo(data) {
console.log("data at line 380:", data.type);
var mynavData = JSON.stringify(data); // 这里转换成 字符串
if (data.type == 0) {
//视频云点播

View File

@@ -28,7 +28,7 @@
<view class="list_block" v-if="!statusXLCP" :style="labelsList.length>0&&childrenList.length==0?`marginTop: ${45 + statusBarHeight}px;`:''">
<view class="list_item" v-if="list.length>0" v-for="(item,index) in list" :key="index" @click.stop="goToDetail(item)">
<view class="list_item_image">
<image v-if="item.image" :src="item.image" mode="aspectFit"></image>
<image v-if="item.squareImage" :src="item.squareImage" mode="aspectFit"></image>
<text class="image_null" v-else>暂无封面图</text>
</view>
<view class="list_item_right">
@@ -450,8 +450,8 @@ export default {
border-radius: 10rpx;
}
.list_item_image,.image_null{
width: 250rpx;
height: 220rpx;
width: 240rpx;
height: 240rpx;
background-color: rgba(125, 193, 240, 0.1);
display: flex;
justify-content: center;

View File

@@ -320,6 +320,8 @@
role = '国学';
}else if(type==8){
role = '心理学';
}else if(type==9){
role = '中西汇通学';
}
this.goBuyTitle = '尊贵的'+role+'VIP您的有效期到'+res.userVip.endTime;
this.goBuyType = 1;
@@ -358,6 +360,8 @@
text = '国学';
}else if(item=='8'){
text = '心理学';
}else if(item=='9'){
text = '中西汇通学';
}
this.textList.push(text);
});
@@ -1270,6 +1274,9 @@
padding-bottom: 10rpx;
color: #333;
}
/deep/ .prof img{
width: 100%;
}
.containerBg1 {
background: #fff;

View File

@@ -153,16 +153,27 @@
</span>
<span>¥</span>{{ orderContet.shippingMoney }}
</view>
<view class="orderReal" v-if="orderContet.orderType == 'order'&&orderContet.vipDiscountAmount&&orderContet.vipDiscountAmount>0">
<span style="color: red; margin-right: 10rpx; float: left;">VIP专享立减 :
</span>
<span style=" color: red;">-¥{{orderContet.vipDiscountAmount}}</span>
</view>
<view class="orderReal" v-if="orderContet.orderType == 'order'&&orderContet.districtMoney&&orderContet.districtMoney>0">
<span style="color: red; margin-right: 10rpx; float: left;">活动立减 :
</span>
<span style=" color: red;">-¥{{orderContet.districtMoney}}</span>
</view>
<view class="orderReal" v-if="orderContet.orderType == 'order'">
<span style="color: #666; margin-right: 10rpx; float: left">积分 :
</span>
<span v-if="orderContet.jfDeduction > 0">-</span> <span>¥</span>{{ orderContet.jfDeduction }}
</view>
<view class="orderReal" v-if="orderContet.orderStatus != 0">
<span style="color: #666; margin-right: 10rpx; float: left">
实付款 :
</span>
<b style="color: #dd3c0c"><span>¥</span>{{ orderContet.realMoney }}</b>
<b style="color: red;"><span>¥</span>{{ orderContet.realMoney }}</b>
</view>
<view class="orderReal" v-if="orderContet.remark">
<span style="color: #666; margin-right: 10rpx; float: left">
@@ -563,7 +574,7 @@ export default {
let that = this;
for (var i = 0; i < e.file.length; i++) {
uni.uploadFile({
url: this.$baseUrl + "oss/fileoss",
url: this.$baseUrl + "/oss/fileoss",
filePath: e.file[i].url,
name: "file",
formData: {},

View File

@@ -13,30 +13,45 @@
<view class="goods_box">
<view class="curriulum_title_box">
<view v-if="this.options.isMiaosha == 1" class="miaosha_box">
<view class="price_box">
<view class="price_box"
v-if="curriculumData.isVipPrice==1&&curriculumData.vipPrice!=null&&curriculumData.vipPrice!=0
||curriculumData.activityPrice && curriculumData.activityPrice > 0">
<view class="price_left">
<template v-if="
curriculumData.activityPrice &&
curriculumData.activityPrice > 0
">
<template v-if="curriculumData.isVipPrice==1&&curriculumData.vipPrice!=null&&curriculumData.vipPrice!=0">
<text class="aui-text-danger price">
¥{{ curriculumData.vipPrice }}
</text>
<text class="price original_price">¥{{ curriculumData.price }}
</text>
</template>
<template v-else>
<text class="aui-text-danger price">
¥{{ curriculumData.activityPrice }}
</text>
<text class="price original_price">原价:¥{{ curriculumData.price }}
</text>
</template>
<template v-else>
<text class="aui-text-danger price">
¥{{ curriculumData.price }}
</text>
</template>
<view class="price original_price sales_number">已售 {{ curriculumData.sumSales }}件
</view>
</view>
<view class="xianshimaiosha_box">
<text class="xianshimaiosha">秒杀商品</text>
<text class="xianshimaiosha"
v-if="curriculumData.isVipPrice==1&&curriculumData.vipPrice!=null&&curriculumData.vipPrice!=0">
VIP优惠
</text>
<text class="xianshimaiosha" v-else-if="curriculumData.activityPrice && curriculumData.activityPrice > 0">活动立减</text>
</view>
</view>
<view class="putong" v-else>
<template>
<text class="aui-text-danger price">
¥{{ curriculumData.price }}
</text>
</template>
<view class="price original_price sales_number">已售 {{ curriculumData.sumSales }}件
</view>
</view>
@@ -424,8 +439,6 @@
productImages: this.selectGoodsData.productImages,
productId: this.selectGoodsData.productId,
productName: this.selectGoodsData.productName,
price: this.selectGoodsData.activityPrice ?
this.selectGoodsData.activityPrice : this.selectGoodsData.price,
goodsType: this.selectGoodsData.goodsType,
}],
navTitle: this.options.navTitle,
@@ -796,15 +809,12 @@
background-color: #fff;
.curriulum_title {
padding: 0 30rpx;
width: calc(100%);
font-weight: 600;
font-size: 34rpx;
// line-height: 40rpx;
// display: flex;
// align-items: center;
margin-top: 80rpx;
margin-bottom: 0rpx;
// padding: 20rpx;
font-size: 38rpx;
margin-top: 40rpx;
margin-bottom: 30rpx;
box-sizing: border-box;
}
}
@@ -816,10 +826,6 @@
box-sizing: border-box;
}
/deep/.titleItem {
// width: calc(100% - 120rpx) !important;
}
/deep/.scroll-view-item:nth-child(2n-1) {
background-color: transparent !important;
}
@@ -957,12 +963,12 @@
.original_price {
font-size: 28rpx !important;
font-weight: 500;
color: #999 !important;
font-weight: normal;
white-space: nowrap;
text-decoration: line-through;
float: left;
margin-top: 6rpx;
margin-left: 20rpx;
}
.price {
@@ -970,7 +976,6 @@
font-weight: 700;
float: left;
margin-right: 10rpx;
// font-family: PangMenZhengDaoBiaoTiTiMianFeiBan;
}
.price_box {
@@ -1009,13 +1014,6 @@
color: #fff !important;
}
.original_price {
color: #e4dede !important;
font-weight: 500;
margin-left: 20rpx;
font-size: 26rpx !important;
}
.sales_number {
display: block;
width: 100%;
@@ -1028,12 +1026,6 @@
padding: 30rpx 20rpx 30rpx;
background: linear-gradient(to right, #ff2701, #fd8d024d);
// height: 100rpx;
}
.curriulum_title {
padding: 20rpx 40rpx;
margin-top: 20rpx !important;
}
}
@@ -1279,4 +1271,10 @@
display: block;
}
}
.putong{
padding: 30rpx 30rpx 0 30rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
</style>

View File

@@ -26,23 +26,31 @@
</view>
<view class="order_top common_radius_box color_shandow goods_box">
<view class="curriulum_title_box goods_item" v-for="(v, i) in goodsDataList">
<view class="curriulum_title_box goods_item" style=" position: relative;" v-for="(v, i) in goodsDataList">
<text class="goods_item_vip" v-if="v.isVipPrice==1&&v.vipPrice!=null&&v.vipPrice!=0">VIP优惠</text>
<image class="goods_item_img" :src="v.productImages" mode="aspectFit">
</image>
<view class="normal_box">
<view class="normal_box_top" style="justify-content: space-between">
<view class="normal_box_top">
<view class="curriulum_title">{{ v.productName }} </view>
<view class="price_box">
<text class="price" v-if="v.activityPrice&&v.activityPrice>0" style="margin-right: 0">
{{ v.activityPrice }}
<view class="vip_price" v-if="v.isVipPrice==1&&v.vipPrice!=null&&v.vipPrice!=0">
<text class="vip_price_jg">{{ v.vipPrice }}</text>
<text class="vip_price_text">VIP到手价</text>
<text class="vip_price_line">{{ v.price }}</text>
</view>
<text class="price" v-else-if="v.activityPrice&&v.activityPrice>0">
<text class="vip_price_jg">{{ v.activityPrice }}</text>
<text class="vip_price_text">活动价</text>
<text class="vip_price_line">{{ v.price }}</text>
</text>
<text v-else>{{ v.price }}</text>
<view>
x 1
</view>
</view>
</view>
<view style="width: 100%; text-align: right">
x 1
</view>
</view>
</view>
<view class="pay_box" style="margin-top: 20rpx">
@@ -81,7 +89,7 @@
<u-icon v-if="v.icon" name="map-fill" color="#018F89" size="20"
style="display: inline-block"></u-icon>
<text> {{ v.text }}</text>
<text :class="v.type==5||v.type==6?'type_text_red':''">{{ v.text }}</text>
<template v-if="v.type == 3">
<text style="color: #aaa; margin-left: 10rpx">
(全部积分{{ initData.user.jf }})</text>
@@ -96,6 +104,9 @@
<template v-if="v.type == 3">
<text style="color: #fe6035"> -{{ jfNumberShow }}</text>
</template>
<template v-if="v.type == 5||v.type == 6">
<text class="type_text_red">-{{districtAmount}}</text>
</template>
</view>
</view>
@@ -129,7 +140,7 @@
<text v-else> {{ v.text }}</text>
</view>
<template v-if="isDefaultCurrency">
<radio v-if="i == 2" :value="v.value" color="#7dc1f0"
<radio :value="v.value" color="#7dc1f0"
:checked="selectPayIndex == i ? true : false" @click="radioChange(i)" size="10" />
</template>
<template v-else>
@@ -342,7 +353,7 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
scrollViewHeight: 0,
urlList: {
list: "app/phone.do?getCourseDetail_new",
initPrepareOrder: "/common/buyOrder/initPrepareOrder",
initPrepareOrder: "common/buyOrder/initPrepareOrder",
buyOrder: "book/buyOrder/placeOrder",
curriculumInfo: "app/phone.do?getCourseInfo",
detailInfo: "app/phoneDoctor.do?getTaiHuClassInfo_new",
@@ -361,13 +372,15 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
backgroundColor: "linear-gradient(90deg, #294a97 0%, #7dc1f0 80%)",
color: "#fff",
}, ],
//立减金额
districtAmount: 0,
orderNumber: 1, //商品数量
};
},
async onLoad(options) {
var that = this;
var mynavData = uni.getStorageSync('mynavData');
this.options = mynavData;
this.goodsDataList = this.options.goods;
if (this.options.sourceType == "curriculum") {
this.goToInfo = {
url: "/pages/curriculum/index/index",
@@ -379,7 +392,7 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
type: 1,
};
}
that.initPrepareOrder();
that.getData();
},
async onShow() {
var that = this;
@@ -392,13 +405,12 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
consigneePhone: data.consigneePhone,
};
that.$forceUpdate();
that.getUserAddress();
} else {
}
});
if (that.$platform == "ios") {
if (platform == "ios") {
that.payList = [
{
text: "天医币",
@@ -438,6 +450,88 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
...mapState(["userInfo"]),
},
methods: {
//获取数据
async getData(){
this.$http.request({
url: 'book/buyOrder/getShopProductListByIds',
method: "POST",
data: {
productIds: this.options.goods[0].productId.toString()
},
header: {
"Content-Type": "application/json",
},
})
.then(async (res) => {
if (res.code == 0) {
this.goodsDataList = res.shopProductList;
//请求VIP还是活动的逻辑
if(this.goodsDataList[0].isVipPrice==1&&
this.goodsDataList[0].vipPrice!=null&&
this.goodsDataList[0].vipPrice!=0){
await this.getVipDiscountAmount();
}else if(this.goodsDataList[0].activityPrice&&
this.goodsDataList[0].activityPrice>0){
await this.getDistrictAmount();
}else{
await this.initPrepareOrder();
}
}
});
},
//VIP立减
async getVipDiscountAmount(){
let data = [];
this.goodsDataList.forEach((item, index) => {
data.push({
productId: item.productId,
quantity: this.orderNumber,
});
});
this.$http.request({
url: 'book/buyOrder/getVipDiscountAmount',
method: "POST",
data: {
productList: data
},
header: {
"Content-Type": "application/json",
},
})
.then(async (res) => {
if (res.code == 0) {
this.districtAmount = res.discountAmount;
await this.initPrepareOrder();
}
});
},
//活动立减
async getDistrictAmount(){
let data = [];
this.goodsDataList.forEach((item, index) => {
data.push({
productId: item.productId,
quantity: this.orderNumber,
});
});
this.$http.request({
url: 'book/buyOrder/getDistrictAmount',
method: "POST",
data: {
productList: data
},
header: {
"Content-Type": "application/json",
},
})
.then(async (res) => {
if (res.code == 0) {
this.districtAmount = res.districtAmount;
await this.initPrepareOrder();
}
});
},
handleChangejf(val) {
var value = val;
this.$nextTick(() => {
@@ -454,7 +548,7 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
this.jfNumberShow = this.jfNumber.toFixed(2);
}
this.actualPayment = this.totalPrice - this.jfNumber + this.freightNum;
this.actualPayment = this.totalPrice - this.jfNumber -this.districtAmount + this.freightNum;
if (this.actualPayment == 0) {
this.isDefaultCurrency = true;
@@ -492,12 +586,28 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
type: 2,
},
];
//如果是vip
if(this.goodsDataList[0].activityPrice&&this.goodsDataList[0].activityPrice>0){
this.priceBreakdownList.push({
text: "活动立减",
imgUrl: "",
type: 5,
})
}
//如果是vip
if(this.goodsDataList[0].isVipPrice==1&&this.goodsDataList[0].vipPrice!=null&&this.goodsDataList[0].vipPrice!=0){
this.priceBreakdownList.push({
text: "VIP专享立减",
imgUrl: "",
type: 6,
})
}
var data = {
uid: this.userInfo.id,
productList: this.goodsDataList.map((e) => {
return {
productId: this.goodsDataList[0].productId,
quantity: 1,
quantity: this.orderNumber,
};
}),
};
@@ -594,7 +704,7 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
products: this.goodsDataList.map((e) => {
return {
productId: e.productId,
quantity: 1,
quantity: this.orderNumber,
};
}),
regionCode: this.addressData.regionCode,
@@ -625,39 +735,47 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
handleFresh() {
this.show = false;
},
getTotalPrice() {
//获取总金额
async getTotalPrice() {
var s = 0;
var that = this;
for (var i = this.goodsDataList.length - 1; i >= 0; i--) {
if(this.goodsDataList[i].activityPrice&&this.goodsDataList[i].activityPrice>0){
s += this.goodsDataList[i].activityPrice ? this.goodsDataList[i].activityPrice : 0;
}else{
s += this.goodsDataList[i].price ? this.goodsDataList[i].price : 0;
}
s += this.goodsDataList[i].price;
}
that.totalPrice = s;
that.totalPrice = s * that.orderNumber;
if (!this.isShowAddress) {
if (this.initData.user.jf >= that.totalPrice) {
this.jfNumber = that.totalPrice;
this.jfNumberMax = that.totalPrice;
this.jfNumber = that.totalPrice - that.districtAmount;
this.jfNumberMax = that.totalPrice - that.districtAmount;
} else {
this.jfNumber = this.initData.user.jf;
this.jfNumberMax = this.initData.user.jf;
}
if (that.jfNumber == 0 || that.jfNumber == null) {
that.jfNumberShow = "0.00";
that.actualPayment = that.totalPrice;
that.actualPayment = that.totalPrice - that.districtAmount;
} else {
that.jfNumberShow = that.jfNumber.toFixed(2);
that.actualPayment = that.totalPrice - that.jfNumber;
}
that.actualPayment = that.actualPayment + that.freightNum;
that.actualPayment = that.actualPayment + that.freightNum - that.districtAmount;
} else {
that.actualPayment = that.totalPrice + that.freightNum;
that.actualPayment = that.totalPrice + that.freightNum - that.districtAmount;
}
if (this.actualPayment == 0 && !this.isShowAddress) {
this.isDefaultCurrency = true;
this.payList = [
{
text: "天医币",
imgUrl: require("@/static/icon/pay_3.png"),
type: 4,
value: "2",
},
];
this.selectPayIndex = 0;
this.payType = 4;
} else {
this.isDefaultCurrency = false;
}
@@ -717,14 +835,13 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
shippingMoney: this.freightNum, //运费
remark: this.remark, //备注
couponId: null, //优惠券Id
// isSend: this.isSend,
couponName: "", //优惠券名称
districtMoney: 0, //优惠金额
districtMoney: 0, //活动
productList: this.goodsDataList.map((e) => {
return {
productId: e.productId,
quantity: 1,
quantity: this.orderNumber,
};
}), //订单列表商品
orderType: "order", //订单类型
@@ -732,6 +849,14 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
appName: "xlkj",
come: "3", //3心灵空间
}
if(this.goodsDataList[0].isVipPrice==1&&
this.goodsDataList[0].vipPrice!=null&&
this.goodsDataList[0].vipPrice!=0){
data.vipDiscountAmount = this.districtAmount; //vip
}else if(this.goodsDataList[0].activityPrice&&
this.goodsDataList[0].activityPrice>0){
data.districtMoney = this.districtAmount; //活动
}
await $http.request({
url: that.urlList.buyOrder,
@@ -851,7 +976,6 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
}
}
}
uni.removeStorageSync('mynavData');
});
}, 200);
@@ -957,7 +1081,6 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
.normal_box_top {
width: 100%;
display: flex;
height: 100rpx;
}
}
@@ -1031,7 +1154,6 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
font-weight: 500;
font-size: 30rpx;
margin-top: 10rpx;
float: left;
margin-bottom: 0rpx;
color: #333;
box-sizing: border-box;
@@ -1088,13 +1210,32 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
float: right;
margin-right: 10rpx;
color: #333;
// font-family: PangMenZhengDaoBiaoTiTiMianFeiBan;
}
.price_box {
.normal_box_top .price_box {
width: auto;
overflow: hidden;
margin-top: 10rpx;
margin-top: 20rpx;
display: flex;
align-items: center;
justify-content: space-between;
.vip_price_jg{
color: red;
font-weight: bold;
}
.vip_price_text{
color: red;
padding-left: 10rpx;
font-size: 24rpx;
font-weight: normal;
}
.vip_price_line{
color: #666;
text-decoration: line-through;
padding-left: 15rpx;
}
}
.commonTags {
@@ -1416,8 +1557,20 @@ import parse from "../../uni_modules/uview-ui/libs/config/props/parse";
.hasRemark {
color: #333 !important;
}
.bgGrey {
.goods_item_vip{
position: absolute;
left: 0px;
top: 0;
z-index: 99;
background: #ff1f00;
padding: 0 4px;
border-radius: 4px;
line-height: 18px;
font-size: 9px;
color: #fff;
}
.type_text_red{
color: red;
}
</style>

View File

@@ -8,33 +8,7 @@
<text class="curriculum_item_name">{{ item.name }}</text>
</view>
</view>
<!-- 应对华为审核去掉app跳转 -->
<view class="appJump" v-if="$platform=='android'">
<view class="app_item wumen" @click="appjumpfun('wumen')">
<view class="img">
<image src="@/static/logo_wumen.png" mode="widthFix"></image>
</view>
<view class="text">
<text>吴门医述</text>
</view>
</view>
<view class="app_item zmzm" @click="appjumpfun('zmzm')">
<view class="img">
<image src="@/static/logo_zmzm.png" mode="widthFix"></image>
</view>
<view class="text">
<text>众妙之门</text>
</view>
</view>
<view class="app_item fzds" @click="appjumpfun('nuttyreading')">
<view class="img">
<image src="@/static/logo_fzds.png" mode="widthFix"></image>
</view>
<view class="text">
<text>疯子读书</text>
</view>
</view>
</view>
<view class="cate_box">
<scroll-view scroll-x="true">
<view class="cate_list" v-if="cateList.length>0">
@@ -65,6 +39,7 @@
<view class="miaosha_list">
<view class="miaosha_item" @click="goGoodsDetail(v)"
v-for="(v, i) in seckillLst">
<text class="miaosha_youhui" v-if="v.isVipPrice==1&&v.vipPrice!=null&&v.vipPrice!=0">VIP优惠</text>
<image class="book_image" :src="v.productImages" mode="aspectFit"></image>
<view class="book_name">{{ v.productName }}</view>
</view>
@@ -152,12 +127,7 @@ export default {
name: "免费课程",
url: "/pages/curriculum/index/free",
imgUrl: require("@/static/icon/home_bg2.png")
},
{
name: "VIP情况",
url: "/pages/vip/index",
imgUrl: require("@/static/icon/home_bg3.png")
},
}
]
}else{
this.curriculumList = [
@@ -530,6 +500,7 @@ export default {
width: 180rpx;
margin-right: 20rpx;
text-align: center;
position: relative;
.book_image{
width: 180rpx;
@@ -588,7 +559,7 @@ export default {
background-color: rgba(125, 193, 240, 0.15);
display: block;
width: 100% !important;
height: 170rpx;
height: 180rpx;
}
}
}
@@ -645,4 +616,16 @@ export default {
}
}
}
.miaosha_youhui{
position: absolute;
left: 0rpx;
top: 0;
z-index: 99;
background: #ff1f00;
padding: 0 10rpx;
border-radius: 10rpx;
line-height: 38rpx;
font-size: 20rpx;
color: #fff;
}
</style>

View File

@@ -23,7 +23,6 @@
</view>
<view class="userInfoBox">
<view class="name">{{ userMes.nickname ? userMes.nickname : "未设置" }}</view>
<view class="phone" v-if="userMes.tel">手机号({{ userMes.tel }})</view>
<view class="vip_type" v-if="$platform=='android'&&textList.length>0">
<view class="vip_type_item" v-for="(item,index) in textList" :key="index">
{{item}}<image src="@/static/icon/chao_vip.png"></image>
@@ -320,6 +319,9 @@ export default {
}else if(item.type=='8'){
item.text = '心理学';
this.textList.push(item.text);
}else if(item.type=='9'){
item.text = '中西汇通学';
this.textList.push(item.text);
}else if(item.type=='1'){
item.text = '医学S';
}else if(item.type=='2'){

View File

@@ -802,7 +802,7 @@
afterRead(e) {
let that = this;
uni.uploadFile({
url: this.$baseUrl + "oss/fileoss",
url: this.$baseUrl + "/oss/fileoss",
filePath: e.file[0].url,
name: "file",
formData: {},

View File

@@ -59,7 +59,7 @@
<u--input v-model="loginForm.password" :password="!isSee" placeholder="请输入密码"
placeholder-class="grey" @confirm="onSubmit" class="form_input_box">
</u--input><u-icon class="active" :name="isSee ? 'eye-fill' : 'eye-off'" @click="isSee = !isSee"
:color="isSee ? '#018F89' : '#b0b0b0'" size="22"
:color="isSee ? '#7dc1f0' : '#b0b0b0'" size="22"
style="display: block; margin-right: 10rpx"></u-icon>
</view>
</view>

View File

@@ -206,7 +206,7 @@ export default {
let that = this;
for (var i = 0; i < e.file.length; i++) {
uni.uploadFile({
url: this.$baseUrl + "oss/fileoss",
url: this.$baseUrl + "/oss/fileoss",
filePath: e.file[i].url,
name: "file",
formData: {},
@@ -268,8 +268,8 @@ export default {
showCancel: false,
success: (res) => {
this.fileList1 = []
uni.navigateBack({
delta: 1
uni.switchTab({
url: '/pages/my/index'
});
}
});

View File

@@ -223,7 +223,7 @@ export default {
scrollViewHeight: 0,
urlList: {
list: "app/phone.do?getCourseDetail_new",
initPrepareOrder: "/common/buyOrder/initPrepareOrder",
initPrepareOrder: "common/buyOrder/initPrepareOrder",
buyOrder: "common/userVip/placeVipOrder",
curriculumInfo: "app/phone.do?getCourseInfo",
detailInfo: "app/phoneDoctor.do?getTaiHuClassInfo_new",

View File

@@ -4,17 +4,7 @@
<common-anchor-link style="width: 100%" baseHeight="200" ref="commonAnchorLink" :allDataList="allDataList"
titleKey="title" dataListKey="courseList" :titleStyle="{}" :tabStyle="{background: '#fff'}">
<template slot="otherContent" slot-scope="slotProps">
<view class="describe_block">
<view style=" display: flex; align-items: center;">
<uni-icons type="info" size="20" color="#fff"></uni-icons>
<text>购买VIP即可畅享更多专属权益</text>
</view>
<button class="saveBtn flexbox buyBtn" @click="toLogin()">
立即购买
</button>
</view>
<view v-if="curriculumData.image" style="padding-top:80rpx;">
<view v-if="curriculumData.image">
<image style="width: 100%" :src="curriculumData.image" mode="widthFix"></image>
</view>
<view v-else class="headImage" style="height: 400rpx; background-color: #f5f5f5"></view>