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
43386f4f
Commit
43386f4f
authored
Dec 09, 2024
by
youjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
楼宇
parent
6d82f4f7
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
3092 additions
and
0 deletions
+3092
-0
pages.json
pages.json
+11
-0
detail.vue
pages/kotra/BrandEnterprise/detail.vue
+994
-0
list.vue
pages/kotra/BrandEnterprise/list.vue
+580
-0
detail.vue
pages/kotra/CarrierBuilding/detail.vue
+907
-0
CarrierBuildingIndex.vue
pages/kotra/CarrierBuildingIndex.vue
+600
-0
No files found.
pages.json
View file @
43386f4f
...
@@ -8,6 +8,9 @@
...
@@ -8,6 +8,9 @@
"enablePullDownRefresh"
:
true
,
"enablePullDownRefresh"
:
true
,
"style"
:
{
"style"
:
{
"navigationStyle"
:
"custom"
"navigationStyle"
:
"custom"
},
"meta"
:
{
"showTabbar"
:
true
}
}
},
},
{
{
...
@@ -801,6 +804,14 @@
...
@@ -801,6 +804,14 @@
}
}
},
{
},
{
"path"
:
"signSuccse"
//报名成功页面
"path"
:
"signSuccse"
//报名成功页面
},{
"path"
:
"CarrierBuildingIndex"
//载体楼宇首页
},{
"path"
:
"CarrierBuilding/detail"
//载体楼宇详情
},{
"path"
:
"BrandEnterprise/list"
//品牌服务首页
},{
"path"
:
"BrandEnterprise/detail"
//品牌服务详情
}
}
]
]
...
...
pages/kotra/BrandEnterprise/detail.vue
0 → 100644
View file @
43386f4f
<
template
>
<view
style=
"
height: 100vh;
overflow: hidden;
box-sizing: border-box;
position: relative;
"
>
<scroll-view
scroll-y=
"true"
style=
"height: 100%"
@
scroll=
"scroll"
v-if=
'details'
>
<view
class=
"bg-red"
>
<view
class=
"detail-box"
>
<view
class=
"header flex"
style=
"popsition: relative"
>
<view
class=
"title"
style=
"display: flex; align-items: flex-end"
>
{{
details
.
BrandName
}}
<view
v-for=
"(item, index) in details.PrizeList"
:key=
"index"
class=
"screenBoxItem"
@
click=
"chooseYear(item)"
>
<view
class=
"screenBoxItemYear activeYear"
>
{{
item
.
YearInfo
}}
</view>
<view
class=
"screenBoxItemName activeName"
>
{{
item
.
Name
}}
</view>
</view>
</view>
<!-- 关注 -->
<view
style=
"
width: 120rpx;
height: 120rpx;
margin-left: 12rpx;
margin-right: -40rpx;
position: absolute;
top: 0;
right: 50rpx;
"
@
click=
"follow"
>
<image
v-if=
"details.CollectId == 0"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616480343000_509.png"
style=
"width: 100%; height: 100%"
></image>
<image
v-if=
"details.CollectId > 0"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616480343000_370.png"
style=
"width: 100%; height: 100%"
></image>
</view>
</view>
<view
class=
"score-box flex item-center"
v-if=
"details.OpenShopWish != -1"
>
<u-rate
:current=
"details.OpenShopWish"
:count=
"5"
:size=
"25"
active-icon=
"star"
active-color=
"#F30329"
:disabled=
"true"
inactive-color=
"#b2b2b2"
class=
"rate"
></u-rate>
<text
class=
"score"
>
{{
details
.
OpenShopWish
?
details
.
OpenShopWish
:
"0"
}}
分
</text>
<text
class=
"desire"
>
开店意愿
</text>
</view>
<view
v-if=
"details.OpenShopWish == -1"
>
<text
class=
"desire"
>
无开店意愿
</text>
</view>
<view
style=
"width: 100%"
>
<view
v-if=
"!details.VideoUrl || details.VideoUrl == ''"
class=
"img-box"
>
<view
v-if=
"details.BannerList.length == 1"
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"width: 100%; height: 226rpx"
>
<image
:src=
"src"
style=
"width: 100%; height: 100%; border-radius: 20rpx"
mode=
"aspectFill"
@
click=
"previewImage(0)"
></image>
</view>
<view
v-if=
"details.BannerList.length == 2"
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"width: calc((100vw - 80rpx - 10rpx) / 2); height: 226rpx"
>
<image
:src=
"src"
v-if=
"index == 0"
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 0 0 20rpx;
"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
<image
:src=
"src"
v-if=
"index == 1"
style=
"
width: 100%;
height: 100%;
border-radius: 0 20rpx 20rpx 0;
"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
v-if=
"details.BannerList.length > 2"
style=
"height: 226rpx"
>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
v-if=
"index == 0"
@
click=
"previewImage(index)"
style=
"border-radius: 20rpx 0 0 20rpx"
></image>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
v-if=
"index == 1"
@
click=
"previewImage(index)"
></image>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
v-if=
"index == 2"
@
click=
"previewImage(index)"
style=
"border-radius: 0 20rpx 20rpx 0"
></image>
</view>
</view>
<view
v-else
>
<view
v-if=
"details.BannerList.length == 1"
class=
"img-box"
>
<view
style=
"
width: calc((100vw - 80rpx - 10rpx) / 2);
height: 226rpx;
position: relative;
"
>
<video
id=
"myVideo"
:src=
"details.VideoUrl"
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 0 0 20rpx;
"
:controls=
"controls"
:show-center-play-btn=
"false"
:show-fullscreen-btn=
"false"
@
fullscreenchange=
"brandvideoControl"
></video>
<view
@
click=
"enlarge(details.VideoUrl)"
style=
"
position: absolute;
left: 50%;
top: 50%;
margin-top: -30rpx;
margin-left: -30rpx;
width: 60rpx;
height: 60rpx;
border-radius: 20rpx;
background-color: rgba(255, 255, 255, 0.4);
display: flex;
align-items: center;
justify-content: center;
"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616471847000_345.png"
style=
"width: 37rpx; height: 44rpx"
mode=
""
></image>
</view>
</view>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"
width: calc((100vw - 80rpx - 10rpx) / 2);
height: 226rpx;
"
>
<image
:src=
"src"
style=
"
width: 100%;
height: 100%;
border-radius: 0 20rpx 20rpx 0;
"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
</view>
<view
v-if=
"details.BannerList.length > 1"
class=
"img-box"
>
<view
style=
"
width: calc((100vw - 80rpx - 20rpx) / 3);
height: 226rpx;
position: relative;
"
>
<video
id=
"myVideo"
:src=
"details.VideoUrl"
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 0 0 20rpx;
"
:controls=
"controls"
:show-center-play-btn=
"false"
:show-fullscreen-btn=
"false"
@
fullscreenchange=
"brandvideoControl"
></video>
<view
@
click=
"enlarge(details.VideoUrl)"
style=
"
position: absolute;
left: 50%;
top: 50%;
margin-top: -30rpx;
margin-left: -30rpx;
width: 60rpx;
height: 60rpx;
border-radius: 20rpx;
background-color: rgba(255, 255, 255, 0.4);
display: flex;
align-items: center;
justify-content: center;
"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616471847000_345.png"
style=
"width: 37rpx; height: 44rpx"
mode=
""
></image>
</view>
</view>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"
width: calc((100vw - 80rpx - 10rpx) / 3);
height: 226rpx;
"
v-if=
"index
<
2
"
>
<image
:src=
"src"
style=
"width: 100%; height: 100%"
v-if=
"index == 0"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
<image
:src=
"src"
style=
"
width: 100%;
height: 100%;
border-radius: 0 20rpx 20rpx 0;
"
v-if=
"index == 1"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
</view>
</view>
</view>
<!-- //奖章 -->
<view
class=
"MedalBox"
v-if=
"details.ListEnroll.length > 0"
>
<view
v-for=
"(item, index) in details.ListEnroll"
:key=
"index"
class=
"MedalBoxItem"
>
<image
:src=
"item.MedalImageBig"
mode=
"heightFix"
style=
"height: 100%"
/>
</view>
</view>
<view
class=
"info1 flex flex-between"
>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
{{
details
.
ShopNum
}}
</view>
<view
class=
"info1-title"
>
店铺数量
</view>
</view>
<!--
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
{{
details
.
ProjectName
}}
</view>
<view
class=
"info1-title"
>
对标载体
</view>
</view>
-->
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
<view
class=
"brand-xinx-item-t"
:style=
"
{ color: mainColor }" v-if="
details.AreaRequirement == 0
&&
details.EndAreaRequirement != 0
">
{{
details
.
EndAreaRequirement
>=
10000
?
details
.
EndAreaRequirement
/
10000
+
"万"
:
details
.
EndAreaRequirement
}}
<text
style=
"font-size: 12px"
>
㎡
</text></view>
<view
class=
"brand-xinx-item-t"
:style=
"
{ color: mainColor }" v-if="
details.EndAreaRequirement == 0
&&
details.AreaRequirement != 0
">
{{
details
.
AreaRequirement
>=
10000
?
details
.
AreaRequirement
/
10000
+
"万"
:
details
.
AreaRequirement
}}
<text
style=
"font-size: 12px"
>
㎡
</text></view>
<view
class=
"brand-xinx-item-t"
:style=
"
{ color: mainColor }" v-if="
details.AreaRequirement != 0
&&
details.EndAreaRequirement != 0
">
{{
details
.
AreaRequirement
>=
10000
?
details
.
AreaRequirement
/
10000
+
"万"
:
details
.
AreaRequirement
}}
~
{{
details
.
EndAreaRequirement
>=
10000
?
details
.
EndAreaRequirement
/
10000
+
"万"
:
details
.
EndAreaRequirement
}}
<text
style=
"font-size: 12px"
>
㎡
</text></view>
<view
class=
"brand-xinx-item-t"
:style=
"
{ color: mainColor }" v-if="
details.AreaRequirement == 0
&&
details.EndAreaRequirement == 0
">/
</view>
</view>
<view
class=
"info1-title"
>
面积需求
</view>
</view>
</view>
<view
class=
"baseinfo"
>
<!--
<view
class=
"baseinfo-item flex "
>
<view
class=
"baseinfo-label"
>
拓店区域:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
StoreExpansion
}}
</view>
</view>
<view
class=
"baseinfo-item flex "
>
<view
class=
"baseinfo-label"
>
品牌定位:
</view>
<view
class=
"baseinfo-con"
>
商业地产+体育运动的新型“SPORTMALL”的全新商业场景
</view>
</view>
-->
<view
class=
"baseinfo-item flex"
v-if=
"details.CustomerType && details.CustomerType!='' "
>
<view
class=
"baseinfo-label"
>
客群定位:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
CustomerType
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.BrandType && details.BrandType!='' "
>
<view
class=
"baseinfo-label"
>
行业定位:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
BrandType
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.StoreExpansion && details.StoreExpansion!='' "
>
<view
class=
"baseinfo-label"
>
开店方向:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
StoreExpansion
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.IsInChengdu && details.IsInChengdu==1 "
>
<view
class=
"baseinfo-label"
>
成都落地:
</view>
<view
class=
"baseinfo-con"
>
是
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.Other && details.Other!='' "
>
<view
class=
"baseinfo-label"
>
招引需求:
</view>
<view
class=
"baseinfo-con"
>
<rich-text
:nodes=
"details.Other"
></rich-text>
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.WishDescription && details.WishDescription != ''"
>
<view
class=
"baseinfo-label"
>
拓展对接人:
</view>
</view>
<view
style=
"width: 100%; height: 360rpx"
v-if=
"details.WishDescription && details.WishDescription != ''"
>
<image
:src=
"details.WishCard"
style=
"width: 100%; height: 360rpx; border-radius: 20px"
@
click=
"previewImage2(details.WishCard)"
></image>
</view>
</view>
<view
class=
"brand-title"
v-if=
"details.WishDescription && details.WishDescription != ''"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/kotra-tzxq.png"
mode=
"widthFix"
></image>
</view>
<view
style=
"margin-top: 30rpx"
v-if=
"details.WishDescription && details.WishDescription != ''"
>
<h-parse
:content=
"details.WishDescription"
@
navigate=
"clickDescription"
></h-parse>
</view>
<view
class=
"brand-title"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/kotra-wyxq.png"
mode=
"widthFix"
></image>
</view>
<view
class=
"Listbox"
>
<view
id=
"kiakou"
class=
"Listbox-item"
@
click=
"showTips('kiakou', details.ShopSize, details.IsShopSize)"
>
<image
:src=
"EquityList[8].ImagePath"
v-if=
"details.IsShopSize == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[8].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{
color: details.IsShopSize == 1 ? '#424242' : '#D6D6D6',
}">
{{
EquityList
[
8
].
Title
}}
</text>
</view>
<view
class=
"Listbox-item"
>
<image
:src=
"EquityList[0].ImagePath"
v-if=
"details.Plumbing == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[0].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{
color: details.Plumbing == 1 ? '#424242' : '#D6D6D6',
}">
{{
EquityList
[
0
].
Title
}}
</text>
</view>
<view
class=
"Listbox-item"
>
<image
:src=
"EquityList[7].ImagePath"
v-if=
"details.Caliber == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[7].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{ color: details.Caliber == 1 ? '#424242' : '#D6D6D6' }">
{{
EquityList
[
7
].
Title
}}
</text>
</view>
<view
class=
"Listbox-item"
>
<image
:src=
"EquityList[1].ImagePath"
v-if=
"details.Sewage == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[1].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{ color: details.Sewage == 1 ? '#424242' : '#D6D6D6' }">
{{
EquityList
[
1
].
Title
}}
</text>
</view>
<!-- 燃气 -->
<view
class=
"Listbox-item"
id=
"ranqi"
@
click=
"showTips('ranqi', details.RanQiBZ, details.RanQi)"
>
<image
:src=
"EquityList[2].ImagePath"
v-if=
"details.RanQi == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[2].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{ color: details.RanQi == 1 ? '#424242' : '#D6D6D6' }">
{{
EquityList
[
2
].
Title
}}
</text>
</view>
<view
class=
"Listbox-item"
id=
"dianliang"
@
click=
"
showTips('dianliang', details.DianLiang, details.IsDianLiang)
"
>
<image
:src=
"EquityList[3].ImagePath"
v-if=
"details.IsDianLiang == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[3].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{
color: details.IsDianLiang == 1 ? '#424242' : '#D6D6D6',
}">
{{
EquityList
[
3
].
Title
}}
</text>
</view>
<view
class=
"Listbox-item"
id=
"paiyan"
@
click=
"showTips('paiyan', details.PaiYanBZ, details.PaiYan)"
>
<image
:src=
"EquityList[5].ImagePath"
v-if=
"details.PaiYan == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[5].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{ color: details.PaiYan == 1 ? '#424242' : '#D6D6D6' }">
{{
EquityList
[
5
].
Title
}}
</text>
</view>
<view
class=
"Listbox-item"
>
<image
:src=
"EquityList[6].ImagePath"
v-if=
"details.KongTiao == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[6].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{
color: details.KongTiao == 1 ? '#424242' : '#D6D6D6',
}">
{{
EquityList
[
6
].
Title
}}
</text>
</view>
<view
class=
"Listbox-item"
>
<image
:src=
"EquityList[4].ImagePath"
v-if=
"details.XinFeng == 1"
mode=
"widthFix"
></image>
<image
:src=
"EquityList[4].Image_n"
v-else
mode=
"widthFix"
></image>
<text
class=
"list-item-text"
:style=
"
{ color: details.XinFeng == 1 ? '#424242' : '#D6D6D6' }">
{{
EquityList
[
4
].
Title
}}
</text>
</view>
</view>
</view>
</view>
</scroll-view>
<bianmarenTooltip
:gravity=
"gravity"
:tooltipShow=
"tooltipShow"
:btns=
"tooltipBtns"
:eleId=
"eleId"
>
</bianmarenTooltip>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
</view>
</
template
>
<
script
>
import
auth
from
"@/components/auth/index.vue"
;
import
hParse
from
"@/components/u-parse/parse.vue"
;
import
bianmarenTooltip
from
"../components/bianmaren-tooltips.vue"
;
let
timer
;
export
default
{
components
:
{
hParse
,
bianmarenTooltip
,
auth
},
data
()
{
return
{
showAuth
:
false
,
u
:
{},
rate
:
5
,
ID
:
0
,
details
:
null
,
typeList
:
[{
Id
:
0
,
Name
:
"视频"
,
},
{
Id
:
1
,
Name
:
"图片"
,
},
],
boxOption
:
0
,
navsOption
:
0
,
titleStyle
:
{},
active
:
0
,
mainColor
:
""
,
controls
:
false
,
//显示默认控件
EquityList
:
[{
Title
:
"上下水"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-sxs.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-sxs-n.png"
,
},
{
Title
:
"排污"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pw.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pw-n.png"
,
},
{
Title
:
"燃气"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-rh.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-rh-n.png"
,
},
{
Title
:
"电量负荷"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-dl.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-dl-n.png"
,
},
{
Title
:
"新风"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-xf.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-xf-n.png"
,
},
{
Title
:
"排烟量"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pyl.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pyl-n.png"
,
},
{
Title
:
"空调"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kt.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kt-n.png"
,
},
{
Title
:
"管径"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-gj.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-gj-n.png"
,
},
{
Title
:
"开口尺寸"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kkcc.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kkcc-n.png"
,
},
],
gravity
:
"top"
,
tooltipShow
:
false
,
tooltipBtns
:
[
"今日sad"
],
eleId
:
""
,
//点击元素
islook
:
false
,
//是否可以浏览心愿
};
},
onLoad
(
options
)
{
let
that
=
this
;
if
(
options
&&
options
.
id
)
{
this
.
ID
=
options
.
id
;
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
if
(
!
this
.
u
)
{
this
.
u
=
{
nickName
:
"未登录"
,
avatarUrl
:
""
,
};
this
.
showAuth
=
true
;
}
else
{
this
.
GetBrandDetails
();
}
}
uni
.
getSystemInfo
({
success
(
res
)
{
that
.
titleStyle
=
{
height
:
"45px"
,
paddingTop
:
`
${
res
.
statusBarHeight
}
px`
,
opacity
:
"0%"
,
};
},
});
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
uni
.
setNavigationBarTitle
({
title
:
"详情"
,
});
uni
.
setNavigationBarColor
({
frontColor
:
"#ffffff"
,
backgroundColor
:
"#D40224"
,
animation
:
{
duration
:
400
,
timingFunc
:
"easeIn"
,
},
});
},
onShareTimeline
()
{
//朋友圈
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
this
.
details
.
FullBrandName
?
this
.
details
.
FullBrandName
:
""
,
query
:
"user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
+
"&id="
+
this
.
ID
,
imageUrl
:
this
.
details
.
BannerList
&&
this
.
details
.
BannerList
.
length
>
0
?
this
.
details
.
BannerList
[
0
]
:
""
,
};
},
onShareAppMessage
(
res
)
{
//朋友
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
this
.
details
.
FullBrandName
?
this
.
details
.
FullBrandName
:
""
,
path
:
"/pages/index/index?user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
+
"&id="
+
this
.
ID
+
"&JumpType=15"
,
imageUrl
:
this
.
details
.
BannerList
&&
this
.
details
.
BannerList
.
length
>
0
?
this
.
details
.
BannerList
[
0
]
:
""
,
};
},
methods
:
{
reloadUserinfo
()
{
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
this
.
GetBrandDetails
();
},
//关闭登录窗口
gbAuth
()
{
uni
.
navigateBack
()
},
showTips
(
id
,
text
,
showis
)
{
clearInterval
(
timer
);
if
(
this
.
eleId
==
id
&&
this
.
tooltipShow
==
true
)
{
this
.
tooltipShow
=
false
;
}
else
{
console
.
log
(
text
,
showis
);
if
(
text
!=
undefined
&&
text
!=
null
&&
text
!=
""
&&
showis
==
1
)
{
this
.
eleId
=
id
;
this
.
tooltipBtns
=
[
text
];
this
.
tooltipShow
=
true
;
timer
=
setTimeout
(()
=>
{
this
.
tooltipShow
=
false
;
},
3000
);
}
else
{
this
.
tooltipShow
=
false
;
}
}
},
clickDescription
(
e
)
{
console
.
log
(
e
);
},
GetBrandDetails
()
{
this
.
request2
({
url
:
"/api/AppletTrade/GetBrandDetails"
,
data
:
{
ID
:
this
.
ID
,
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
details
=
res
.
data
;
if
(
res
.
data
.
VideoUrl
==
""
)
{
this
.
active
=
1
;
}
this
.
details
.
imgs
=
[];
if
(
this
.
details
.
Other
&&
this
.
details
.
Other
!=
''
){
this
.
details
.
Other
=
this
.
textFormat
(
this
.
details
.
Other
);
}
this
.
details
.
BannerList
.
forEach
((
x
)
=>
{
let
obj
=
{
name
:
x
,
};
this
.
details
.
imgs
.
push
(
obj
);
});
}
}
);
},
textFormat
(
val
)
{
// 格式化文字展示文本域格式文字
if
(
val
)
{
let
newString
=
val
.
replace
(
/
\n
/g
,
'_@'
).
replace
(
/
\r
/g
,
'_#'
);
newString
=
newString
.
replace
(
/_#_@/g
,
'<br/>'
);
// IE7-8
newString
=
newString
.
replace
(
/_@/g
,
'<br/>'
);
// IE9、FF、chrome
newString
=
newString
.
replace
(
/
\s
/g
,
' '
);
// 空格处理
return
newString
;
}
},
changeHandler
(
i
)
{
this
.
active
=
i
;
},
previewImage
(
i
)
{
console
.
log
(
i
);
uni
.
previewImage
({
urls
:
this
.
details
.
BannerList
,
current
:
i
,
longPressActions
:
{
itemList
:
[
"发送给朋友"
,
"保存图片"
,
"收藏"
],
success
:
function
(
data
)
{},
fail
:
function
(
err
)
{
console
.
log
(
err
.
errMsg
);
},
},
});
},
previewImage2
(
i
)
{
uni
.
previewImage
({
urls
:
[
this
.
details
.
WishCard
],
current
:
0
,
longPressActions
:
{
itemList
:
[
"发送给朋友"
,
"保存图片"
,
"收藏"
],
success
:
function
(
data
)
{},
fail
:
function
(
err
)
{
console
.
log
(
err
.
errMsg
);
},
},
});
},
scroll
(
e
)
{
this
.
boxOption
=
Math
.
floor
((
e
.
detail
.
scrollTop
-
50
)
/
1.5
);
this
.
titleStyle
.
opacity
=
(
e
.
detail
.
scrollTop
-
100
<
0
?
0
:
Math
.
floor
(
e
.
detail
.
scrollTop
-
100
))
+
"%"
;
this
.
tooltipShow
=
false
;
this
.
$forceUpdate
();
},
goback
()
{
uni
.
navigateBack
({
delta
:
1
,
});
},
enlarge
(
file
)
{
// 全屏
this
.
videoContext
=
uni
.
createVideoContext
(
"myVideo"
);
this
.
videoContext
.
requestFullScreen
({
direction
:
0
,
});
},
brandvideoControl
(
e
)
{
console
.
log
(
e
);
if
(
e
.
detail
.
fullScreen
==
false
)
{
this
.
videoContext
.
stop
();
this
.
controls
=
false
;
}
else
{
this
.
videoContext
.
play
();
this
.
controls
=
true
;
}
},
getlove
()
{
this
.
request2
({
url
:
"/api/AppletTrade/GetCollect"
,
data
:
{
Type
:
2
,
SourceId
:
this
.
ID
,
Id
:
this
.
details
.
CollectId
,
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
uni
.
showToast
({
title
:
res
.
message
,
icon
:
"none"
,
});
this
.
GetBrandDetails
();
}
}
);
},
// 关注与取消关注
follow
()
{
let
that
=
this
;
let
parms
=
{
url
:
"/api/AppletTrade/GetCollect"
,
data
:
{
SourceId
:
this
.
ID
,
Id
:
this
.
details
.
CollectId
,
Type
:
2
,
},
};
this
.
request2
(
parms
,
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
that
.
GetBrandDetails
();
}
});
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.flex
{
display
:
flex
;
}
.wrap
{
flex-wrap
:
wrap
;
}
.flex-center
{
justify-content
:
center
;
align-items
:
center
;
}
.flex-between
{
justify-content
:
space-between
;
}
.item-center
{
align-items
:
center
;
}
.bg-red
{
background-color
:
#d40224
;
}
.detail-box
{
width
:
100%
;
box-shadow
:
0px
-4rpx
71rpx
0rpx
rgba
(
111
,
111
,
111
,
0
.26
);
border-radius
:
50rpx
50rpx
0rpx
0rpx
;
padding
:
40rpx
40rpx
90rpx
40rpx
;
font-family
:
PingFang
SC
;
background-color
:
#ffffff
;
.header
{
margin-bottom
:
20rpx
;
align-items
:
flex-start
;
.title
{
max-width
:
calc
(
100vw
-
100rpx
-
70rpx
);
font-size
:
42rpx
;
font-weight
:
800
;
color
:
#1f1f1f
;
margin-right
:
20rpx
;
}
.tag-box
{
border-radius
:
6rpx
;
width
:
70px
;
display
:
flex
;
margin-top
:
4px
;
height
:
20px
;
.tag1
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
background-color
:
#1f1f1f
;
font-size
:
20rpx
;
color
:
#ffffff
;
}
.tag2
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
background-image
:
linear-gradient
(
90deg
,
#e8cea5
,
#caa974
);
font-size
:
20rpx
;
color
:
#1f1f1f
;
}
}
}
.score-box
{
height
:
40rpx
;
margin-bottom
:
35rpx
;
.rate
{
margin-right
:
20rpx
;
}
.score
{
font-size
:
20rpx
;
font-weight
:
500
;
color
:
#f30329
;
margin-right
:
20rpx
;
}
.desire
{
font-size
:
20rpx
;
color
:
#111111
;
}
}
.img-box
{
height
:
226rpx
;
border-radius
:
20rpx
;
box-shadow
:
0rpx
10rpx
30rpx
0rpx
rgba
(
36
,
36
,
36
,
0
.2
);
margin-bottom
:
45rpx
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
overflow
:
hidden
;
.img
{
width
:
calc
((
100vw
-
80rpx
-
20rpx
)
/
3
);
height
:
226rpx
;
}
}
.info1
{
margin-bottom
:
60rpx
;
.info1-item
{
// width: 200rpx;之前的3个是200 下面是2个 就平分了宽度
width
:
calc
((
100vw
-
80rpx
-
20rpx
)
/
2
);
.info1-con
{
font-size
:
30rpx
;
font-weight
:
bold
;
color
:
#f30329
;
text-align
:
center
;
margin-bottom
:
18rpx
;
}
.info1-title
{
text-align
:
center
;
font-size
:
24rpx
;
font-weight
:
500
;
color
:
#a4a4a4
;
}
}
}
.baseinfo
{
margin-bottom
:
40rpx
;
.baseinfo-item
{
margin-bottom
:
30rpx
;
.baseinfo-label
{
font-size
:
24rpx
;
font-weight
:
500
;
color
:
#a4a4a4
;
margin-right
:
10rpx
;
white-space
:
nowrap
;
}
.baseinfo-con
{
font-size
:
26rpx
;
font-weight
:
500
;
color
:
#1f1f1f
;
}
}
}
}
.brand-title
{
width
:
134rpx
;
margin-top
:
30px
;
}
.brand-title
image
{
width
:
100%
;
height
:
auto
;
}
.Listbox
{
width
:
100%
;
display
:
flex
;
flex-wrap
:
wrap
;
margin-top
:
10px
;
}
.Listbox-item
{
width
:
25%
;
display
:
flex
;
flex-direction
:
column
;
align-items
:
center
;
height
:
170rpx
;
align-items
:
center
;
justify-content
:
center
;
}
.Listbox-item
image
{
width
:
74rpx
;
height
:
auto
;
}
.list-item-text
{
width
:
calc
(
100vw
/
4
);
margin-top
:
5px
;
text-align
:
center
;
font-size
:
12px
;
}
.screenBoxItem
{
/* width: 130rpx; */
height
:
30rpx
;
background-color
:
#e2e2e2
;
border-radius
:
23rpx
;
margin-right
:
30rpx
;
display
:
flex
;
color
:
#999999
;
overflow
:
hidden
;
margin
:
0
10rpx
;
overflow
:
hidden
;
border-radius
:
6rpx
;
}
.screenBoxItemYear
{
/* width: 50%; */
height
:
30rpx
;
background
:
#e2e2e2
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
20rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
white-space
:
nowrap
;
border-radius
:
6rpx
0px
0px
6rpx
;
box-sizing
:
border-box
;
padding
:
0
10rpx
;
}
.activeYear
{
background
:
#1f1f1f
;
color
:
#ffffff
;
}
.screenBoxItemName
{
/* width: 50%; */
height
:
30rpx
;
background
:
#eaeaea
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
20rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
box-sizing
:
border-box
;
padding
:
0
10rpx
;
white-space
:
nowrap
;
border-radius
:
0px
6rpx
6rpx
0px
;
}
.activeName
{
background
:
#d0aa7b
;
color
:
#111111
;
}
.MedalBox
{
background
:
#f0f0f0
;
border-radius
:
20rpx
;
box-sizing
:
border-box
;
padding
:
15rpx
;
display
:
flex
;
flex-wrap
:
wrap
;
margin-bottom
:
30rpx
;
}
.MedalBoxItem
{
width
:
30%
;
height
:
135rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
margin
:
10rpx
;
}
</
style
>
pages/kotra/BrandEnterprise/list.vue
0 → 100644
View file @
43386f4f
<
template
>
<div
:style=
"
{
'background-color': '#f6f6f6',
height: contentHeight + 'px',
overflow: 'hidden',
}"
>
<view
style=
"padding: 5px 10px"
>
<u-search
:placeholder=
"`搜索$
{msg.BrandEnterpriseType==1?'品牌':'服务'}名称`"
:focus="false"
:show-action="false"
:clearabled="true"
radius="40"
v-model="msg.BrandName"
@search="searchHandler"
@custom="searchHandler"
bg-color="#FFF"
>
</u-search>
</view>
<view
style=
"display: flex; align-items: center"
>
<view
style=
"flex: 1; overflow: hidden"
>
<u-tabs
bg-color=
"#f6f6f6"
:is-scroll=
"true"
name=
"ClassName"
:list=
"typeList"
:active-color=
"mainColor"
:current=
"active"
@
change=
"changeHandler"
:show-bar=
"true"
:activeFontSize=
"34"
:bold=
"true"
height=
"100"
duration=
"0"
font-size=
"28"
></u-tabs>
</view>
<!--
<div
style=
"width: 64rpx;height: 48rpx;display: table-cell; vertical-align: middle;text-align: right;"
>
<u-icon
name=
"filter-o"
color=
"#111"
size=
"42"
></u-icon>
</div>
-->
</view>
</view>
<view
class=
"screenBox"
v-if=
"PrizeList.length > 0"
>
<view
v-for=
"(item, index) in PrizeList"
:key=
"index"
class=
"screenBoxItem"
@
click=
"chooseYear(item)"
>
<view
class=
"screenBoxItemYear"
:class=
"
{ activeYear: item.Id == msg.PrizeId }"
>
{{
item
.
YearInfo
}}
</view
><view
class=
"screenBoxItemName"
:class=
"
{ activeName: item.Id == msg.PrizeId }"
>
{{
item
.
Name
}}
</view
>
</view>
</view>
<u-empty
v-if=
"g.length == 0"
text=
"暂无内容"
mode=
"list"
></u-empty>
<view
style=
"height: calc(100% - 127px); padding: 2px 10px"
v-if=
"g.length > 0"
>
<scroll-view
:scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
@
scrolltolower=
"lower"
style=
"height: 100%; padding-bottom: 0px"
>
<u-row
gutter=
"24"
>
<u-col
span=
"6"
v-for=
"(x, i) in g"
:key=
"i"
>
<view
class=
"good_study_two"
@
click=
"openGood(x.ID)"
:style=
"
{ borderRadius: '20rpx' }"
>
<view
class=
"img-box"
>
<view
class=
"img-show"
>
<image
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 20rpx 0 0;
"
mode=
"aspectFill"
:src=
"x.BannerList[0]"
/>
</view>
<view
class=
"img-show-prize"
v-if=
"x.ListEnroll[0]"
>
<image
style=
"width: 100%; height: 100%"
mode=
"heightFix"
:src=
"x.ListEnroll[0].MedalImage"
/>
</view>
</view>
<view
class=
"good-info"
>
<view
class=
"good-name"
>
{{
x
.
BrandName
}}
</view>
<view
class=
"good-price-info"
>
<span
class=
"price"
>
{{
x
.
FullBrandName
}}
</span>
</view>
</view>
</view>
</u-col>
</u-row>
<u-loadmore
:status=
"status"
:load-text=
"loadText"
:font-size=
"24"
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"#f6f6f6"
/>
<view
style=
"width: 100%;height: 30px;"
></view>
</scroll-view>
</view>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
<tabbars></tabbars>
</div>
</
template
>
<
script
>
import
auth
from
"@/components/auth/index.vue"
;
import
tabbars
from
"@/components/tabbar/index"
;
export
default
{
components
:
{
tabbars
,
auth
},
data
()
{
return
{
showAuth
:
false
,
u
:{},
mainColor
:
""
,
active
:
0
,
searchKey
:
""
,
typeList
:
[],
msg
:
{
pageIndex
:
1
,
pageSize
:
20
,
BrandName
:
""
,
//品牌名称
BrandClassId
:
0
,
//分类Id
ProjectType
:
0
,
BrandEnterpriseType
:
1
,
//1品牌 2服务
},
loadText
:
{
loadmore
:
"轻轻上拉,加载更多"
,
loading
:
"努力加载中"
,
nomore
:
"没有更多了"
,
},
page_count
:
1
,
status
:
"loadmore"
,
g
:
[],
contentHeight
:
0
,
PrizeList
:
[],
//首店年份列表
};
},
onShareTimeline
()
{
//朋友圈
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
"品牌列表"
,
query
:
"user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
,
imageUrl
:
""
,
};
},
onShareAppMessage
(
res
)
{
//朋友
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
"品牌列表"
,
path
:
"/pages/kotra/brand/list?user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
,
imageUrl
:
""
,
};
},
onLoad
(
options
)
{
if
(
options
&&
options
.
cat_id
)
{
this
.
msg
.
BrandEnterpriseType
=
options
.
cat_id
;
}
if
(
options
&&
options
.
CategoryIds
)
{
this
.
msg
.
BrandClassId
=
options
.
CategoryIds
;
}
// this.u = uni.getStorageSync("mall_UserInfo");
// if (!this.u) {
// this.u = {
// nickName: "未登录",
// avatarUrl: "",
// };
// this.showAuth = true;
// } else {
this
.
GetBrandClassList
();
this
.
getPrizeList
();
// }
},
created
()
{
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
mounted
()
{
uni
.
setNavigationBarTitle
({
title
:
"品牌列表"
,
});
let
c
=
this
.
$uiConfig
.
is_bang
?
78
:
50
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
)
+
40
;
},
methods
:
{
reloadUserinfo
()
{
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
this
.
msg
.
BrandName
=
''
this
.
GetBrandClassList
();
this
.
getPrizeList
();
},
//关闭登录窗口
gbAuth
()
{
this
.
showAuth
=
false
},
GetBrandClassList
()
{
this
.
request2
(
{
url
:
"/api/AppletTrade/GetBrandClassList"
,
data
:
{
BrandCategory
:
this
.
msg
.
BrandEnterpriseType
==
1
?
1
:
2
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
let
obj
=
{
ID
:
0
,
ClassName
:
"全部"
,
};
this
.
typeList
=
res
.
data
;
this
.
typeList
.
unshift
(
obj
);
if
(
this
.
msg
.
BrandClassId
==
0
)
{
this
.
msg
.
BrandClassId
=
this
.
typeList
[
0
].
ID
;
}
else
{
//指定跳入分类
this
.
typeList
.
map
((
x
,
i
)
=>
{
if
(
x
.
ID
==
this
.
msg
.
BrandClassId
)
{
this
.
active
=
i
;
return
;
}
});
}
}
}
);
this
.
init
();
},
init
()
{
this
.
request2
(
{
url
:
"/api/AppletTrade/GetBrandEnterprisePageList"
,
data
:
this
.
msg
,
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
g
=
this
.
g
.
concat
(
res
.
data
.
pageData
);
this
.
page_count
=
res
.
data
.
pageCount
;
if
(
this
.
page_count
==
1
)
{
this
.
status
=
"nomore"
;
}
}
}
);
},
lower
(
e
)
{
if
(
this
.
msg
.
pageIndex
<
this
.
page_count
)
{
this
.
msg
.
pageIndex
++
;
this
.
status
=
"loading"
;
this
.
init
();
}
else
{
this
.
status
=
"nomore"
;
}
},
changeHandler
(
i
)
{
this
.
active
=
i
;
this
.
msg
.
BrandClassId
=
this
.
typeList
[
i
].
ID
;
this
.
msg
.
pageIndex
=
1
;
this
.
g
=
[];
this
.
init
();
},
openGood
(
id
)
{
uni
.
navigateTo
({
url
:
"/pages/kotra/brand/detail?id="
+
id
,
});
},
searchHandler
(
val
)
{
// this.u = uni.getStorageSync("mall_UserInfo");
// if (!this.u) {
// this.u = {
// nickName: "未登录",
// avatarUrl: "",
// };
// this.showAuth = true;
// } else {
this
.
msg
.
BrandName
=
val
;
this
.
msg
.
pageIndex
=
1
;
this
.
g
=
[];
this
.
init
();
// }
},
getPrizeList
()
{
this
.
request2
(
{
url
:
"/api/AppletTrade/GetPrizePageList"
,
data
:
this
.
msg
,
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
PrizeList
=
res
.
data
;
}
}
);
},
chooseYear
(
item
)
{
if
(
this
.
msg
.
PrizeId
==
item
.
Id
)
{
this
.
msg
.
PrizeId
=
0
;
}
else
{
this
.
msg
.
PrizeId
=
item
.
Id
;
}
this
.
g
=
[];
this
.
msg
.
pageIndex
=
1
;
this
.
init
();
},
changeFirstStoreTest
(
i
)
{
this
.
msg
.
IsInChengdu
=
i
;
this
.
msg
.
pageIndex
=
1
;
this
.
g
=
[];
this
.
init
();
},
},
};
</
script
>
<
style
>
.good_study_two
{
position
:
relative
;
margin-bottom
:
12px
;
border
:
1
rpx
solid
transparent
;
border-radius
:
10
rpx
;
overflow
:
hidden
;
box-shadow
:
0
4px
10px
1px
#e6e5e5
;
background-color
:
#fff
;
}
.good_study_two
.tips
{
width
:
64
rpx
;
height
:
64
rpx
;
position
:
absolute
;
top
:
0
;
left
:
0
;
z-index
:
4
;
}
.good_study_two
.img-box
{
width
:
100%
;
height
:
0
;
padding-top
:
100%
;
position
:
relative
;
overflow
:
hidden
;
}
.good_study_two
.img-box
.img-show
{
position
:
absolute
;
left
:
0
;
top
:
0
;
bottom
:
0
;
right
:
0
;
width
:
100%
;
height
:
338
rpx
;
overflow
:
hidden
;
}
.good_study_two
.guding
{
position
:
relative
;
}
.good_study_two
.guding
.img-box
{
position
:
absolute
;
left
:
0
;
right
:
0
;
bottom
:
0
;
top
:
0
;
}
.good_study_two
.good-info
{
padding
:
15
rpx
;
height
:
112
rpx
;
}
.good_study_two
.good-info
.good-name
{
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
margin-bottom
:
8px
;
color
:
#111111
;
font-size
:
26
rpx
;
font-weight
:
bold
;
}
.good_study_two
.good-info
.good-price-info
{
display
:
flex
;
color
:
#999999
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
font-size
:
22
rpx
;
}
.good_study_two
.good-info
.good-price-info
.price
{
color
:
#999999
;
/* flex: 1; */
font-size
:
11px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
}
.good_study_two
.good-info
.good-price-info
.buy
{
width
:
24px
;
text-align
:
right
;
}
.screenBox
{
display
:
flex
;
align-items
:
center
;
overflow-x
:
scroll
;
box-sizing
:
border-box
;
padding
:
0
30
rpx
;
margin-top
:
35
rpx
;
margin-bottom
:
35
rpx
;
}
.screenBoxItem
{
/* width: 130rpx; */
height
:
46
rpx
;
background-color
:
#e2e2e2
;
border-radius
:
23
rpx
;
margin-right
:
30
rpx
;
display
:
flex
;
color
:
#999999
;
overflow
:
hidden
;
}
.screenBoxItemYear
{
/* width: 50%; */
height
:
46
rpx
;
background
:
#e2e2e2
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
white-space
:
nowrap
;
border-radius
:
23px
0px
0px
23px
;
box-sizing
:
border-box
;
padding
:
0
10
rpx
;
}
.activeYear
{
background
:
#1f1f1f
;
color
:
#ffffff
;
}
.screenBoxItemName
{
/* width: 50%; */
height
:
46
rpx
;
background
:
#eaeaea
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
box-sizing
:
border-box
;
padding
:
0
10
rpx
;
white-space
:
nowrap
;
border-radius
:
0px
23px
23px
0px
;
}
.activeName
{
background
:
#d0aa7b
;
color
:
#111111
;
}
.img-show-prize
{
height
:
36
rpx
;
background
:
#ffffff
;
border-radius
:
0
rpx
0
rpx
20
rpx
0
rpx
;
background-color
:
#fff
;
position
:
absolute
;
top
:
0
;
left
:
0
;
}
.carrierScreen
{
height
:
50
rpx
;
margin
:
20
rpx
0
;
display
:
flex
;
padding
:
0
30
rpx
;
}
.statusBox
{
/* width: 150rpx; */
height
:
46
rpx
;
background
:
#1f1f1f
;
border-radius
:
23
rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
color
:
#fff
;
margin-right
:
30
rpx
;
padding
:
0
18
rpx
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
}
.statusBox2
{
/* width: 150rpx; */
height
:
46
rpx
;
background
:
#eaeaea
;
border-radius
:
23
rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
color
:
#999999
;
padding
:
0
18
rpx
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
}
</
style
>
pages/kotra/CarrierBuilding/detail.vue
0 → 100644
View file @
43386f4f
<
template
>
<view
style=
"
height: 100vh;
overflow: hidden;
box-sizing: border-box;
position: relative;
"
>
<scroll-view
scroll-y=
"true"
style=
"height: 100%"
@
scroll=
"scroll"
v-if=
'details'
>
<view
class=
"bg-red"
>
<view
class=
"detail-box"
>
<view
class=
"header flex"
style=
"popsition: relative"
>
<view
class=
"title"
style=
"display: flex; align-items: flex-end;position: relative;"
>
{{
details
.
CarrierName
}}
<view
class=
"score-box flex item-center"
>
<text
class=
"desire"
>
{{
details
.
OpeningStatus
!=
0
?
'已开业'
:
'即将开业'
}}
</text>
</view>
<view
v-for=
"(item, index) in details.PrizeList"
:key=
"index"
class=
"screenBoxItem"
@
click=
"chooseYear(item)"
>
<view
class=
"screenBoxItemYear activeYear"
>
{{
item
.
YearInfo
}}
</view>
<view
class=
"screenBoxItemName activeName"
>
{{
item
.
Name
}}
</view>
</view>
</view>
<!-- 关注 -->
<view
style=
"
width: 120rpx;
height: 120rpx;
margin-left: 12rpx;
margin-right: -40rpx;
position: absolute;
top: 0;
right: 50rpx;
"
@
click=
"follow"
>
<image
v-if=
"details.CollectId == 0"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616480343000_509.png"
style=
"width: 100%; height: 100%"
></image>
<image
v-if=
"details.CollectId > 0"
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616480343000_370.png"
style=
"width: 100%; height: 100%"
></image>
</view>
</view>
<view
style=
"width: 100%"
>
<view
v-if=
"!details.VideoUrl || details.VideoUrl == ''"
class=
"img-box"
>
<view
v-if=
"details.BannerList.length == 1"
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"width: 100%; height: 226rpx"
>
<image
:src=
"src"
style=
"width: 100%; height: 100%; border-radius: 20rpx"
mode=
"aspectFill"
@
click=
"previewImage(0)"
></image>
</view>
<view
v-if=
"details.BannerList.length == 2"
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"width: calc((100vw - 80rpx - 10rpx) / 2); height: 226rpx"
>
<image
:src=
"src"
v-if=
"index == 0"
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 0 0 20rpx;
"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
<image
:src=
"src"
v-if=
"index == 1"
style=
"
width: 100%;
height: 100%;
border-radius: 0 20rpx 20rpx 0;
"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
v-if=
"details.BannerList.length > 2"
style=
"height: 226rpx"
>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
v-if=
"index == 0"
@
click=
"previewImage(index)"
style=
"border-radius: 20rpx 0 0 20rpx"
></image>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
v-if=
"index == 1"
@
click=
"previewImage(index)"
></image>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
v-if=
"index == 2"
@
click=
"previewImage(index)"
style=
"border-radius: 0 20rpx 20rpx 0"
></image>
</view>
</view>
<view
v-else
>
<view
v-if=
"details.BannerList.length == 1"
class=
"img-box"
>
<view
style=
"
width: calc((100vw - 80rpx - 10rpx) / 2);
height: 226rpx;
position: relative;
"
>
<video
id=
"myVideo"
:src=
"details.VideoUrl"
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 0 0 20rpx;
"
:controls=
"controls"
:show-center-play-btn=
"false"
:show-fullscreen-btn=
"false"
@
fullscreenchange=
"brandvideoControl"
></video>
<view
@
click=
"enlarge(details.VideoUrl)"
style=
"
position: absolute;
left: 50%;
top: 50%;
margin-top: -30rpx;
margin-left: -30rpx;
width: 60rpx;
height: 60rpx;
border-radius: 20rpx;
background-color: rgba(255, 255, 255, 0.4);
display: flex;
align-items: center;
justify-content: center;
"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616471847000_345.png"
style=
"width: 37rpx; height: 44rpx"
mode=
""
></image>
</view>
</view>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"
width: calc((100vw - 80rpx - 10rpx) / 2);
height: 226rpx;
"
>
<image
:src=
"src"
style=
"
width: 100%;
height: 100%;
border-radius: 0 20rpx 20rpx 0;
"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
</view>
<view
v-if=
"details.BannerList.length > 1"
class=
"img-box"
>
<view
style=
"
width: calc((100vw - 80rpx - 20rpx) / 3);
height: 226rpx;
position: relative;
"
>
<video
id=
"myVideo"
:src=
"details.VideoUrl"
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 0 0 20rpx;
"
:controls=
"controls"
:show-center-play-btn=
"false"
:show-fullscreen-btn=
"false"
@
fullscreenchange=
"brandvideoControl"
></video>
<view
@
click=
"enlarge(details.VideoUrl)"
style=
"
position: absolute;
left: 50%;
top: 50%;
margin-top: -30rpx;
margin-left: -30rpx;
width: 60rpx;
height: 60rpx;
border-radius: 20rpx;
background-color: rgba(255, 255, 255, 0.4);
display: flex;
align-items: center;
justify-content: center;
"
>
<image
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1616471847000_345.png"
style=
"width: 37rpx; height: 44rpx"
mode=
""
></image>
</view>
</view>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
style=
"
width: calc((100vw - 80rpx - 10rpx) / 3);
height: 226rpx;
"
v-if=
"index
<
2
"
>
<image
:src=
"src"
style=
"width: 100%; height: 100%"
v-if=
"index == 0"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
<image
:src=
"src"
style=
"
width: 100%;
height: 100%;
border-radius: 0 20rpx 20rpx 0;
"
v-if=
"index == 1"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
</view>
</view>
</view>
<!-- //奖章 -->
<view
class=
"MedalBox"
v-if=
"details.HonorList.length > 0"
>
<view
v-for=
"(item, index) in details.HonorList"
:key=
"index"
class=
"MedalBoxItem"
>
<image
:src=
"item"
mode=
"heightFix"
style=
"height: 100%"
/>
</view>
</view>
<view
class=
"info1 flex flex-between"
>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
{{
details
.
ShopNum
}}
</view>
<view
class=
"info1-title"
>
店铺数量
</view>
</view>
<!--
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
{{
details
.
ProjectName
}}
</view>
<view
class=
"info1-title"
>
对标载体
</view>
</view>
-->
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
<view
class=
"brand-xinx-item-t"
:style=
"
{ color: mainColor }" v-if="
details.CarrierSize
&&
details.CarrierSize != 0
">
{{
details
.
CarrierSize
>=
10000
?
details
.
CarrierSize
/
10000
+
"万"
:
details
.
CarrierSize
}}
<text
style=
"font-size: 12px"
>
㎡
</text></view>
<view
class=
"brand-xinx-item-t"
:style=
"
{ color: mainColor }" v-if="
details.CarrierSize == 0||details.CarrierSize == ''
">/
</view>
</view>
<view
class=
"info1-title"
>
面积
</view>
</view>
</view>
<view
class=
"baseinfo"
>
<view
class=
"baseinfo-item flex"
v-if=
"details.Address && details.Address!='' "
>
<view
class=
"baseinfo-label"
>
地址:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
Address
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.Ascription && details.Ascription!='' "
>
<view
class=
"baseinfo-label"
>
资产权属:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
Ascription
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.PropertyComposition && details.PropertyComposition!='' "
>
<view
class=
"baseinfo-label"
>
物业构成:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
PropertyComposition
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.Location && details.Location!='' "
>
<view
class=
"baseinfo-label"
>
项目发展及定位:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
Location
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.Crowd && details.Crowd!='' "
>
<view
class=
"baseinfo-label"
>
周边人群结构特征:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
Crowd
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.VisitorsFlowrate && details.VisitorsFlowrate!='' "
>
<view
class=
"baseinfo-label"
>
人流量参数:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
VisitorsFlowrate
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.LayersNum && details.LayersNum!='' "
>
<view
class=
"baseinfo-label"
>
商业楼层:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
LayersNum
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.SupportingFacilities && details.SupportingFacilities!='' "
>
<view
class=
"baseinfo-label"
>
水电气及配套:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
SupportingFacilities
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.ManagementCompany && details.ManagementCompany!='' "
>
<view
class=
"baseinfo-label"
>
管理公司及管理费:
</view>
<view
class=
"baseinfo-con"
>
{{
details
.
ManagementCompany
}}
</view>
</view>
<view
class=
"baseinfo-item flex"
v-if=
"details.BrandDemand && details.BrandDemand!='' "
>
<view
class=
"baseinfo-label"
>
目标招商业态及品牌需求:
</view>
<view
class=
"baseinfo-con"
>
<rich-text
:nodes=
"details.BrandDemand"
></rich-text>
</view>
</view>
</view>
</view>
</view>
</scroll-view>
<bianmarenTooltip
:gravity=
"gravity"
:tooltipShow=
"tooltipShow"
:btns=
"tooltipBtns"
:eleId=
"eleId"
>
</bianmarenTooltip>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
</view>
</
template
>
<
script
>
import
auth
from
"@/components/auth/index.vue"
;
import
hParse
from
"@/components/u-parse/parse.vue"
;
import
bianmarenTooltip
from
"../components/bianmaren-tooltips.vue"
;
let
timer
;
export
default
{
components
:
{
hParse
,
bianmarenTooltip
,
auth
},
data
()
{
return
{
showAuth
:
false
,
u
:
{},
rate
:
5
,
ID
:
0
,
details
:
null
,
typeList
:
[{
Id
:
0
,
Name
:
"视频"
,
},
{
Id
:
1
,
Name
:
"图片"
,
},
],
boxOption
:
0
,
navsOption
:
0
,
titleStyle
:
{},
active
:
0
,
mainColor
:
""
,
controls
:
false
,
//显示默认控件
EquityList
:
[{
Title
:
"上下水"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-sxs.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-sxs-n.png"
,
},
{
Title
:
"排污"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pw.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pw-n.png"
,
},
{
Title
:
"燃气"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-rh.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-rh-n.png"
,
},
{
Title
:
"电量负荷"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-dl.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-dl-n.png"
,
},
{
Title
:
"新风"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-xf.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-xf-n.png"
,
},
{
Title
:
"排烟量"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pyl.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-pyl-n.png"
,
},
{
Title
:
"空调"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kt.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kt-n.png"
,
},
{
Title
:
"管径"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-gj.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-gj-n.png"
,
},
{
Title
:
"开口尺寸"
,
ImagePath
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kkcc.png"
,
Image_n
:
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/k-brand-kkcc-n.png"
,
},
],
gravity
:
"top"
,
tooltipShow
:
false
,
tooltipBtns
:
[
"今日sad"
],
eleId
:
""
,
//点击元素
islook
:
false
,
//是否可以浏览心愿
};
},
onLoad
(
options
)
{
let
that
=
this
;
if
(
options
&&
options
.
id
)
{
this
.
ID
=
options
.
id
;
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
if
(
!
this
.
u
)
{
this
.
u
=
{
nickName
:
"未登录"
,
avatarUrl
:
""
,
};
this
.
showAuth
=
true
;
}
else
{
this
.
GetBrandDetails
();
}
}
uni
.
getSystemInfo
({
success
(
res
)
{
that
.
titleStyle
=
{
height
:
"45px"
,
paddingTop
:
`
${
res
.
statusBarHeight
}
px`
,
opacity
:
"0%"
,
};
},
});
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
uni
.
setNavigationBarTitle
({
title
:
"详情"
,
});
uni
.
setNavigationBarColor
({
frontColor
:
"#ffffff"
,
backgroundColor
:
"#D40224"
,
animation
:
{
duration
:
400
,
timingFunc
:
"easeIn"
,
},
});
},
onShareTimeline
()
{
//朋友圈
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
this
.
details
.
FullBrandName
?
this
.
details
.
FullBrandName
:
""
,
query
:
"user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
+
"&id="
+
this
.
ID
,
imageUrl
:
this
.
details
.
BannerList
&&
this
.
details
.
BannerList
.
length
>
0
?
this
.
details
.
BannerList
[
0
]
:
""
,
};
},
onShareAppMessage
(
res
)
{
//朋友
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
this
.
details
.
FullBrandName
?
this
.
details
.
FullBrandName
:
""
,
path
:
"/pages/index/index?user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
+
"&id="
+
this
.
ID
+
"&JumpType=15"
,
imageUrl
:
this
.
details
.
BannerList
&&
this
.
details
.
BannerList
.
length
>
0
?
this
.
details
.
BannerList
[
0
]
:
""
,
};
},
methods
:
{
reloadUserinfo
()
{
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
this
.
GetBrandDetails
();
},
//关闭登录窗口
gbAuth
()
{
uni
.
navigateBack
()
},
showTips
(
id
,
text
,
showis
)
{
clearInterval
(
timer
);
if
(
this
.
eleId
==
id
&&
this
.
tooltipShow
==
true
)
{
this
.
tooltipShow
=
false
;
}
else
{
console
.
log
(
text
,
showis
);
if
(
text
!=
undefined
&&
text
!=
null
&&
text
!=
""
&&
showis
==
1
)
{
this
.
eleId
=
id
;
this
.
tooltipBtns
=
[
text
];
this
.
tooltipShow
=
true
;
timer
=
setTimeout
(()
=>
{
this
.
tooltipShow
=
false
;
},
3000
);
}
else
{
this
.
tooltipShow
=
false
;
}
}
},
clickDescription
(
e
)
{
console
.
log
(
e
);
},
GetBrandDetails
()
{
this
.
request2
({
url
:
"/api/AppletTrade/GetBuildingCarrierDetails"
,
data
:
{
ID
:
this
.
ID
,
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
details
=
res
.
data
;
if
(
res
.
data
.
VideoUrl
==
""
)
{
this
.
active
=
1
;
}
this
.
details
.
imgs
=
[];
if
(
this
.
details
.
Other
&&
this
.
details
.
Other
!=
''
){
this
.
details
.
Other
=
this
.
textFormat
(
this
.
details
.
Other
);
}
this
.
details
.
BannerList
.
forEach
((
x
)
=>
{
let
obj
=
{
name
:
x
,
};
this
.
details
.
imgs
.
push
(
obj
);
});
}
}
);
},
textFormat
(
val
)
{
// 格式化文字展示文本域格式文字
if
(
val
)
{
let
newString
=
val
.
replace
(
/
\n
/g
,
'_@'
).
replace
(
/
\r
/g
,
'_#'
);
newString
=
newString
.
replace
(
/_#_@/g
,
'<br/>'
);
// IE7-8
newString
=
newString
.
replace
(
/_@/g
,
'<br/>'
);
// IE9、FF、chrome
newString
=
newString
.
replace
(
/
\s
/g
,
' '
);
// 空格处理
return
newString
;
}
},
changeHandler
(
i
)
{
this
.
active
=
i
;
},
previewImage
(
i
)
{
console
.
log
(
i
);
uni
.
previewImage
({
urls
:
this
.
details
.
BannerList
,
current
:
i
,
longPressActions
:
{
itemList
:
[
"发送给朋友"
,
"保存图片"
,
"收藏"
],
success
:
function
(
data
)
{},
fail
:
function
(
err
)
{
console
.
log
(
err
.
errMsg
);
},
},
});
},
previewImage2
(
i
)
{
uni
.
previewImage
({
urls
:
[
this
.
details
.
WishCard
],
current
:
0
,
longPressActions
:
{
itemList
:
[
"发送给朋友"
,
"保存图片"
,
"收藏"
],
success
:
function
(
data
)
{},
fail
:
function
(
err
)
{
console
.
log
(
err
.
errMsg
);
},
},
});
},
scroll
(
e
)
{
this
.
boxOption
=
Math
.
floor
((
e
.
detail
.
scrollTop
-
50
)
/
1.5
);
this
.
titleStyle
.
opacity
=
(
e
.
detail
.
scrollTop
-
100
<
0
?
0
:
Math
.
floor
(
e
.
detail
.
scrollTop
-
100
))
+
"%"
;
this
.
tooltipShow
=
false
;
this
.
$forceUpdate
();
},
goback
()
{
uni
.
navigateBack
({
delta
:
1
,
});
},
enlarge
(
file
)
{
// 全屏
this
.
videoContext
=
uni
.
createVideoContext
(
"myVideo"
);
this
.
videoContext
.
requestFullScreen
({
direction
:
0
,
});
},
brandvideoControl
(
e
)
{
console
.
log
(
e
);
if
(
e
.
detail
.
fullScreen
==
false
)
{
this
.
videoContext
.
stop
();
this
.
controls
=
false
;
}
else
{
this
.
videoContext
.
play
();
this
.
controls
=
true
;
}
},
getlove
()
{
this
.
request2
({
url
:
"/api/AppletTrade/GetCollect"
,
data
:
{
Type
:
2
,
SourceId
:
this
.
ID
,
Id
:
this
.
details
.
CollectId
,
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
uni
.
showToast
({
title
:
res
.
message
,
icon
:
"none"
,
});
this
.
GetBrandDetails
();
}
}
);
},
// 关注与取消关注
follow
()
{
let
that
=
this
;
let
parms
=
{
url
:
"/api/AppletTrade/GetCollect"
,
data
:
{
SourceId
:
this
.
ID
,
Id
:
this
.
details
.
CollectId
,
Type
:
2
,
},
};
this
.
request2
(
parms
,
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
that
.
GetBrandDetails
();
}
});
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.flex
{
display
:
flex
;
}
.wrap
{
flex-wrap
:
wrap
;
}
.flex-center
{
justify-content
:
center
;
align-items
:
center
;
}
.flex-between
{
justify-content
:
space-between
;
}
.item-center
{
align-items
:
center
;
}
.bg-red
{
background-color
:
#d40224
;
}
.detail-box
{
width
:
100%
;
box-shadow
:
0px
-4rpx
71rpx
0rpx
rgba
(
111
,
111
,
111
,
0
.26
);
border-radius
:
50rpx
50rpx
0rpx
0rpx
;
padding
:
40rpx
40rpx
90rpx
40rpx
;
font-family
:
PingFang
SC
;
background-color
:
#ffffff
;
.header
{
margin-bottom
:
20rpx
;
align-items
:
flex-start
;
.title
{
max-width
:
calc
(
100vw
-
100rpx
-
70rpx
);
font-size
:
42rpx
;
font-weight
:
800
;
color
:
#1f1f1f
;
margin-right
:
20rpx
;
}
.tag-box
{
border-radius
:
6rpx
;
width
:
70px
;
display
:
flex
;
margin-top
:
4px
;
height
:
20px
;
.tag1
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
background-color
:
#1f1f1f
;
font-size
:
20rpx
;
color
:
#ffffff
;
}
.tag2
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
background-image
:
linear-gradient
(
90deg
,
#e8cea5
,
#caa974
);
font-size
:
20rpx
;
color
:
#1f1f1f
;
}
}
}
.score-box
{
position
:
absolute
;
right
:
-50px
;
bottom
:
0
;
white-space
:
nowrap
;
.rate
{
margin-right
:
20rpx
;
}
.score
{
font-size
:
20rpx
;
font-weight
:
500
;
color
:
#f30329
;
margin-right
:
20rpx
;
}
.desire
{
font-size
:
20rpx
;
color
:
#111111
;
}
}
.img-box
{
height
:
226rpx
;
border-radius
:
20rpx
;
box-shadow
:
0rpx
10rpx
30rpx
0rpx
rgba
(
36
,
36
,
36
,
0
.2
);
margin-bottom
:
45rpx
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
overflow
:
hidden
;
.img
{
width
:
calc
((
100vw
-
80rpx
-
20rpx
)
/
3
);
height
:
226rpx
;
}
}
.info1
{
margin-bottom
:
60rpx
;
.info1-item
{
// width: 200rpx;之前的3个是200 下面是2个 就平分了宽度
width
:
calc
((
100vw
-
80rpx
-
20rpx
)
/
2
);
.info1-con
{
font-size
:
30rpx
;
font-weight
:
bold
;
color
:
#f30329
;
text-align
:
center
;
margin-bottom
:
18rpx
;
}
.info1-title
{
text-align
:
center
;
font-size
:
24rpx
;
font-weight
:
500
;
color
:
#a4a4a4
;
}
}
}
.baseinfo
{
margin-bottom
:
40rpx
;
.baseinfo-item
{
margin-bottom
:
30rpx
;
.baseinfo-label
{
font-size
:
24rpx
;
font-weight
:
500
;
color
:
#a4a4a4
;
margin-right
:
10rpx
;
white-space
:
nowrap
;
}
.baseinfo-con
{
font-size
:
26rpx
;
font-weight
:
500
;
color
:
#1f1f1f
;
}
}
}
}
.brand-title
{
width
:
134rpx
;
margin-top
:
30px
;
}
.brand-title
image
{
width
:
100%
;
height
:
auto
;
}
.Listbox
{
width
:
100%
;
display
:
flex
;
flex-wrap
:
wrap
;
margin-top
:
10px
;
}
.Listbox-item
{
width
:
25%
;
display
:
flex
;
flex-direction
:
column
;
align-items
:
center
;
height
:
170rpx
;
align-items
:
center
;
justify-content
:
center
;
}
.Listbox-item
image
{
width
:
74rpx
;
height
:
auto
;
}
.list-item-text
{
width
:
calc
(
100vw
/
4
);
margin-top
:
5px
;
text-align
:
center
;
font-size
:
12px
;
}
.screenBoxItem
{
/* width: 130rpx; */
height
:
30rpx
;
background-color
:
#e2e2e2
;
border-radius
:
23rpx
;
margin-right
:
30rpx
;
display
:
flex
;
color
:
#999999
;
overflow
:
hidden
;
margin
:
0
10rpx
;
overflow
:
hidden
;
border-radius
:
6rpx
;
}
.screenBoxItemYear
{
/* width: 50%; */
height
:
30rpx
;
background
:
#e2e2e2
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
20rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
white-space
:
nowrap
;
border-radius
:
6rpx
0px
0px
6rpx
;
box-sizing
:
border-box
;
padding
:
0
10rpx
;
}
.activeYear
{
background
:
#1f1f1f
;
color
:
#ffffff
;
}
.screenBoxItemName
{
/* width: 50%; */
height
:
30rpx
;
background
:
#eaeaea
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
20rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
box-sizing
:
border-box
;
padding
:
0
10rpx
;
white-space
:
nowrap
;
border-radius
:
0px
6rpx
6rpx
0px
;
}
.activeName
{
background
:
#d0aa7b
;
color
:
#111111
;
}
.MedalBox
{
background
:
#f0f0f0
;
border-radius
:
20rpx
;
box-sizing
:
border-box
;
padding
:
15rpx
;
display
:
flex
;
flex-wrap
:
wrap
;
margin-bottom
:
30rpx
;
}
.MedalBoxItem
{
width
:
30%
;
height
:
135rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
margin
:
10rpx
;
}
</
style
>
pages/kotra/CarrierBuildingIndex.vue
0 → 100644
View file @
43386f4f
<
template
>
<div
:style=
"
{
'background-color': '#f6f6f6',
height: contentHeight + 'px',
overflow: 'hidden',
}"
>
<view
style=
"padding: 5px 10px"
>
<u-search
:placeholder=
"`搜索$
{msg.BuildingCarrierType==1?'载体':'楼宇'}名称`"
:focus="false"
:show-action="false"
:clearabled="true"
radius="40"
v-model="msg.CarrierName"
@search="searchHandler"
@custom="searchHandler"
bg-color="#FFF"
>
</u-search>
</view>
<view
style=
"display: flex; align-items: center"
>
<view
style=
"flex: 1; overflow: hidden"
>
<u-tabs
bg-color=
"#f6f6f6"
:is-scroll=
"true"
name=
"ClassName"
:list=
"typeList"
:active-color=
"mainColor"
:current=
"active"
@
change=
"changeHandler"
:show-bar=
"true"
:activeFontSize=
"34"
:bold=
"true"
height=
"100"
duration=
"0"
font-size=
"28"
></u-tabs>
</view>
<!--
<div
style=
"width: 64rpx;height: 48rpx;display: table-cell; vertical-align: middle;text-align: right;"
>
<u-icon
name=
"filter-o"
color=
"#111"
size=
"42"
></u-icon>
</div>
-->
</view>
<view
class=
"carrierScreen"
>
<view
class=
"statusBox"
:class=
"[msg.OpeningStatus==1?'statusBox':'statusBox2']"
@
click=
"changeFirstStoreTest(1)"
>
已开业
</view>
<view
class=
""
:class=
"[msg.OpeningStatus==0?'statusBox':'statusBox2']"
@
click=
"changeFirstStoreTest(0)"
>
即将开业
</view>
</view>
<view
class=
"screenBox"
v-if=
"PrizeList.length > 0"
>
<view
v-for=
"(item, index) in PrizeList"
:key=
"index"
class=
"screenBoxItem"
@
click=
"chooseYear(item)"
>
<view
class=
"screenBoxItemYear"
:class=
"
{ activeYear: item.Id == msg.PrizeId }"
>
{{
item
.
YearInfo
}}
</view
><view
class=
"screenBoxItemName"
:class=
"
{ activeName: item.Id == msg.PrizeId }"
>
{{
item
.
Name
}}
</view
>
</view>
</view>
<u-empty
v-if=
"g.length == 0"
text=
"暂无内容"
mode=
"list"
></u-empty>
<view
style=
"height: calc(100% - 127px); padding: 2px 10px"
v-if=
"g.length > 0"
>
<scroll-view
:scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
@
scrolltolower=
"lower"
style=
"height: 100%; padding-bottom: 0px"
>
<u-row
gutter=
"24"
>
<u-col
span=
"6"
v-for=
"(x, i) in g"
:key=
"i"
>
<view
class=
"good_study_two"
@
click=
"openGood(x.ID)"
:style=
"
{ borderRadius: '20rpx' }"
>
<view
class=
"img-box"
>
<view
class=
"img-show"
>
<image
style=
"
width: 100%;
height: 100%;
border-radius: 20rpx 20rpx 0 0;
"
mode=
"aspectFill"
:src=
"x.BannerList[0]"
/>
</view>
<view
class=
"img-show-prize"
v-if=
"x.ListEnroll[0]"
>
<image
style=
"width: 100%; height: 100%"
mode=
"heightFix"
:src=
"x.ListEnroll[0].MedalImage"
/>
</view>
</view>
<view
class=
"good-info"
>
<view
class=
"good-name"
>
{{
x
.
CarrierName
}}
</view>
<view
class=
"good-price-info"
>
<span
class=
"price"
>
{{
x
.
FullCarrierName
}}
</span>
</view>
</view>
</view>
</u-col>
</u-row>
<u-loadmore
:status=
"status"
:load-text=
"loadText"
:font-size=
"24"
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"#f6f6f6"
/>
<view
style=
"width: 100%;height: 30px;"
></view>
</scroll-view>
</view>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
<tabbars></tabbars>
</div>
</
template
>
<
script
>
import
auth
from
"@/components/auth/index.vue"
;
import
tabbars
from
"@/components/tabbar/index"
;
export
default
{
components
:
{
tabbars
,
auth
},
data
()
{
return
{
showAuth
:
false
,
u
:{},
mainColor
:
""
,
active
:
0
,
searchKey
:
""
,
typeList
:
[],
msg
:
{
pageIndex
:
1
,
pageSize
:
20
,
CarrierName
:
""
,
// 载体/楼宇名称
ProjectType
:
0
,
BuildingCarrierType
:
''
,
// 1载体 2楼宇 3品牌 4服务
BrandCategory
:
''
,
MetroNum
:
""
,
//地铁路线
Developers
:
""
,
//开发商
OpeningStatus
:
1
,
//开业状态0即将开业1-已开业
// FirstStoreTest: "",//首店试验场0否1-是
},
loadText
:
{
loadmore
:
"轻轻上拉,加载更多"
,
loading
:
"努力加载中"
,
nomore
:
"没有更多了"
,
},
page_count
:
1
,
status
:
"loadmore"
,
g
:
[],
contentHeight
:
0
,
PrizeList
:
[],
//首店年份列表
};
},
onShareTimeline
()
{
//朋友圈
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
`
${
this
.
msg
.
BuildingCarrierType
==
1
?
'载体'
:
'楼宇'
}
列表`
,
query
:
"user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
,
imageUrl
:
""
,
};
},
onShareAppMessage
(
res
)
{
//朋友
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
Up
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
?
uni
.
getStorageSync
(
"mall_UserInfo"
).
UserPageType
:
0
;
return
{
title
:
`
${
this
.
msg
.
BuildingCarrierType
==
1
?
'载体'
:
'楼宇'
}
列表`
,
path
:
"/pages/kotra/brand/list?user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
,
imageUrl
:
""
,
};
},
onLoad
(
options
)
{
if
(
options
&&
options
.
cat_id
)
{
this
.
msg
.
BuildingCarrierType
=
options
.
cat_id
;
}
if
(
options
&&
options
.
CategoryIds
)
{
this
.
msg
.
BrandCategory
=
options
.
CategoryIds
;
}
// this.u = uni.getStorageSync("mall_UserInfo");
// if (!this.u) {
// this.u = {
// nickName: "未登录",
// avatarUrl: "",
// };
// this.showAuth = true;
// } else {
this
.
GetBrandClassList
();
this
.
getPrizeList
();
// }
},
created
()
{
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
mounted
()
{
uni
.
setNavigationBarTitle
({
title
:
`
${
this
.
msg
.
BuildingCarrierType
==
1
?
'载体'
:
'楼宇'
}
列表`
,
});
let
c
=
this
.
$uiConfig
.
is_bang
?
78
:
50
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
)
+
40
;
},
methods
:
{
reloadUserinfo
()
{
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
this
.
msg
.
CarrierName
=
''
this
.
GetBrandClassList
();
this
.
getPrizeList
();
},
//关闭登录窗口
gbAuth
()
{
this
.
showAuth
=
false
},
GetBrandClassList
()
{
this
.
request2
(
{
url
:
"/api/AppletTrade/GetBrandClassList"
,
data
:
{
BrandCategory
:
this
.
msg
.
BuildingCarrierType
==
1
?
1
:
2
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
let
obj
=
{
ID
:
0
,
ClassName
:
"全部"
,
};
this
.
typeList
=
res
.
data
;
this
.
typeList
.
unshift
(
obj
);
if
(
this
.
msg
.
BrandCategory
==
0
)
{
this
.
msg
.
BrandCategory
=
this
.
typeList
[
0
].
ID
;
}
else
{
//指定跳入分类
this
.
typeList
.
map
((
x
,
i
)
=>
{
if
(
x
.
ID
==
this
.
msg
.
BrandCategory
)
{
this
.
active
=
i
;
return
;
}
});
}
}
}
);
this
.
init
();
},
init
()
{
this
.
request2
(
{
url
:
"/api/AppletTrade/GetBuildingCarrierPageList"
,
data
:
this
.
msg
,
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
g
=
this
.
g
.
concat
(
res
.
data
.
pageData
);
this
.
page_count
=
res
.
data
.
pageCount
;
if
(
this
.
page_count
==
1
)
{
this
.
status
=
"nomore"
;
}
}
}
);
},
lower
(
e
)
{
if
(
this
.
msg
.
pageIndex
<
this
.
page_count
)
{
this
.
msg
.
pageIndex
++
;
this
.
status
=
"loading"
;
this
.
init
();
}
else
{
this
.
status
=
"nomore"
;
}
},
changeHandler
(
i
)
{
this
.
active
=
i
;
this
.
msg
.
BrandCategory
=
this
.
typeList
[
i
].
ID
;
this
.
msg
.
pageIndex
=
1
;
this
.
g
=
[];
this
.
init
();
},
openGood
(
id
)
{
uni
.
navigateTo
({
url
:
"/pages/kotra/CarrierBuilding/detail?id="
+
id
,
});
},
searchHandler
(
val
)
{
// this.u = uni.getStorageSync("mall_UserInfo");
// if (!this.u) {
// this.u = {
// nickName: "未登录",
// avatarUrl: "",
// };
// this.showAuth = true;
// } else {
this
.
msg
.
CarrierName
=
val
;
this
.
msg
.
pageIndex
=
1
;
this
.
g
=
[];
this
.
init
();
// }
},
getPrizeList
()
{
this
.
request2
(
{
url
:
"/api/AppletTrade/GetPrizePageList"
,
data
:
this
.
msg
,
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
PrizeList
=
res
.
data
;
}
}
);
},
chooseYear
(
item
)
{
if
(
this
.
msg
.
PrizeId
==
item
.
Id
)
{
this
.
msg
.
PrizeId
=
0
;
}
else
{
this
.
msg
.
PrizeId
=
item
.
Id
;
}
this
.
g
=
[];
this
.
msg
.
pageIndex
=
1
;
this
.
init
();
},
changeFirstStoreTest
(
i
)
{
this
.
msg
.
OpeningStatus
=
i
;
this
.
msg
.
pageIndex
=
1
;
this
.
g
=
[];
this
.
init
();
},
},
};
</
script
>
<
style
>
.good_study_two
{
position
:
relative
;
margin-bottom
:
12px
;
border
:
1
rpx
solid
transparent
;
border-radius
:
10
rpx
;
overflow
:
hidden
;
box-shadow
:
0
4px
10px
1px
#e6e5e5
;
background-color
:
#fff
;
}
.good_study_two
.tips
{
width
:
64
rpx
;
height
:
64
rpx
;
position
:
absolute
;
top
:
0
;
left
:
0
;
z-index
:
4
;
}
.good_study_two
.img-box
{
width
:
100%
;
height
:
0
;
padding-top
:
100%
;
position
:
relative
;
overflow
:
hidden
;
}
.good_study_two
.img-box
.img-show
{
position
:
absolute
;
left
:
0
;
top
:
0
;
bottom
:
0
;
right
:
0
;
width
:
100%
;
height
:
338
rpx
;
overflow
:
hidden
;
}
.good_study_two
.guding
{
position
:
relative
;
}
.good_study_two
.guding
.img-box
{
position
:
absolute
;
left
:
0
;
right
:
0
;
bottom
:
0
;
top
:
0
;
}
.good_study_two
.good-info
{
padding
:
15
rpx
;
height
:
112
rpx
;
}
.good_study_two
.good-info
.good-name
{
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
margin-bottom
:
8px
;
color
:
#111111
;
font-size
:
26
rpx
;
font-weight
:
bold
;
}
.good_study_two
.good-info
.good-price-info
{
display
:
flex
;
color
:
#999999
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
font-size
:
22
rpx
;
}
.good_study_two
.good-info
.good-price-info
.price
{
color
:
#999999
;
/* flex: 1; */
font-size
:
11px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
}
.good_study_two
.good-info
.good-price-info
.buy
{
width
:
24px
;
text-align
:
right
;
}
.screenBox
{
display
:
flex
;
align-items
:
center
;
overflow-x
:
scroll
;
box-sizing
:
border-box
;
padding
:
0
30
rpx
;
margin-top
:
35
rpx
;
margin-bottom
:
35
rpx
;
}
.screenBoxItem
{
/* width: 130rpx; */
height
:
46
rpx
;
background-color
:
#e2e2e2
;
border-radius
:
23
rpx
;
margin-right
:
30
rpx
;
display
:
flex
;
color
:
#999999
;
overflow
:
hidden
;
}
.screenBoxItemYear
{
/* width: 50%; */
height
:
46
rpx
;
background
:
#e2e2e2
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
white-space
:
nowrap
;
border-radius
:
23px
0px
0px
23px
;
box-sizing
:
border-box
;
padding
:
0
10
rpx
;
}
.activeYear
{
background
:
#1f1f1f
;
color
:
#ffffff
;
}
.screenBoxItemName
{
/* width: 50%; */
height
:
46
rpx
;
background
:
#eaeaea
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
box-sizing
:
border-box
;
padding
:
0
10
rpx
;
white-space
:
nowrap
;
border-radius
:
0px
23px
23px
0px
;
}
.activeName
{
background
:
#d0aa7b
;
color
:
#111111
;
}
.img-show-prize
{
height
:
36
rpx
;
background
:
#ffffff
;
border-radius
:
0
rpx
0
rpx
20
rpx
0
rpx
;
background-color
:
#fff
;
position
:
absolute
;
top
:
0
;
left
:
0
;
}
.carrierScreen
{
height
:
50
rpx
;
margin
:
20
rpx
0
;
display
:
flex
;
padding
:
0
30
rpx
;
}
.statusBox
{
/* width: 150rpx; */
height
:
46
rpx
;
background
:
#1f1f1f
;
border-radius
:
23
rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
color
:
#fff
;
margin-right
:
30
rpx
;
padding
:
0
18
rpx
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
}
.statusBox2
{
/* width: 150rpx; */
height
:
46
rpx
;
background
:
#eaeaea
;
border-radius
:
23
rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
color
:
#999999
;
padding
:
0
18
rpx
;
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
}
</
style
>
\ No newline at end of file
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