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
07d7344f
Commit
07d7344f
authored
May 12, 2026
by
吴春
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
11
parent
f6a43580
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
1634 additions
and
1904 deletions
+1634
-1904
index.vue
components/rubik/index.vue
+115
-118
index.vue
components/tabbar/index.vue
+15
-12
tradeIndex.vue
components/tradeActivity/tradeIndex.vue
+1
-6
index.vue
pages/index/index.vue
+59
-51
brandComponent.vue
pages/kotra/brand/brandComponent.vue
+79
-85
detail_brand.vue
pages/kotra/brand/detail_brand.vue
+2
-4
detail_new.vue
pages/kotra/brand/detail_new.vue
+628
-793
list.vue
pages/kotra/brand/list.vue
+17
-16
list.vue
pages/kotra/carrier/list.vue
+718
-819
No files found.
components/rubik/index.vue
View file @
07d7344f
<
template
>
<view
class=
"ad-box"
:class=
"
{'ad-box-full':ad.list[0].link[0].PageName == 'full'}"
:style="{ height: ad.height == 'auto' ? 'auto' : ad.height + 'rpx',padding:marginStyle,backgroundColor:ad.background }"
>
<view
class=
"ad-chi"
v-for=
"(item, index) in adtemp"
:key=
"index"
:style=
"[item.formatStyle]"
:class=
"
{'ad-full-height':item.link[0].PageName == 'full'}"
@click="clickHandler(item.link[0].new_link_url)"
>
<button
open-type=
"contact"
v-if=
"item.link[0].new_link_url=='contact'"
></button>
<img
:src=
"item.pic_url"
style=
"margin-bottom:-4px"
mode=
"widthFix"
/>
</view>
<view
class=
"hots"
v-for=
"(x, i) in hotspots"
:key=
"i"
:style=
"[x.formatStyle]"
@
click=
"clickHots(x.link)"
>
</view>
<!--
<view
@
click=
"jumper()"
>
跳转
</view>
-->
</view>
<view
class=
"ad-box"
:class=
"
{'ad-box-full':ad.list[0].link[0].PageName == 'full'}"
:style="{ height: ad.height == 'auto' ? 'auto' : ad.height + 'rpx',padding:marginStyle,backgroundColor:ad.background }">
<view
class=
"ad-chi"
v-for=
"(item, index) in adtemp"
:key=
"index"
:style=
"[item.formatStyle]"
:class=
"
{'ad-full-height':item.link[0].PageName == 'full'}"
@click="clickHandler(item.link[0].new_link_url)">
<button
open-type=
"contact"
v-if=
"item.link[0].new_link_url=='contact'"
></button>
<img
:src=
"item.pic_url"
style=
"margin-bottom:-4px"
mode=
"widthFix"
/>
</view>
<view
class=
"hots"
v-for=
"(x, i) in hotspots"
:key=
"i"
:style=
"[x.formatStyle]"
@
click=
"clickHots(x.link)"
>
</view>
</view>
</
template
>
<
script
>
export
default
{
props
:
[
"ad"
],
data
()
{
return
{
adtemp
:
[],
marginStyle
:
""
,
hotspots
:
[],
showContact
:
false
}
},
created
()
{
console
.
log
(
this
.
ad
)
this
.
ad
.
list
.
forEach
((
x
)
=>
{
x
.
formatStyle
=
{
width
:
x
.
width
,
height
:
x
.
heigh
t
,
left
:
x
.
left
,
top
:
x
.
top
,
backgroundImage
:
x
.
backgroundImage
,
backgroundRepeat
:
x
.
backgroundRepeat
,
backgroundSize
:
x
.
backgroundSize
,
backgroundPosition
:
x
.
backgroundPosition
};
if
(
this
.
ad
.
height
==
"auto"
)
{
x
.
formatStyle
.
position
=
"unset"
;
}
this
.
marginStyle
=
`
${
this
.
ad
.
top
??
0
}
px
$
{
this
.
ad
.
right
??
0
}
px
$
{
this
.
ad
.
bottom
??
0
}
px
$
{
this
.
ad
.
left
??
0
}
px
`
this.adtemp.push(x)
});
this.ad.hotspot.forEach(x=>
{
x.formatStyle=
{
left:x.left+
'rpx',
top:x.top+
'rpx',
height:x.height+
'rpx',
width:x.width+
'rpx'
}
this.hotspots.push(x)
})
},
methods: {
// 测试跳转
jumper() {
uni.redirectTo({
url: `
/
pages
/
webbox
/
webbox
?
auth
=
1
`
});
},
clickHandler(url) {
if(url=='contact')
{
return
}
else if (url && url.length > 0) {
uni.navigateTo({
url: url,
});
}
},
clickHots(link) {
if (link && link.length > 0) {
uni.navigateTo({
url: link[0].PageUrl,
});
}
},
},
};
export
default
{
props
:
[
"ad"
],
data
()
{
return
{
adtemp
:
[],
marginStyle
:
""
,
hotspots
:
[],
showContact
:
false
}
},
created
()
{
this
.
ad
.
list
.
forEach
((
x
)
=>
{
x
.
formatStyle
=
{
width
:
x
.
width
,
height
:
x
.
height
,
left
:
x
.
lef
t
,
top
:
x
.
top
,
backgroundImage
:
x
.
backgroundImage
,
backgroundRepeat
:
x
.
backgroundRepeat
,
backgroundSize
:
x
.
backgroundSize
,
backgroundPosition
:
x
.
backgroundPosition
};
if
(
this
.
ad
.
height
==
"auto"
)
{
x
.
formatStyle
.
position
=
"unset"
;
}
this
.
marginStyle
=
`
${
this
.
ad
.
top
??
0
}
px
$
{
this
.
ad
.
right
??
0
}
px
$
{
this
.
ad
.
bottom
??
0
}
px
$
{
this
.
ad
.
left
??
0
}
px
`
this.adtemp.push(x)
});
this.ad.hotspot.forEach(x =>
{
x.formatStyle =
{
left: x.left +
'rpx',
top: x.top +
'rpx',
height: x.height +
'rpx',
width: x.width +
'rpx'
}
this.hotspots.push(x)
})
},
methods: {
// 测试跳转
jumper() {
uni.redirectTo({
url: `
/
pages
/
webbox
/
webbox
?
auth
=
1
`
});
},
clickHandler(url) {
if (url == 'contact')
{
return
}
else if (url && url.length > 0) {
uni.navigateTo({
url: url,
});
}
},
clickHots(link) {
if (link && link.length > 0) {
uni.navigateTo({
url: link[0].PageUrl,
});
}
},
},
};
</
script
>
<
style
>
.ad-box
{
position
:
relative
;
width
:
100%
;
}
.ad-box
.hots
{
position
:
absolute
;
z-index
:
2
;
}
.ad-box
.ad-chi
{
position
:
absolute
;
}
.ad-box
.ad-chi
img
{
width
:
100%
;
}
.ad-box
.ad-chi
button
{
position
:
absolute
;
width
:
100%
;
height
:
100%
;
opacity
:
0
;
z-index
:
2
;
}
.ad-box-full
{
position
:
absolute
;
top
:
0
;
bottom
:
0
;
left
:
0
;
right
:
0
;
}
.ad-full-height
,
.ad-full-height
image
{
height
:
100%
!important
;
}
</
style
>
.ad-box
{
position
:
relative
;
width
:
100%
;
}
.ad-box
.hots
{
position
:
absolute
;
z-index
:
2
;
}
.ad-box
.ad-chi
{
position
:
absolute
;
}
.ad-box
.ad-chi
img
{
width
:
100%
;
}
.ad-box
.ad-chi
button
{
position
:
absolute
;
width
:
100%
;
height
:
100%
;
opacity
:
0
;
z-index
:
2
;
}
.ad-box-full
{
position
:
absolute
;
top
:
0
;
bottom
:
0
;
left
:
0
;
right
:
0
;
}
.ad-full-height
,
.ad-full-height
image
{
height
:
100%
!important
;
}
</
style
>
\ No newline at end of file
components/tabbar/index.vue
View file @
07d7344f
...
...
@@ -117,22 +117,28 @@
<
template
>
<view>
<view
v-if=
"isShowIcon === 1"
>
<view
class=
"tabbarMain"
style=
"border-radius: 50rpx;"
:class=
"[flagTypeInfo ? 'tabbarMainIphone' : '']"
:style=
"
{'position':'fixed','left':'0','right':'0','padding-bottom':paddingBottom + 'rpx'}"
v-if="navs
&&
navs.length > 0">
<view
class=
"tabbarMain"
style=
"border-radius: 50rpx;"
:class=
"[flagTypeInfo ? 'tabbarMainIphone' : '']"
:style=
"
{'position':'fixed','left':'0','right':'0','padding-bottom':paddingBottom + 'rpx'}"
v-if="navs
&&
navs.length > 0">
<view
class=
"tabBtnMina"
mode=
""
>
<view
class=
"itmMain"
v-for=
"(x, i) in navs"
:key=
"i"
@
click
.
stop=
"goUrl(x.url)"
>
<image
class=
"imgse"
:fade-show=
"false"
v-if=
"active != i"
mode=
"heightFix"
:src=
"x.icon"
></image>
<image
class=
"imgse"
:fade-show=
"false"
v-if=
"active === i"
mode=
"heightFix"
:src=
"x.active_icon"
></image>
<text
class=
"txtBtn"
:style=
"
{ color: active == i ? x.active_color : x.color }">
{{
x
.
text
}}
</text>
<image
class=
"imgse"
:fade-show=
"false"
v-if=
"active != i"
mode=
"heightFix"
:src=
"x.icon"
>
</image>
<image
class=
"imgse"
:fade-show=
"false"
v-if=
"active === i"
mode=
"heightFix"
:src=
"x.active_icon"
></image>
<text
class=
"txtBtn"
:style=
"
{ color: active == i ? x.active_color : x.color }">
{{
x
.
text
}}
</text>
</view>
</view>
</view>
</view>
<view
v-if=
"isShowIcon === 0"
>
<view
class=
"tabbarMain"
:class=
"[flagTypeInfo ? 'tabbarMainIphone' : '']"
:style=
"
{'padding-bottom':'64upx'}" v-if="navs
&&
navs.length > 0">
<view
class=
"tabbarMain"
:class=
"[flagTypeInfo ? 'tabbarMainIphone' : '']"
:style=
"
{'padding-bottom':'64upx'}" v-if="navs
&&
navs.length > 0">
<view
class=
"tabBtnMina"
:class=
"[flagTypeInfo ? 'tabBtnMinaIphone' : '']"
mode=
""
>
<view
class=
"itmMain"
v-for=
"(x, i) in navs"
:key=
"i"
@
click
.
stop=
"goUrl(x.url)"
>
<text
class=
"txtBtn2"
:class=
"
{ activeTxtBtn2: active == i }" :style="{ color: active == i ? x.active_color : x.color }">
{{
x
.
text
}}
</text>
<text
class=
"txtBtn2"
:class=
"
{ activeTxtBtn2: active == i }"
:style="{ color: active == i ? x.active_color : x.color }">
{{
x
.
text
}}
</text>
</view>
</view>
</view>
...
...
@@ -210,7 +216,6 @@
queryString
=
"?"
+
queryString
.
substring
(
1
,
queryString
.
length
);
}
this
.
crtPath
=
"/"
+
t
[
t
.
length
-
1
].
route
+
queryString
;
console
.
log
(
this
.
crtPath
);
this
.
navs
.
forEach
((
x
,
i
)
=>
{
if
(
x
.
url
==
this
.
crtPath
)
{
this
.
active
=
i
;
...
...
@@ -219,11 +224,9 @@
},
goUrl
(
url
)
{
const
replace
=
uni
.
getStorageSync
(
'replace_page_index'
)
if
(
url
==
'/pages/index/index'
&&
replace
&&
replace
.
url
){
if
(
url
==
'/pages/index/index'
&&
replace
&&
replace
.
url
)
{
url
=
replace
.
url
}
console
.
log
(
url
,
replace
)
if
(
this
.
crtPath
!=
url
)
{
uni
.
redirectTo
({
url
:
url
,
...
...
@@ -236,4 +239,4 @@
},
},
};
</
script
>
</
script
>
\ No newline at end of file
components/tradeActivity/tradeIndex.vue
View file @
07d7344f
...
...
@@ -59,9 +59,7 @@
</view>
<view
class=
"waterfall-item-body"
>
<view
class=
"waterfall-item-name"
>
{{
item
.
DataName
}}
</view>
<view
class=
"waterfall-item-meta"
>
<text
class=
"waterfall-item-arrow"
>
查看详情 ›
</text>
</view>
</view>
</view>
</view>
...
...
@@ -85,9 +83,6 @@
</view>
<view
class=
"waterfall-item-body"
>
<view
class=
"waterfall-item-name"
>
{{
item
.
DataName
}}
</view>
<view
class=
"waterfall-item-meta"
>
<text
class=
"waterfall-item-arrow"
>
查看详情 ›
</text>
</view>
</view>
</view>
</view>
...
...
pages/index/index.vue
View file @
07d7344f
...
...
@@ -7,7 +7,8 @@
</view>
</image>
</view>
<view
v-if=
"myPageData.home_pages"
v-show=
"showStart == false"
:style=
"[myPageData.home_pages.navs[active].templateBg]"
>
<view
v-if=
"myPageData.home_pages"
v-show=
"showStart == false"
:style=
"[myPageData.home_pages.navs[active].templateBg]"
>
<view
class=
"content"
style=
"min-height: 100vh;"
:style=
"
{
'padding-bottom': showtabs == true ? boxpaddingbottom + 'px' : 0,
paddingTop: noTitle?o:pagePaddingBottom
...
...
@@ -29,16 +30,18 @@
<u-icon
name=
"arrow-left"
size=
"44"
></u-icon>
</view>
</view>
<u-tabs
v-if=
"myPageData.home_pages && myPageData.home_pages.navs.length > 1"
name=
"name"
:list=
"myPageData.home_pages.navs"
:is-scroll=
"true"
:active-color=
"mainColor"
:current=
"active"
:bar-width=
"80"
:font-size=
"32"
:bold=
"fals
e"
@
change=
"changeHandler"
></u-tabs>
<u-tabs
v-if=
"myPageData.home_pages && myPageData.home_pages.navs.length > 1"
name=
"name"
:list=
"myPageData.home_pages.navs"
:is-scroll=
"true"
:active-color=
"mainColor"
:current=
"activ
e"
:bar-width=
"80"
:font-size=
"32"
:bold=
"false"
@
change=
"changeHandler"
></u-tabs>
<template
v-for=
"(item, i) in myPageData.home_pages.navs"
>
<view
:key=
"i"
v-if=
"active == i"
:class=
"
{'flex-column':noTitle}">
<template
v-for=
"(d, di) in item.template.data"
>
<search
v-if=
"d.id == 'search' && isNavPosition == 0"
:style-str=
"d.data"
:key=
"di"
></search>
<search
v-if=
"d.id == 'search' && isNavPosition == 0"
:style-str=
"d.data"
:key=
"di"
>
</search>
<swiper
v-if=
"d.id == 'banner'"
:swipers=
"d.data"
:key=
"di"
></swiper>
<empty
v-if=
"d.id == 'empty'"
:block=
"d.data"
:key=
"di"
></empty>
<rubik
v-if=
"d.id == 'rubik'"
:ad=
"d.data"
:key=
"di"
:class=
"
{'full-col':d.data.list[0].link[0].PageName == 'full'}">
</rubik>
<rubik
v-if=
"d.id == 'rubik'"
:ad=
"d.data"
:key=
"di"
:class=
"
{'full-col':d.data.list[0].link[0].PageName == 'full'}">
</rubik>
<goods
v-if=
"d.id == 'goods'"
:goods=
"d.data"
:key=
"di"
></goods>
<notice
v-if=
"d.id == 'notice'"
:notice=
"d.data"
:key=
"di"
></notice>
<gridnav
v-if=
"d.id == 'nav'"
:navs=
"d.data"
:key=
"di"
></gridnav>
...
...
@@ -54,7 +57,8 @@
<mapi
v-if=
"d.id == 'map'"
:mapi=
"d.data"
:key=
"di"
></mapi>
<checkform
v-if=
"d.id == 'form'"
:forms=
"d.data"
:key=
"di"
></checkform>
<addialog
v-if=
"d.id == 'modal' && d.data.opened"
:ads=
"d.data"
:key=
"di"
></addialog>
<quicknav
v-if=
"d.id == 'quick-nav' && d.data.navSwitch == 1"
:navs=
"d.data"
:key=
"di"
></quicknav>
<quicknav
v-if=
"d.id == 'quick-nav' && d.data.navSwitch == 1"
:navs=
"d.data"
:key=
"di"
>
</quicknav>
<!--
<pingtuan
v-if=
"d.id == 'pintuan'"
:goods=
"d.data"
:key=
"di"
></pingtuan>
-->
<shopinfo
v-if=
"d.id == 'shop-info'"
:ad=
"d.data"
:key=
"di"
ref=
"son"
></shopinfo>
<guide
v-if=
"d.id == 'drive-guide'"
:info=
"d.data"
ref=
"city"
></guide>
...
...
@@ -68,7 +72,8 @@
<!-- 线下服务商品 -->
<sindex
v-if=
"d.id == 'storeGoods'"
:goods=
"d.data"
:key=
"di"
></sindex>
<!-- 老师列表 -->
<educationteacher
v-if=
"d.id == 'educationteacher'"
:goods=
"d.data"
:key=
"di"
></educationteacher>
<educationteacher
v-if=
"d.id == 'educationteacher'"
:goods=
"d.data"
:key=
"di"
>
</educationteacher>
<!--导航栏-->
<navpage
v-if=
"d.id == 'nav-page'"
:navs=
"d.data"
:key=
"di"
></navpage>
<!-- 相亲的人物模板 -->
...
...
@@ -76,47 +81,48 @@
<!-- 相亲活动 -->
<miaiactivitytype
v-if=
"d.id == 'miaiactivitytype'"
:goods=
"d.data"
></miaiactivitytype>
<!-- 相亲活动自定义 -->
<miaiactivityCustom
v-if=
"d.id == 'miaiactivityCustom'"
:goods=
"d.data"
></miaiactivityCustom>
<miaiactivityCustom
v-if=
"d.id == 'miaiactivityCustom'"
:goods=
"d.data"
>
</miaiactivityCustom>
<!-- 瀑布流组件 -->
<Pubu
v-if=
"d.id == 'blindDatePPPlus'"
:dataObj=
"d.data"
@
refresh=
"refreshPage"
></Pubu>
<!-- 首店活动插件 -->
<tradeActivity
v-if=
"d.id == 'tradeActivity'"
:dataObj=
"d.data"
:pagePaddingBottom=
"pagePaddingBottom"
@
refresh=
"refreshPage"
ref=
"tradeActive"
></tradeActivity>
<!--首店首页数据插件-->
<tradeIndex
v-if=
"d.id == 'tradeIndex'"
@
refresh=
"refreshPage"
></tradeIndex>
<tradeActivity
v-if=
"d.id == 'tradeActivity'"
:dataObj=
"d.data"
:pagePaddingBottom=
"pagePaddingBottom"
@
refresh=
"refreshPage"
ref=
"tradeActive"
>
</tradeActivity>
<!--首店首页数据插件-->
<tradeIndex
v-if=
"d.id == 'tradeIndex'"
@
refresh=
"refreshPage"
></tradeIndex>
</
template
>
</view>
</template>
<view
class=
"contract_nav"
v-if=
"GetMiniAppId().MallBaseId==5"
>
<button
class=
"Ma_nav-item"
show-message-card=
"true"
:send-message-path=
"currentParent"
open-type=
"contact"
>
<img
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1644833656000_313.png"
/>
<button
class=
"Ma_nav-item"
show-message-card=
"true"
:send-message-path=
"currentParent"
open-type=
"contact"
>
<img
src=
"https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Test/Upload/Goods/1644833656000_313.png"
/>
</button>
</view>
<view
v-if=
"showtabs == true"
>
<tabbar
></tabbar>
<tabbar></tabbar>
</view>
<view
class=
"tips_t"
v-if=
"
add_show == 1 &&
JSON.stringify(setting) != '{}' &&
setting.add_app_text != null
"
:style=
"{
'border-radius': setting.add_app_bg_radius + 'rpx',
opacity: setting.add_app_bg_transparency / 100,
top: pagePaddingBottom,
}"
>
<view
class=
"tips_t"
v-if=
"add_show == 1 &&JSON.stringify(setting) != '{}' &&setting.add_app_text != null"
:style=
"{
'border-radius': setting.add_app_bg_radius + 'rpx',
opacity: setting.add_app_bg_transparency / 100,
top: pagePaddingBottom,
}"
>
<u-icon
name=
"cross"
color=
"#fff"
@
click=
"close"
></u-icon>
<view
style=
"width: 1px; height: 20px; margin: 0 10px; background: #fff"
></view>
<Text
style=
"color: #fff"
>
{{ setting.add_app_text }}
</Text>
<view
class=
"triangle-up"
:style=
"{ top: pagePaddingBottom }"
></view>
</view>
<coupon
v-if=
"showCoupons"
:coupon-message=
"couponMessage"
:cform=
"ComeFrom"
@
goLook=
"goLook"
@
closeBtn=
"closeBtn"
></coupon>
<coupon
v-if=
"showCoupons"
:coupon-message=
"couponMessage"
:cform=
"ComeFrom"
@
goLook=
"goLook"
@
closeBtn=
"closeBtn"
></coupon>
<
template
v-if=
"setting&&setting.is_show_auth==1"
>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
</
template
>
<official-account></official-account>
<orderPopup
v-if=
"showorder"
:orderPopupdata=
"orderPopupdata"
@
gosalesvolume=
"gosalesvolume"
@
closeBtn=
"closeBtn_order"
></orderPopup>
<orderPopup
v-if=
"showorder"
:orderPopupdata=
"orderPopupdata"
@
gosalesvolume=
"gosalesvolume"
@
closeBtn=
"closeBtn_order"
></orderPopup>
</view>
</view>
</view>
...
...
@@ -204,7 +210,7 @@
page_idt
:
0
,
//首页组件分享参数
boxpaddingbottom
:
0
,
//底部的高度
currentParent
:
''
,
noTitle
:
false
noTitle
:
false
};
},
components
:
{
...
...
@@ -358,17 +364,17 @@
if
(
options
&&
options
.
type
)
{
this
.
carrierType
=
options
.
type
;
}
if
(
options
&&
options
.
setnav
){
let
current_url
=
"/"
+
this
.
currentParent
+
'?'
if
(
options
&&
options
.
setnav
)
{
let
current_url
=
"/"
+
this
.
currentParent
+
'?'
for
(
let
key
in
options
)
{
current_url
+=
key
+
'='
+
options
[
key
]
+
'&'
;
current_url
+=
key
+
'='
+
options
[
key
]
+
'&'
;
}
current_url
=
current_url
.
slice
(
0
,
-
1
);
const
replacePageData
=
{
url
:
current_url
,
state
:
options
.
setnav
}
uni
.
setStorageSync
(
"replace_page_index"
,
replacePageData
)
uni
.
setStorageSync
(
"replace_page_index"
,
replacePageData
)
}
// #ifdef MP-WEIXIN
...
...
@@ -458,7 +464,7 @@
uni
.
getStorageSync
(
"add_top_app"
).
add_top_app_show
:
1
;
this
.
setting
=
set
;
this
.
isShowBack
();
let
now
=
new
Date
();
...
...
@@ -613,20 +619,20 @@
}
},
methods
:
{
SetMemberBindCustomer
(){
SetMemberBindCustomer
()
{
let
that
=
this
;
that
.
request2
({
url
:
"/api/MemberUser/SetMemberBindCustomer"
,
data
:
{
Id
:
that
.
u
.
UserId
,
CustomerOpenId
:
uni
.
getStorageSync
(
'jzTravelOpenId'
)
},
url
:
"/api/MemberUser/SetMemberBindCustomer"
,
data
:
{
Id
:
that
.
u
.
UserId
,
CustomerOpenId
:
uni
.
getStorageSync
(
'jzTravelOpenId'
)
},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
uni
.
removeStorageSync
(
'jzTravelOpenId'
);
}
},(
err
)
=>
{
if
(
res
.
resultCode
==
1
)
{
uni
.
removeStorageSync
(
'jzTravelOpenId'
);
}
},
(
err
)
=>
{
// uni.showToast({
// title: err.message,
// icon: "none",
...
...
@@ -1108,9 +1114,9 @@
res
.
data
.
mall
.
setting
.
mallStyle
.
pricecolor
;
}
this
.
indexPageData
=
res
.
data
.
home_pages
.
navs
[
0
].
template
.
data
;
if
(
!
res
.
data
.
home_pages
.
is_show_bottom_nav
)
{
if
(
!
res
.
data
.
home_pages
.
is_show_bottom_nav
)
{
this
.
showtabs
=
false
;
}
else
{
}
else
{
this
.
showtabs
=
true
;
}
this
.
noTitle
=
res
.
data
.
home_pages
.
is_noshow_title
...
...
@@ -1591,15 +1597,17 @@
width
:
80px
;
height
:
80px
;
}
.content
.flex-column
{
.content
.flex-column
{
display
:
flex
;
flex-direction
:
column
;
width
:
100%
;
min-height
:
100vh
;
}
.content
.flex-column
.full-col
{
.content
.flex-column
.full-col
{
flex
:
1
;
height
:
1px
;
position
:
relative
;
}
</
style
>
</
style
>
\ No newline at end of file
pages/kotra/brand/brandComponent.vue
View file @
07d7344f
<
template
>
<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,x.MallBaseId)"
:style=
"
{ borderRadius: '20rpx' }"
>
<view
class=
"img-box"
>
<view
class=
"img-show"
>
<image
style=
"
<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,x.MallBaseId)"
: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
class=
"imgNum"
v-if=
"x.AreaRequirement>0||x.EndAreaRequirement>0||x.ShopNum>0"
>
"
mode=
"aspectFill"
:src=
"x.BannerList[0]"
/>
<!--
<view
class=
"imgNum"
v-if=
"x.AreaRequirement>0||x.EndAreaRequirement>0||x.ShopNum>0"
>
<span
class=
"imgN"
style=
"margin-bottom: 10rpx;"
:style=
"
{'text-align':!x.ShopNum||x.ShopNum==''?'right':'left'}">
<span
v-if=
"x.AreaRequirement>0||x.EndAreaRequirement>0"
>
...
...
@@ -32,79 +24,81 @@
店铺: {{x.ShopNum}}个
</span>
</view>
-->
</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>
</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>
</template>
<
script
>
export
default
{
props
:[
'g'
],
data
()
{
return
{
u
:{},
replace
:
null
}
},
onLoad
(
options
)
{
},
mounted
()
{
let
use
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
this
.
u
=
use
this
.
replace
=
uni
.
getStorageSync
(
'replace_page_index'
)
},
methods
:{
openGood
(
id
,
MallBaseId
)
{
if
(
MallBaseId
==
8
){
uni
.
navigateTo
({
url
:
"/pages/kotra/brand/detail?id="
+
id
,
});
return
}
if
(
this
.
replace
.
state
==
'1'
){
uni
.
navigateTo
({
url
:
"/pages/kotra/brand/detail_brand?id="
+
id
,
});
}
else
{
export
default
{
props
:
[
'g'
],
data
()
{
return
{
u
:
{},
replace
:
null
}
},
onLoad
(
options
)
{
},
mounted
()
{
let
use
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
this
.
u
=
use
this
.
replace
=
uni
.
getStorageSync
(
'replace_page_index'
)
},
methods
:
{
openGood
(
id
,
MallBaseId
)
{
if
(
MallBaseId
==
8
)
{
uni
.
navigateTo
({
url
:
"/pages/kotra/brand/detail?id="
+
id
,
});
return
}
if
(
this
.
replace
.
state
==
'1'
)
{
uni
.
navigateTo
({
url
:
"/pages/kotra/brand/detail_company?id="
+
id
,
});
}
},
}
}
url
:
"/pages/kotra/brand/detail_brand?id="
+
id
,
});
}
else
{
uni
.
navigateTo
({
url
:
"/pages/kotra/brand/detail_company?id="
+
id
,
});
}
},
}
}
</
script
>
<
style
scoped
>
.img-show
{
position
:
relative
;
}
.imgNum
{
width
:
100%
;
position
:
absolute
;
bottom
:
0
;
padding
:
15
rpx
27
rpx
5
rpx
27
rpx
;
z-index
:
2
;
display
:
flex
;
flex-direction
:
row
;
justify-content
:
space-between
;
color
:
#fff
;
font-size
:
20
rpx
;
background
:
rgba
(
23
,
23
,
23
,
0.4
);
}
.imgN
{
flex
:
1
;
}
.imgN
:nth-child
(
2
)
{
text-align
:
right
;
}
.img-show
{
position
:
relative
;
}
.imgNum
{
width
:
100%
;
position
:
absolute
;
bottom
:
0
;
padding
:
15
rpx
27
rpx
5
rpx
27
rpx
;
z-index
:
2
;
display
:
flex
;
flex-direction
:
row
;
justify-content
:
space-between
;
color
:
#fff
;
font-size
:
20
rpx
;
background
:
rgba
(
23
,
23
,
23
,
0.4
);
}
.imgN
{
flex
:
1
;
}
.imgN
:nth-child
(
2
)
{
text-align
:
right
;
}
</
style
>
\ No newline at end of file
pages/kotra/brand/detail_brand.vue
View file @
07d7344f
...
...
@@ -209,8 +209,7 @@
"&id="
+
this
.
ID
,
imageUrl
:
this
.
details
.
BannerList
&&
this
.
details
.
BannerList
.
length
>
0
?
this
.
details
.
BannerList
[
0
]
:
""
,
this
.
details
.
BannerList
[
0
]
:
""
,
};
},
onShareAppMessage
(
res
)
{
...
...
@@ -237,8 +236,7 @@
title
:
this
.
details
.
FullBrandName
?
this
.
details
.
FullBrandName
:
""
,
path
:
"/pages/kotra/brand/detail_brand?id="
+
this
.
ID
,
imageUrl
:
this
.
details
.
BannerList
&&
this
.
details
.
BannerList
.
length
>
0
?
this
.
details
.
BannerList
[
0
]
:
""
,
this
.
details
.
BannerList
[
0
]
:
""
,
};
},
methods
:
{
...
...
pages/kotra/brand/detail_new.vue
View file @
07d7344f
<
template
>
<view
style=
"
<view
style=
"
height: 100vh;
overflow: hidden;
box-sizing: border-box;
position: relative;
"
>
<scroll-view
scroll-y=
"true"
style=
"height: 100%"
@
scroll=
"scroll"
>
<view
class=
"bg-red"
>
<view
class=
"detail-box"
>
<view
class=
"header flex item-center"
>
<view
class=
"title"
>
{{
details
.
BrandName
}}
1
</view>
<view
class=
"tag-box"
>
<text
class=
"tag1"
>
{{
details
.
BrandType
}}
</text
><text
class=
"tag2"
>
{{
details
.
CustomerType
}}
</text>
</view>
</view>
<view
class=
"score-box flex item-center"
>
<u-rate
:current=
"rate"
:count=
"5"
:size=
"25"
active-icon=
"star"
active-color=
"#F30329"
inactive-color=
"#b2b2b2"
class=
"rate"
></u-rate>
<text
class=
"score"
>
4.9分
</text>
<text
class=
"desire"
>
开店意愿
</text>
</view>
<view
class=
"img-box"
>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
</view>
<view
class=
"info1 flex flex-between"
>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
2
</view>
<view
class=
"info1-title"
>
店铺数量
</view>
</view>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
mall
</view>
<view
class=
"info1-title"
>
对标载体
</view>
</view>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
600
<text
style=
"font-size: 24rpx"
>
㎡
</text>
</view>
<view
class=
"info1-title"
>
面积需求
</view>
</view>
</view>
<view
class=
"baseinfo"
>
<!--
<view
class=
"baseinfo-item flex "
>
"
>
<scroll-view
scroll-y=
"true"
style=
"height: 100%"
@
scroll=
"scroll"
>
<view
class=
"bg-red"
>
<view
class=
"detail-box"
>
<view
class=
"header flex item-center"
>
<view
class=
"title"
>
{{
details
.
BrandName
}}
1
</view>
<view
class=
"tag-box"
>
<text
class=
"tag1"
>
{{
details
.
BrandType
}}
</text><text
class=
"tag2"
>
{{
details
.
CustomerType
}}
</text>
</view>
</view>
<view
class=
"score-box flex item-center"
>
<u-rate
:current=
"rate"
:count=
"5"
:size=
"25"
active-icon=
"star"
active-color=
"#F30329"
inactive-color=
"#b2b2b2"
class=
"rate"
></u-rate>
<text
class=
"score"
>
4.9分
</text>
<text
class=
"desire"
>
开店意愿
</text>
</view>
<view
class=
"img-box"
>
<view
v-for=
"(src, index) in details.BannerList"
:key=
"index"
>
<image
:src=
"src"
class=
"img"
mode=
"aspectFill"
@
click=
"previewImage(index)"
></image>
</view>
</view>
<view
class=
"info1 flex flex-between"
>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
2
</view>
<view
class=
"info1-title"
>
店铺数量
</view>
</view>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
mall
</view>
<view
class=
"info1-title"
>
对标载体
</view>
</view>
<view
class=
"info1-item"
>
<view
class=
"info1-con"
>
600
<text
style=
"font-size: 24rpx"
>
㎡
</text>
</view>
<view
class=
"info1-title"
>
面积需求
</view>
</view>
</view>
<view
class=
"baseinfo"
>
<!--
<view
class=
"baseinfo-item flex "
>
<view
class=
"baseinfo-label"
>
拓店区域:
</view>
...
...
@@ -76,749 +62,598 @@
商业地产+体育运动的新型“SPORTMALL”的全新商业场景
</view>
</view>
-->
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
客群定位:
</view>
<view
class=
"baseinfo-con"
>
白领,家庭,学生等对体育有需求同时具有一定的消费能力的客户群体
</view>
</view>
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
行业定位:
</view>
<view
class=
"baseinfo-con"
>
高
</view>
</view>
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
开店方向:
</view>
<view
class=
"baseinfo-con"
>
东边
</view>
</view>
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
拓展对接人:
</view>
<view
class=
"baseinfo-con"
>
周董 18212151212
</view>
</view>
</view>
<view
class=
"brand-title"
>
<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.Advertising != ''"
>
<h-parse
:content=
"details.Advertising"
@
navigate=
"clickDescription"
></h-parse>
</view>
<view
style=
"margin-top: 30rpx"
v-if=
"details.Advertising == ''"
>
无
</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=
"
{
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
客群定位:
</view>
<view
class=
"baseinfo-con"
>
白领,家庭,学生等对体育有需求同时具有一定的消费能力的客户群体
</view>
</view>
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
行业定位:
</view>
<view
class=
"baseinfo-con"
>
高
</view>
</view>
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
开店方向:
</view>
<view
class=
"baseinfo-con"
>
东边
</view>
</view>
<view
class=
"baseinfo-item flex"
>
<view
class=
"baseinfo-label"
>
拓展对接人:
</view>
<view
class=
"baseinfo-con"
>
周董 18212151212
</view>
</view>
</view>
<view
class=
"brand-title"
>
<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.Advertising != ''"
>
<h-parse
:content=
"details.Advertising"
@
navigate=
"clickDescription"
></h-parse>
</view>
<view
style=
"margin-top: 30rpx"
v-if=
"details.Advertising == ''"
>
无
</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=
"
{
}">
{{
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=
"
}">
{{
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=
"
{
"
>
<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=
"
{
}">
{{
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>
</view>
}">
{{
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>
</view>
</
template
>
<
script
>
import
hParse
from
"@/components/u-parse/parse.vue"
;
import
bianmarenTooltip
from
"../components/bianmaren-tooltips.vue"
;
let
timer
;
export
default
{
components
:
{
hParse
,
bianmarenTooltip
,
},
data
()
{
return
{
rate
:
1
,
ID
:
0
,
details
:
{},
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
:
""
,
//点击元素
};
},
onLoad
(
options
)
{
let
that
=
this
;
if
(
options
&&
options
.
id
)
{
this
.
ID
=
options
.
id
;
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
:
{
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
=
[];
this
.
details
.
BannerList
.
forEach
((
x
)
=>
{
let
obj
=
{
name
:
x
,
};
this
.
details
.
imgs
.
push
(
obj
);
});
}
}
);
},
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
);
},
},
});
},
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
,
});
},
videoControl
(
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
();
}
}
);
},
},
};
import
hParse
from
"@/components/u-parse/parse.vue"
;
import
bianmarenTooltip
from
"../components/bianmaren-tooltips.vue"
;
let
timer
;
export
default
{
components
:
{
hParse
,
bianmarenTooltip
,
},
data
()
{
return
{
rate
:
1
,
ID
:
0
,
details
:
{},
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
:
""
,
//点击元素
};
},
onLoad
(
options
)
{
let
that
=
this
;
if
(
options
&&
options
.
id
)
{
this
.
ID
=
options
.
id
;
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
:
{
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
=
[];
this
.
details
.
BannerList
.
forEach
((
x
)
=>
{
let
obj
=
{
name
:
x
,
};
this
.
details
.
imgs
.
push
(
obj
);
});
}
}
);
},
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
);
},
},
});
},
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
,
});
},
videoControl
(
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
();
}
}
);
},
},
};
</
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
;
.title
{
font-size
:
42rpx
;
font-weight
:
800
;
color
:
#1f1f1f
;
margin-right
:
20rpx
;
}
.tag-box
{
border-radius
:
6rpx
;
.tag1
{
padding
:
7rpx
10rpx
;
background-color
:
#1f1f1f
;
font-size
:
20rpx
;
color
:
#ffffff
;
}
.tag2
{
padding
:
7rpx
10rpx
;
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
;
overflow-x
:
scroll
;
overflow-y
:
hidden
;
box-shadow
:
0rpx
10rpx
30rpx
0rpx
rgba
(
36
,
36
,
36
,
0
.2
);
margin-bottom
:
45rpx
;
.img
{
width
:
216rpx
;
height
:
226rpx
;
margin-right
:
10rpx
;
}
}
.info1
{
margin-bottom
:
60rpx
;
.info1-item
{
width
:
200rpx
;
.info1-con
{
font-size
:
34rpx
;
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
;
}
</
style
>
.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
;
.title
{
font-size
:
42rpx
;
font-weight
:
800
;
color
:
#1f1f1f
;
margin-right
:
20rpx
;
}
.tag-box
{
border-radius
:
6rpx
;
.tag1
{
padding
:
7rpx
10rpx
;
background-color
:
#1f1f1f
;
font-size
:
20rpx
;
color
:
#ffffff
;
}
.tag2
{
padding
:
7rpx
10rpx
;
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
;
overflow-x
:
scroll
;
overflow-y
:
hidden
;
box-shadow
:
0rpx
10rpx
30rpx
0rpx
rgba
(
36
,
36
,
36
,
0
.2
);
margin-bottom
:
45rpx
;
.img
{
width
:
216rpx
;
height
:
226rpx
;
margin-right
:
10rpx
;
}
}
.info1
{
margin-bottom
:
60rpx
;
.info1-item
{
width
:
200rpx
;
.info1-con
{
font-size
:
34rpx
;
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
;
}
</
style
>
\ No newline at end of file
pages/kotra/brand/list.vue
View file @
07d7344f
...
...
@@ -9,7 +9,7 @@
:style=
"
{'background': TenantId!=18?`linear-gradient(-3deg, #eff8ff, #c6e6ff)`:''}">
<headers
:title=
"replace.state=='1'?'品牌列表':'企业列表'"
></headers>
<view
v-if=
"TenantId==18"
style=
"padding: 5px 10px"
>
<u-search
placeholder=
"搜索
品牌
名称"
:focus=
"false"
:show-action=
"false"
:clearabled=
"true"
radius=
"40"
<u-search
placeholder=
"搜索名称"
:focus=
"false"
:show-action=
"false"
:clearabled=
"true"
radius=
"40"
v-model=
"msg.BrandName"
@
search=
"searchHandler"
@
custom=
"searchHandler"
bg-color=
"#FFF"
></u-search>
</view>
...
...
@@ -41,9 +41,6 @@
: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=
"brandScreen"
>
<view
class=
"statusBox"
v-if=
"msg.IsInChengdu == 0"
@
click=
"changeFirstStoreTest(-1)"
>
...
...
@@ -57,9 +54,11 @@
<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>
{{
item
.
YearInfo
}}
</view>
<view
class=
"screenBoxItemName"
:class=
"
{ activeName: item.Id == msg.PrizeId }">
{{
item
.
Name
}}
</view>
{{
item
.
Name
}}
</view>
</view>
</view>
</
template
>
...
...
@@ -229,7 +228,9 @@
"background"
:
"#FFF"
},
TenantId
:
null
,
replace
:
null
,
replace
:
{
state
:
"1"
,
//1-品牌,2-企业服务
},
secondary
:
null
,
GetYBConfig
:
null
,
iscpswjselectall
:
0
,
...
...
@@ -298,10 +299,11 @@
this
.
iscpswjselectall
=
uni
.
getStorageSync
(
"basedata"
).
iscpswjselectall
let
uid
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
this
.
TenantId
=
uid
.
TenantId
// this.msg.TenantId = uid.TenantId
this
.
replace
=
uni
.
getStorageSync
(
'replace_page_index'
)
let
tempReplace
=
uni
.
getStorageSync
(
'replace_page_index'
)
if
(
tempReplace
&&
tempReplace
.
state
)
{
this
.
replace
.
state
=
tempReplace
.
state
;
}
this
.
msg
.
BrandEnterpriseType
=
this
.
replace
.
state
==
'1'
?
1
:
2
if
(
options
&&
options
.
id
)
{
this
.
msg
.
BrandClassId
=
options
.
id
;
}
...
...
@@ -316,12 +318,9 @@
this
.
GetBrandClassList
();
this
.
getPrizeList
();
// }
},
created
()
{
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
},
mounted
()
{
uni
.
setNavigationBarTitle
({
...
...
@@ -436,8 +435,11 @@
init
()
{
let
url
=
"/api/AppletTrade/GetBrandPageList"
if
(
this
.
TenantId
!=
18
&&
this
.
replace
.
state
)
{
if
(
this
.
replace
.
state
==
'1'
)
url
=
"/api/AppletTrade/GetAllBrandEnterprisePageList"
else
url
=
"/api/AppletTrade/GetEnterpriseServicesPageList"
if
(
this
.
replace
.
state
==
'1'
)
{
url
=
"/api/AppletTrade/GetAllBrandEnterprisePageList"
}
else
{
url
=
"/api/AppletTrade/GetEnterpriseServicesPageList"
}
}
this
.
request2
({
url
:
url
,
...
...
@@ -489,7 +491,6 @@
this
.
g
=
[];
this
.
init
();
// }
},
getPrizeList
()
{
this
.
request2
({
...
...
pages/kotra/carrier/list.vue
View file @
07d7344f
<
template
>
<div
style=
"background-color: #f6f6f6; overflow: hidden"
:style=
"
{ height: contentHeight + 'px' }"
>
<view
class=
"carrierHeadBgBox"
:style=
"
{'background': TenantId!=18?`linear-gradient(-3deg, #eff8ff, #c6e6ff)`:''}">
<headers
:title=
"replace.state=='1'?'载体列表':'楼宇列表'"
></headers>
<template
v-if=
"isauth"
>
<view
v-if=
"TenantId==18"
style=
"padding: 5px 10px"
>
{{
TenantId
}}
<u-search
placeholder=
"搜索载体名称"
:focus=
"false"
:show-action=
"false"
:clearabled=
"true"
radius=
"40"
v-model=
"searchKey"
@
search=
"searchHandler"
@
custom=
"searchHandler"
bg-color=
"#FFF"
></u-search>
</view>
<view
v-else
class=
"carrierSearch"
style=
"padding: 5px 10px;margin-top: 6rpx;"
>
<template
v-if=
"iscpswjselectall==1&&replace.state=='1'"
>
<view
class=
"carrierSearch-left"
>
<uni-section
title=
""
type=
"line"
>
<uni-data-select
v-model=
"msg.MallBaseId"
:localdata=
"ShopTypeList"
:clear=
"false"
@
change=
"ResetQuery"
></uni-data-select>
</uni-section>
</view>
<view
class=
"carrierSearch-auto"
></view>
</
template
>
<view
class=
"carrierSearch-right"
>
<input
v-if=
"replace.state=='1'"
v-model=
"msg.CarrierName"
:placeholder=
"`搜索载体名称`"
@
input=
"ResetQuery"
></input>
<input
v-else
v-model=
"msg.MetroName"
:placeholder=
"`搜索楼宇名称`"
@
input=
"ResetQuery"
></input>
</view>
</view>
</template>
<
template
v-if=
"TenantId==18"
>
<view
style=
"display: flex; align-items: center"
>
<view
style=
"flex: 1; overflow: hidden"
>
<u-tabs
bg-color=
"#f6f6f6"
:is-scroll=
"true"
name=
"Name"
:list=
"typeList"
:active-color=
"mainColor"
:active-item-style=
"activeItemStyle"
:current=
"active"
@
change=
"changeHandler"
:show-bar=
"true"
:activeFontSize=
"34"
:bold=
"true"
height=
"100"
duration=
"0"
:font-size=
"28"
></u-tabs>
</view>
<!--
<div
style=
"width: 60rpx"
@
click=
"showPopup = true"
>
<u-icon
name=
"wap-nav"
color=
"#111"
size=
"42"
></u-icon>
</div>
-->
</view>
<view
class=
"carrierScreen"
v-if=
"isauth"
>
<view
class=
"statusBox"
>
<picker
@
change=
"statusChange"
:range=
"kystatus"
range-key=
"name"
>
<view
class=
"curStatusName"
>
{{
curStatusName
}}
<u-icon
name=
"arrow-down"
color=
"#ffffff"
size=
"22"
style=
"margin-left: 10rpx"
></u-icon
></view>
</picker>
</view>
<view
class=
"statusBox"
v-if=
"msg.FirstStoreTest === 1"
@
click=
"changeFirstStoreTest(0)"
>
首店经济试验场
</view>
<view
class=
"statusBox2"
v-if=
"msg.FirstStoreTest === 0"
@
click=
"changeFirstStoreTest(1)"
>
首店经济试验场
</view>
</view>
</
template
>
<view
v-else
style=
"display: flex; align-items: center;padding: 28rpx 0;"
>
<view
style=
"flex: 1; overflow: hidden;padding-left: 32rpx;"
class=
"carrierTabBox"
>
<u-tabs
bg-color=
"none"
:is-scroll=
"true"
name=
"ClassName"
:list=
"typeList"
:active-color=
"mainColor"
inactive-color=
"#000000"
:active-item-style=
"activeItemStyleCarr"
:current=
"active"
@
change=
"changeHandler"
:show-bar=
"false"
:activeFontSize=
"28"
:bold=
"true"
height=
"45"
duration=
"0"
:font-size=
"26"
gutter=
"29"
></u-tabs>
</view>
</view>
</view>
<u-empty
v-if=
"dataList&&dataList.length == 0"
text=
"暂无数据"
mode=
"list"
class=
"noBox"
></u-empty>
<view
:style=
"{ height: TenantId==18?'calc(100% - 101px)':'calc(100% - 191px)'}"
v-if=
"dataList&&dataList.length > 0"
>
<scroll-view
:scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
@
scrolltolower=
"lower"
style=
"height: 100%; padding-bottom: 0px"
>
<
template
v-if=
"TenantId==18"
>
<view
v-for=
"(item, index) in dataList"
:key=
"index"
>
<div
class=
"good_study_one"
@
click=
"openGood(item.ID, typeList[item.ProjectType].Name)"
:style=
"
{
<div
style=
"background-color: #f6f6f6; overflow: hidden"
:style=
"
{ height: contentHeight + 'px' }">
<view
class=
"carrierHeadBgBox"
:style=
"
{'background': TenantId!=18?`linear-gradient(-3deg, #eff8ff, #c6e6ff)`:''}">
<headers
:title=
"replace.state=='1'?'项目列表':'写字楼列表'"
></headers>
<template
v-if=
"isauth"
>
<view
v-if=
"TenantId==18"
style=
"padding: 5px 10px"
>
<u-search
placeholder=
"搜索名称"
:focus=
"false"
:show-action=
"false"
:clearabled=
"true"
radius=
"40"
v-model=
"searchKey"
@
search=
"searchHandler"
@
custom=
"searchHandler"
bg-color=
"#FFF"
></u-search>
</view>
<view
v-else
class=
"carrierSearch"
style=
"padding: 5px 10px;margin-top: 6rpx;"
>
<template
v-if=
"iscpswjselectall==1&&replace.state=='1'"
>
<view
class=
"carrierSearch-left"
>
<uni-section
title=
""
type=
"line"
>
<uni-data-select
v-model=
"msg.MallBaseId"
:localdata=
"ShopTypeList"
:clear=
"false"
@
change=
"ResetQuery"
></uni-data-select>
</uni-section>
</view>
<view
class=
"carrierSearch-auto"
></view>
</
template
>
<view
class=
"carrierSearch-right"
>
<input
v-if=
"replace.state=='1'"
v-model=
"msg.CarrierName"
:placeholder=
"`搜索项目名称`"
@
input=
"ResetQuery"
></input>
<input
v-else
v-model=
"msg.MetroName"
:placeholder=
"`搜索写字楼名称`"
@
input=
"ResetQuery"
></input>
</view>
</view>
</template>
<
template
v-if=
"TenantId==18"
>
<view
style=
"display: flex; align-items: center"
>
<view
style=
"flex: 1; overflow: hidden"
>
<u-tabs
bg-color=
"#f6f6f6"
:is-scroll=
"true"
name=
"Name"
:list=
"typeList"
:active-color=
"mainColor"
:active-item-style=
"activeItemStyle"
:current=
"active"
@
change=
"changeHandler"
:show-bar=
"true"
:activeFontSize=
"34"
:bold=
"true"
height=
"100"
duration=
"0"
:font-size=
"28"
></u-tabs>
</view>
</view>
<view
class=
"carrierScreen"
v-if=
"isauth"
>
<view
class=
"statusBox"
>
<picker
@
change=
"statusChange"
:range=
"kystatus"
range-key=
"name"
>
<view
class=
"curStatusName"
>
{{
curStatusName
}}
<u-icon
name=
"arrow-down"
color=
"#ffffff"
size=
"22"
style=
"margin-left: 10rpx"
></u-icon></view>
</picker>
</view>
<view
class=
"statusBox"
v-if=
"msg.FirstStoreTest === 1"
@
click=
"changeFirstStoreTest(0)"
>
首店经济试验场
</view>
<view
class=
"statusBox2"
v-if=
"msg.FirstStoreTest === 0"
@
click=
"changeFirstStoreTest(1)"
>
首店经济试验场
</view>
</view>
</
template
>
<view
v-else
style=
"display: flex; align-items: center;padding: 28rpx 0;"
>
<view
style=
"flex: 1; overflow: hidden;padding-left: 32rpx;"
class=
"carrierTabBox"
>
<u-tabs
bg-color=
"none"
:is-scroll=
"true"
name=
"ClassName"
:list=
"typeList"
:active-color=
"mainColor"
inactive-color=
"#000000"
:active-item-style=
"activeItemStyleCarr"
:current=
"active"
@
change=
"changeHandler"
:show-bar=
"false"
:activeFontSize=
"28"
:bold=
"true"
height=
"45"
duration=
"0"
:font-size=
"26"
gutter=
"29"
></u-tabs>
</view>
</view>
</view>
<u-empty
v-if=
"dataList&&dataList.length == 0"
text=
"暂无数据"
mode=
"list"
class=
"noBox"
></u-empty>
<view
:style=
"{ height: TenantId==18?'calc(100% - 101px)':'calc(100% - 191px)'}"
v-if=
"dataList&&dataList.length > 0"
>
<scroll-view
:scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
@
scrolltolower=
"lower"
style=
"height: 100%; padding-bottom: 0px"
>
<
template
v-if=
"TenantId==18"
>
<view
v-for=
"(item, index) in dataList"
:key=
"index"
>
<div
class=
"good_study_one"
@
click=
"openGood(item.ID, typeList[item.ProjectType].Name)"
:style=
"
{
borderRadius: '15px',
}"
>
<view
class=
"carriertag"
v-if=
"item.FirstStoreTest === 1"
>
<view
class=
"carriertagsub1"
>
首店
</view>
<view
class=
"carriertagsub2"
>
经济试验场
</view>
</view>
<view
class=
"img-box"
>
<view
class=
"img-show"
>
<image
style=
"
width: 100%;
height: 100%;
border-radius: 10rpx 10rpx 0 0;
"
mode=
"aspectFill"
:src=
"item.BannerList[0]"
/>
</view>
</view>
<div
class=
"good-info"
>
<div
class=
"good-name"
>
<div
class=
"span-name"
style=
"display: flex"
>
<div
class=
"span-name-sub"
>
{{
item
.
CarrierName
}}
</div>
<view
v-if=
"item.ListEnroll.length > 0"
>
<image
style=
"height: 100%; border-radius: 10rpx 10rpx 0 0"
mode=
"heightFix"
:src=
"item.ListEnroll[0].MedalImage"
/>
</view>
</div>
<div
class=
"span-type"
>
{{
item
.
ProjectTypeName
}}
<text
v-if=
"item.OpeningStatus == 0"
style=
"
}">
<view
class=
"carriertag"
v-if=
"item.FirstStoreTest === 1"
>
<view
class=
"carriertagsub1"
>
首店
</view>
<view
class=
"carriertagsub2"
>
经济试验场
</view>
</view>
<view
class=
"img-box"
>
<view
class=
"img-show"
>
<image
style=
"width: 100%;height: 100%;border-radius: 10rpx 10rpx 0 0;"
mode=
"aspectFill"
:src=
"item.BannerList[0]"
/>
</view>
</view>
<div
class=
"good-info"
>
<div
class=
"good-name"
>
<div
class=
"span-name"
style=
"display: flex"
>
<div
class=
"span-name-sub"
>
{{
item
.
CarrierName
}}
</div>
<view
v-if=
"item.ListEnroll.length > 0"
>
<image
style=
"height: 100%; border-radius: 10rpx 10rpx 0 0"
mode=
"heightFix"
:src=
"item.ListEnroll[0].MedalImage"
/>
</view>
</div>
<div
class=
"span-type"
>
{{
item
.
ProjectTypeName
}}
<text
v-if=
"item.OpeningStatus == 0"
style=
"
font-size: 24rpx;
font-family: PingFang SC;
font-weight: 500;
color: #f70027;
margin-left: 10rpx;
"
>
即将开业
</text
>
<text
v-if=
"item.OpeningStatus == 1"
style=
"
"
>
即将开业
</text>
<text
v-if=
"item.OpeningStatus == 1"
style=
"
font-size: 24rpx;
font-family: PingFang SC;
font-weight: 500;
color: #111111;
margin-left: 10rpx;
"
>
已开业
</text
>
</div>
</div>
<div
class=
"good-price-info"
>
<u-icon
name=
"location"
color=
"#999"
size=
"24"
></u-icon>
<span
class=
"price"
style=
"margin-left: 5px"
>
{{
"
>
已开业
</text>
</div>
</div>
<div
class=
"good-price-info"
>
<u-icon
name=
"location"
color=
"#999"
size=
"24"
></u-icon>
<span
class=
"price"
style=
"margin-left: 5px"
>
{{
item
.
Address
}}
</span>
</div>
</div>
</div>
</view>
</
template
>
<
template
v-else
>
<carrierElement
v-if=
"dataList&&dataList.length>0"
:dataList=
"dataList"
></carrierElement>
</
template
>
<u-loadmore
:status=
"status"
:load-text=
"loadText"
:font-size=
"24"
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"#F6F6F6"
/>
</scroll-view>
</view>
<!-- 加载中 -->
<view
class=
"loading"
v-if=
"loading"
>
<u-loading
mode=
"flower"
size=
"48"
></u-loading>
<Text
style=
"color: #f6f6f6; margin-top: 10rpx"
>
加载中...
</Text>
</view>
<auth
v-if=
"showAuth"
@
changeuserinfo=
"reloadUserinfo"
@
gbAuth=
"gbAuth"
></auth>
<tabbars></tabbars>
</div>
</div>
</div>
</div>
</view>
</
template
>
<
template
v-else
>
<carrierElement
v-if=
"dataList&&dataList.length>0"
:dataList=
"dataList"
></carrierElement>
</
template
>
<u-loadmore
:status=
"status"
:load-text=
"loadText"
:font-size=
"24"
:margin-top=
"20"
:margin-bottom=
"20"
bg-color=
"#F6F6F6"
/>
</scroll-view>
</view>
<!-- 加载中 -->
<view
class=
"loading"
v-if=
"loading"
>
<u-loading
mode=
"flower"
size=
"48"
></u-loading>
<Text
style=
"color: #f6f6f6; margin-top: 10rpx"
>
加载中...
</Text>
</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"
;
import
headers
from
"@/components/header/header"
;
import
carrierElement
from
"./carrierElement"
;
export
default
{
components
:
{
tabbars
,
auth
,
headers
,
carrierElement
},
data
()
{
return
{
showAuth
:
false
,
u
:{},
isauth
:
false
,
mainColor
:
""
,
active
:
0
,
searchKey
:
""
,
typeList
:
[],
dataList
:
[],
msg
:
{
pageIndex
:
1
,
pageSize
:
10
,
MetroName
:
""
,
CarrierName
:
""
,
MetroNum
:
""
,
Developers
:
""
,
StartOpenTime
:
""
,
EndOpenTime
:
""
,
ProjectType
:
0
,
OrderBy
:
0
,
OpeningStatus
:
-
1
,
FirstStoreTest
:
0
,
CategoryId
:
0
,
BuildingCarrierType
:
null
,
IsChengDu
:
-
1
,
//首店类型 1成都 0宜宾
OrderBy
:
""
,
MallBaseId
:
0
,
TenantId
:
0
,
},
loading
:
false
,
pageCount
:
0
,
status
:
"loadmore"
,
loadText
:
{
loadmore
:
"轻轻上拉,加载更多"
,
loading
:
"努力加载中"
,
nomore
:
"没有更多了"
,
},
contentHeight
:
0
,
activeItemStyle
:
{
"font-size"
:
"34rpx"
,
"font-family"
:
"PingFang SC"
,
"font-weight"
:
800
,
color
:
"#111111"
,
},
activeItemStyleCarr
:{
"font-size"
:
"23rpx"
,
"font-family"
:
"PingFang SC"
,
"font-weight"
:
"Bold"
,
color
:
"#017EDF"
,
"border"
:
"1rpx solid #017EDF"
,
"border-radius"
:
"10rpx"
,
"height"
:
"50rpx"
,
"line-height"
:
"45rpx"
,
"padding"
:
"0 22rpx"
,
"background"
:
"#FFF"
},
list
:
[],
kystatus
:
[
{
id
:
-
1
,
name
:
"全部"
,
},
{
id
:
0
,
name
:
"即将开业"
,
},
{
id
:
1
,
name
:
"已开业"
,
},
],
curStatusName
:
"全部"
,
TenantId
:
null
,
replace
:
null
,
secondary
:
null
,
ShopTypeList
:
[
// {
// text: '全部',
// value: -1
// },
// {
// text: '成都',
// value: 1
// },
// {
// text: '宜宾',
// value: 2
// },
],
GetYBConfig
:
null
,
iscpswjselectall
:
0
,
};
},
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/carrier/list?user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
,
imageUrl
:
""
,
};
},
onLoad
(
options
)
{
this
.
iscpswjselectall
=
uni
.
getStorageSync
(
"basedata"
).
iscpswjselectall
let
uid
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
this
.
TenantId
=
uid
.
TenantId
// this.msg.TenantId = uid.TenantId
this
.
replace
=
uni
.
getStorageSync
(
'replace_page_index'
)
this
.
msg
.
BuildingCarrierType
=
this
.
replace
.
state
==
'1'
?
1
:
2
if
(
options
&&
options
.
id
)
{
this
.
msg
.
ProjectType
=
options
.
id
;
this
.
msg
.
CategoryId
=
options
.
id
}
let
c
=
this
.
$uiConfig
.
is_bang
?
78
:
50
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
)
+
40
;
if
(
options
&&
options
.
FirstStoreTest
)
{
this
.
msg
.
FirstStoreTest
=
parseInt
(
options
.
FirstStoreTest
);
}
// this.u = uni.getStorageSync("mall_UserInfo");
// if (!this.u) {
// this.u = {
// nickName: "未登录",
// avatarUrl: "",
// };
// this.showAuth = true;
// } else {
this
.
getTypeList
();
this
.
isauth
=
true
// }
},
created
()
{
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
secondary
=
this
.
$uiConfig
.
secondary
},
mounted
()
{
uni
.
setNavigationBarTitle
({
title
:
"载体列表"
,
});
},
methods
:
{
reloadUserinfo
()
{
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
this
.
isauth
=
true
;
//成都登录 就显示
this
.
getTypeList
();
},
//关闭登录窗口
gbAuth
()
{
this
.
showAuth
=
false
},
// 获取类型
getTypeList
()
{
if
(
this
.
TenantId
==
18
){
let
parms
=
{
url
:
"/api/AppletTrade/GetProjectTypeEnumList"
,
};
this
.
request2
(
parms
,
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
// this.pageCount = res.data.pageCount
this
.
typeList
.
push
({
Id
:
0
,
Name
:
"全部"
,
});
this
.
typeList
=
this
.
typeList
.
concat
(
res
.
data
);
if
(
this
.
msg
.
ProjectType
==
0
)
{
}
else
{
//指定跳入分类
this
.
typeList
.
map
((
x
,
i
)
=>
{
if
(
x
.
Id
==
this
.
msg
.
ProjectType
)
{
this
.
active
=
i
;
}
});
}
}
});
}
else
{
this
.
request2
({
url
:
"/api/AppletTrade/GetBrandClassList"
,
data
:
{
BrandCategory
:
this
.
replace
.
state
==
'1'
?
1
:
2
}
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
typeList
=
res
.
data
;
this
.
typeList
.
unshift
({
ID
:
0
,
ClassName
:
"全部"
,
});
if
(
this
.
msg
.
CategoryId
)
{
//指定跳入分类
this
.
typeList
.
map
((
x
,
i
)
=>
{
if
(
x
.
ID
==
this
.
msg
.
CategoryId
)
{
this
.
active
=
i
;
}
});
}
}
});
this
.
request2
({
url
:
"/api/AppletTrade/GetYBConfig"
,
data
:
{},
import
auth
from
"@/components/auth/index.vue"
;
import
tabbars
from
"@/components/tabbar/index"
;
import
headers
from
"@/components/header/header"
;
import
carrierElement
from
"./carrierElement"
;
export
default
{
components
:
{
tabbars
,
auth
,
headers
,
carrierElement
},
data
()
{
return
{
showAuth
:
false
,
u
:
{},
isauth
:
false
,
mainColor
:
""
,
active
:
0
,
searchKey
:
""
,
typeList
:
[],
dataList
:
[],
msg
:
{
pageIndex
:
1
,
pageSize
:
10
,
MetroName
:
""
,
CarrierName
:
""
,
MetroNum
:
""
,
Developers
:
""
,
StartOpenTime
:
""
,
EndOpenTime
:
""
,
ProjectType
:
0
,
OrderBy
:
0
,
OpeningStatus
:
-
1
,
FirstStoreTest
:
0
,
CategoryId
:
0
,
BuildingCarrierType
:
null
,
IsChengDu
:
-
1
,
//首店类型 1成都 0宜宾
OrderBy
:
""
,
MallBaseId
:
0
,
TenantId
:
0
,
},
loading
:
false
,
pageCount
:
0
,
status
:
"loadmore"
,
loadText
:
{
loadmore
:
"轻轻上拉,加载更多"
,
loading
:
"努力加载中"
,
nomore
:
"没有更多了"
,
},
contentHeight
:
0
,
activeItemStyle
:
{
"font-size"
:
"34rpx"
,
"font-family"
:
"PingFang SC"
,
"font-weight"
:
800
,
color
:
"#111111"
,
},
activeItemStyleCarr
:
{
"font-size"
:
"23rpx"
,
"font-family"
:
"PingFang SC"
,
"font-weight"
:
"Bold"
,
color
:
"#017EDF"
,
"border"
:
"1rpx solid #017EDF"
,
"border-radius"
:
"10rpx"
,
"height"
:
"50rpx"
,
"line-height"
:
"45rpx"
,
"padding"
:
"0 22rpx"
,
"background"
:
"#FFF"
},
list
:
[],
kystatus
:
[{
id
:
-
1
,
name
:
"全部"
,
},
{
id
:
0
,
name
:
"即将开业"
,
},
{
id
:
1
,
name
:
"已开业"
,
},
(
res
)
=>
{
],
curStatusName
:
"全部"
,
TenantId
:
null
,
replace
:
{
state
:
"1"
,
//1-载体项目,2-楼宇
},
secondary
:
null
,
ShopTypeList
:
[
// {
// text: '全部',
// value: -1
// },
// {
// text: '成都',
// value: 1
// },
// {
// text: '宜宾',
// value: 2
// },
],
GetYBConfig
:
null
,
iscpswjselectall
:
0
,
};
},
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/carrier/list?user_id="
+
uid
+
"&SmallShopId="
+
SmallShopId
+
"&Up="
+
Up
,
imageUrl
:
""
,
};
},
onLoad
(
options
)
{
this
.
iscpswjselectall
=
uni
.
getStorageSync
(
"basedata"
).
iscpswjselectall
let
uid
=
uni
.
getStorageSync
(
"mall_UserInfo"
)
this
.
TenantId
=
uid
.
TenantId
let
tempReplace
=
uni
.
getStorageSync
(
'replace_page_index'
)
if
(
tempReplace
&&
tempReplace
.
state
)
{
this
.
replace
.
state
=
tempReplace
.
state
;
}
this
.
msg
.
BuildingCarrierType
=
this
.
replace
.
state
==
'1'
?
1
:
2
if
(
options
&&
options
.
id
)
{
this
.
msg
.
ProjectType
=
options
.
id
;
this
.
msg
.
CategoryId
=
options
.
id
}
let
c
=
this
.
$uiConfig
.
is_bang
?
78
:
50
;
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
c
)
+
40
;
if
(
options
&&
options
.
FirstStoreTest
)
{
this
.
msg
.
FirstStoreTest
=
parseInt
(
options
.
FirstStoreTest
);
}
// this.u = uni.getStorageSync("mall_UserInfo");
// if (!this.u) {
// this.u = {
// nickName: "未登录",
// avatarUrl: "",
// };
// this.showAuth = true;
// } else {
this
.
getTypeList
();
this
.
isauth
=
true
// }
},
created
()
{
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
secondary
=
this
.
$uiConfig
.
secondary
},
mounted
()
{
uni
.
setNavigationBarTitle
({
title
:
"项目列表"
,
});
},
methods
:
{
reloadUserinfo
()
{
this
.
u
=
uni
.
getStorageSync
(
"mall_UserInfo"
);
this
.
isauth
=
true
;
//成都登录 就显示
this
.
getTypeList
();
},
//关闭登录窗口
gbAuth
()
{
this
.
showAuth
=
false
},
// 获取类型
getTypeList
()
{
if
(
this
.
TenantId
==
18
)
{
let
parms
=
{
url
:
"/api/AppletTrade/GetProjectTypeEnumList"
,
};
this
.
request2
(
parms
,
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
GetYBConfig
=
res
.
data
res
.
data
.
mallBaselList
.
forEach
(
x
=>
{
let
obj
=
{
text
:
x
.
Name
,
value
:
x
.
MallBaseId
}
this
.
ShopTypeList
.
push
(
obj
)
})
this
.
typeList
.
push
({
Id
:
0
,
Name
:
"推荐"
,
});
this
.
typeList
=
this
.
typeList
.
concat
(
res
.
data
);
if
(
this
.
msg
.
ProjectType
==
0
)
{}
else
{
//指定跳入分类
this
.
typeList
.
map
((
x
,
i
)
=>
{
if
(
x
.
Id
==
this
.
msg
.
ProjectType
)
{
this
.
active
=
i
;
}
});
}
}
});
}
else
{
this
.
request2
({
url
:
"/api/AppletTrade/GetBrandClassList"
,
data
:
{
BrandCategory
:
this
.
replace
.
state
==
'1'
?
1
:
2
}
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
typeList
=
res
.
data
;
this
.
typeList
.
unshift
({
ID
:
0
,
ClassName
:
"推荐"
,
});
if
(
this
.
msg
.
CategoryId
)
{
//指定跳入分类
this
.
typeList
.
map
((
x
,
i
)
=>
{
if
(
x
.
ID
==
this
.
msg
.
CategoryId
)
{
this
.
active
=
i
;
}
});
}
}
});
this
.
request2
({
url
:
"/api/AppletTrade/GetYBConfig"
,
data
:
{},
},
(
res
)
=>
{
if
(
res
.
resultCode
==
1
)
{
this
.
GetYBConfig
=
res
.
data
res
.
data
.
mallBaselList
.
forEach
(
x
=>
{
let
obj
=
{
text
:
x
.
Name
,
value
:
x
.
MallBaseId
}
this
.
ShopTypeList
.
push
(
obj
)
})
}
}
);
}
this
.
getCarrierPageList
();
},
ResetQuery
()
{
this
.
dataList
=
[]
this
.
msg
.
pageIndex
=
1
this
.
getCarrierPageList
()
},
// 获取载体分页列表
getCarrierPageList
()
{
let
url
=
"/api/AppletTrade/GetCarrierPageList"
if
(
this
.
TenantId
!=
18
&&
this
.
replace
.
state
)
{
if
(
this
.
replace
.
state
==
'1'
)
url
=
"/api/AppletTrade/GetAllCarrierPageList"
else
url
=
"/api/AppletTrade/GetBuildingPageList"
}
this
.
request2
({
url
:
url
,
data
:
{
...
this
.
msg
}
);
}
this
.
getCarrierPageList
();
},
ResetQuery
(){
this
.
dataList
=
[]
this
.
msg
.
pageIndex
=
1
this
.
getCarrierPageList
()
},
// 获取载体分页列表
getCarrierPageList
()
{
let
url
=
"/api/AppletTrade/GetCarrierPageList"
if
(
this
.
TenantId
!=
18
&&
this
.
replace
.
state
){
if
(
this
.
replace
.
state
==
'1'
)
url
=
"/api/AppletTrade/GetAllCarrierPageList"
else
url
=
"/api/AppletTrade/GetBuildingPageList"
}
this
.
request2
({
url
:
url
,
data
:
{
...
this
.
msg
}
},
(
res
)
=>
{
this
.
loading
=
false
;
if
(
res
.
resultCode
==
1
)
{
this
.
dataList
=
this
.
dataList
.
concat
(
res
.
data
.
pageData
);
this
.
pageCount
=
res
.
data
.
pageCount
;
if
(
this
.
pageCount
==
1
)
{
this
.
status
=
"nomore"
;
}
}
});
},
changeHandler
(
i
)
{
this
.
active
=
i
;
if
(
this
.
TenantId
==
18
)
this
.
msg
.
ProjectType
=
this
.
typeList
[
i
].
Id
;
else
this
.
msg
.
CategoryId
=
this
.
typeList
[
i
].
ID
;
this
.
ResetQuery
()
},
openGood
(
id
,
type
)
{
uni
.
navigateTo
({
url
:
"/pages/kotra/carrier/detail?id="
+
id
+
"&&type="
+
type
,
});
},
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
.
dataList
=
[];
this
.
getCarrierPageList
();
}
},
//触底事件
lower
(
e
)
{
if
(
this
.
msg
.
pageIndex
<
this
.
pageCount
)
{
this
.
msg
.
pageIndex
++
;
this
.
status
=
"loading"
;
this
.
getCarrierPageList
();
}
else
{
this
.
status
=
"nomore"
;
}
},
statusChange
(
e
)
{
let
index
=
parseInt
(
e
.
detail
.
value
);
this
.
msg
.
OpeningStatus
=
this
.
kystatus
[
index
].
id
;
this
.
curStatusName
=
this
.
kystatus
[
index
].
name
;
this
.
msg
.
pageIndex
=
1
;
this
.
dataList
=
[];
this
.
getCarrierPageList
();
},
changeFirstStoreTest
(
i
)
{
this
.
msg
.
FirstStoreTest
=
i
;
this
.
msg
.
pageIndex
=
1
;
this
.
dataList
=
[];
this
.
getCarrierPageList
();
},
},
};
},
(
res
)
=>
{
this
.
loading
=
false
;
if
(
res
.
resultCode
==
1
)
{
this
.
dataList
=
this
.
dataList
.
concat
(
res
.
data
.
pageData
);
this
.
pageCount
=
res
.
data
.
pageCount
;
if
(
this
.
pageCount
==
1
)
{
this
.
status
=
"nomore"
;
}
}
});
},
changeHandler
(
i
)
{
this
.
active
=
i
;
if
(
this
.
TenantId
==
18
)
this
.
msg
.
ProjectType
=
this
.
typeList
[
i
].
Id
;
else
this
.
msg
.
CategoryId
=
this
.
typeList
[
i
].
ID
;
this
.
ResetQuery
()
},
openGood
(
id
,
type
)
{
uni
.
navigateTo
({
url
:
"/pages/kotra/carrier/detail?id="
+
id
+
"&&type="
+
type
,
});
},
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
.
dataList
=
[];
this
.
getCarrierPageList
();
}
},
//触底事件
lower
(
e
)
{
if
(
this
.
msg
.
pageIndex
<
this
.
pageCount
)
{
this
.
msg
.
pageIndex
++
;
this
.
status
=
"loading"
;
this
.
getCarrierPageList
();
}
else
{
this
.
status
=
"nomore"
;
}
},
statusChange
(
e
)
{
let
index
=
parseInt
(
e
.
detail
.
value
);
this
.
msg
.
OpeningStatus
=
this
.
kystatus
[
index
].
id
;
this
.
curStatusName
=
this
.
kystatus
[
index
].
name
;
this
.
msg
.
pageIndex
=
1
;
this
.
dataList
=
[];
this
.
getCarrierPageList
();
},
changeFirstStoreTest
(
i
)
{
this
.
msg
.
FirstStoreTest
=
i
;
this
.
msg
.
pageIndex
=
1
;
this
.
dataList
=
[];
this
.
getCarrierPageList
();
},
},
};
</
script
>
<
style
>
.carrierTabBox
.u-tab-item
{
background
:
#FFFFFF
;
margin-right
:
29
rpx
;
border-radius
:
10
rpx
;
line-height
:
39
rpx
;
padding
:
13
rpx
22
rpx
;
border
:
1
rpx
solid
#FFFFFF
;
}
.carrierSearch-right
>
input
::placeholder
{
color
:
#95AAB9
;
}
.carrierSearch-right
{
font-size
:
27
rpx
;
font-weight
:
100
;
}
.carrierSearch-auto
{
width
:
2
rpx
;
height
:
40
rpx
;
background
:
#E1EDF7
;
border-radius
:
1
rpx
;
margin-left
:
30
rpx
;
margin-right
:
30
rpx
;
}
.carrierSearch-ex
{
width
:
152
rpx
;
/* position: absolute;
width: 202rpx;
left: 0;
top: 0;
z-index: 1; */
}
.carrierSearch-left
.uni-select__selector
{
/* width: 202rpx !important; */
}
.carrierSearch-left
.uni-icons
{
color
:
#017EDF
!important
;
margin-left
:
24
rpx
!important
;
}
.carrierSearch-left
.uni-select__input-text
{
font-size
:
27
rpx
;
font-weight
:
bold
;
}
.carrierSearch-left
.uni-select
{
border
:
0
;
padding
:
0
;
padding-left
:
0
;
}
.carrierSearch-left
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
font-family
:
PingFang
SC
;
}
.carrierSearch
{
height
:
76
rpx
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
z-index
:
101
;
margin
:
0
32
rpx
;
background
:
#EEF7FF
;
border-radius
:
18
rpx
;
position
:
relative
;
}
.good_study_one
{
margin
:
12px
;
position
:
relative
;
border
:
1
rpx
solid
transparent
;
border-radius
:
10
rpx
;
overflow
:
hidden
;
}
.good_study_one
.tips
{
width
:
64
rpx
;
height
:
64
rpx
;
position
:
absolute
;
top
:
0
;
left
:
0
;
z-index
:
4
;
}
.good_study_one
.guding
{
position
:
relative
;
}
/* .good_study_one .guding .img-box {
.carrierTabBox
.u-tab-item
{
background
:
#FFFFFF
;
margin-right
:
29
rpx
;
border-radius
:
10
rpx
;
line-height
:
39
rpx
;
padding
:
13
rpx
22
rpx
;
border
:
1
rpx
solid
#FFFFFF
;
}
.carrierSearch-right
>
input
::placeholder
{
color
:
#95AAB9
;
}
.carrierSearch-right
{
font-size
:
27
rpx
;
font-weight
:
100
;
}
.carrierSearch-auto
{
width
:
2
rpx
;
height
:
40
rpx
;
background
:
#E1EDF7
;
border-radius
:
1
rpx
;
margin-left
:
30
rpx
;
margin-right
:
30
rpx
;
}
.carrierSearch-ex
{
width
:
152
rpx
;
}
.carrierSearch-left
.uni-select__selector
{
/* width: 202rpx !important; */
}
.carrierSearch-left
.uni-icons
{
color
:
#017EDF
!important
;
margin-left
:
24
rpx
!important
;
}
.carrierSearch-left
.uni-select__input-text
{
font-size
:
27
rpx
;
font-weight
:
bold
;
}
.carrierSearch-left
.uni-select
{
border
:
0
;
padding
:
0
;
padding-left
:
0
;
}
.carrierSearch-left
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
font-family
:
PingFang
SC
;
}
.carrierSearch
{
height
:
76
rpx
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
z-index
:
101
;
margin
:
0
32
rpx
;
background
:
#EEF7FF
;
border-radius
:
18
rpx
;
position
:
relative
;
}
.good_study_one
{
margin
:
12px
;
position
:
relative
;
border
:
1
rpx
solid
transparent
;
border-radius
:
10
rpx
;
overflow
:
hidden
;
}
.good_study_one
.tips
{
width
:
64
rpx
;
height
:
64
rpx
;
position
:
absolute
;
top
:
0
;
left
:
0
;
right: 0;
z-index
:
4
;
}
.good_study_one
.guding
{
position
:
relative
;
}
.good_study_one
.img-box
{
width
:
100%
;
height
:
0
;
padding-top
:
49%
;
position
:
relative
;
overflow
:
hidden
;
}
.good_study_one
.img-box
.img-show
{
position
:
absolute
;
left
:
0
;
top
:
0
;
bottom
:
0
;
right
:
0
;
width
:
100%
;
height
:
100%
;
overflow
:
hidden
;
}
.good_study_one
.good-info
{
padding
:
12px
;
background-color
:
#fff
;
}
.good_study_one
.good-info
.good-name
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding-bottom
:
5px
;
}
.good_study_one
.good-info
.good-name
.span-name
{
width
:
350
rpx
;
height
:
40
rpx
;
font-size
:
28
rpx
;
font-weight
:
bold
;
color
:
#111
;
}
.span-name-sub
{
max-width
:
320
rpx
;
white-space
:
nowrap
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
.good_study_one
.good-info
.good-name
.span-type
{
font-weight
:
500
;
color
:
#999999
;
font-size
:
24
rpx
;
margin-left
:
10px
;
}
.good_study_one
.good-info
.good-price-info
{
display
:
flex
;
}
.good_study_one
.good-info
.good-price-info
.price
{
color
:
#999999
;
font-size
:
24
rpx
;
flex
:
1
;
}
.good_study_one
.good-info
.good-price-info
.buy
{
width
:
24px
;
text-align
:
right
;
}
.carrierScreen
{
height
:
50
rpx
;
margin
:
20
rpx
0
;
display
:
flex
;
padding
:
0
30
rpx
;
}
.statusBox
{
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
;
}
.curStatusName
{
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
color
:
#ffffff
;
display
:
flex
;
}
.statusBox2
{
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
;
}
.carriertag
{
width
:
170
rpx
;
height
:
40
rpx
;
background
:
#fff
;
border-radius
:
0px
0px
20
rpx
0px
;
position
:
absolute
;
top
:
0
;
} */
.good_study_one
.img-box
{
width
:
100%
;
height
:
0
;
padding-top
:
49%
;
position
:
relative
;
overflow
:
hidden
;
}
.good_study_one
.img-box
.img-show
{
position
:
absolute
;
left
:
0
;
top
:
0
;
bottom
:
0
;
right
:
0
;
width
:
100%
;
height
:
100%
;
overflow
:
hidden
;
}
.good_study_one
.good-info
{
padding
:
12px
;
background-color
:
#fff
;
}
.good_study_one
.good-info
.good-name
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
padding-bottom
:
5px
;
}
.good_study_one
.good-info
.good-name
.span-name
{
width
:
350
rpx
;
height
:
40
rpx
;
font-size
:
28
rpx
;
font-weight
:
bold
;
color
:
#111
;
}
.span-name-sub
{
max-width
:
320
rpx
;
white-space
:
nowrap
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
.good_study_one
.good-info
.good-name
.span-type
{
font-weight
:
500
;
color
:
#999999
;
font-size
:
24
rpx
;
margin-left
:
10px
;
}
.good_study_one
.good-info
.good-price-info
{
display
:
flex
;
}
.good_study_one
.good-info
.good-price-info
.price
{
color
:
#999999
;
font-size
:
24
rpx
;
flex
:
1
;
}
.good_study_one
.good-info
.good-price-info
.buy
{
width
:
24px
;
text-align
:
right
;
}
.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
;
}
.curStatusName
{
font-size
:
22
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
color
:
#ffffff
;
display
:
flex
;
}
.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
;
}
.carriertag
{
width
:
170
rpx
;
height
:
40
rpx
;
background
:
#fff
;
border-radius
:
0px
0px
20
rpx
0px
;
position
:
absolute
;
top
:
0
;
left
:
0
;
z-index
:
100
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
.carriertagsub1
{
width
:
48
rpx
;
height
:
22
rpx
;
background
:
#1f1f1f
;
border-radius
:
4
rpx
0
rpx
0
rpx
4
rpx
;
font-size
:
18
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
bold
;
color
:
#ffffff
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
.carriertagsub2
{
width
:
100
rpx
;
height
:
22
rpx
;
background
:
#d0aa7b
;
border-radius
:
0px
4
rpx
4
rpx
0
rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
18
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
bold
;
color
:
#111111
;
}
</
style
>
left
:
0
;
z-index
:
100
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
.carriertagsub1
{
width
:
48
rpx
;
height
:
22
rpx
;
background
:
#1f1f1f
;
border-radius
:
4
rpx
0
rpx
0
rpx
4
rpx
;
font-size
:
18
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
bold
;
color
:
#ffffff
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
.carriertagsub2
{
width
:
100
rpx
;
height
:
22
rpx
;
background
:
#d0aa7b
;
border-radius
:
0px
4
rpx
4
rpx
0
rpx
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
font-size
:
18
rpx
;
font-family
:
PingFang
SC
;
font-weight
:
bold
;
color
:
#111111
;
}
</
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