Commit 6bf2a4c9 authored by 黄奎's avatar 黄奎

Merge branch 'master' of http://gitlab.oytour.com/viitto/mallapp

parents 339a1850 bd53b1cb
<template> <template>
<view class="catstyle3" style="height: 100%;"> <view class="catstyle3" style="height: 100%;">
<view class="tabsbox"> <view class="tabsbox">
<u-tabs :is-scroll="true" name="Name" :list="d" :active-color="mainColor" :current="active" @change="changeHandler" <u-tabs :is-scroll="true" name="Name" :list="d" :active-color="mainColor" :current="active"
:type-style="2" :show-bar="false" :bold="false" height="50" duration="0"></u-tabs> @change="changeHandler" :type-style="2" :show-bar="false" :bold="false" height="50" duration="0">
</u-tabs>
</view> </view>
<view style="height: calc(100% - 45px);background: #f5f5f5;"> <view style="height: calc(100% - 45px);background: #f5f5f5;">
<scroll-view :scroll-y="true" @scrolltolower="lower" :enable-back-to-top="true" :enable-flex="true" style=" <scroll-view :scroll-y="true" @scrolltolower="lower" :enable-back-to-top="true" :enable-flex="true" style="
...@@ -15,31 +16,63 @@ ...@@ -15,31 +16,63 @@
<view class="good" @click="clickHandler(cx)"> <view class="good" @click="clickHandler(cx)">
<view class="good-img" style="position: relative;"> <view class="good-img" style="position: relative;">
<image mode="aspectFit" :src="cx.cover_pic" style="width: 100%; height: 100%"> <image mode="aspectFit" :src="cx.cover_pic" style="width: 100%; height: 100%">
<image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/plugins-out.png" v-if="cx.totalStock==0" <image
style="width: 100%; height: 100%;position: absolute;left:0;top:0;background: #000;opacity: 0.6;" /> src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/plugins-out.png"
v-if="cx.totalStock==0"
style="width: 100%; height: 100%;position: absolute;left:0;top:0;background: #000;opacity: 0.6;" />
</image> </image>
</view> </view>
<view class="good-name"> <view class="good-name">
<view v-if="cx.marketingLogo.iswords && cx.marketingLogo.iswords==1&& cx.marketingLogo.words!=''" class="Logo" <view
:style="{color: cx.marketingLogo.wordsColor,background:cx.marketingLogo.wordsBack ,}">{{cx.marketingLogo.words}}</view> v-if="cx.marketingLogo.iswords && cx.marketingLogo.iswords==1&& cx.marketingLogo.words!=''"
<image v-if="cx.marketingLogo.iswords&&cx.marketingLogo.iswords==2&& cx.marketingLogo.ico!=''" mode="heightFix" class="Logo"
:src="cx.marketingLogo.ico" style=" height: 12px;margin-right: 5px" /> :style="{color: cx.marketingLogo.wordsColor,background:cx.marketingLogo.wordsBack ,}">
{{cx.marketingLogo.words}}</view>
<view style="color: #FF4048;background: #fdf6ec;padding: 0 5px;display: inline-block;height: 32rpx;font-size: 20rpx;margin-right: 5rpx;" <image
v-if="cx.freeShippingFullMoneyPinkage>0 || cx.freeShippingFullNumPinkage>0"> v-if="cx.marketingLogo.iswords&&cx.marketingLogo.iswords==2&& cx.marketingLogo.ico!=''"
mode="heightFix" :src="cx.marketingLogo.ico"
style=" height: 12px;margin-right: 5px" />
<view
style="color: #FF4048;background: #fdf6ec;padding: 0 5px;display: inline-block;height: 32rpx;font-size: 20rpx;margin-right: 5rpx;"
v-if="cx.freeShippingFullMoneyPinkage>0 || cx.freeShippingFullNumPinkage>0">
{{cx.freeShippingFullMoneyPinkage>0 && cx.freeShippingFullNumPinkage==0?cx.freeShippingFullMoneyPinkage+'元包邮':''}} {{cx.freeShippingFullMoneyPinkage>0 && cx.freeShippingFullNumPinkage==0?cx.freeShippingFullMoneyPinkage+'元包邮':''}}
{{cx.freeShippingFullMoneyPinkage==0 && cx.freeShippingFullNumPinkage>0?cx.freeShippingFullNumPinkage+'件包邮':''}} {{cx.freeShippingFullMoneyPinkage==0 && cx.freeShippingFullNumPinkage>0?cx.freeShippingFullNumPinkage+'件包邮':''}}
</view> </view>
{{ cx.name }} {{ cx.name }}
</view> </view>
<view class="good-info"> <!-- 新增上课日期 -->
<view v-if="u.TenantId==27">
<view v-if="u.TenantId==27&&cx.edudata.ClassTime" class="have">
{{cx.edudata.ClassTime}}</view>
<!-- 新增次数 -->
<div v-if="cx.edudata.ClassNum&&u.TenantId==27" class="have">{{cx.edudata.ClassNum}}
</div>
<!-- 新增老师相片资料 -->
<view class="price-box">
<view class="portrait-box">
<image v-if="cx.edudata.TeacherIcon" class="portrait" mode="aspectFit"
:src="cx.edudata.TeacherIcon" />
<view v-if="cx.edudata.TeacherName" class="sell2">{{cx.edudata.TeacherName}}
</view>
</view>
<view class="good-info2" >
<view class="price" :style="{ color: mainColor }">{{cx.price_content}}</view>
</view>
</view>
</view>
<!-- 新增上课日期结束 -->
<view class="good-info" v-if="u.TenantId!=27">
<view class="price" :style="{ color: mainColor }">{{cx.price_content}}</view> <view class="price" :style="{ color: mainColor }">{{cx.price_content}}</view>
<view class="sell">{{ cx.sales }}</view> <view class="sell">{{ cx.sales }}</view>
</view> </view>
</view> </view>
</u-col> </u-col>
</u-row> </u-row>
<u-divider v-if="isover" bg-color="#F5f5f5" :margin-top="20" :margin-bottom="20">没有更多商品了</u-divider>&nbsp; <u-divider v-if="isover" bg-color="#F5f5f5" :margin-top="20" :margin-bottom="20">没有更多商品了</u-divider>
&nbsp;
</scroll-view> </scroll-view>
</view> </view>
</view> </view>
...@@ -50,6 +83,7 @@ ...@@ -50,6 +83,7 @@
props: ["d", "h"], props: ["d", "h"],
data() { data() {
return { return {
u: {},
mainColor: "", mainColor: "",
msg: { msg: {
pageIndex: 1, pageIndex: 1,
...@@ -59,7 +93,7 @@ ...@@ -59,7 +93,7 @@
CategoryIds: '', CategoryIds: '',
OrderBy: 1, OrderBy: 1,
UserId: 0, UserId: 0,
StoreId:0, StoreId: 0,
}, },
page_count: 1, page_count: 1,
mh: 0, mh: 0,
...@@ -72,9 +106,11 @@ ...@@ -72,9 +106,11 @@
}; };
}, },
created() { created() {
this.u = uni.getStorageSync('mall_UserInfo');
this.mainColor = this.$uiConfig.mainColor; this.mainColor = this.$uiConfig.mainColor;
this.IsEducation = uni.getStorageSync('basedata') ? this.IsEducation = uni.getStorageSync('basedata') ?
(uni.getStorageSync('basedata').mall.setting.mallStyle.IsEducation ? uni.getStorageSync('basedata').mall.setting.mallStyle (uni.getStorageSync('basedata').mall.setting.mallStyle.IsEducation ? uni.getStorageSync('basedata').mall
.setting.mallStyle
.IsEducation : 0) : .IsEducation : 0) :
0; 0;
}, },
...@@ -97,9 +133,13 @@ ...@@ -97,9 +133,13 @@
}); });
} else { } else {
if (item.goodsclassify == 3) { if (item.goodsclassify == 3) {
uni.navigateTo({ url: "/pages/reserve/goodsDetails?GoodsId=" + item.id}); uni.navigateTo({
url: "/pages/reserve/goodsDetails?GoodsId=" + item.id
});
} else { } else {
uni.navigateTo({ url: "/pages/goods/goods?GoodsId=" + item.id }); uni.navigateTo({
url: "/pages/goods/goods?GoodsId=" + item.id
});
} }
} }
...@@ -107,10 +147,11 @@ ...@@ -107,10 +147,11 @@
init() { init() {
this.isover = false; this.isover = false;
this.loading = true; this.loading = true;
this.msg.StoreId = uni.getStorageSync("storeId")?uni.getStorageSync("storeId").storeId:0; this.msg.StoreId = uni.getStorageSync("storeId") ? uni.getStorageSync("storeId").storeId : 0;
let IsOpenReserve = uni.getStorageSync("GetAppConfig")?uni.getStorageSync("GetAppConfig").IsOpenReserve:0 let IsOpenReserve = uni.getStorageSync("GetAppConfig") ? uni.getStorageSync("GetAppConfig").IsOpenReserve :
if(IsOpenReserve==0){//如果没开启 门店id赋值为0 0
this.msg.StoreId=0 if (IsOpenReserve == 0) { //如果没开启 门店id赋值为0
this.msg.StoreId = 0
} }
let url let url
if (this.IsEducation == 1) { if (this.IsEducation == 1) {
...@@ -181,6 +222,56 @@ ...@@ -181,6 +222,56 @@
</script> </script>
<style> <style>
.good-info2 {
display: flex;
margin: 0px 10px;
margin-top: 0;
align-items: center;
}
.price-box{
display: flex;
justify-content: space-between;
align-items: center;
}
.portrait-box {
display: flex;
align-items: center;
margin-top: 10rpx;
margin-bottom: 10rpx;
margin-left: 7px;
}
.portrait {
width: 50rpx;
height: 50rpx;
border-radius: 50%;
margin-right: 20rpx;
}
.cent-box {
/* background: yellow; */
width: 100%;
display: flex;
}
.have {
font-size: 20rpx;
color: gray;
margin-left: 7px;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
margin-bottom: 3px;
}
.sell2 {
font-size: 20rpx;
color: gray;
}
.catstyle3 .tabsbox { .catstyle3 .tabsbox {
padding: 10px; padding: 10px;
} }
......
...@@ -9,46 +9,74 @@ ...@@ -9,46 +9,74 @@
<image mode="aspectFit" :src="d[tid].advert_url" style="width: 100%; height: 100%;" /> <image mode="aspectFit" :src="d[tid].advert_url" style="width: 100%; height: 100%;" />
</div> </div>
<div class="good" v-for="(cx, ci) in g" :key="ci" @click="clickHandler(cx)"> <div class="good" v-for="(cx, ci) in g" :key="ci" @click="clickHandler(cx)">
<div class="good-img" style="position: relative;"> <!-- 新加div -->
<image mode="aspectFit" :src="cx.cover_pic" style="width: 100%; height: 100%;"> <view class="cent-box">
<image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/plugins-out.png" v-if="cx.totalStock==0" <div class="good-img" style="position: relative;">
style="width: 100%; height: 100%;position: absolute;left:0;top:0;background: #000;opacity: 0.6;" /> <image mode="aspectFit" :src="cx.cover_pic" style="width: 100%; height: 100%;">
</image> <image src="https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/plugins-out.png" v-if="cx.totalStock==0"
</div> style="width: 100%; height: 100%;position: absolute;left:0;top:0;background: #000;opacity: 0.6;" />
<div class="good-info"> </image>
<div class="good-name">
<view v-if="cx.marketingLogo.iswords && cx.marketingLogo.iswords==1&& cx.marketingLogo.words!=''" class="Logo"
:style="{color: cx.marketingLogo.wordsColor,
background:cx.marketingLogo.wordsBack ,}">{{cx.marketingLogo.words}}</view>
<image v-if="cx.marketingLogo.iswords&&cx.marketingLogo.iswords==2&& cx.marketingLogo.ico!=''" mode="heightFix"
:src="cx.marketingLogo.ico" style=" height: 12px;margin-right: 5px" />
<view style="color: #FF4048;background: #fdf6ec;padding: 0 5px;display: inline-block;height: 32rpx;font-size: 20rpx;margin-right: 5rpx;"
v-if="cx.freeShippingFullMoneyPinkage>0 || cx.freeShippingFullNumPinkage>0">
{{cx.freeShippingFullMoneyPinkage>0 && cx.freeShippingFullNumPinkage==0?cx.freeShippingFullMoneyPinkage+'元包邮':''}}
{{cx.freeShippingFullMoneyPinkage==0 && cx.freeShippingFullNumPinkage>0?cx.freeShippingFullNumPinkage+'件包邮':''}}
</view>
{{ cx.name }}
</div> </div>
<div class="goodprice"> <div class="good-info">
<div class="left"> <div class="good-name">
<div v-if="cx.is_level==1"> <view v-if="cx.marketingLogo.iswords && cx.marketingLogo.iswords==1&& cx.marketingLogo.words!=''" class="Logo"
<!-- todo VIP价格显示--> :style="{color: cx.marketingLogo.wordsColor,
<u-tag size="mini" shape="circle" text="会员价" type="warning" /> background:cx.marketingLogo.wordsBack ,}">{{cx.marketingLogo.words}}</view>
<!-- <u-tag color="#f39800" type="warning">会员价</u-tag> --> <image v-if="cx.marketingLogo.iswords&&cx.marketingLogo.iswords==2&& cx.marketingLogo.ico!=''" mode="heightFix"
<span class="vip">{{cx.level_price}}</span> :src="cx.marketingLogo.ico" style=" height: 12px;margin-right: 5px" />
<view style="color: #FF4048;background: #fdf6ec;padding: 0 5px;display: inline-block;height: 32rpx;font-size: 20rpx;margin-right: 5rpx;"
v-if="cx.freeShippingFullMoneyPinkage>0 || cx.freeShippingFullNumPinkage>0">
{{cx.freeShippingFullMoneyPinkage>0 && cx.freeShippingFullNumPinkage==0?cx.freeShippingFullMoneyPinkage+'元包邮':''}}
{{cx.freeShippingFullMoneyPinkage==0 && cx.freeShippingFullNumPinkage>0?cx.freeShippingFullNumPinkage+'件包邮':''}}
</view>
{{ cx.name }}
</div>
<div class="goodprice">
<div class="left">
<!-- 新增上课日期 -->
<div v-if="cx.edudata.ClassTime&&u.TenantId==27" class="sell">{{cx.edudata.ClassTime}}</div>
<!-- 上课次数 -->
<div v-if="cx.edudata.ClassNum&&u.TenantId==27" class="sell">{{cx.edudata.ClassNum}}</div>
<div v-if="cx.is_level==1&&u.TenantId!=27">
<!-- todo VIP价格显示-->
<u-tag size="mini" shape="circle" text="会员价" type="warning" />
<!-- <u-tag color="#f39800" type="warning">会员价</u-tag> -->
<span class="vip" v-if="u.TenantId!=27">{{cx.level_price}}</span>
</div>
<div v-if="u.TenantId!=27" class="price" :style="{ color: mainColor }">
{{ cx.price_content }}
</div>
<div v-if="u.TenantId!=27" class="sell">{{ cx.sales }}</div>
</div> </div>
<div class="price" :style="{ color: mainColor }">
{{ cx.price_content }} <div v-if="u.TenantId!=27" @click.stop="showSkuHandler(cx)" class="right">
<!-- todo 点击加入购物车-->
<u-icon name="cart-circle-o" size="44" :color="mainColor" />
</div> </div>
<div class="sell">{{ cx.sales }}</div>
</div> </div>
</div>
</view>
<!-- 新加div -->
<view v-if="u.TenantId==27" class="Teachers">
<view class="portrait-box">
<image v-if="cx.edudata.TeacherIcon" class="portrait" mode="aspectFit" :src="cx.edudata.TeacherIcon" />
<view v-if="cx.edudata.TeacherName" class="sell2">{{cx.edudata.TeacherName}}</view>
</view>
<!-- 价格 -->
<view class="cart-box">
<view class="vip2" :style="{ color: mainColor }">
{{ cx.price_content }}
</view>
<div @click.stop="showSkuHandler(cx)" class="right"> <div @click.stop="showSkuHandler(cx)" class="right">
<!-- todo 点击加入购物车--> <!-- todo 点击加入购物车-->
<u-icon name="cart-circle-o" size="44" :color="mainColor" /> <u-icon name="cart-circle-o" size="44" :color="mainColor" />
</div> </div>
</div> </view>
</div> </view>
</div> </div>
<u-divider v-if="isover" :margin-top="20" :margin-bottom="20">没有更多商品了</u-divider> <u-divider v-if="isover" :margin-top="20" :margin-bottom="20">没有更多商品了</u-divider>
</scroll-view> </scroll-view>
...@@ -66,6 +94,7 @@ ...@@ -66,6 +94,7 @@
props: ["d", "h"], props: ["d", "h"],
data() { data() {
return { return {
mainColor: "", mainColor: "",
activeStyle: "", activeStyle: "",
page: 1, page: 1,
...@@ -108,6 +137,7 @@ ...@@ -108,6 +137,7 @@
}, },
mounted() { mounted() {
this.init(); this.init();
this.u = uni.getStorageSync('mall_UserInfo');
}, },
methods: { methods: {
// 购物车 // 购物车
...@@ -209,6 +239,33 @@ ...@@ -209,6 +239,33 @@
</script> </script>
<style> <style>
.vip2{
font-size: 16px;
margin-right: 10rpx;
}
.Teachers{
display: flex;
justify-content: space-between;
}
.cart-box{
display: flex;
align-items: center;
}
.portrait-box{
display: flex;
align-items: center;
}
.portrait{
width: 50rpx;
height: 50rpx;
border-radius: 50%;
margin-right: 20rpx;
}
.cent-box{
/* background: yellow; */
width: 100%;
display: flex;
}
.catstyle4 { .catstyle4 {
display: flex; display: flex;
} }
...@@ -248,7 +305,7 @@ ...@@ -248,7 +305,7 @@
.catstyle4 .good { .catstyle4 .good {
border-bottom: 1rpx solid #f1f1f1; border-bottom: 1rpx solid #f1f1f1;
display: flex; /* display: flex; */
padding: 10px 0; padding: 10px 0;
} }
...@@ -265,7 +322,7 @@ ...@@ -265,7 +322,7 @@
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
margin-bottom: 3px; margin-bottom: 3px;
font-size: 14px; font-size: 14px;
height: 36px; /* height: 36px; */
margin-bottom: 5px; margin-bottom: 5px;
} }
...@@ -308,7 +365,10 @@ ...@@ -308,7 +365,10 @@
font-size: 12px; font-size: 12px;
color: gray; color: gray;
} }
.sell2{
font-size: 12px;
color: gray;
}
.catstyle4 .right-slider .adbox { .catstyle4 .right-slider .adbox {
width: 100%; width: 100%;
height: calc(100vw - 105px / 3.37); height: calc(100vw - 105px / 3.37);
......
This diff is collapsed.
...@@ -79,6 +79,7 @@ import style8 from "@/components/cats/style8"; ...@@ -79,6 +79,7 @@ import style8 from "@/components/cats/style8";
import style9 from "@/components/cats/style9"; import style9 from "@/components/cats/style9";
import style10 from "@/components/cats/style10"; import style10 from "@/components/cats/style10";
import style11 from "@/components/cats/style11"; import style11 from "@/components/cats/style11";
// 新增商品绑定
export default { export default {
data() { data() {
return { return {
...@@ -162,7 +163,7 @@ export default { ...@@ -162,7 +163,7 @@ export default {
uni.redirectTo({ url: "/pages/index/main" }); uni.redirectTo({ url: "/pages/index/main" });
}, },
getStyle(){ getStyle(){
var UserPageType = uni.getStorageSync("mall_UserInfo")?uni.getStorageSync("mall_UserInfo").UserPageType:0; var UserPageType = uni.getStorageSync("mall_UserInfo")?uni.getStorageSync("mall_UserInfo").UserPageType:0;
this.request2( this.request2(
{ {
url: '/api/AppletGoods/GetProductCategoryTreeList', url: '/api/AppletGoods/GetProductCategoryTreeList',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment