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
e9999eb7
Commit
e9999eb7
authored
Jun 04, 2020
by
罗超
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/viitto/mallapp
parents
c7b4de75
78577478
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
501 additions
and
22 deletions
+501
-22
error.vue
components/error/error.vue
+29
-0
goodsku.vue
components/goods/goodsku.vue
+6
-10
pages.json
pages.json
+8
-3
index.vue
pages/card/index/index.vue
+3
-2
cash-detail.vue
pages/cash-detail/cash-detail.vue
+1
-1
share-money.vue
pages/share-money/share-money.vue
+1
-1
share-order.vue
pages/share-order/share-order.vue
+233
-0
share-qrcode.vue
pages/share-qrcode/share-qrcode.vue
+0
-0
share-team.vue
pages/share-team/share-team.vue
+202
-0
index.vue
pages/share/index/index.vue
+18
-5
dismount.png
static/images/icon/dismount.png
+0
-0
No files found.
components/error/error.vue
0 → 100644
View file @
e9999eb7
<
template
>
<view>
<view
v-if=
'type==1'
style=
"width: 100%;height: 100%;"
>
<u-empty
text=
"网路断开了~"
mode=
"wifi"
></u-empty>
</view>
<view
v-if=
'type==2'
style=
"width: 100%;height: 100%;display: flex;flex-direction: column;align-items: center;margin-top: 80px;"
>
<image
src=
"../../static/images/icon/dismount.png"
style=
"width: 40%;"
mode=
"widthFix"
></image>
<Text
style=
'margin-top: 20px;font-size: 18px;color: #888;'
>
商品已下架
</Text>
</view>
</view>
</
template
>
<
script
>
export
default
{
props
:
[
"type"
],
data
()
{
return
{
}
},
methods
:
{
}
}
</
script
>
<
style
>
</
style
>
components/goods/goodsku.vue
View file @
e9999eb7
...
...
@@ -194,20 +194,16 @@ export default {
},
methods
:
{
joinCar
()
{
let
h
=
this
.
apiheader
();
h
[
'content-type'
]
=
'application/x-www-form-urlencoded'
;
console
.
log
(
this
.
skuObj
,
'skuObjj'
);
if
(
this
.
skuObj
&&
this
.
skuObj
.
id
)
{
this
.
request
(
this
.
request
2
(
{
url
:
''
,
url
:
'
/api/AppletOrder/SetGoodsShoppingCartInfo
'
,
data
:
{
r
:
'api/cart/add'
,
goods_id
:
this
.
g
.
id
,
attr
:
this
.
skuObj
.
id
,
num
:
this
.
gc
==
0
?
1
:
this
.
gc
GoodsId
:
this
.
skuObj
.
goods_id
,
SpecificationSort
:
this
.
skuObj
.
sign_id
,
Number
:
this
.
gc
==
0
?
1
:
this
.
gc
},
header
:
h
,
method
:
'POST'
},
res
=>
{
uni
.
showToast
({
...
...
pages.json
View file @
e9999eb7
...
...
@@ -107,13 +107,18 @@
},
{
"path"
:
"pages/share/cash/cash"
},
{
"path"
:
"pages/share
/money/
money"
"path"
:
"pages/share
-money/share-
money"
},
{
"path"
:
"pages/
share/
cash-detail/cash-detail"
"path"
:
"pages/cash-detail/cash-detail"
},
{
"path"
:
"pages/share/level/level"
},
{
"path"
:
"pages/share/qrcode/qrcode"
"path"
:
"pages/share-qrcode/share-qrcode"
},{
"path"
:
"pages/share-order/share-order"
}
,{
"path"
:
"pages/share-team/share-team"
}
],
"globalStyle"
:
{
...
...
pages/card/index/index.vue
View file @
e9999eb7
...
...
@@ -9,6 +9,7 @@
></u-tabs>
<u-empty
v-if=
"g.length == 0"
text=
"暂无相关卡券"
mode=
"order"
></u-empty>
<!--
<error
v-if=
"g.length == 0"
type=
"2"
></error>
-->
<view
v-if=
"g.length > 0"
...
...
@@ -53,10 +54,10 @@
</
template
>
<
script
>
import
error
from
'../../../components/error/error.vue'
export
default
{
components
:
{
error
},
data
()
{
return
{
...
...
pages/
share/
cash-detail/cash-detail.vue
→
pages/cash-detail/cash-detail.vue
View file @
e9999eb7
...
...
@@ -152,7 +152,7 @@
}
.cdetailStyle
.listbox
{
width
:
94%
;
border-radius
:
2
0
rpx
;
border-radius
:
1
0
rpx
;
background
:
#fff
;
margin-top
:
15px
;
}
...
...
pages/share
/money/
money.vue
→
pages/share
-money/share-
money.vue
View file @
e9999eb7
...
...
@@ -105,7 +105,7 @@
},
gocash
(){
uni
.
navigateTo
({
url
:
'/pages/
share/
cash-detail/cash-detail'
url
:
'/pages/cash-detail/cash-detail'
});
}
}
...
...
pages/share-order/share-order.vue
0 → 100644
View file @
e9999eb7
<
template
>
<view
class=
"corderStyle"
:style=
"
{'height':contentHeight}">
<view
style=
"width: 100%;height: 100%;"
>
<u-tabs
:list=
"list"
:is-scroll=
"false"
:current=
"current"
@
change=
"change"
:active-color=
'mainColor'
></u-tabs>
<u-empty
v-if=
"g.length==0"
text=
"暂无数据"
mode=
"data"
></u-empty>
<template
v-if=
"g.length > 0"
>
<view
style=
"
height: calc(100vh - 50px);
width: calc(100vw);
overflow: hidden;
padding: 10px 0;
"
>
<scroll-view
:scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
@
scrolltolower=
"lower"
:style=
"
{ height: '100%' }">
<view
style=
"display: flex;flex-direction: column;align-items: center;"
>
<view
v-for=
"(item, index) in g"
:key=
"index"
class=
"listbox"
>
<view
class=
"box_top"
>
<Text
style=
'font-size: 14px;'
>
订单号:
{{
item
.
order_no
}}
</Text>
<Text
:style=
"
{'font-size':'14px','color':mainColor}">
{{
item
.
status
}}
</Text>
</view>
<view
class=
"box_center"
@
click=
"isdetail(index)"
>
<view
class=
"center_l"
>
<image
:src=
"item.avatar"
style=
"width: 35px;height: 35px"
mode=
'aspectFit'
></image>
<view
class=
"box_ltext"
>
<Text
class=
'l_name'
>
{{
item
.
nickname
}}
</Text>
</view>
<Text>
{{
item
.
share_status
}}
</Text>
</view>
<view
class=
"center_l"
>
<Text>
预计佣金:
<Text
:style=
"
{color:mainColor}">
{{
item
.
share_money
}}
</Text>
元
</Text>
<u-icon
name=
"arrow"
v-if=
'item.showdetail==false'
></u-icon>
<u-icon
name=
"arrow-down"
v-if=
'item.showdetail==true'
></u-icon>
</view>
</view>
<view
style=
"display: flex;flex-direction: column;align-items: center;padding-bottom: 15px;width: 100%;"
v-if=
'item.showdetail==true'
>
<view
class=
"box_bottom"
v-for=
"(c, i) in item.detail"
:key=
"i"
>
<image
:src=
"c.cover_pic"
style=
"width: 55px;height: 55px"
mode=
'aspectFit'
></image>
<view
class=
"b_r"
>
<Text
class=
'l_name'
>
{{
c
.
name
}}
</Text>
<view
style=
'display: flex;flex-direction: row;align-items: center;'
>
<Text
v-for=
"(q, w) in c.attr_list"
:key=
"w"
>
{{
q
.
attr_group_name
}}
:
{{
q
.
attr_name
}}
</Text>
</view>
<Text>
x
{{
c
.
num
}}
</Text>
</view>
</view>
</view>
</view>
</view>
</scroll-view>
</view>
</
template
>
</view>
<view
class=
"loading"
v-if=
"loading"
>
<u-loading
mode=
"flower"
size=
"48"
></u-loading>
<Text
style=
'color: #fff;margin-top: 10rpx;'
>
加载中...
</Text>
</view>
</view>
</template>
<
script
>
export
default
{
data
()
{
return
{
pageTitle
:
"提现明细"
,
contentHeight
:
0
,
mainColor
:
''
,
secondary
:
''
,
current
:
0
,
g
:[],
loading
:
false
,
list
:[
{
name
:
'全部'
},
{
name
:
'待付款'
},
{
name
:
'已付款'
},
{
name
:
'已完成'
},
],
}
},
created
(){
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
'px'
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
secondary
=
this
.
$uiConfig
.
secondary
;
this
.
init
()
},
mounted
()
{
let
currentPages
=
getCurrentPages
();
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
}
});
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
},
methods
:
{
init
(){
let
that
=
this
that
.
loading
=
true
;
uni
.
showNavigationBarLoading
();
let
h
=
this
.
apiheader
();
this
.
request
(
{
url
:
""
,
header
:
h
,
data
:
{
r
:
"api/share/share-order"
,
status
:
that
.
current
},
},
(
res
)
=>
{
that
.
loading
=
false
;
uni
.
hideNavigationBarLoading
();
let
list
=
res
.
data
.
list
;
list
.
forEach
((
x
)
=>
{
x
.
showdetail
=
false
})
that
.
g
=
list
;
}
);
},
change
(
index
){
this
.
current
=
index
;
this
.
init
()
},
isdetail
(
index
){
this
.
g
[
index
].
showdetail
=
!
this
.
g
[
index
].
showdetail
}
}
}
</
script
>
<
style
>
.corderStyle
{
background
:
#f3f4f6
;
}
.corderStyle
.loading
{
width
:
200
rpx
;
height
:
200
rpx
;
background
:
#000000
;
opacity
:
0.7
;
border-radius
:
10
rpx
;
display
:
flex
;
flex-direction
:
column
;
align-items
:
center
;
justify-content
:
center
;
position
:
fixed
;
left
:
50%
;
top
:
30%
;
margin-left
:
-100
rpx
;
z-index
:
999
;
}
.corderStyle
.listbox
{
width
:
100%
;
background
:
#fff
;
padding
:
0
15px
;
margin-bottom
:
15px
;
display
:
flex
;
flex-direction
:
column
;
align-items
:
center
;
}
.corderStyle
.listbox
.box_top
{
width
:
100%
;
height
:
45px
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
justify-content
:
space-between
;
border-bottom
:
1px
solid
#f5f5f5
;
}
.corderStyle
.listbox
.box_center
{
width
:
100%
;
height
:
45px
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
justify-content
:
space-between
;
font-size
:
14px
;
}
.corderStyle
.center_l
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
}
.corderStyle
.listbox
.box_ltext
{
width
:
90px
;
margin-left
:
5px
;
}
.corderStyle
.listbox
.l_name
{
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
}
.corderStyle
.listbox
.box_bottom
{
width
:
100%
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
15px
0
0
;
border-top
:
1px
solid
#f5f5f5
;
font-size
:
13px
;
}
.box_bottom
.b_r
{
width
:
calc
(
100vw
-
30px
-
50px
-
20px
);
display
:
flex
;
flex-direction
:
column
;
justify-content
:
space-between
;
}
</
style
>
pages/share
/qrcode/
qrcode.vue
→
pages/share
-qrcode/share-
qrcode.vue
View file @
e9999eb7
File moved
pages/share-team/share-team.vue
0 → 100644
View file @
e9999eb7
<
template
>
<view
class=
"cteamStyle"
:style=
"
{'height':contentHeight}">
<view
style=
"width: 100%;height: 100%;"
>
<u-tabs
:list=
"list"
:is-scroll=
"false"
:current=
"current"
@
change=
"change"
:active-color=
'mainColor'
></u-tabs>
<u-empty
v-if=
"g.length==0"
text=
"暂无数据"
mode=
"data"
></u-empty>
<template
v-if=
"g.length > 0"
>
<view
style=
"
height: calc(100vh - 50px);
width: calc(100vw);
overflow: hidden;
"
>
<scroll-view
:scroll-y=
"true"
:enable-back-to-top=
"true"
:enable-flex=
"true"
@
scrolltolower=
"lower"
:style=
"
{ height: '100%' }">
<view
style=
"display: flex;flex-direction: column;align-items: center;"
>
<view
v-for=
"(item, index) in g"
:key=
"index"
class=
"listbox"
>
<view
class=
"box_top"
>
<image
:src=
"item.avatar"
style=
"width: 55px;height: 55px"
mode=
'aspectFit'
></image>
<view
class=
"box_r"
>
<view
style=
"width: 100%;display: flex;flex-direction: row;align-items: center;justify-content: space-between;"
>
<view
style=
"width: 190px;"
>
<Text
class=
'l_name'
>
{{
item
.
nickname
}}
</Text>
</view>
<Text
style=
'font-size: 12px;'
>
推广
{{
item
.
peopleCount
}}
人
</Text>
</view>
<Text
style=
'font-size: 12px;'
>
注册时间:
{{
item
.
junior_at
}}
</Text>
</view>
</view>
<view
class=
"box_b"
>
<Text
style=
'color: #BABABA;'
>
{{
item
.
orderPrice
}}
元
</Text>
<Text
style=
'color: #BABABA;'
>
{{
item
.
orderCount
}}
个订单
</Text>
</view>
</view>
</view>
</scroll-view>
</view>
</
template
>
</view>
<view
class=
"loading"
v-if=
"loading"
>
<u-loading
mode=
"flower"
size=
"48"
></u-loading>
<Text
style=
'color: #fff;margin-top: 10rpx;'
>
加载中...
</Text>
</view>
</view>
</template>
<
script
>
export
default
{
data
()
{
return
{
pageTitle
:
"我的团队"
,
contentHeight
:
0
,
mainColor
:
''
,
secondary
:
''
,
current
:
0
,
g
:[],
loading
:
false
,
list
:[],
}
},
created
(){
this
.
contentHeight
=
this
.
$utils
.
calcContentHeight
(
-
40
)
+
'px'
;
this
.
mainColor
=
this
.
$uiConfig
.
mainColor
;
this
.
secondary
=
this
.
$uiConfig
.
secondary
;
this
.
init
()
},
mounted
()
{
let
currentPages
=
getCurrentPages
();
let
u
=
"/"
+
currentPages
[
currentPages
.
length
-
1
].
route
;
let
pages
=
wx
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
bar_title
:
[];
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
}
});
uni
.
setNavigationBarTitle
({
title
:
this
.
pageTitle
,
});
},
methods
:
{
init
(){
let
that
=
this
that
.
loading
=
true
;
uni
.
showNavigationBarLoading
();
let
h
=
this
.
apiheader
();
this
.
request
(
{
url
:
""
,
header
:
h
,
data
:
{
r
:
"api/share/team"
,
status
:
that
.
current
+
1
},
},
(
res
)
=>
{
that
.
loading
=
false
;
uni
.
hideNavigationBarLoading
();
that
.
g
=
res
.
data
.
list
;
let
list
=
[];
if
(
res
.
data
.
first_count
>
0
){
list
.
push
({
'name'
:
'一级分销名称('
+
res
.
data
.
first_count
+
')'
})
}
if
(
res
.
data
.
second_count
>
0
){
list
.
push
({
'name'
:
'二级分销名称('
+
res
.
data
.
second_count
+
')'
})
}
if
(
res
.
data
.
third_count
>
0
){
list
.
push
({
'name'
:
'三级分销名称('
+
res
.
data
.
third_count
+
')'
})
}
this
.
list
=
list
}
);
},
change
(
index
){
this
.
current
=
index
;
this
.
init
()
},
}
}
</
script
>
<
style
>
.cteamStyle
{
background
:
#f3f4f6
;
}
.cteamStyle
.loading
{
width
:
200
rpx
;
height
:
200
rpx
;
background
:
#000000
;
opacity
:
0.7
;
border-radius
:
10
rpx
;
display
:
flex
;
flex-direction
:
column
;
align-items
:
center
;
justify-content
:
center
;
position
:
fixed
;
left
:
50%
;
top
:
30%
;
margin-left
:
-100
rpx
;
z-index
:
999
;
}
.cteamStyle
.listbox
{
width
:
100%
;
background
:
#fff
;
padding
:
0
15px
;
margin-bottom
:
15px
;
display
:
flex
;
flex-direction
:
column
;
align-items
:
center
;
}
.cteamStyle
.box_top
{
width
:
100%
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
justify-content
:
space-between
;
padding
:
10px
0
;
border-bottom
:
1px
solid
#f5f5f5
;
}
.cteamStyle
.box_r
{
width
:
calc
(
100vw
-
30px
-
55px
-
20px
);
height
:
55px
;
display
:
flex
;
flex-direction
:
column
;
justify-content
:
space-between
;
}
.box_r
.l_name
{
overflow
:
hidden
;
text-overflow
:
ellipsis
;
display
:
-webkit-box
;
-webkit-line-clamp
:
1
;
-webkit-box-orient
:
vertical
;
}
.cteamStyle
.box_b
{
width
:
100%
;
padding
:
15px
0
;
display
:
flex
;
flex-direction
:
row
;
align-items
:
center
;
justify-content
:
space-between
;
}
</
style
>
pages/share/index/index.vue
View file @
e9999eb7
...
...
@@ -7,6 +7,13 @@
<Text>
立即前往
</Text>
</view>
</view>
<view
v-if=
"sharestatus.is_can_apply==false && sharestatus.status==0"
style=
"width: 100%;display: flex;flex-direction: column;align-items: center;"
>
<image
:src=
"bg_img"
style=
"width: 100%;height: 165px;"
></image>
<Text
style=
'margin-top: 70px;'
>
谢谢您的支持,请等待审核
</Text>
<view
style=
"display: flex;align-items: center;justify-content: center;margin-top: 60rpx;"
>
<u-button
shape=
"circle"
type=
"error"
size=
"medium"
@
click=
'goshoping'
>
去商城逛逛
</u-button>
</view>
</view>
<view
style=
"width: 100%;height: 100%;"
v-if=
"sharestatus.is_can_apply==false && sharestatus.status==1"
>
<view
class=
"sharebox_top"
:style=
"
{background:mainColor}">
<view
class=
"sharebox_top_t"
>
...
...
@@ -24,7 +31,7 @@
</view>
</view>
<view
style=
"width: 100%;height: 1px;background: #fff;margin: 10px 0;"
></view>
<!-- TODO 字段不对 -->
<view
class=
"sharebox_top_t"
>
<view
style=
"display: flex;flex-direction: column;color: #fff;"
>
<Text>
可提现佣金
</Text>
...
...
@@ -49,7 +56,7 @@
</view>
</view>
<view
class=
"sharebox_menus"
>
<view
class=
"menus_item"
@
click=
"goUrl(
'/pages/share/money/money'
)"
>
<view
class=
"menus_item"
@
click=
"goUrl(
sharemenus.money.url
)"
>
<image
:src=
"sharemenus.money.icon"
style=
"width: 30px;"
mode=
'widthFix'
></image>
<Text
class=
'item_text'
>
{{
sharemenus
.
money
.
name
}}
</Text>
<Text><Text
:style=
"
{color:mainColor}">
{{
orderdata
.
total_money
}}
</Text>
元
</Text>
...
...
@@ -61,7 +68,7 @@
<Text><Text
:style=
"
{color:mainColor}">
{{
orderdata
.
order_money
}}
</Text>
元
</Text>
</view>
<view
class=
"menus_item"
@
click=
"goUrl(
'/pages/share/cash-detail/cash-detail'
)"
>
<view
class=
"menus_item"
@
click=
"goUrl(
sharemenus.team.url
)"
>
<image
:src=
"sharemenus.cash.icon"
style=
"width: 30px;"
mode=
'widthFix'
></image>
<Text
class=
'item_text'
>
{{
sharemenus
.
cash
.
name
}}
</Text>
<Text><Text
:style=
"
{color:mainColor}">
{{
orderdata
.
total_cash
}}
</Text>
元
</Text>
...
...
@@ -73,7 +80,7 @@
<Text><Text
:style=
"
{color:mainColor}">
{{
orderdata
.
team_count
}}
</Text>
人
</Text>
</view>
<view
class=
"menus_item"
@
click=
"goUrl(
'/pages/share/qrcode/qrcode'
)"
>
<view
class=
"menus_item"
@
click=
"goUrl(
sharemenus.qrcode.url
)"
>
<image
:src=
"sharemenus.qrcode.icon"
style=
"width: 30px;"
mode=
'widthFix'
></image>
<Text
class=
'item_text'
>
{{
sharemenus
.
qrcode
.
name
}}
</Text>
...
...
@@ -102,6 +109,7 @@
userinfo
:{},
sharemenus
:{},
orderdata
:{},
bg_img
:
''
,
}
},
created
(){
...
...
@@ -121,7 +129,9 @@
this
.
sharemenus
=
wx
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
share_setting_custom
.
menus
:
[];
this
.
bg_img
=
wx
.
getStorageSync
(
"basedata"
)
?
wx
.
getStorageSync
(
"basedata"
).
__wxapp_img
.
share
.
status
:
''
;
pages
.
forEach
((
x
)
=>
{
if
(
x
.
value
==
u
)
{
this
.
pageTitle
=
x
.
new_name
?
x
.
new_name
:
x
.
name
;
...
...
@@ -169,6 +179,9 @@
}
);
},
goshoping
(){
uni
.
redirectTo
({
url
:
"/pages/index/index"
});
},
getuserinfo
(){
uni
.
showNavigationBarLoading
();
let
h
=
this
.
apiheader
();
...
...
static/images/icon/dismount.png
0 → 100644
View file @
e9999eb7
152 KB
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