|
@ -7,36 +7,36 @@ |
|
|
<view class="countDown"> |
|
|
<view class="countDown"> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view class="title">{{ i18n.Days }}</view> |
|
|
<view class="title">{{ i18n.Days }}</view> |
|
|
<view class="value">20</view> |
|
|
<view class="value">{{day}}</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view class="title">{{ i18n.Hours }}</view> |
|
|
<view class="title">{{ i18n.Hours }}</view> |
|
|
<view class="value">8</view> |
|
|
<view class="value">{{hr}}</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view class="title">{{ i18n.Minutes }}</view> |
|
|
<view class="title">{{ i18n.Minutes }}</view> |
|
|
<view class="value">47</view> |
|
|
<view class="value">{{min}}</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view class="title">{{ i18n.Seconds }}</view> |
|
|
<view class="title">{{ i18n.Seconds }}</view> |
|
|
<view class="value">9</view> |
|
|
<view class="value">{{sec}}</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<!-- input --> |
|
|
<!-- input --> |
|
|
<view class="input-item"> |
|
|
<view class="input-item"> |
|
|
<u-input class="input" v-model="SubscribeCount" color="#A1A0A8" fontSize="32rpx" border="none" |
|
|
<u-input class="input" v-model="SubscribeCount" color="#A1A0A8" fontSize="32rpx" border="none" |
|
|
:placeholder="i18n.PleaseChooseCoin"> |
|
|
:placeholder="i18n.PleaseChooseCoin" @focus="SubscribeCount=''"> |
|
|
</u-input> |
|
|
</u-input> |
|
|
<view class="selectCoin" @click="USDTPopupShow = true">USDT |
|
|
<view class="selectCoin" @click="USDTPopupShow = true">{{deinfo.sysCoinInfo.coinCode}} |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
<!-- total --> |
|
|
<!-- total --> |
|
|
<key-value-row :keyName="i18n.Total" :value="'≈ 993.64069952 ACTA'" :size="'24rpx'" :leftColor="'#A1A0A8'" |
|
|
<key-value-row :keyName="i18n.Total" :value="'≈'+coinPirce+deinfo.coins[0].code" :size="'24rpx'" |
|
|
:rightColor="'#A1A0A8'"></key-value-row> |
|
|
:leftColor="'#A1A0A8'" :rightColor="'#A1A0A8'"></key-value-row> |
|
|
|
|
|
|
|
|
<!-- 按钮 --> |
|
|
<!-- 按钮 --> |
|
|
<u-button class="button" color="#00E8A2" throttleTime="500">{{ |
|
|
<u-button class="button" color="#00E8A2" throttleTime="500" :disabled="SubscribeNowed" @click="subscribe">{{ |
|
|
i18n.SubscribeNow |
|
|
i18n.SubscribeNow |
|
|
}} |
|
|
}} |
|
|
</u-button> |
|
|
</u-button> |
|
@ -44,37 +44,31 @@ |
|
|
<!-- ProjectDetails --> |
|
|
<!-- ProjectDetails --> |
|
|
<view class="contentTitle"> |
|
|
<view class="contentTitle"> |
|
|
<view class="ProjectDetails">{{ i18n.ProjectDetails }}</view> |
|
|
<view class="ProjectDetails">{{ i18n.ProjectDetails }}</view> |
|
|
<view class="videoBtn">{{ i18n.Video }}</view> |
|
|
<view class="videoBtn" @click="getContact('video')">{{ i18n.Video }}</view> |
|
|
<view class="whiteBook">{{ i18n.WhiteBook }}</view> |
|
|
<view class="whiteBook" @click="getContact('book')">{{ i18n.WhiteBook }}</view> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<!-- 文字内容 --> |
|
|
<!-- 文字内容 --> |
|
|
<view class="content">Access to COVID-19 Tools Accelerator (ACTA) is a fully decentralized financial (DeFi) |
|
|
<view class="content">{{des}}</view> |
|
|
ecosystem with blockchain as the underlying architecture, 100% decentralized exchange, 100% free |
|
|
|
|
|
trading, 100% customized trading model, 100% cross-chain support. We have pre-customized two trading |
|
|
|
|
|
models, ACTA/BTC and ACTA/USDT. ACTA/BTC is the mainstream currency with stable appreciation space; |
|
|
|
|
|
ACTA/USDT is a stable settlement virtual currency which can be 1:1 freely convertible with US dollars. |
|
|
|
|
|
ACTA is the leader of the global digital encryption currency decentralized market. |
|
|
|
|
|
|
|
|
|
|
|
Full name of the token: Access to COVID-19 Tools Accelerator |
|
|
|
|
|
|
|
|
|
|
|
ACTA total circulation: 1,200,000,000.00 |
|
|
|
|
|
|
|
|
|
|
|
ICO Price: 0.02 USDT |
|
|
|
|
|
|
|
|
|
|
|
ICO Time: From December 12,2021 to March 12, 2022</view> |
|
|
|
|
|
|
|
|
|
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</template> |
|
|
</template> |
|
|
|
|
|
|
|
|
<script> |
|
|
<script> |
|
|
import KeyValueRow from '../../components/KeyValueRow/KeyValueRow.vue'; |
|
|
import KeyValueRow from '../../components/KeyValueRow/KeyValueRow.vue'; |
|
|
import UButton from '../../uview-ui/components/u-button/u-button' |
|
|
import UButton from '../../uview-ui/components/u-button/u-button' |
|
|
export default { |
|
|
import api from '@/utils/api' |
|
|
|
|
|
import constant from '@/utils/constant.js'; |
|
|
|
|
|
export default { |
|
|
name: "subscriptionDetails", |
|
|
name: "subscriptionDetails", |
|
|
data() { |
|
|
data() { |
|
|
return { |
|
|
return { |
|
|
|
|
|
// 计算的价格 |
|
|
|
|
|
coinPirce: 0, |
|
|
|
|
|
toLiveBtn: '', |
|
|
|
|
|
_interval: null, |
|
|
|
|
|
des: '', |
|
|
SubscribeCount: 0, |
|
|
SubscribeCount: 0, |
|
|
DonatePopupShow: false, |
|
|
DonatePopupShow: false, |
|
|
USDTPopupShow: false, |
|
|
USDTPopupShow: false, |
|
@ -82,28 +76,120 @@ export default { |
|
|
coinInfo: {}, |
|
|
coinInfo: {}, |
|
|
rules: {}, |
|
|
rules: {}, |
|
|
radioValue: '', |
|
|
radioValue: '', |
|
|
|
|
|
baseURL: '', |
|
|
|
|
|
deinfo: {}, |
|
|
|
|
|
day: '', |
|
|
|
|
|
hr: '', |
|
|
|
|
|
min: '', |
|
|
|
|
|
sec: '', |
|
|
}; |
|
|
}; |
|
|
}, |
|
|
}, |
|
|
computed: { |
|
|
computed: { |
|
|
i18n() { |
|
|
i18n() { |
|
|
return this.$t("subscription"); |
|
|
return this.$t("subscription"); |
|
|
}, |
|
|
}, |
|
|
|
|
|
SubscribeNowed() { |
|
|
|
|
|
if (this.SubscribeCount == 0 || !this.SubscribeCount || isNaN(this.SubscribeCount)) { |
|
|
|
|
|
return true |
|
|
|
|
|
} else { |
|
|
|
|
|
return false |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
}, |
|
|
}, |
|
|
onLoad() { |
|
|
watch: { |
|
|
|
|
|
SubscribeCount: { |
|
|
|
|
|
handler(newName, oldName) { |
|
|
|
|
|
this.SubscribeCount = newName |
|
|
|
|
|
this.coinPirce = newName / this.deinfo.sysCoinInfo.initalPrice |
|
|
|
|
|
this.coinPirce = parseFloat(this.coinPirce.toPrecision(10)) |
|
|
|
|
|
this.coinPirce = String(this.coinPirce) |
|
|
|
|
|
this.coinPirce = this.coinPirce.substring(0, this.coinPirce.indexOf(".") + 9); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
onLoad(res) { |
|
|
|
|
|
this.baseURL = constant.BASE_URL |
|
|
|
|
|
this.getDetail(res.id); |
|
|
// console.log(this.$t('login.emailInputMessage')); |
|
|
// console.log(this.$t('login.emailInputMessage')); |
|
|
}, |
|
|
}, |
|
|
onShow() { }, |
|
|
onShow() {}, |
|
|
methods: { |
|
|
methods: { |
|
|
|
|
|
//提交申购订单 |
|
|
|
|
|
subscribe() { |
|
|
|
|
|
api.exchangeCoin({ |
|
|
|
|
|
baseSymbol: this.deinfo.coins[0].code, |
|
|
|
|
|
coinSymbol: this.deinfo.sysCoinInfo.coinCode, |
|
|
|
|
|
baseAmount: this.SubscribeCount, |
|
|
|
|
|
}).then(res => { |
|
|
|
|
|
uni.$u.toast(this.$t("login").Successfulsubscription) |
|
|
|
|
|
}) |
|
|
|
|
|
}, |
|
|
|
|
|
//当离开页面时,清除倒计时 |
|
|
|
|
|
beforeDestroy() { |
|
|
|
|
|
clearInterval(this._interval) |
|
|
|
|
|
}, |
|
|
|
|
|
// 倒计时事件 |
|
|
|
|
|
countdown(e) { |
|
|
|
|
|
const that = this |
|
|
|
|
|
that._interval = setInterval(() => { |
|
|
|
|
|
if (e == 0) { |
|
|
|
|
|
// 计时结束,清除缓存 |
|
|
|
|
|
clearInterval(that._interval) |
|
|
|
|
|
} else { |
|
|
|
|
|
e-- |
|
|
|
|
|
let day = parseInt(e / 60 / 60 / 24) |
|
|
|
|
|
let hr = parseInt(e / 60 / 60 % 24) |
|
|
|
|
|
let min = parseInt(e / 60 % 60) |
|
|
|
|
|
let sec = parseInt(e % 60) |
|
|
|
|
|
this.day = day > 9 ? day : '0' + day |
|
|
|
|
|
this.hr = hr > 9 ? hr : '0' + hr |
|
|
|
|
|
this.min = min > 9 ? min : '0' + min |
|
|
|
|
|
this.sec = sec > 9 ? sec : '0' + sec |
|
|
|
|
|
that.toLiveBtn = `${this.day}天${this.hr}时${this.min}分${this.sec}秒` |
|
|
|
|
|
} |
|
|
|
|
|
}, 1000); |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
radioChange(e) { |
|
|
radioChange(e) { |
|
|
// console.log(e); |
|
|
// console.log(e); |
|
|
|
|
|
}, |
|
|
|
|
|
// 跳转视频和pdfe |
|
|
|
|
|
getContact(e) { |
|
|
|
|
|
let url; |
|
|
|
|
|
if (e == 'video') { |
|
|
|
|
|
url = this.deinfo.sysCoinInfo.videoWebsite |
|
|
|
|
|
} else { |
|
|
|
|
|
url = this.deinfo.sysCoinInfo.whitePaperWebsite |
|
|
} |
|
|
} |
|
|
|
|
|
// #ifdef APP-PLUS |
|
|
|
|
|
plus.runtime.openURL(url); |
|
|
|
|
|
// #endif |
|
|
|
|
|
// #ifdef H5 |
|
|
|
|
|
window.location.href = url |
|
|
|
|
|
// #endif |
|
|
}, |
|
|
}, |
|
|
components: { UButton, KeyValueRow } |
|
|
// 申购详情 |
|
|
} |
|
|
getDetail(e) { |
|
|
|
|
|
api.subscription({ |
|
|
|
|
|
coinCode: e, |
|
|
|
|
|
}).then(res => { |
|
|
|
|
|
this.deinfo = res; |
|
|
|
|
|
this.des = this.deinfo.sysCoinInfo.info |
|
|
|
|
|
this.deinfo.lefttime=this.deinfo.lefttime/1000 |
|
|
|
|
|
this.countdown(this.deinfo.lefttime) |
|
|
|
|
|
}) |
|
|
|
|
|
}, |
|
|
|
|
|
}, |
|
|
|
|
|
components: { |
|
|
|
|
|
UButton, |
|
|
|
|
|
KeyValueRow |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
</script> |
|
|
</script> |
|
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
<style lang="scss" scoped> |
|
|
.main { |
|
|
.main { |
|
|
|
|
|
|
|
|
.body { |
|
|
.body { |
|
|
overflow: hidden; |
|
|
overflow: hidden; |
|
@ -124,7 +210,7 @@ export default { |
|
|
box-sizing: border-box; |
|
|
box-sizing: border-box; |
|
|
|
|
|
|
|
|
.item { |
|
|
.item { |
|
|
width: 140rpx; |
|
|
// width: 140rpx; |
|
|
height: 174rpx; |
|
|
height: 174rpx; |
|
|
font-weight: bold; |
|
|
font-weight: bold; |
|
|
|
|
|
|
|
@ -247,6 +333,7 @@ export default { |
|
|
font-size: 24rpx; |
|
|
font-size: 24rpx; |
|
|
color: #A1A0A8; |
|
|
color: #A1A0A8; |
|
|
margin-bottom: 48rpx; |
|
|
margin-bottom: 48rpx; |
|
|
|
|
|
line-height: 40rpx; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -254,5 +341,5 @@ export default { |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
</style> |
|
|
</style> |
|
|