Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
walk_daka_h5
Overview
Overview
Details
Activity
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
穆启卓
walk_daka_h5
Commits
fbc2d059
Commit
fbc2d059
authored
Apr 24, 2019
by
穆启卓
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
活动规则文案 + 首页加分享和卡片状态重新调整
parent
c21dc383
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
113 additions
and
71 deletions
+113
-71
Rule.vue
src/views/Rule.vue
+8
-9
SignUp.vue
src/views/SignUp.vue
+105
-62
No files found.
src/views/Rule.vue
View file @
fbc2d059
...
@@ -11,15 +11,14 @@
...
@@ -11,15 +11,14 @@
</div>
</div>
<div
class=
"section2-title"
>
参赛须知详情:
</div>
<div
class=
"section2-title"
>
参赛须知详情:
</div>
<div
class=
"content2-title"
>
一、比赛规则
</div>
<div
class=
"content2-title"
>
一、比赛规则
</div>
<div
class=
"content2-item"
>
每期比赛于比赛日00:00:00正式开始统计,到比赛日23: 59:59正式结束;用户缴纳当期比赛契约金后即可成功报名;比赛结束后达标用户将收到运动奖励金;
</div>
<div
class=
"content2-item"
>
1、每期比赛于比赛日00:00:00正式开始统计,到比赛日23: 59:59正式结束;用户缴纳当期比赛契约金后即可成功报名;比赛结束后达标用户将收到运动奖励金;
</div>
<div
class=
"content2-item"
>
运动达标奖励金将于比赛结束后24小时内发放到达标用户钱包中(多日耐力赛比赛期间,契约金按日返还结算,单个比赛日总当天0点开始至24点结束,当日拥有参赛资格且达标的用户返回支付的契约金的一部分,比赛结束后契约金全部返还,并获得平台提供的相应奖励金,参赛用户如果未达标次数超过限额,则失去比赛资格);
</div>
<div
class=
"content2-item"
>
2、运动达标奖励金将于比赛结束后24小时内发放到达标用户钱包中(多日耐力赛比赛期间,契约金按日返还结算,单个比赛日总当天0点开始至24点结束,当日拥有参赛资格且达标的用户返回支付的契约金的一部分,比赛结束后契约金全部返还,并获得平台提供的相应奖励金,参赛用户如果未达标次数超过限额,则失去比赛资格);
</div>
<div
class=
"content2-title"
>
二、用户确认报名即认可平台判定结果,不再对该结果进行任何形式抗辩
</div>
<div
class=
"content2-title"
>
二、注意事项
</div>
<div
class=
"content2-item"
>
每场比赛的判定结果,由平台根据比赛结束时(当期比赛最后一日的23:59:59)的服务器后台获取的用户步数来判定,该步数会显示在当期比赛结束后的比赛详情页;用户报名成功即表示对平台的判定结果表示认可,不再对该结果进行任何形式抗辩;
</div>
<div
class=
"content2-item"
>
1、用户应保证设备的可靠性,以保证运动数据准确性。报名赛事的用户应保证自己设备的可靠性,例如保证电源电量充足,保证计步设备系统的运行白名单内,网络链接正常等;为了更好的保证运动数据的可靠性,比赛期间请保证一定频次手机微信登录;并按规则要求在比赛结束前进入手机微信完成步数上报确认操作;由于用户个人设备缺乏可靠性或未按活动规则操作导致的投诉,平台不予处理;
</div>
<div
class=
"content2-title"
>
三、用户应保证设备的可靠性,以保证运动数据准确性
</div>
<div
class=
"content2-item"
>
2、运动达标时,如遇到转账失败未收到奖金的情况,可联系在线客服确认情况,情况属实可补发相应的奖金;
</div>
<div
class=
"content2-item"
>
报名赛事的用户应保证自己设备的可靠性,例如保证电源电量充足,保证计步服务在设备系统的运行白名单内,网络链接正常等;为了更好的保证运动数据的可靠性,比赛期间请保证一定频次的手机微信登录;由于用户个人设备缺乏可靠性导致的投诉,平台不予处理;
</div>
<div
class=
"content2-item"
>
3、运动奖金赛提倡公平竞赛,如存在作弊行为,将取消比赛资格;
</div>
<div
class=
"content2-title"
>
四、其他说明
</div>
<div
class=
"content2-item"
>
4、奖金派发时,仅派发到小数点后两位,由此可能造成的奖金结余将统一合并至下期比赛中一并派发;
</div>
<div
class=
"content2-item"
>
奖金派发时仅派发到小数点后两位,由此可能造成的奖金结余将在合并至本组下期比赛奖金中一并派发;
</div>
<div
class=
"content2-item"
>
5、由于不可抗力因素导致当期比赛因故无法进行的,平台有权取消当期比赛’并将在指定时间内将运动契约金原路退还给报名成功用户;
</div>
<div
class=
"content2-item"
>
由于不可抗力因素导致当期比赛因故无法进行的,平台有权取消当期比赛’并将在指定时间内将运动契约金原路退还给报名成功用户;
</div>
<div
class=
"ps"
>
注:Apple不是本赛事赞助者
</div>
<div
class=
"ps"
>
注:Apple不是本赛事赞助者
</div>
</div>
</div>
</
template
>
</
template
>
...
...
src/views/SignUp.vue
View file @
fbc2d059
<
template
>
<
template
>
<div
class=
"sign-up-page"
>
<div
class=
"sign-up-page"
>
<!-- 左上角查看步数按钮 -->
<!-- 左上角查看步数按钮 -->
<!--
<img
class=
"view-steps-btn"
src=
"
..
/images/SignUp/sy_bushu.png"
>
-->
<!--
<img
class=
"view-steps-btn"
src=
"
@
/images/SignUp/sy_bushu.png"
>
-->
<!-- 右上角复活卡 -->
<!-- 右上角复活卡 -->
<Reborn
class=
"reborn-container"
></Reborn>
<Reborn
class=
"reborn-container"
></Reborn>
<!-- 信息广播 -->
<!-- 信息广播 -->
<NoticeBonus
class=
"notice-broadcast"
></NoticeBonus>
<NoticeBonus
class=
"notice-broadcast"
></NoticeBonus>
<!-- 挑战赛卡片 -->
<!-- 挑战赛卡片 -->
<div
class=
"challenge-card"
v-for=
"item in gameList"
@
click=
"clickCard(item)"
>
<div
class=
"challenge-card"
v-for=
"item in gameList"
@
click=
"clickCard(item)"
>
<img
class=
"corner-marker"
src=
"
..
/images/SignUp/home_tag_bsz.png"
v-if=
"item.status===0"
>
<img
class=
"corner-marker"
src=
"
@
/images/SignUp/home_tag_bsz.png"
v-if=
"item.status===0"
>
<img
class=
"corner-marker"
src=
"
..
/images/SignUp/home_tag_zmz.png"
v-if=
"item.status===1"
>
<img
class=
"corner-marker"
src=
"
@
/images/SignUp/home_tag_zmz.png"
v-if=
"item.status===1"
>
<img
class=
"corner-marker"
src=
"
..
/images/SignUp/home_tag_yjs.png"
v-if=
"item.status===2"
>
<img
class=
"corner-marker"
src=
"
@
/images/SignUp/home_tag_yjs.png"
v-if=
"item.status===2"
>
<div
class=
"card-title"
>
{{
item
.
action
}}
期耐力赛
</div>
<div
class=
"card-title"
>
{{
item
.
action
}}
期耐力赛
</div>
<div
class=
"card-time"
>
{{
item
.
already_join
===
1
?
'已参赛'
:
'未参赛'
}}
{{
item
.
period_start
}}
-
{{
item
.
period_end
}}
</div>
<div
class=
"card-time"
>
{{
item
.
already_join
===
1
?
'已参赛'
:
'未参赛'
}}
{{
item
.
period_start
}}
-
{{
item
.
period_end
}}
</div>
<div
class=
"card-info"
>
<div
class=
"card-info"
>
...
@@ -27,30 +27,32 @@
...
@@ -27,30 +27,32 @@
<div
class=
"item-money"
>
{{
item
.
total_money
||
'0.00'
}}
</div>
<div
class=
"item-money"
>
{{
item
.
total_money
||
'0.00'
}}
</div>
</div>
</div>
</div>
</div>
<!--
0 比赛中 1 未开始 2 已结束
-->
<!--
status 1 未开始 0 比赛中 2 已结束 3 已淘汰
-->
<
div
class=
"card-btn"
v-if=
"item.status===1&&item.already_join===0"
data-item=
"item"
@
click=
"goOtherPage('PartakeChallenge')"
>
<
!-- already_join 0 未参赛 1 已参赛 --
>
<div
class=
"btn-title
"
>
参与挑战
</div>
<div
class=
"card-btn"
v-if=
"item.status === 1 && item.already_join === 0
"
>
参与挑战
</div>
</div>
<
div
class=
"card-btn"
v-else-if=
"item.status === 1 && item.already_join === 1"
@
click
.
stop=
"inviteFriend"
>
邀请好友来参赛
<
/div>
<div
class=
"
card-btn"
v-if=
"item.status===1&&item.already_join===1"
data-item=
"item"
@
click=
"goWhereDetail(item)"
>
已报名
</div
>
<div
class=
"
statusnormal"
v-else
>
<div
class=
"statusnormal"
v-if=
"item.status===2 || item.status===0 || item.status===3"
@
click=
"goWhereDetail(item)"
>
<div
v-if=
"item.status === 0 && item.already_join === 1"
>
立即打卡
</div
>
{{
(
item
.
status
===
2
||
item
.
status
===
0
)
<div
v-else-if=
"item.status === 3 && item.already_join === 1"
>
已淘汰
</div>
?
(
item
.
status
===
0
&&
item
.
already_join
===
1
)
?
'立即打卡'
:
'查看详情'
:
'已淘汰'
}}
<div
v-else
>
查看详情
</div>
<img
src=
"
..
/images/SignUp/detail_bg.png"
>
<img
src=
"
@
/images/SignUp/detail_bg.png"
>
</div>
</div>
</div>
</div>
<!-- 没有关注公众号弹窗 -->
<!-- 没有关注公众号弹窗 -->
<div
class=
"game-auth-popup"
v-if=
"needFollow"
>
<div
class=
"game-auth-popup"
v-if=
"needFollow"
>
<div
class=
"game-auth-container"
>
<div
class=
"game-auth-container"
>
<img
class=
"bg-img"
src=
"
..
/images/common/focus_gzh.png"
>
<img
class=
"bg-img"
src=
"
@
/images/common/focus_gzh.png"
>
<img
class=
"close-btn"
src=
"
..
/images/common/pop_ic_close.png"
@
click=
"closePopup()"
>
<img
class=
"close-btn"
src=
"
@
/images/common/pop_ic_close.png"
@
click=
"closePopup()"
>
</div>
</div>
</div>
</div>
<ShareModal
@
close=
"closeShareModal"
v-if=
"showShareModal"
></ShareModal>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
NoticeBonus
from
"@/components/NoticeBonus.vue"
;
import
NoticeBonus
from
"@/components/NoticeBonus.vue"
;
import
Reborn
from
"@/components/Reborn.vue"
;
import
Reborn
from
"@/components/Reborn.vue"
;
import
ShareModal
from
"@/components/ShareModal.vue"
;
import
{
import
{
daka_index
,
daka_index
,
select_follow
select_follow
...
@@ -60,13 +62,15 @@ export default {
...
@@ -60,13 +62,15 @@ export default {
name
:
"SignUp"
,
name
:
"SignUp"
,
components
:
{
components
:
{
NoticeBonus
,
NoticeBonus
,
Reborn
Reborn
,
ShareModal
},
},
data
()
{
data
()
{
return
{
return
{
gameList
:
[],
gameList
:
[],
followInfo
:
{},
followInfo
:
{},
needFollow
:
false
needFollow
:
false
,
showShareModal
:
false
,
};
};
},
},
created
()
{
created
()
{
...
@@ -76,49 +80,28 @@ export default {
...
@@ -76,49 +80,28 @@ export default {
methods
:
{
methods
:
{
// 点击卡片整块的跳转
// 点击卡片整块的跳转
clickCard
(
item
)
{
clickCard
(
item
)
{
if
(
item
.
status
===
1
&&
item
.
already_join
===
0
)
{
if
(
item
.
status
===
1
&&
item
.
already_join
===
0
)
{
// 未开始 && 未参赛 => 去报名页
this
.
goOtherPage
(
'PartakeChallenge'
);
if
(
this
.
followInfo
.
follow
)
{
}
else
{
this
.
$router
.
push
({
name
:
'PartakeChallenge'
});
this
.
goWhereDetail
(
item
);
}
else
{
}
this
.
needFollow
=
true
;
},
}
goOtherPage
(
pageName
)
{
}
else
if
(
item
.
already_join
===
1
)
{
// 已参赛 => 去比赛页
if
(
!
this
.
followInfo
.
follow
)
{
this
.
needFollow
=
true
;
return
;
}
this
.
$router
.
push
({
name
:
pageName
});
},
goWhereDetail
(
item
)
{
if
(
item
.
status
===
1
&&
item
.
already_join
===
1
)
{
// 已报名
this
.
$router
.
push
({
this
.
$router
.
push
({
name
:
"HaveJoinedGame"
,
name
:
"HaveJoinedGame"
,
query
:
{
query
:
{
week
:
item
.
week
week
:
item
.
week
}
}
});
});
}
else
{
}
else
{
// 去详情页
// 比赛中或者已结束
if
(
sessionStorage
.
getItem
(
'userHaveJoinGame'
)
===
'true'
)
{
if
(
item
.
already_join
===
1
)
{
item
.
daka_signup
=
true
;
// 已报名
this
.
$router
.
push
({
name
:
"HaveJoinedGame"
,
query
:
{
week
:
item
.
week
}
});
}
else
{
}
else
{
// 未报名
item
.
daka_signup
=
false
;
if
(
sessionStorage
.
getItem
(
'userHaveJoinGame'
)
===
'true'
)
{
item
.
newGameWeek
=
this
.
gameList
[
0
].
week
.
slice
(
4
,
8
);
item
.
daka_signup
=
true
;
}
else
{
item
.
daka_signup
=
false
;
item
.
newGameWeek
=
this
.
gameList
[
0
].
week
.
slice
(
4
,
8
);
}
sessionStorage
.
setItem
(
"ChallengeDetailData"
,
JSON
.
stringify
(
item
));
this
.
$router
.
push
({
name
:
"ChallengeDetail"
});
}
}
sessionStorage
.
setItem
(
"ChallengeDetailData"
,
JSON
.
stringify
(
item
));
this
.
$router
.
push
({
name
:
"ChallengeDetail"
});
}
}
},
},
// 关注公众号
// 关注公众号
...
@@ -134,6 +117,7 @@ export default {
...
@@ -134,6 +117,7 @@ export default {
closePopup
()
{
closePopup
()
{
this
.
needFollow
=
false
;
this
.
needFollow
=
false
;
},
},
// 获取页面数据
getPageData
()
{
getPageData
()
{
daka_index
().
then
(
res
=>
{
daka_index
().
then
(
res
=>
{
if
(
res
.
code
===
0
)
{
if
(
res
.
code
===
0
)
{
...
@@ -143,6 +127,74 @@ export default {
...
@@ -143,6 +127,74 @@ export default {
this
.
gameList
=
res
.
data
;
this
.
gameList
=
res
.
data
;
}
}
});
});
},
// 分享
inviteFriend
()
{
console
.
log
(
"inviteFriend"
);
this
.
showShareModal
=
true
;
let
id
=
this
.
userData
.
id
;
track
(
"free_contract_share"
);
let
links
=
`
${
location
.
href
.
split
(
"#"
)[
0
].
split
(
"?"
)[
0
]
}
?inviter=
${
id
}
&from_type=free_contract&`
;
shareContent
(
"free_contract"
).
then
(
res
=>
{
let
result
=
res
.
data
;
console
.
log
(
"分享内容"
,
result
,
links
);
let
option1
=
{
title
:
result
.
title
,
// 分享标题
desc
:
result
.
desc
,
// 分享描述
link
:
links
,
// 分享链接
imgUrl
:
result
.
img_url
,
// 分享图标
success
:
function
(
res
)
{
track
(
"free_contract_share_act"
);
console
.
log
(
"option1Success"
,
res
);
}
};
wx
.
updateAppMessageShareData
(
option1
);
//微信分享菜单测试
let
option2
=
{
title
:
result
.
title
,
// 分享标题
desc
:
result
.
desc
,
// 分享描述
link
:
links
,
// 分享链接
imgUrl
:
result
.
img_url
,
// 分享图标
success
:
function
(
res
)
{
console
.
log
(
"option2Success"
,
res
);
}
};
let
option3
=
{
title
:
result
.
title
,
// 分享标题
desc
:
result
.
desc
,
// 分享描述
link
:
links
,
// 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl
:
result
.
img_url
,
// 分享图标
success
:
function
(
res
)
{
// 用户点击了分享后执行的回调函数
track
(
"free_contract_share_act"
);
console
.
log
(
"option3Success"
,
res
);
},
fail
:
err
=>
{
console
.
log
(
"option3error"
,
err
);
}
};
wx
.
onMenuShareAppMessage
(
option3
);
let
option4
=
{
title
:
result
.
title
,
// 分享标题
link
:
links
,
// 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl
:
result
.
img_url
,
// 分享图标
success
:
function
(
res
)
{
console
.
log
(
"option4Success"
,
res
);
this
.
showShareModal
=
false
;
},
fail
:
err
=>
{
console
.
log
(
"option4error"
,
err
);
this
.
showShareModal
=
false
;
}
};
// wx.onMenuShareTimeline(option4);
console
.
log
(
"option"
,
option1
,
option2
,
option3
,
option4
);
});
},
closeShareModal
()
{
this
.
showShareModal
=
false
;
}
}
}
}
};
};
...
@@ -279,7 +331,7 @@ export default {
...
@@ -279,7 +331,7 @@ export default {
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
center
;
justify-content
:
center
;
font-size
:
0.3rem
;
font-size
:
0.3
4
rem
;
font-weight
:
bold
;
font-weight
:
bold
;
letter-spacing
:
0.01rem
;
letter-spacing
:
0.01rem
;
line-height
:
1
;
line-height
:
1
;
...
@@ -288,15 +340,6 @@ export default {
...
@@ -288,15 +340,6 @@ export default {
bottom
:
0.38rem
;
bottom
:
0.38rem
;
left
:
50%
;
left
:
50%
;
transform
:
translateX
(
-50%
);
transform
:
translateX
(
-50%
);
.card-btn-tip
{
font-size
:
0.22rem
;
margin-top
:
0.06rem
;
font-weight
:
normal
;
}
.btn-title
{
font-size
:
0.34rem
;
font-weight
:
bold
;
}
}
}
}
}
}
}
...
...
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