|
@@ -2,14 +2,14 @@
|
|
|
<template>
|
|
|
<div class="content">
|
|
|
<!-- open -->
|
|
|
- <div v-if="data.status == 'opened'" class="opened">
|
|
|
+ <div v-show="data.status == 'opened'" class="opened">
|
|
|
<div class="header" :style="{ 'backgroundImage': `url(${require('@/assets/subject/001-back-head-top.svg')})` }">
|
|
|
<div class="title">Awesome! You Will Get</div>
|
|
|
<div class="money">
|
|
|
<img :src="data.detail.currencyIconPath" alt />
|
|
|
<!-- <span class="big">{{ data.money }}</span> -->
|
|
|
<font-amount :amount="data.money" class="big" :fontSize="46"></font-amount>
|
|
|
- <!-- <span class="small">{{ data.detail.amountCurrencyCode || '' }}</span> -->
|
|
|
+ <!-- <span class="small">{{ data.detail.currencySymbol || '' }}</span> -->
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
@@ -63,9 +63,9 @@
|
|
|
</div>
|
|
|
<div class="people" @click="clickRoad">
|
|
|
<div class="txt">
|
|
|
- {{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} Got,{{
|
|
|
+ {{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} Get,{{
|
|
|
data.detail.receiveAmountValue
|
|
|
- }}/{{ data.detail.amountValue }} {{ data.detail.amountCurrencyCode }}</div>
|
|
|
+ }}/{{ data.detail.amountValue }} {{ data.detail.currencySymbol }}</div>
|
|
|
<div class="right" v-if="data.detail.allReceived">
|
|
|
<template v-for="item, i in data.detail.allReceived.slice(0, 3)" v-bind:key="i">
|
|
|
<img :src="item.simpleUserInfoVO.avatarUrl" alt :style="{ right: `${i * 16 + 14}px` }"
|
|
@@ -86,12 +86,12 @@
|
|
|
|
|
|
|
|
|
<!-- success -->
|
|
|
- <div v-else-if="data.status == 'success'" class="success">
|
|
|
+ <div v-if="data.status == 'success'" class="success">
|
|
|
<div class="header" :style="{ 'backgroundImage': `url(${require('@/assets/subject/001-back-head-top.svg')})` }">
|
|
|
<div class="money">
|
|
|
<img :src="data.detail.currencyIconPath" alt />
|
|
|
<font-amount :amount="data.money" class="big" :fontSize="46"></font-amount>
|
|
|
- <!-- <span class="small">{{ data.detail.amountCurrencyCode }}</span> -->
|
|
|
+ <!-- <span class="small">{{ data.detail.currencySymbol }}</span> -->
|
|
|
</div>
|
|
|
<div class="done" @click="clickDone">
|
|
|
<img :src="require('@/assets/subject/001-icon-done.svg')" alt class="icon-done" />
|
|
@@ -100,9 +100,9 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="luck-list-title">
|
|
|
- <div>{{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} Got</div>
|
|
|
+ <div>{{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} Get</div>
|
|
|
<div> {{ data.detail.receiveAmountValue }} / {{ data.detail.amountValue || '' }} {{
|
|
|
- data.detail.amountCurrencyCode || ''
|
|
|
+ data.detail.currencySymbol || ''
|
|
|
}}</div>
|
|
|
</div>
|
|
|
<div class="luck-list" @scroll="handleScroll($event)">
|
|
@@ -139,7 +139,7 @@
|
|
|
<span>{{ data.detail.postUserInfo.nickName || 'FutureDoctor' }}</span>
|
|
|
</div>
|
|
|
<div class="money-area">
|
|
|
- <div class="txt">{{ data.detail.amountCurrencyCode }} GIVEAWAY</div>
|
|
|
+ <div class="txt">{{ data.detail.currencySymbol }} GIVEAWAY</div>
|
|
|
<div class="coin">
|
|
|
<img :src="data.detail.currencyIconPath" alt />
|
|
|
<font-amount :amount="data.detail.amountValue"></font-amount>
|
|
@@ -155,9 +155,9 @@
|
|
|
<img :src="require('@/assets/svg/icon-back.svg')" alt @click="clickBack" />
|
|
|
</div>
|
|
|
<div class="luck-list-title">
|
|
|
- <div>{{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} Got</div>
|
|
|
+ <div>{{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} Get</div>
|
|
|
<div> {{ data.detail.receiveAmountValue }} / {{ data.detail.amountValue || '' }} {{
|
|
|
- data.detail.amountCurrencyCode || ''
|
|
|
+ data.detail.currencySymbol || ''
|
|
|
}}</div>
|
|
|
</div>
|
|
|
<div class="luck-list" @scroll="handleScroll">
|
|
@@ -189,9 +189,9 @@
|
|
|
<div class="close-title" v-if="data.close_text">{{ data.close_text }}</div>
|
|
|
</div>
|
|
|
<div class="luck-list-title">
|
|
|
- <div>{{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} People Got</div>
|
|
|
+ <div>{{ data.detail.receiveCount || 0 }}/{{ data.detail.totalCount || 0 }} People Get</div>
|
|
|
<div> {{ data.detail.receiveAmountValue }} / {{ data.detail.amountValue || '' }} {{
|
|
|
- data.detail.amountCurrencyCode || ''
|
|
|
+ data.detail.currencySymbol || ''
|
|
|
}}</div>
|
|
|
</div>
|
|
|
<div class="luck-list" @scroll="handleScroll">
|
|
@@ -468,53 +468,54 @@ function init() {
|
|
|
postId: data.postId
|
|
|
}
|
|
|
}).then((res) => {
|
|
|
- switch (res.code.toString()) {
|
|
|
- case "0":
|
|
|
- data.srcContentId = res.data.srcContentId
|
|
|
- // if (data.tweetId != data.srcContentId) {
|
|
|
- // data.error_txt = 'Giveaways link Error'
|
|
|
- // data.status = 'error'
|
|
|
- // return
|
|
|
- // }
|
|
|
- data.detail = JSON.parse(res.data.postBizData)
|
|
|
- console.log(data.detail)
|
|
|
-
|
|
|
- // 红包未开始
|
|
|
- if (data.detail.status == 0) {
|
|
|
- data.status = 'not-open'
|
|
|
-
|
|
|
- // 任务进行中
|
|
|
- } else if (data.detail.status == 1) {
|
|
|
- data.status = 'not-open'
|
|
|
- // 我领取过的状态
|
|
|
- if (data.detail.myReceived) {
|
|
|
- myReceivedState()
|
|
|
- } else {
|
|
|
- // 大红包不可以领取了
|
|
|
- if (data.detail.receiveTimeExpired) {
|
|
|
- data.status = 'close'
|
|
|
- data.close_title = `This Giveaways`
|
|
|
- data.close_text = `expired on ${moment(data.detail.endTimestamp).format('MM-DD')}`
|
|
|
- }
|
|
|
- // 任务已经被领完了
|
|
|
- if (data.detail.totalCount == data.detail.receiveCount) {
|
|
|
- data.status = 'close'
|
|
|
- data.close_title = 'Better luck next time!'
|
|
|
- }
|
|
|
- }
|
|
|
+ data.loading_show = false
|
|
|
+ if (res.code == 0) {
|
|
|
+ data.srcContentId = res.data.srcContentId
|
|
|
+ // if (data.tweetId != data.srcContentId) {
|
|
|
+ // data.error_txt = 'Giveaways link Error'
|
|
|
+ // data.status = 'error'
|
|
|
+ // return
|
|
|
+ // }
|
|
|
+ data.detail = JSON.parse(res.data.postBizData)
|
|
|
+ console.log(data.detail)
|
|
|
+
|
|
|
+ // 红包未开始
|
|
|
+ if (data.detail.status == 0) {
|
|
|
+ data.status = 'not-open'
|
|
|
|
|
|
- // 任务已经结束了
|
|
|
- } else if (data.detail.status == 2) {
|
|
|
- // 我领取过的状态
|
|
|
- if (data.detail.myReceived) {
|
|
|
- myReceivedState()
|
|
|
- } else {
|
|
|
+ // 任务进行中
|
|
|
+ } else if (data.detail.status == 1) {
|
|
|
+ data.status = 'not-open'
|
|
|
+ // 我领取过的状态
|
|
|
+ if (data.detail.myReceived) {
|
|
|
+ myReceivedState()
|
|
|
+ } else {
|
|
|
+ // 大红包不可以领取了
|
|
|
+ if (data.detail.receiveTimeExpired) {
|
|
|
data.status = 'close'
|
|
|
data.close_title = `This Giveaways`
|
|
|
data.close_text = `expired on ${moment(data.detail.endTimestamp).format('MM-DD')}`
|
|
|
}
|
|
|
+ // 任务已经被领完了
|
|
|
+ if (data.detail.totalCount == data.detail.receiveCount) {
|
|
|
+ data.status = 'close'
|
|
|
+ data.close_title = 'Better luck next time!'
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 任务已经结束了
|
|
|
+ } else if (data.detail.status == 2) {
|
|
|
+ // 我领取过的状态
|
|
|
+ if (data.detail.myReceived) {
|
|
|
+ myReceivedState()
|
|
|
+ } else {
|
|
|
+ data.status = 'close'
|
|
|
+ data.close_title = `This Giveaways`
|
|
|
+ data.close_text = `expired on ${moment(data.detail.endTimestamp).format('MM-DD')}`
|
|
|
}
|
|
|
- break
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ handleErrorCode(res)
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -525,28 +526,23 @@ function initTaskDetail() {
|
|
|
postId: data.postId
|
|
|
}
|
|
|
}).then((res) => {
|
|
|
- switch (res.code.toString()) {
|
|
|
- case "0":
|
|
|
- for (let i in res.data) {
|
|
|
- switch (res.data[i].type) {
|
|
|
- case 1:
|
|
|
- data.done.follow = res.data[i].finished
|
|
|
- data.detail.taskCondition[0].relatedUsers = res.data[i].detail
|
|
|
- break
|
|
|
- case 2:
|
|
|
- data.done.like = res.data[i].finished
|
|
|
- break
|
|
|
- case 3:
|
|
|
- data.done.retweet = res.data[i].finished
|
|
|
- break
|
|
|
- }
|
|
|
+ if (res.code.toString()) {
|
|
|
+ for (let i in res.data) {
|
|
|
+ switch (res.data[i].type) {
|
|
|
+ case 1:
|
|
|
+ data.done.follow = res.data[i].finished
|
|
|
+ data.detail.taskCondition[0].relatedUsers = res.data[i].detail
|
|
|
+ break
|
|
|
+ case 2:
|
|
|
+ data.done.like = res.data[i].finished
|
|
|
+ break
|
|
|
+ case 3:
|
|
|
+ data.done.retweet = res.data[i].finished
|
|
|
+ break
|
|
|
}
|
|
|
- break
|
|
|
- case "2009":
|
|
|
- data.error_txt = `oops, new accounts cannot participate in this event,`
|
|
|
- data.status = 'error'
|
|
|
- data.retry = true
|
|
|
- break
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ handleErrorCode(res)
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -573,31 +569,12 @@ function handleRedPacket() {
|
|
|
postId: data.postId
|
|
|
}
|
|
|
}).then((res) => {
|
|
|
- switch (res.code.toString()) {
|
|
|
- case "0":
|
|
|
- data.status = 'opened'
|
|
|
- data.money = res.data.receiveAmount
|
|
|
- init()
|
|
|
- break
|
|
|
- case "2003":
|
|
|
- data.status = 'close'
|
|
|
- data.close_title = `This Giveaways`
|
|
|
- data.close_text = `expired on ${moment(data.detail.endTimestamp).format('MM-DD')}`
|
|
|
- break
|
|
|
- case "2008":
|
|
|
- data.status = 'close'
|
|
|
- data.close_title = 'Better luck next time!'
|
|
|
- break
|
|
|
- case "2009":
|
|
|
- data.error_txt = `oops, new accounts cannot participate in this event,`
|
|
|
- data.status = 'error'
|
|
|
- data.retry = true
|
|
|
- break
|
|
|
- case "2029":
|
|
|
- message.error('推文未发布')
|
|
|
- break
|
|
|
- default:
|
|
|
- message.error(res.msg)
|
|
|
+ if (res.code == 0) {
|
|
|
+ data.status = 'opened'
|
|
|
+ data.money = res.data.receiveAmount
|
|
|
+ init()
|
|
|
+ } else {
|
|
|
+ handleErrorCode(res)
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -617,6 +594,9 @@ function checkIsLogin() {
|
|
|
getChromeStorage('userInfo', (_userInfo) => {
|
|
|
if (!_userInfo) {
|
|
|
data.loading_show = true
|
|
|
+ setTimeout(() => {
|
|
|
+ data.loading_show = false
|
|
|
+ }, 3000)
|
|
|
chrome.runtime.sendMessage(
|
|
|
{ method: "POPUP_LOGIN", data: "" },
|
|
|
(response) => {
|
|
@@ -645,65 +625,163 @@ function handleFinishRedPacket() {
|
|
|
postId: data.postId
|
|
|
}
|
|
|
}).then((res) => {
|
|
|
- data.loading_show = false
|
|
|
- switch (res.code.toString()) {
|
|
|
- case '0':
|
|
|
- if (res.data.finished) {
|
|
|
- data.status = 'success'
|
|
|
- data.receiveAmount = res.data.receiveAmount
|
|
|
- init()
|
|
|
- } else {
|
|
|
- let _data = res.data.conditionResult
|
|
|
- for (let i in _data) {
|
|
|
- switch (_data[i].type.toString()) {
|
|
|
- case '1':
|
|
|
- data.detail.taskCondition[0].relatedUsers = _data[i].detail
|
|
|
- if (_data[i].finished) {
|
|
|
- data.done.follow = true
|
|
|
- } else {
|
|
|
- // alert('Please complete the task: follow')
|
|
|
- data.done.follow_red = true
|
|
|
- }
|
|
|
- break
|
|
|
- case '2':
|
|
|
- if (_data[i].finished) {
|
|
|
- data.done.like = true
|
|
|
- } else {
|
|
|
- // alert('Please complete the task: like tweet')
|
|
|
- data.done.like_red = true
|
|
|
- }
|
|
|
- break
|
|
|
- case '3':
|
|
|
- if (_data[i].finished) {
|
|
|
- data.done.retweet = true
|
|
|
- } else {
|
|
|
- // alert('Please complete the task: Retweet')
|
|
|
- data.done.retweet_red = true
|
|
|
-
|
|
|
- }
|
|
|
- break
|
|
|
- }
|
|
|
+ if (res.code == 0) {
|
|
|
+ data.loading_show = false
|
|
|
+ if (res.data.finished) {
|
|
|
+ data.status = 'success'
|
|
|
+ data.receiveAmount = res.data.receiveAmount
|
|
|
+ init()
|
|
|
+ } else {
|
|
|
+ let _data = res.data.conditionResult
|
|
|
+ for (let i in _data) {
|
|
|
+ switch (_data[i].type.toString()) {
|
|
|
+ case '1':
|
|
|
+ data.detail.taskCondition[0].relatedUsers = _data[i].detail
|
|
|
+ if (_data[i].finished) {
|
|
|
+ data.done.follow = true
|
|
|
+ } else {
|
|
|
+ // alert('Please complete the task: follow')
|
|
|
+ data.done.follow_red = true
|
|
|
+ }
|
|
|
+ break
|
|
|
+ case '2':
|
|
|
+ if (_data[i].finished) {
|
|
|
+ data.done.like = true
|
|
|
+ } else {
|
|
|
+ // alert('Please complete the task: like tweet')
|
|
|
+ data.done.like_red = true
|
|
|
+ }
|
|
|
+ break
|
|
|
+ case '3':
|
|
|
+ if (_data[i].finished) {
|
|
|
+ data.done.retweet = true
|
|
|
+ } else {
|
|
|
+ // alert('Please complete the task: Retweet')
|
|
|
+ data.done.retweet_red = true
|
|
|
+
|
|
|
+ }
|
|
|
+ break
|
|
|
}
|
|
|
}
|
|
|
- break
|
|
|
- // 没有可提交的任务红包
|
|
|
- case "2024":
|
|
|
- data.status = 'not-open'
|
|
|
- break
|
|
|
- case "2009":
|
|
|
- data.error_txt = `oops, new accounts cannot participate in this event,`
|
|
|
- data.status = 'error'
|
|
|
- data.retry = true
|
|
|
- break
|
|
|
- case "-106":
|
|
|
- message.error('Clicking too often, wait a moment and click again')
|
|
|
- break
|
|
|
- default:
|
|
|
- console(res)
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ handleErrorCode(res)
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+function handleErrorCode(res) {
|
|
|
+ switch (res.code.toString()) {
|
|
|
+ // 数据异常,请联系管理员
|
|
|
+ case '-102':
|
|
|
+
|
|
|
+ break
|
|
|
+ //系统错误
|
|
|
+ case '-101':
|
|
|
+
|
|
|
+ break
|
|
|
+
|
|
|
+ // 参数不对
|
|
|
+ case '-103':
|
|
|
+ break
|
|
|
+ // 接口被限流
|
|
|
+ case '-105':
|
|
|
+ break
|
|
|
+
|
|
|
+ // 访问凭证不存在
|
|
|
+ case '-107':
|
|
|
+ break
|
|
|
+ // 重复操作过于频繁
|
|
|
+ case '-106':
|
|
|
+ message.error('Clicking too often, wait a moment and click again')
|
|
|
+ break
|
|
|
+ // 红包不存在
|
|
|
+ case '2001':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 还未到红包领取时间
|
|
|
+ case '2002':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 已超过红包领取时间
|
|
|
+ case '2003':
|
|
|
+ // data.status = 'close'
|
|
|
+ // data.close_title = `This Giveaways`
|
|
|
+ // data.close_text = `expired on ${moment(data.detail.endTimestamp).format('MM-DD')}`
|
|
|
+ init()
|
|
|
+ break
|
|
|
+ // 红包支付状态异常 没有可提交的任务红包
|
|
|
+ case '2004':
|
|
|
+ data.status = 'not-open'
|
|
|
+ break
|
|
|
+ // 红包活动已结束
|
|
|
+ case '2006':
|
|
|
+ // data.status = 'close'
|
|
|
+ // data.close_title = `This Giveaways`
|
|
|
+ // data.close_text = `expired on ${moment(data.detail.endTimestamp).format('MM-DD')}`
|
|
|
+ init()
|
|
|
+ break
|
|
|
+ // 红包金额已经被领取完了
|
|
|
+ case '2007':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 红包个数已经被领取完了
|
|
|
+ case '2008':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 该用户不满足领取条件
|
|
|
+ case '2009':
|
|
|
+ data.error_txt = `oops, new accounts cannot participate in this event,`
|
|
|
+ data.status = 'error'
|
|
|
+ data.retry = true
|
|
|
+ break
|
|
|
+ // 无法校验用户Twitter信息
|
|
|
+ case '2010':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 用户已经领过该红包
|
|
|
+ case '2011':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 推文不存在
|
|
|
+ case '2022':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 推文未发布 and 不是红包任务的推文
|
|
|
+ case '2023':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 没有可提交的任务红包
|
|
|
+ case '2024':
|
|
|
+ message.error(res.msg)
|
|
|
+ break
|
|
|
+ // 红包任务已完成
|
|
|
+ case '2025':
|
|
|
+ break
|
|
|
+ // 任务已经过期
|
|
|
+ case '2026':
|
|
|
+ break
|
|
|
+ // 任务未完成
|
|
|
+ case '2027':
|
|
|
+ break
|
|
|
+ // 红包金额每人不足1分钱
|
|
|
+ case '2028':
|
|
|
+ break
|
|
|
+ // 推文未发布
|
|
|
+ case '2029':
|
|
|
+ message.error('推文未发布')
|
|
|
+ break
|
|
|
+ // 不是红包任务的推文
|
|
|
+ case '2030':
|
|
|
+
|
|
|
+ break
|
|
|
+ //用户没有领取过红包,无法重抽
|
|
|
+ case '2031':
|
|
|
+ break
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
function clickBack() {
|
|
|
data.status = 'opened'
|
|
|
}
|