Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mallapp
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
viitto
mallapp
Commits
ee9fdc4b
Commit
ee9fdc4b
authored
Oct 11, 2022
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
商城修改
parent
47ce8df3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
1505 additions
and
1282 deletions
+1505
-1282
style3.vue
components/cats/style3.vue
+66
-53
goodsku2.vue
components/goods/goodsku2.vue
+1
-0
goods.vue
pages/goods/goods.vue
+1438
-1229
No files found.
components/cats/style3.vue
View file @
ee9fdc4b
...
...
@@ -11,7 +11,8 @@
padding: 10px;
padding-bottom: 0px;
"
>
<u-row
gutter=
"20"
>
<u-row
gutter=
"12"
>
<view
class=
"layout"
>
<u-col
span=
"6"
v-for=
"(cx, ci) in g"
:key=
"ci"
>
<view
class=
"good"
@
click=
"clickHandler(cx)"
>
<view
class=
"good-img"
style=
"position: relative;"
>
...
...
@@ -43,12 +44,12 @@
{{
cx
.
name
}}
</view>
<!-- 新增上课日期 -->
<view
v-if=
"u.TenantId==27
"
>
<view
v-if=
"u.TenantId==27"
class=
"rqi
"
>
<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
v-if=
"cx.edudata.ClassNum&&u.TenantId==27"
class=
"have"
>
{{
cx
.
edudata
.
ClassNum
}}
次
</view
>
<!-- 新增老师相片资料 -->
<view
class=
"price-box"
>
<view
class=
"portrait-box"
>
...
...
@@ -61,7 +62,6 @@
<view
class=
"price"
:style=
"
{ color: mainColor }">
{{
cx
.
price_content
}}
</view>
</view>
</view>
</view>
<!-- 新增上课日期结束 -->
<view
class=
"good-info"
v-if=
"u.TenantId!=27"
>
...
...
@@ -70,6 +70,8 @@
</view>
</view>
</u-col>
</view>
</u-row>
<u-divider
v-if=
"isover"
bg-color=
"#F5f5f5"
:margin-top=
"20"
:margin-bottom=
"20"
>
没有更多商品了
</u-divider>
...
...
@@ -222,6 +224,15 @@
</
script
>
<
style
>
.layout
{
display
:
flex
;
justify-content
:
space-between
;
flex-wrap
:
wrap
;
}
.rqi
{
/* background: red; */
/* width: 130px; */
}
.good-info2
{
display
:
flex
;
margin
:
0px
10px
;
...
...
@@ -233,6 +244,7 @@
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
height
:
60
rpx
;
}
.portrait-box
{
display
:
flex
;
...
...
@@ -281,6 +293,7 @@
border-radius
:
10px
;
overflow
:
hidden
;
margin-bottom
:
10px
;
width
:
345
rpx
;
}
.catstyle3
.good
.good-img
{
...
...
components/goods/goodsku2.vue
View file @
ee9fdc4b
...
...
@@ -713,5 +713,6 @@
align-items
:
center
;
border-top
:
1px
solid
#eee
;
padding
:
5px
10px
;
margin-top
:
20
rpx
;
}
</
style
>
pages/goods/goods.vue
View file @
ee9fdc4b
...
...
@@ -11,89 +11,72 @@
:border-radius=
"0"
@
click=
"previewImage"
></u-swiper>
-->
<swiper
indicator-dots
:autoplay=
"false"
:interval=
"1000"
style=
"height:100vw;"
>
<swiper
indicator-dots
:autoplay=
"false"
:interval=
"1000"
style=
"height:100vw;"
>
<block
v-for=
"(item, index) in g.pic_url"
:key=
"index"
>
<swiper-item>
<video
@
click=
"startPlay(item)"
style=
"width:100%;height:100%"
id=
"myVideo"
v-if=
"item.type==1"
:src=
"item.pic_url"
:autoplay=
"false"
loop
muted
show-play-btn
:enable-progress-gesture=
"true"
:controls=
"true"
:show-progress=
"true"
:show-mute-btn=
"true"
objectFit=
"cover"
></video>
<image
@
click=
"previewImage(index)"
style=
"width:100%;height:100%;"
v-else
:src=
"item.pic_url"
mode=
"aspectFill"
></image>
<video
@
click=
"startPlay(item)"
style=
"width:100%;height:100%"
id=
"myVideo"
v-if=
"item.type==1"
:src=
"item.pic_url"
:autoplay=
"false"
loop
muted
show-play-btn
:enable-progress-gesture=
"true"
:controls=
"true"
:show-progress=
"true"
:show-mute-btn=
"true"
objectFit=
"cover"
></video>
<image
@
click=
"previewImage(index)"
style=
"width:100%;height:100%;"
v-else
:src=
"item.pic_url"
mode=
"aspectFill"
></image>
</swiper-item>
</block>
</swiper>
<!-- TODO 分销价格未做 is_share_price -->
<view
class=
"is_share"
v-if=
"g.share > 0 && hideshare == false&&setting.is_show_korea==0"
style=
"top:240px;"
>
<image
src=
"@/static/images/icon/WechatIMG424.png"
style=
"width: 20px; margin-left: 12px; opacity: 1;height: auto;"
mode=
"widthFix"
/>
<view
style=
"
<view
class=
"is_share"
v-if=
"g.share > 0 && hideshare == false&&setting.is_show_korea==0"
style=
"top:240px;"
>
<image
src=
"@/static/images/icon/WechatIMG424.png"
style=
"width: 20px; margin-left: 12px; opacity: 1;height: auto;"
mode=
"widthFix"
/>
<view
style=
"
display: flex;
flex-direction: column;
margin-left: 8px;
font-size: 11px;
color: #fff;
opacity: 1;
"
>
"
>
<Text>
即刻分享赚
</Text>
<Text>
¥
{{
g
.
share
}}
</Text>
</view>
<u-icon
name=
"close"
style=
'position: absolute;right: 4px;top: 12.5px;z-index: 999;'
color=
"#fff"
size=
"40"
@
click=
'goclose'
></u-icon>
<u-icon
name=
"close"
style=
'position: absolute;right: 4px;top: 12.5px;z-index: 999;'
color=
"#fff"
size=
"40"
@
click=
'goclose'
></u-icon>
</view>
<view
class=
"is_share"
v-if=
"g.myBuyCommission > 0 && hideshare == false&&setting.is_show_korea==0"
>
<image
src=
"@/static/images/icon/WechatIMG424.png"
style=
"width: 20px; margin-left: 12px; opacity: 1;height: auto;"
mode=
"widthFix"
/>
<view
style=
"
<image
src=
"@/static/images/icon/WechatIMG424.png"
style=
"width: 20px; margin-left: 12px; opacity: 1;height: auto;"
mode=
"widthFix"
/>
<view
style=
"
display: flex;
flex-direction: column;
margin-left: 8px;
font-size: 11px;
color: #fff;
opacity: 1;
"
>
"
>
<Text>
即刻购买省
</Text>
<Text>
¥
{{
g
.
myBuyCommission
}}
</Text>
</view>
<u-icon
v-if=
'g.share ==0'
name=
"close"
style=
'position: absolute;right: 4px;top: 12.5px;'
color=
"#fff"
size=
"40"
@
click=
'hideshare=true'
></u-icon>
<u-icon
v-if=
'g.share ==0'
name=
"close"
style=
'position: absolute;right: 4px;top: 12.5px;'
color=
"#fff"
size=
"40"
@
click=
'hideshare=true'
></u-icon>
</view>
</view>
<view
class=
"g-info"
>
<!-- 非id27开始 -->
<view
class=
"g-info"
v-if=
"u.TenantId!=27"
>
<view
class=
"g-name u-skeleton-rect"
>
<view
v-if=
"g.marketingLogo.iswords&&g.marketingLogo.iswords==1 && g.marketingLogo.words!=''"
class=
"Logo"
:style=
"
{color: g.marketingLogo.wordsColor,
background:g.marketingLogo.wordsBack ,}"
>
{{
g
.
marketingLogo
.
words
}}
</view>
<image
v-if=
"g.marketingLogo.iswords&&g.marketingLogo.iswords==2&& g.marketingLogo.ico!=''"
mode=
"heightFix"
:src=
"g.marketingLogo.ico"
style=
" height: 12px;margin-right: 5px"
/>
<view
v-if=
"g.marketingLogo.iswords&&g.marketingLogo.iswords==1 && g.marketingLogo.words!=''"
class=
"Logo"
:style=
"
{color: g.marketingLogo.wordsColor,
background:g.marketingLogo.wordsBack ,}">
{{
g
.
marketingLogo
.
words
}}
</view>
<image
v-if=
"g.marketingLogo.iswords&&g.marketingLogo.iswords==2&& g.marketingLogo.ico!=''"
mode=
"heightFix"
:src=
"g.marketingLogo.ico"
style=
" height: 12px;margin-right: 5px"
/>
{{
g
.
name
}}
</view>
<view
class=
"g-price-box"
v-if=
"setting.is_show_korea==0"
>
<view
class=
"left"
>
<view
class=
"price u-skeleton-rect"
:style=
"
{ color: mc }">
<u-tag
v-if=
'g.price_min!=g.original_price'
text=
"心动价"
mode=
"light"
size=
'mini'
type=
"error"
style=
'font-size: 12px;font-family: aa;margin-right: 10px;'
/>
<u-tag
v-if=
'g.price_min!=g.original_price'
text=
"心动价"
mode=
"light"
size=
'mini'
type=
"error"
style=
'font-size: 12px;font-family: aa;margin-right: 10px;'
/>
<text
class=
"small"
>
¥
</text>
<text
class=
"numfont"
v-if=
"g.form_id!=1"
>
<text
class=
"numfont"
v-if=
"g.form_id!=1"
>
{{
g
.
price_min
==
g
.
price_max
?
g
.
price_min
:
g
.
price_min
+
'-'
+
g
.
price_max
}}
</text>
<text
class=
"numfont"
v-if=
"g.form_id==1"
>
...
...
@@ -116,7 +99,8 @@
<template
v-if=
"setting.is_show_korea==1"
>
<view
style=
"height:50px;margin:10px 10px 0 0;display:none;"
>
<view
style=
"float:right;"
@
click=
"openShare"
v-if=
"isAllowShare == 1"
>
<image
src=
"@/static/images/icon/icon-share.png"
style=
"width:20px;height:20px;"
class=
"share-icon"
/>
<image
src=
"@/static/images/icon/icon-share.png"
style=
"width:20px;height:20px;"
class=
"share-icon"
/>
</view>
</view>
<view
class=
"koarea_Country"
style=
"display:none;"
>
...
...
@@ -124,54 +108,163 @@
<text
v-if=
"g.goods_country"
>
{{
g
.
goods_country
}}
</text>
</view>
<view
style=
"flex: 1;text-align: center;border-right:1px solid #F2F3F6;"
>
无
</view>
<view
style=
"flex: 1;text-align: center;"
v-if=
"g.cats&&g.cats.length>0"
>
{{
g
.
cats
[
0
].
CategoryName
}}
</view>
<view
style=
"flex: 1;text-align: center;"
v-if=
"g.cats&&g.cats.length>0"
>
{{
g
.
cats
[
0
].
CategoryName
}}
</view>
</view>
<view
style=
"text-align: left;padding:15px 0;border-bottom:1px solid #F2F3F6;display:none;"
>
卖点:
<text
v-if=
"g.subname"
>
{{
g
.
subname
}}
</text>
</view>
<view
style=
"text-align: left;border-bottom:1px solid #F2F3F6;padding:15px 0;display:flex;font-size:13px;color:#737373;"
>
<view
style=
"text-align: left;border-bottom:1px solid #F2F3F6;padding:15px 0;display:flex;font-size:13px;color:#737373;"
>
<u-icon
name=
"location"
color=
"#D4D4D4"
size=
"30"
></u-icon>
地址:
<text
v-if=
"g.fatcode"
>
{{
g
.
fatcode
}}
</text>
</view>
<view
style=
"display:flex;text-align: left;padding:10px;background-color: #F3F3F3;color:#404040;min-height:100px;line-height: 25px;font-size:13px;"
>
<view
style=
"display:flex;text-align: left;padding:10px;background-color: #F3F3F3;color:#404040;min-height:100px;line-height: 25px;font-size:13px;"
>
<text
style=
"flex-shrink: 0;width:45px;"
>
简介:
</text><text
v-if=
"g.goodsurl"
>
{{
g
.
goodsurl
}}
</text>
</view>
</
template
>
</view>
<view
class=
"sku-box u-skeleton-rect"
style=
"margin: 0;padding: 10px;"
v-if=
"g.friendUrl!=null && g.friendUrl!=''&&setting.is_show_korea==0"
@
click=
"goCoiling(g.friendUrl)"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/goodsCoiling.png"
style=
"width: 100%;height: 68px;"
/>
<!-- 非id27结束 -->
<!-- id27开始 -->
<view
class=
"g-info"
v-if=
"u.TenantId==27"
style=
"position: relative;"
>
<!-- 标题 -->
<view
class=
"g-name u-skeleton-rect"
style=
"height: 60rpx;"
>
<view
v-if=
"g.marketingLogo.iswords&&g.marketingLogo.iswords==1 && g.marketingLogo.words!=''"
class=
"Logo"
:style=
"{color: g.marketingLogo.wordsColor,
background:g.marketingLogo.wordsBack ,}"
>
{{g.marketingLogo.words}}
</view>
{{ g.name }}
</view>
<!-- 报名时间次数 -->
<view
class=
"sign-up"
v-if=
'g.edu_data'
>
<text
v-if=
"g.edu_data.EndOrderTime"
>
{{g.edu_data.EndOrderTime}}报名截止
</text>
<text
v-if=
"g.edu_data.EndOrderTime"
class=
"sign-dian"
></text>
<text
v-if=
"g.edu_data.ClassNum"
>
{{g.edu_data.ClassNum}}次
</text>
</view>
<!-- 价格 -->
<view
:style=
"{ color: mc }"
class=
"the-price"
>
<text
class=
"small22"
>
¥
</text>
<text
class=
"numfont22"
v-if=
"g.form_id!=1&&!g.edu_data.BookPrice"
>
{{ g.price_min == g.price_max ? g.price_min : g.price_min + '-' + g.price_max }}
</text>
<text
class=
"numfont22"
v-if=
"g.form_id!=1&&g.edu_data.BookPrice"
>
{{ g.price_min == g.price_max ? parseFloat(g.price_min)+parseFloat(g.edu_data.BookPrice) : g.price_min + '-' + g.price_max }}
</text>
<!-- <text class="numfont" v-if="g.form_id==1">
{{ g.price_min }}
</text> -->
</view>
<!-- top切换 -->
<view
class=
"top-switch"
id=
"productId"
>
<u-tabs
:list=
"list"
:is-scroll=
"false"
:current=
"current"
inactive-color=
'#999'
:active-color=
'mc'
@
change=
"change"
></u-tabs>
</view>
<!-- 内容1 -->
<view
v-if=
"current==0"
>
<view
class=
"introduce-box"
>
<text
class=
"introduce"
:style=
"{ 'background-color': mc }"
></text>
<text
class=
"introduce2"
>
老师介绍
</text>
</view>
<view
class=
"teacher"
>
<image
src=
"@/static/images/icon/icon-share.png"
style=
"width:20px;height:30px;"
class=
"share-icon"
/>
<view
class=
"teacher2"
>
<view
class=
"teacher3"
>
<view
class=
"teacher4"
>
张鑫生
</view>
<view
class=
"teacher5"
>
高级高级高级高级高级高级高级高级高级
</view>
</view>
<view
class=
"teacher4"
>
<u-icon
name=
"arrow"
:size=
"32"
color=
"#111"
></u-icon>
</view>
</view>
</view>
</view>
<!-- 内容2 -->
<view
v-if=
"current==1"
>
<view
class=
"introduce-box"
style=
"margin-bottom: 20rpx;"
>
<text
class=
"introduce"
:style=
"{ 'background-color': mc }"
></text>
<text
class=
"introduce2"
>
详情介绍
</text>
</view>
<view>
富文本
</view>
</view>
<!-- top3 -->
<view
iew
v-if=
"current==2"
>
<view
class=
"introduce-box"
>
<text
class=
"introduce"
:style=
"{ 'background-color': mc }"
></text>
<text
class=
"introduce2"
>
上课信息
</text>
</view>
<view>
<view
class=
"information-list"
v-if=
'g.edu_data.ClassNum'
>
<text>
上课次数
</text>
<text
class=
"information-list2"
>
{{g.edu_data.ClassNum}}次
</text>
</view>
<view
class=
"information-list"
v-if=
'g.edu_data.ClassAddress'
>
<text>
上课地点
</text>
<text
class=
"information-list2"
>
{{g.edu_data.ClassAddress}}
</text>
</view>
<view
class=
"information-list"
v-if=
'g.edu_data.ClassTime'
>
<text>
上课时间
</text>
<text
class=
"information-list2"
>
{{g.edu_data.ClassTime}}
</text>
</view>
<view
class=
"sku-box u-skeleton-rect"
style=
"align-items: flex-start;"
v-if=
"(g.goods_marketing_award.integral.title != '')|| (g.goods_marketing_award.PresentFXGradeMsg != '')|| g.freeShippingName != null && g.freeShippingName != '' && (g.fullMoneyPinkage > 0 || g.fullNumPinkage > 0)"
>
<view
class=
"information-list"
v-if=
'g.edu_data.OpenTime'
>
<text>
开班日期
</text>
<text
class=
"information-list2"
>
{{g.edu_data.OpenTime}}
</text>
</view>
<view
class=
"information-list"
v-if=
'g.edu_data.EndClassDate'
>
<text>
结业日期
</text>
<text
class=
"information-list2"
>
{{g.edu_data.EndClassDate}}
</text>
</view>
<view
class=
"information-list"
v-if=
'g.edu_data.ClassPersion'
>
<text>
限招人数
</text>
<text
class=
"information-list2"
>
{{g.edu_data.ClassPersion}}人
</text>
</view>
<view
class=
"information-list"
v-if=
'g.edu_data.TeacherName'
>
<text>
班主任
</text>
<text
class=
"information-list2"
>
{{g.edu_data.TeacherName}}
</text>
</view>
<view
class=
"information-list"
v-if=
'g.edu_data.TeacherName'
>
<text>
上课老师
</text>
<text
class=
"information-list2"
>
{{g.edu_data.TeacherName}}
</text>
</view>
</view>
</view>
<!-- 切换结束 -->
<!-- 回到顶部 -->
<!-- <view class="the-top" @click="counter">
<u-icon name="arrow" :size="32" color="#111"></u-icon>
</view> -->
</view>
<!-- id27结束 -->
<view
class=
"sku-box u-skeleton-rect"
style=
"margin: 0;padding: 10px;"
v-if=
"g.friendUrl!=null && g.friendUrl!=''&&setting.is_show_korea==0 &&u.TenantId!=27"
@
click=
"goCoiling(g.friendUrl)"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/goodsCoiling.png"
style=
"width: 100%;height: 68px;"
/>
</view>
<view
class=
"sku-box u-skeleton-rect"
style=
"align-items: flex-start;"
v-if=
"(g.goods_marketing_award.integral.title != '')|| (g.goods_marketing_award.PresentFXGradeMsg != '')|| g.freeShippingName != null && g.freeShippingName != '' && (g.fullMoneyPinkage > 0 || g.fullNumPinkage > 0)&&u.TenantId!=27"
>
<view
class=
"label"
style=
"margin-top: 5px;"
>
活动
</view>
<view
class=
"content"
style=
"display: flex;flex-direction: column"
>
<view
style=
"display: flex;flex-direction: row;align-items: center;margin-bottom: 5px;"
v-if=
"g.goods_marketing_award.integral.title != ''"
>
<view
style=
"display: flex;flex-direction: row;align-items: center;margin-bottom: 5px;"
v-if=
"g.goods_marketing_award.integral.title != ''"
>
<u-tag
text=
"送积分"
type=
"error"
/>
<text
style=
"margin-left: 5px; font-size: 12px;"
>
{{ g.goods_marketing_award.integral.title }}
</text>
style=
"margin-left: 5px; font-size: 12px;"
>
{{ g.goods_marketing_award.integral.title }}
</text>
</view>
<view
style=
"display: flex;flex-direction: row;align-items: center"
v-if=
"g.goods_marketing_award.PresentFXGradeMsg != ''"
@
click=
"goVIP"
>
<view
style=
"display: flex;flex-direction: row;align-items: center"
v-if=
"g.goods_marketing_award.PresentFXGradeMsg != ''"
@
click=
"goVIP"
>
<u-tag
text=
"送会员"
type=
"error"
/>
<text
style=
"margin-left: 5px; font-size: 12px;"
>
{{ g.goods_marketing_award.PresentFXGradeMsg }}
</text>
style=
"margin-left: 5px; font-size: 12px;"
>
{{ g.goods_marketing_award.PresentFXGradeMsg }}
</text>
</view>
<view
style=
"display: flex;flex-direction: row;align-items: center;margin-top: 5px;"
<view
style=
"display: flex;flex-direction: row;align-items: center;margin-top: 5px;"
@
click=
"goUrl(g.FreeShippingUrl)"
v-if=
"g.freeShippingName != null && g.freeShippingName != '' && (g.fullMoneyPinkage > 0 || g.fullNumPinkage > 0)"
>
v-if=
"g.freeShippingName != null && g.freeShippingName != '' && (g.fullMoneyPinkage > 0 || g.fullNumPinkage > 0)"
>
<view
style=
"color: #fa3534;background: #fef0f0;padding: 12rpx 22rpx; font-size: 22rpx;margin-right: 5px;border: 1px solid #fde2e2;border-radius: 6rpx;"
>
{{ g.freeShippingName != null ? g.freeShippingName : '' }}
</view>
style=
"color: #fa3534;background: #fef0f0;padding: 12rpx 22rpx; font-size: 22rpx;margin-right: 5px;border: 1px solid #fde2e2;border-radius: 6rpx;"
>
{{ g.freeShippingName != null ? g.freeShippingName : '' }}
</view>
{{ g.fullMoneyPinkage > 0
&&
g.fullNumPinkage == 0 ? g.fullMoneyPinkage + '元包邮' : '' }}
{{ g.fullMoneyPinkage == 0
&&
g.fullNumPinkage > 0 ? g.fullNumPinkage + '件包邮' : '' }}
</view>
...
...
@@ -185,7 +278,8 @@
</view>-->
</view>
</view>
<view
class=
"sku-box u-skeleton-rect"
style=
"align-items: flex-start;"
v-if=
"sku.length > 0&&setting.is_show_korea==0"
>
<view
class=
"sku-box u-skeleton-rect"
style=
"align-items: flex-start;"
v-if=
"sku.length > 0&&setting.is_show_korea==0&&u.TenantId!=27"
>
<view
class=
"label"
>
选择
</view>
<view
class=
"content"
>
<view
class=
"sku-chosen"
@
click=
"chosenSku"
>
...
...
@@ -196,59 +290,39 @@
</view>
<view
class=
"suk-item"
style=
"flex-wrap: wrap;"
>
<
template
v-if=
"skuimage.length > 0"
>
<view
v-for=
"(x, i) in skuimage"
class=
"item img"
style=
"margin-bottom: 5px;"
:key=
"i"
>
<view
v-for=
"(x, i) in skuimage"
class=
"item img"
style=
"margin-bottom: 5px;"
:key=
"i"
>
<image
:src=
"x"
style=
"width: 100%; height: 100%;"
/>
</view>
<view
class=
"item"
v-if=
"g.attr_groups[0].attr_list.length > 1"
>
共
{{
g
.
attr_groups
[
0
].
attr_list
.
length
}}
种
{{
g
.
attr_groups
[
0
].
attr_group_name
}}
可选
</view>
<view
class=
"item"
v-if=
"g.attr_groups[0].attr_list.length > 1"
>
共
{{
g
.
attr_groups
[
0
].
attr_list
.
length
}}
种
{{
g
.
attr_groups
[
0
].
attr_group_name
}}
可选
</view>
</
template
>
<
template
v-else
>
<template
v-for=
"(x, i) in g.attr_groups[0].attr_list"
>
<view
class=
"item"
v-if=
"i
<
5
"
:key=
"i"
style=
"margin-bottom: 5px;"
>
{{
x
.
attr_name
}}
</view>
<view
class=
"item"
v-if=
"i
<
5
"
:key=
"i"
style=
"margin-bottom: 5px;"
>
{{
x
.
attr_name
}}
</view>
</
template
>
<view
class=
"item"
v-if=
"g.attr_groups[0].attr_list.length > 1"
>
共{{ g.attr_groups[0].attr_list.length }}种{{ g.attr_groups[0].attr_group_name }}可选
</view>
<view
class=
"item"
v-if=
"g.attr_groups[0].attr_list.length > 1"
>
共{{ g.attr_groups[0].attr_list.length }}种{{ g.attr_groups[0].attr_group_name }}可选
</view>
</template>
</view>
</view>
</view>
<view
class=
"sku-box u-skeleton-rect"
v-if=
"g.sendArea&&g.sendArea!=''
"
>
<view
class=
"sku-box u-skeleton-rect"
v-if=
"g.sendArea&&g.sendArea!=''&&u.TenantId!=27
"
>
<view
class=
"label"
>
发货地
</view>
<view
class=
"content"
>
{{g.sendArea }}
</view>
</view>
<view
class=
"sku-box u-skeleton-rect"
v-if=
"setting.is_express == '1'&&setting.is_show_korea==0
"
>
<view
class=
"sku-box u-skeleton-rect"
v-if=
"setting.is_express == '1'&&setting.is_show_korea==0&&u.TenantId!=27
"
>
<view
class=
"label"
>
快递
</view>
<view
class=
"content"
>
{{ g.express == '' ? '免运费' : '¥' + g.express }}
</view>
</view>
<view
class=
"sku-box u-skeleton-rect"
style=
"margin-top: -10;"
v-if=
"g.goods_marketing.shipping != ''"
>
<view
class=
"sku-box u-skeleton-rect"
style=
"margin-top: -10;"
v-if=
"g.goods_marketing.shipping != ''&&u.TenantId!=27"
>
<view
class=
"label"
>
包邮
</view>
<view
class=
"content"
>
{{ g.goods_marketing.shipping }}
</view>
</view>
<view
class=
"sku-box u-skeleton-rect"
style=
"margin-top: -10;"
v-if=
"g.goods_marketing.limit != ''&&setting.is_show_korea==0"
>
<view
class=
"sku-box u-skeleton-rect"
style=
"margin-top: -10;"
v-if=
"g.goods_marketing.limit != ''&&setting.is_show_korea==0&&u.TenantId!=27"
>
<view
class=
"label"
>
限购
</view>
<view
class=
"content"
>
{{ g.goods_marketing.limit }}
</view>
</view>
...
...
@@ -267,43 +341,31 @@
</view>
</view>
<view
class=
"sku-box u-skeleton-rect"
v-if=
"comments.length == 0 && setting.is_comment == 1&&setting.is_show_korea==0"
>
<view
class=
"sku-box u-skeleton-rect"
v-if=
"comments.length == 0 && setting.is_comment == 1&&setting.is_show_korea==0&&u.TenantId!=27"
>
<view
class=
"label"
>
暂无评论信息
</view>
</view>
<view
class=
"comment"
v-if=
"comments.length > 0"
>
<view
class=
"chead"
>
<u-section
:bold=
"false"
:sub-color=
"secondary"
:show-split=
"false"
:title=
"`商品评价(${comments.length})`"
sub-title=
"查看更多"
@
click=
"clickCommentHandler"
font-size=
"24"
></u-section>
<u-section
:bold=
"false"
:sub-color=
"secondary"
:show-split=
"false"
:title=
"`商品评价(${comments.length})`"
sub-title=
"查看更多"
@
click=
"clickCommentHandler"
font-size=
"24"
></u-section>
</view>
<view
class=
"content"
>
<view
class=
"u-box"
>
<view
class=
"user"
>
<u-avatar
:src=
"comments[0].UserPhotoPath"
:size=
"50"
></u-avatar>
<text
style=
"margin-left: 10px;"
>
{{ comments[0].UserName }}
</text>
<u-rate
:current=
"comments[0].CommentScore"
active-color=
"#FA3534"
inactive-color=
"#b2b2b2"
active-icon=
"star"
inactive-icon=
"star-o"
size=
"20"
:disabled=
"true"
></u-rate>
<u-rate
:current=
"comments[0].CommentScore"
active-color=
"#FA3534"
inactive-color=
"#b2b2b2"
active-icon=
"star"
inactive-icon=
"star-o"
size=
"20"
:disabled=
"true"
></u-rate>
</view>
<view
class=
"timer"
>
{{ comments[0].CreateDate }}
</view>
</view>
<view
class=
"ucontent"
>
{{ comments[0].Content }}
</view>
</view>
</view>
<u-divider
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"transparent"
>
商品详情
</u-divider>
<view
class=
"details"
>
<u-divider
v-if=
'u.TenantId!=27'
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"transparent"
>
商品详情
</u-divider>
<view
class=
"details"
v-if=
'u.TenantId!=27'
>
<h-parse
v-if=
"AppletID!=5"
:content=
"detailContent"
@
navigate=
"clickDescription"
></h-parse>
<!-- 甲鹤等于5 -->
<rich-text
v-if=
"AppletID==5"
:nodes=
"detailContent"
></rich-text>
...
...
@@ -336,83 +398,63 @@
<view
class=
"goodComentBtn"
@
click=
"submitCommit"
>
提交留言
</view>
</view>
</
template
>
<u-divider
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"transparent"
>
或许你喜欢
</u-divider>
<view
style=
"width: calc(100vw - 20px); margin-left: 10px; overflow: hidden;"
>
<u-divider
v-if=
'u.TenantId!=27'
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"transparent"
>
或许你喜欢
</u-divider>
<view
v-if=
'u.TenantId!=27'
style=
"width: calc(100vw - 20px); margin-left: 10px; overflow: hidden;"
>
<goodlist
:list=
"recommend"
></goodlist>
</view>
<u-skeleton
v-if=
"loading"
:loading=
"true"
:animation=
"true"
bgcolor=
"#FFF"
></u-skeleton>
<
template
v-if=
"setting&&setting.is_show_korea==0"
>
<goodsaction
v-if=
"!loading"
:good-name=
"g.name"
:cover-pic=
"g.cover_pic"
:favorite=
"g.favorite"
:good-id=
"id"
:total-stock=
"g.totalStock"
:status=
"g.status"
:formid=
'g.form_id'
@
joincar=
"joinCar"
@
buy=
"buy"
></goodsaction>
<goodsaction
v-if=
"!loading"
:good-name=
"g.name"
:cover-pic=
"g.cover_pic"
:favorite=
"g.favorite"
:good-id=
"id"
:total-stock=
"g.totalStock"
:status=
"g.status"
:formid=
'g.form_id'
@
joincar=
"joinCar"
@
buy=
"buy"
></goodsaction>
</
template
>
<
template
v-if=
"setting&&setting.is_show_korea==1"
>
<kotragoodsaction
v-if=
"!loading"
:good-name=
"g.name"
:cover-pic=
"g.pic_url"
:favorite=
"g.favorite"
:good-id=
"id"
:total-stock=
"g.totalStock"
:status=
"g.status"
@
buy=
"buy"
>
<kotragoodsaction
v-if=
"!loading"
:good-name=
"g.name"
:cover-pic=
"g.pic_url"
:favorite=
"g.favorite"
:good-id=
"id"
:total-stock=
"g.totalStock"
:status=
"g.status"
@
buy=
"buy"
>
</kotragoodsaction>
</
template
>
<goodsku
v-if=
"!loading && showSku"
border-radius=
"10"
v-model=
"showSku"
:mask-close-able=
"true"
:safe-area-inset-bottom=
"true"
:good=
"g"
:option-type=
"ot"
:skued=
"currentSku"
@
close=
"closeSkuChosen"
></goodsku>
<goodsku
v-if=
"!loading && showSku"
border-radius=
"10"
v-model=
"showSku"
:mask-close-able=
"true"
:safe-area-inset-bottom=
"true"
:good=
"g"
:option-type=
"ot"
:skued=
"currentSku"
@
close=
"closeSkuChosen"
>
</goodsku>
</view>
<u-empty
text=
"没有找到商品,或商品已下架"
mode=
"favor"
v-if=
"!isExsitGoods"
></u-empty>
<share
:good-id=
"id"
v-if=
"showShare"
:good-name=
"g.name"
:images=
"g.pic_url"
:advertising=
"g.advertising"
@
close=
"closeShare"
></share>
<share
:good-id=
"id"
v-if=
"showShare"
:good-name=
"g.name"
:images=
"g.pic_url"
:advertising=
"g.advertising"
@
close=
"closeShare"
></share>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
<coupon
v-if=
"showCoupons"
:coupon-message=
"couponMessage"
@
goLook=
"goLook"
@
closeBtn=
"closeBtn"
></coupon>
<coupon
v-if=
"showCoupons"
:coupon-message=
"couponMessage"
@
goLook=
"goLook"
@
closeBtn=
"closeBtn"
></coupon>
</view>
</template>
<
script
>
// #ifdef APP-NVUE
const
dom
=
weex
.
requireModule
(
"dom"
);
// #endif
import
goodlist
from
"@/components/goods/list"
;
import
goodsaction
from
"./components/goodsaction"
;
import
kotragoodsaction
from
"./components/kotragoodsaction"
;
//韩国馆项目引用
import
goodsku
from
"@/components/goods/goodsku"
;
import
auth
from
"@/components/auth/index"
;
import
coupon
from
"@/components/coupons/coupons"
;
import
share
from
"./components/share/share"
;
import
hParse
from
"@/components/u-parse/parse.vue"
;
export
default
{
// #ifdef APP-NVUE
const
dom
=
weex
.
requireModule
(
"dom"
);
// #endif
import
goodlist
from
"@/components/goods/list"
;
import
goodsaction
from
"./components/goodsaction"
;
//购物车收藏
import
kotragoodsaction
from
"./components/kotragoodsaction"
;
//韩国馆项目引用
import
goodsku
from
"@/components/goods/goodsku"
;
import
auth
from
"@/components/auth/index"
;
import
coupon
from
"@/components/coupons/coupons"
;
import
share
from
"./components/share/share"
;
import
hParse
from
"@/components/u-parse/parse.vue"
;
export
default
{
data
()
{
return
{
barStyle
:
{
height
:
'mc '
,
},
list
:
[{
name
:
'老师介绍'
},
{
name
:
'详情介绍'
},
{
name
:
'上课信息'
}
],
current
:
0
,
id
:
0
,
loading
:
true
,
g
:
{},
...
...
@@ -446,21 +488,21 @@ export default {
isAllowShare
:
1
,
u
:
{},
vipState
:
{},
Up
:
0
,
hideshare
:
false
,
comentMsg
:
{
GoodsId
:
0
,
Content
:
''
Up
:
0
,
hideshare
:
false
,
comentMsg
:
{
GoodsId
:
0
,
Content
:
''
},
comListMsg
:
{
pageIndex
:
1
,
pageSize
:
5
,
GoodsId
:
0
comListMsg
:
{
pageIndex
:
1
,
pageSize
:
5
,
GoodsId
:
0
},
compentList
:[]
,
//评论列表
compentTotal
:
0
,
curren
:
1
,
AppletID
:
0
,
//小程序id
compentList
:
[],
//评论列表
compentTotal
:
0
,
curren
:
1
,
AppletID
:
0
,
//小程序id
};
},
components
:
{
...
...
@@ -473,8 +515,10 @@ export default {
share
,
hParse
},
onPageScroll
(
e
)
{
this
.
scrollTop
=
e
.
scrollTop
;
},
onLoad
(
option
)
{
this
.
opTionObj
=
option
;
console
.
log
(
option
,
"option"
);
...
...
@@ -487,32 +531,45 @@ export default {
let
custom_params
=
JSON
.
parse
(
decodeURIComponent
(
option
.
custom_params
));
console
.
log
(
custom_params
);
if
(
custom_params
.
user_id
)
{
uni
.
setStorageSync
(
"pid"
,
{
pid
:
custom_params
.
user_id
});
uni
.
setStorageSync
(
"pid"
,
{
pid
:
custom_params
.
user_id
});
}
if
(
custom_params
.
Up
)
{
//分享进入校园id
uni
.
setStorageSync
(
"Up"
,
{
Up
:
custom_params
.
Up
});
if
(
custom_params
.
Up
)
{
//分享进入校园id
uni
.
setStorageSync
(
"Up"
,
{
Up
:
custom_params
.
Up
});
}
}
if
(
option
&&
option
.
user_id
)
{
uni
.
setStorageSync
(
"pid"
,
{
pid
:
option
.
user_id
});
uni
.
setStorageSync
(
"pid"
,
{
pid
:
option
.
user_id
});
}
if
(
option
&&
option
.
SmallShopId
)
{
uni
.
setStorageSync
(
"SmallShopId"
,
{
SmallShopId
:
option
.
SmallShopId
});
uni
.
setStorageSync
(
"SmallShopId"
,
{
SmallShopId
:
option
.
SmallShopId
});
}
if
(
uni
.
getStorageSync
(
"AnchorName"
))
{
//如果有主播名称了先清除
uni
.
removeStorageSync
(
"AnchorName"
);
}
if
(
option
&&
option
.
Up
)
{
//分享进入校园id
uni
.
setStorageSync
(
"Up"
,
{
Up
:
option
.
Up
});
if
(
option
&&
option
.
Up
)
{
//分享进入校园id
uni
.
setStorageSync
(
"Up"
,
{
Up
:
option
.
Up
});
}
this
.
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
//用于分享出去的参数
this
.
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
//用于分享出去的参数
if
(
option
&&
option
.
AnchorName
)
{
//当传过来有主播名称的时候 存入缓存
uni
.
setStorageSync
(
"AnchorName"
,
{
AnchorName
:
option
.
AnchorName
});
uni
.
setStorageSync
(
"AnchorName"
,
{
AnchorName
:
option
.
AnchorName
});
}
let
basedata
=
uni
.
getStorageSync
(
"basedata"
)?
uni
.
getStorageSync
(
"basedata"
):
''
;
this
.
AppletID
=
basedata
.
home_pages
.
id
?
basedata
.
home_pages
.
id
:
0
;
let
basedata
=
uni
.
getStorageSync
(
"basedata"
)
?
uni
.
getStorageSync
(
"basedata"
)
:
''
;
this
.
AppletID
=
basedata
.
home_pages
.
id
?
basedata
.
home_pages
.
id
:
0
;
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
// if (!this.u) {
// this.u = {
...
...
@@ -545,32 +602,32 @@ export default {
console
.
log
(
"分享调用"
);
this
.
getReceive
();
},
2500
);
let
uid
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserId
:
0
;
if
(
uid
==
0
)
{
uid
=
uni
.
getStorageSync
(
"pid"
)?
uni
.
getStorageSync
(
"pid"
).
pid
:
0
}
let
SmallShopId
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
SmallShopId
:
0
;
if
(
SmallShopId
==
0
){
//如果微店id为0 去找所属微店id
SmallShopId
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserSmallShopId
:
0
;
let
uid
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserId
:
0
;
if
(
uid
==
0
)
{
uid
=
uni
.
getStorageSync
(
"pid"
)
?
uni
.
getStorageSync
(
"pid"
).
pid
:
0
}
let
SmallShopId
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
SmallShopId
:
0
;
if
(
SmallShopId
==
0
)
{
//如果微店id为0 去找所属微店id
SmallShopId
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserSmallShopId
:
0
;
}
let
title
=
this
.
g
.
app_share_title
!=
null
&&
this
.
g
.
app_share_title
!=
""
?
this
.
g
.
app_share_title
:
this
.
g
.
name
;
this
.
g
.
app_share_title
!=
null
&&
this
.
g
.
app_share_title
!=
""
?
this
.
g
.
app_share_title
:
this
.
g
.
name
;
let
imageUrl
=
this
.
g
.
app_share_pic
!=
null
&&
this
.
g
.
app_share_pic
!=
""
?
this
.
g
.
app_share_pic
:
this
.
g
.
pic_url
[
0
].
pic_url
;
this
.
g
.
app_share_pic
!=
null
&&
this
.
g
.
app_share_pic
!=
""
?
this
.
g
.
app_share_pic
:
this
.
g
.
pic_url
[
0
].
pic_url
;
let
id
=
this
.
id
;
return
{
title
:
title
,
query
:
"id="
+
this
.
id
+
"&user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
this
.
Up
,
query
:
"id="
+
this
.
id
+
"&user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
this
.
Up
,
imageUrl
:
imageUrl
,
};
},
...
...
@@ -581,24 +638,21 @@ export default {
},
2500
);
let
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
let
uid
=
u
.
UserId
?
u
.
UserId
:
0
;
if
(
uid
==
0
)
{
uid
=
uni
.
getStorageSync
(
"pid"
)?
uni
.
getStorageSync
(
"pid"
).
pid
:
0
if
(
uid
==
0
)
{
uid
=
uni
.
getStorageSync
(
"pid"
)
?
uni
.
getStorageSync
(
"pid"
).
pid
:
0
}
let
SmallShopId
=
u
.
SmallShopId
?
u
.
SmallShopId
:
0
;
if
(
SmallShopId
==
0
){
//如果微店id为0 去找所属微店id
SmallShopId
=
u
.
UserSmallShopId
?
u
.
UserSmallShopId
:
0
if
(
SmallShopId
==
0
)
{
//如果微店id为0 去找所属微店id
SmallShopId
=
u
.
UserSmallShopId
?
u
.
UserSmallShopId
:
0
}
return
{
title
:
this
.
g
.
app_share_title
!=
null
&&
this
.
g
.
app_share_title
!=
""
?
this
.
g
.
app_share_title
:
this
.
g
.
name
,
title
:
this
.
g
.
app_share_title
!=
null
&&
this
.
g
.
app_share_title
!=
""
?
this
.
g
.
app_share_title
:
this
.
g
.
name
,
// path: "/pages/goods/goods?id=" + this.id + "&user_id=" + uid+ "&SmallShopId=" + SmallShopId,
path
:
"/pages/index/index?id="
+
this
.
id
+
"&user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
this
.
Up
+
'&JumpType=1'
,
imageUrl
:
this
.
g
.
app_share_pic
!=
null
&&
this
.
g
.
app_share_pic
!=
""
?
this
.
g
.
app_share_pic
:
this
.
g
.
pic_url
[
0
].
pic_url
,
path
:
"/pages/index/index?id="
+
this
.
id
+
"&user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
this
.
Up
+
'&JumpType=1'
,
imageUrl
:
this
.
g
.
app_share_pic
!=
null
&&
this
.
g
.
app_share_pic
!=
""
?
this
.
g
.
app_share_pic
:
this
.
g
.
pic_url
[
0
].
pic_url
,
};
},
mounted
()
{
...
...
@@ -609,6 +663,13 @@ export default {
},
methods
:
{
// counter() {
// document.querySelector("#productId");
// },
// tob切换
change
(
index
)
{
this
.
current
=
index
;
},
clickDescription
(
e
)
{
console
.
log
(
e
);
},
...
...
@@ -647,9 +708,8 @@ export default {
initPage
()
{
let
currentPages
=
getCurrentPages
();
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
uni
.
getStorageSync
(
"basedata"
)
?
uni
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
let
pages
=
uni
.
getStorageSync
(
"basedata"
)
?
uni
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
...
...
@@ -666,8 +726,7 @@ export default {
},
getVipId
()
{
//获取会员ID
this
.
request2
(
{
this
.
request2
({
url
:
"/api/AppletGoods/GetAppletVipGradeInfo"
,
data
:
{},
},
...
...
@@ -688,8 +747,7 @@ export default {
},
init
()
{
this
.
loading
=
true
;
this
.
request2
(
{
this
.
request2
({
url
:
"/api/AppletGoods/GetAppletGoodsInfo"
,
data
:
{
GoodsId
:
this
.
id
,
...
...
@@ -734,7 +792,7 @@ export default {
// );
this.detailContent = richtext;
if(this.AppletID==5)
{
if (this.AppletID == 5)
{
this.detailContent = this.formatRichText(richtext)
}
this.loading = false;
...
...
@@ -751,7 +809,7 @@ export default {
}
);
},
formatRichText(html) {
// 甲鹤小程序的时候 图片超出的处理
formatRichText(html) {
// 甲鹤小程序的时候 图片超出的处理
let newContent = html.replace(/<img[^>]*>/gi, function(match, capture) {
match = match.replace(/style="[^"]+"/gi, '').replace(/style='
[
^
']+'
/
gi
,
''
);
match
=
match
.
replace
(
/width="
[^
"
]
+"/gi
,
''
).
replace
(
/width='
[^
'
]
+'/gi
,
''
);
...
...
@@ -759,7 +817,8 @@ export default {
return
match
;
});
newContent
=
newContent
.
replace
(
/style="
[^
"
]
+"/gi
,
function
(
match
,
capture
)
{
match
=
match
.
replace
(
/width:
[^
;
]
+;/gi
,
'max-width:100%;'
).
replace
(
/width:
[^
;
]
+;/gi
,
'max-width:100%;'
);
match
=
match
.
replace
(
/width:
[^
;
]
+;/gi
,
'max-width:100%;'
).
replace
(
/width:
[^
;
]
+;/gi
,
'max-width:100%;'
);
return
match
;
});
newContent
=
newContent
.
replace
(
/<br
[^
>
]
*
\/
>/gi
,
''
);
...
...
@@ -773,7 +832,7 @@ export default {
current
:
i
,
longPressActions
:
{
itemList
:
[
"发送给朋友"
,
"保存图片"
,
"收藏"
],
success
:
function
(
data
)
{
success
:
function
(
data
)
{
console
.
log
(
"选中了第"
+
(
data
.
tapIndex
+
1
)
+
...
...
@@ -782,7 +841,7 @@ export default {
"张图片"
);
},
fail
:
function
(
err
)
{
fail
:
function
(
err
)
{
console
.
log
(
err
.
errMsg
);
},
},
...
...
@@ -790,8 +849,7 @@ export default {
},
initComments
()
{
this
.
msg
.
GoodsId
=
this
.
id
;
this
.
request2
(
{
this
.
request2
({
url
:
"/api/AppletOrder/GetAppletGoodsCommentPageList"
,
data
:
this
.
msg
,
},
...
...
@@ -808,14 +866,14 @@ export default {
);
},
initRecommend
()
{
var
UserPageType
=
uni
.
getStorageSync
(
"mall_UserInfo"
)?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
this
.
request2
(
{
var
UserPageType
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
this
.
request2
(
{
url
:
"/api/AppletGoods/GetAppletGoodsRecommendListForZY"
,
data
:
{
RecommendType
:
1
,
GoodsId
:
this
.
id
,
GoodsPageType
:
UserPageType
GoodsId
:
this
.
id
,
GoodsPageType
:
UserPageType
},
},
(
res
)
=>
{
...
...
@@ -824,8 +882,7 @@ export default {
);
},
setFootMarkInfo
(
id
)
{
this
.
request2
(
{
this
.
request2
({
url
:
"/api/AppletUser/SetUserFootMarkInfo"
,
data
:
{
GoodsId
:
id
,
...
...
@@ -884,8 +941,7 @@ export default {
getReceive
()
{
//分享进入调取领券接口
// 1-分享,2-购买并付款
this
.
request2
(
{
this
.
request2
({
url
:
"/api/AppletUser/ShareCoupon"
,
data
:
{
TriggerType
:
1
,
...
...
@@ -915,31 +971,34 @@ export default {
});
},
//点击跳转
startPlay
(
item
){
uni
.
navigateTo
({
url
:
'/pages/video/index?GoodsId='
+
this
.
id
+
'&VideoUrl='
+
item
.
pic_url
})
startPlay
(
item
)
{
uni
.
navigateTo
({
url
:
'/pages/video/index?GoodsId='
+
this
.
id
+
'&VideoUrl='
+
item
.
pic_url
})
},
goCoiling
(
url
){
//跳转发圈页面
uni
.
navigateTo
({
url
:
url
})
goCoiling
(
url
)
{
//跳转发圈页面
uni
.
navigateTo
({
url
:
url
})
},
//提交留言
submitCommit
()
{
submitCommit
()
{
this
.
comentMsg
.
GoodsId
=
this
.
id
;
if
(
this
.
comentMsg
.
Content
==
''
)
{
if
(
this
.
comentMsg
.
Content
==
''
)
{
uni
.
showToast
({
title
:
"请输入评价内容"
,
icon
:
'none'
icon
:
'none'
});
return
;
}
if
(
this
.
comentMsg
.
Content
.
length
<
10
)
{
if
(
this
.
comentMsg
.
Content
.
length
<
10
)
{
uni
.
showToast
({
title
:
"留言至少10个字!"
,
icon
:
'none'
icon
:
'none'
});
return
;
}
this
.
request2
(
{
this
.
request2
({
url
:
"/api/AppletGoods/SetGoodsLeavemessage"
,
data
:
this
.
comentMsg
,
},
...
...
@@ -948,84 +1007,192 @@ export default {
uni
.
showToast
({
title
:
"评价成功"
});
this
.
comentMsg
.
Content
=
''
;
this
.
comentMsg
.
Content
=
''
;
this
.
getCommitList
();
}
}
);
},
//获取评论信息
getCommitList
(){
this
.
request2
(
{
getCommitList
()
{
this
.
request2
({
url
:
"/api/AppletGoods/GetGoodsLeaveMessagePage"
,
data
:
this
.
comListMsg
,
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
compentTotal
=
res
.
data
.
pageCount
;
this
.
compentList
=
res
.
data
.
pageData
;
this
.
compentList
=
res
.
data
.
pageData
;
}
}
);
},
//上一页
goBefore
()
{
goBefore
()
{
this
.
comListMsg
.
pageIndex
--
;
if
(
this
.
comListMsg
.
pageIndex
<
1
)
{
this
.
comListMsg
.
pageIndex
=
1
if
(
this
.
comListMsg
.
pageIndex
<
1
)
{
this
.
comListMsg
.
pageIndex
=
1
}
this
.
getCommitList
();
},
//下一页
goAfter
()
{
if
(
this
.
comListMsg
.
pageIndex
<
this
.
compentTotal
)
{
goAfter
()
{
if
(
this
.
comListMsg
.
pageIndex
<
this
.
compentTotal
)
{
this
.
comListMsg
.
pageIndex
++
;
}
this
.
getCommitList
();
},
//删除评论
delCompent
(
item
){
this
.
request2
(
{
delCompent
(
item
)
{
this
.
request2
({
url
:
"/api/AppletGoods/RemoveGoodsLeavemessage"
,
data
:
{
Id
:
item
.
Id
},
data
:
{
Id
:
item
.
Id
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
uni
.
showToast
({
title
:
"删除成功"
});
this
.
comListMsg
.
pageIndex
=
1
;
this
.
comListMsg
.
pageIndex
=
1
;
this
.
getCommitList
();
}
}
);
},
goclose
()
{
this
.
hideshare
=
true
;
goclose
()
{
this
.
hideshare
=
true
;
this
.
$forceUpdate
()
console
.
log
(
this
.
hideshare
,
'this.hideshare'
)
console
.
log
(
this
.
hideshare
,
'this.hideshare'
)
}
},
};
};
</
script
>
<
style
>
@font-face
{
.the-top
{
position
:
absolute
;
top
:
82%
;
right
:
0%
;
width
:
50px
;
height
:
50px
;
}
.information-list
{
color
:
#999
;
margin-bottom
:
50
rpx
;
}
.information-list2
{
margin-left
:
50
rpx
;
}
.teacher
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
margin-bottom
:
50
rpx
;
}
.teacher2
{
margin-left
:
30
rpx
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
/* width: 100%; */
flex
:
1
;
}
.teacher3
{
line-height
:
45
rpx
;
}
.teacher4
{
font-weight
:
bold
;
}
.teacher5
{
color
:
#999
;
font-size
:
20
rpx
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
}
.introduce-box
{
display
:
flex
;
align-items
:
center
;
margin-top
:
50
rpx
;
margin-bottom
:
50
rpx
;
}
.introduce
{
width
:
4
rpx
;
height
:
30
rpx
;
background-color
:
red
;
display
:
inline-block
;
}
.introduce2
{
font-weight
:
bold
;
font-size
:
30
rpx
;
margin-left
:
10
rpx
}
.u-tab-item
{
color
:
black
!important
;
}
.the-price
{
margin-top
:
30
rpx
;
}
.small22
{
font-size
:
32
rpx
;
}
.numfont22
{
font-family
:
"oswald"
;
font-weight
:
unset
;
font-size
:
44
rpx
;
font-weight
:
bold
;
}
.sign-up
{
font-size
:
20
rpx
;
color
:
#999
;
display
:
flex
;
align-items
:
center
;
}
.sign-dian
{
height
:
6
rpx
;
width
:
6
rpx
;
border-radius
:
50%
;
background-color
:
#999
;
margin-left
:
10
rpx
;
margin-right
:
10
rpx
;
display
:
inline-block
;
}
@font-face
{
font-family
:
"oswald"
;
src
:
url("https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/smallapp/Oswald-Regular.ttf")
;
}
.goods
{
}
.goods
{
height
:
100%
;
background
:
#f5f5f5
;
padding-bottom
:
55px
;
}
.goods
.g-info
{
position
:
relative
;
}
.goods
.g-info
{
background
:
#fff
;
padding
:
10px
;
}
.goods
.g-info
.g-name
{
}
.goods
.g-info
.g-name
{
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
...
...
@@ -1033,89 +1200,108 @@ export default {
-webkit-box-orient
:
vertical
;
font-size
:
16px
;
height
:
45px
;
}
.goods
.g-info
.g-price-box
{
}
.goods
.g-info
.g-price-box
{
display
:
flex
;
align-items
:
flex-end
;
}
.goods
.g-info
.g-price-box
.left
{
}
.goods
.g-info
.g-price-box
.left
{
flex
:
1
;
width
:
1px
;
}
.goods
.g-info
.g-price-box
.left
.price
{
}
.goods
.g-info
.g-price-box
.left
.price
{
margin
:
15px
0
;
font-size
:
24px
;
font-weight
:
bold
;
height
:
31px
;
}
.goods
.g-info
.g-price-box
.left
.price
.small
{
}
.goods
.g-info
.g-price-box
.left
.price
.small
{
font-size
:
16px
;
}
.goods
.numfont
{
}
.goods
.numfont
{
font-family
:
"oswald"
;
font-weight
:
unset
;
}
.goods
.g-info
.g-price-box
.left
.sell
{
}
.goods
.g-info
.g-price-box
.left
.sell
{
font-size
:
13px
;
color
:
gray
;
}
.goods
.g-info
.g-price-box
.left
.sell
.oprice
{
}
.goods
.g-info
.g-price-box
.left
.sell
.oprice
{
text-decoration
:
line-through
;
margin-right
:
12px
;
}
.goods
.g-info
.g-price-box
.right
{
}
.goods
.g-info
.g-price-box
.right
{
width
:
30px
;
margin-left
:
20px
;
height
:
100%
;
font-size
:
12px
;
color
:
#333
;
}
.goods
.g-info
.g-price-box
.right
.share-icon
{
}
.goods
.g-info
.g-price-box
.right
.share-icon
{
width
:
22px
;
height
:
22px
;
margin-bottom
:
12
rpx
;
}
.goods
.sku-box
{
}
.goods
.sku-box
{
margin
:
10px
0
;
background
:
#fff
;
display
:
flex
;
padding
:
15px
10px
;
align-items
:
center
;
}
.goods
.sku-box
.label
{
}
.goods
.sku-box
.label
{
font-size
:
12px
;
color
:
gray
;
margin-right
:
15px
;
}
.goods
.details
{
}
.goods
.details
{
padding
:
10px
;
}
.goods
.details
image
{
}
.goods
.details
image
{
width
:
100%
;
}
.goods
.sku-box
.content
{
}
.goods
.sku-box
.content
{
width
:
1px
;
flex
:
1
;
color
:
#000
;
font-size
:
12px
;
}
.goods
.sku-box
.content
.sku-chosen
{
}
.goods
.sku-box
.content
.sku-chosen
{
display
:
flex
;
align-items
:
center
;
}
.goods
.sku-box
.content
.sku-chosen
.arrow
{
}
.goods
.sku-box
.content
.sku-chosen
.arrow
{
width
:
20px
;
}
.goods
.sku-box
.content
.sku-chosen
.sku
{
}
.goods
.sku-box
.content
.sku-chosen
.sku
{
font-size
:
12px
;
width
:
1
rpx
;
flex
:
1
;
}
.goods
.sku-box
.content
.suk-item
{
}
.goods
.sku-box
.content
.suk-item
{
margin-top
:
10px
;
display
:
flex
;
}
.goods
.sku-box
.content
.suk-item
.item
{
}
.goods
.sku-box
.content
.suk-item
.item
{
margin-right
:
5px
;
background
:
#f5f5f5
;
height
:
24px
;
...
...
@@ -1125,58 +1311,69 @@ export default {
border-radius
:
3px
;
overflow
:
hidden
;
color
:
#999
;
}
.goods
.sku-box
.content
.suk-item
.item.img
{
}
.goods
.sku-box
.content
.suk-item
.item.img
{
padding
:
0
;
width
:
24px
;
}
.goods
.comment
{
}
.goods
.comment
{
margin
:
10px
0
;
background
:
#fff
;
padding
:
10px
;
}
.goods
.comment
.chead
{
}
.goods
.comment
.chead
{
padding-bottom
:
10px
;
border-bottom
:
1px
solid
#f1f1f1
;
}
.goods
.comment
.content
{
}
.goods
.comment
.content
{
display
:
flex
;
flex-direction
:
column
;
margin-top
:
15px
;
}
.goods
.comment
.content
.u-box
{
}
.goods
.comment
.content
.u-box
{
display
:
flex
;
margin-bottom
:
10px
;
align-items
:
center
;
}
.goods
.comment
.content
.u-box
.user
{
}
.goods
.comment
.content
.u-box
.user
{
flex
:
1
;
font-size
:
12px
;
color
:
gray
;
align-items
:
center
;
display
:
flex
;
}
.goods
.comment
.content
.u-box
.timer
{
}
.goods
.comment
.content
.u-box
.timer
{
font-size
:
12px
;
color
:
gray
;
text-align
:
right
;
flex
:
1
;
}
.goods
.comment
.content
.u-box
.ucontent
{
}
.goods
.comment
.content
.u-box
.ucontent
{
font-size
:
12px
;
color
:
#000
;
margin-top
:
10px
;
}
.goods
.detals
{
}
.goods
.detals
{
padding
:
10px
;
background
:
#fff
;
margin-top
:
10px
;
}
.goods
.detals
*
{
}
.goods
.detals
*
{
max-width
:
100%
;
}
.goods
.is_share
{
}
.goods
.is_share
{
width
:
125px
;
height
:
45px
;
border-top-left-radius
:
22.5px
;
...
...
@@ -1189,60 +1386,69 @@ export default {
position
:
absolute
;
top
:
300px
;
right
:
0
;
}
.goods
.Logo
{
}
.goods
.Logo
{
padding
:
1px
5px
;
display
:
inline-block
;
font-size
:
22
rpx
;
margin-right
:
5
rpx
;
border-radius
:
4px
;
}
.goods
.screen-swiper
{
}
.goods
.screen-swiper
{
min-height
:
375
upx
;
}
.goods
.screen-swiper
image
,
.goods
.screen-swiper
video
{
.goods
.screen-swiper
image
,
.goods
.screen-swiper
video
{
width
:
100%
;
display
:
block
;
height
:
100%
;
margin
:
0
;
pointer-events
:
none
;
}
.koarea_Country
{
}
.koarea_Country
{
display
:
flex
;
justify-content
:
space-between
;
padding-bottom
:
10px
;
border-bottom
:
1px
solid
#F2F3F6
;
}
.commontList
{
display
:
flex
;
padding
:
0
10px
;
margin-bottom
:
10px
;
}
.goodComentBtn
{
width
:
100%
;
height
:
40px
;
padding-bottom
:
10px
;
border-bottom
:
1px
solid
#F2F3F6
;
}
.commontList
{
display
:
flex
;
padding
:
0
10px
;
margin-bottom
:
10px
;
}
.goodComentBtn
{
width
:
100%
;
height
:
40px
;
text-align
:
center
;
line-height
:
40px
;
background-color
:
#0b0052
;
color
:
#fff
;
margin-top
:
10px
;
font-size
:
16px
;
}
.fenyeBtn
{
padding
:
3px
6px
;
color
:
#fff
;
margin-top
:
10px
;
font-size
:
16px
;
}
.fenyeBtn
{
padding
:
3px
6px
;
background-color
:
#00BFFF
;
color
:
#fff
;
font-size
:
12px
;
margin
:
0
10px
20px
0
;
}
.goods-Discount
{
color
:
#fff
;
font-size
:
12px
;
margin
:
0
10px
20px
0
;
}
.goods-Discount
{
background-color
:
#FFFFFF
;
box-sizing
:
border-box
;
padding
:
15
rpx
30
rpx
;
display
:
flex
;
}
.discount-left
{
}
.discount-left
{
width
:
80
rpx
;
font-size
:
26
rpx
;
font-family
:
PingFang
SC
;
...
...
@@ -1250,11 +1456,13 @@ export default {
color
:
#111111
;
box-sizing
:
border-box
;
padding-top
:
15
rpx
;
}
.discount-right
{
}
.discount-right
{
flex-grow
:
1
;
}
.discount-item
{
}
.discount-item
{
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
...
...
@@ -1263,8 +1471,9 @@ export default {
align-items
:
center
;
margin-top
:
15
rpx
;
margin-bottom
:
15
rpx
;
}
.discount-type
{
}
.discount-type
{
width
:
52
rpx
;
box-sizing
:
border-box
;
padding
:
0
6
rpx
;
...
...
@@ -1276,5 +1485,5 @@ export default {
font-weight
:
500
;
color
:
#40766E
;
margin-right
:
20
rpx
;
}
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment