准备0726版本
This commit is contained in:
parent
3c53269ca2
commit
15715d28cf
4
.env.dev
4
.env.dev
@ -1,7 +1,7 @@
|
||||
VUE_APP_BASE_API='https://market.cebg.games'
|
||||
VUE_APP_BASE_API2='https://invitation.counterfire.games'
|
||||
//VUE_APP_BASE_API2='http://192.168.100.83:3000/'
|
||||
VUE_APP_GPAL_API='https://game2006api.cebggame.com/'
|
||||
VUE_APP_GPAL_API='https://game2006sapi.cebggame.com/'
|
||||
# VUE_APP_PASSPORT_PUBLISHABLE_KEY=pk_imapik-test-8c2FAlWxWAoRITk1v9rH
|
||||
VUE_APP_PASSPORT_PUBLISHABLE_KEY=pk_imapik-test-eRr-kyOKaZ0jIdrvrPCn
|
||||
VUE_APP_PASSPORT_REDIRECT_URI=http://localhost:4000
|
||||
@ -9,7 +9,7 @@ VUE_APP_PASSPORT_LOGOUT_URI=http://localhost:4000
|
||||
# VUE_APP_PASSPORT_CLIENT_ID=eTmUah69p7ZdRhRYzBta6lZRKXXeXDYj
|
||||
VUE_APP_PASSPORT_CLIENT_ID=0FNfXxQywm7wjdbyLTDzWt4txc53yRrT
|
||||
VUE_APP_PASSPORT_MARKET_ADDRESS=0x7d117aA8BD6D31c4fa91722f246388f38ab1942c
|
||||
VUE_APP_UAW_API='https://oauth-svr.cebggame.com'
|
||||
VUE_APP_UAW_API='https://oauth-svr.cebggame.com/task'
|
||||
VUE_APP_MKT_API='https://market-test.kingsome.cn'
|
||||
VUE_APP_NET_ID='13473'
|
||||
VUE_APP_MARKET_CURRENCY='0xFd42bfb03212dA7e1A4608a44d7658641D99CF34'
|
||||
|
@ -1,7 +1,7 @@
|
||||
VUE_APP_BASE_API='https://market.cebg.games'
|
||||
VUE_APP_BASE_API2='https://invitation.counterfire.games'
|
||||
//VUE_APP_BASE_API2='http://192.168.100.83:3000/'
|
||||
VUE_APP_GPAL_API='https://game2006api.cebggame.com/'
|
||||
VUE_APP_GPAL_API='https://game2006sapi.cebggame.com/'
|
||||
# VUE_APP_PASSPORT_PUBLISHABLE_KEY=pk_imapik-test-8c2FAlWxWAoRITk1v9rH
|
||||
VUE_APP_PASSPORT_PUBLISHABLE_KEY=pk_imapik-test-eRr-kyOKaZ0jIdrvrPCn
|
||||
VUE_APP_PASSPORT_REDIRECT_URI=https://market.kingsome.cn
|
||||
@ -9,7 +9,7 @@ VUE_APP_PASSPORT_LOGOUT_URI=https://market.kingsome.cn
|
||||
# VUE_APP_PASSPORT_CLIENT_ID=eTmUah69p7ZdRhRYzBta6lZRKXXeXDYj
|
||||
VUE_APP_PASSPORT_CLIENT_ID=0FNfXxQywm7wjdbyLTDzWt4txc53yRrT
|
||||
VUE_APP_PASSPORT_MARKET_ADDRESS=0x7d117aA8BD6D31c4fa91722f246388f38ab1942c
|
||||
VUE_APP_UAW_API='https://oauth-svr.cebggame.com'
|
||||
VUE_APP_UAW_API='https://oauth-svr.cebggame.com/task'
|
||||
VUE_APP_MKT_API='https://market-test.kingsome.cn'
|
||||
VUE_APP_NET_ID='13473'
|
||||
VUE_APP_MARKET_CURRENCY='0xFd42bfb03212dA7e1A4608a44d7658641D99CF34'
|
||||
|
@ -4,6 +4,7 @@
|
||||
"version": "0.0.0",
|
||||
"scripts": {
|
||||
"task": "vite --host --mode dev",
|
||||
"test": "vite --host --mode test",
|
||||
"dev": "vite --host --mode development",
|
||||
"prod": "vite --host --mode production",
|
||||
"build:task": "vite build --mode dev",
|
||||
|
@ -300,10 +300,12 @@ onMounted(() => {
|
||||
height: 30px;
|
||||
top: 20px;
|
||||
left: 20px;
|
||||
font-size: 18px;
|
||||
}
|
||||
.img-btm {
|
||||
bottom: 30px;
|
||||
left: 30px;
|
||||
font-size: 18px;
|
||||
>div {
|
||||
width: 120px;
|
||||
height: 40px;
|
||||
|
@ -139,9 +139,9 @@ const getMyAssets = async () => {
|
||||
reqData.value.cursor = next_cursor.value.next_cursor
|
||||
// let res = await apiLockState(myADdress, reqData.value)
|
||||
let res = await apiActivity(data, myADdress)
|
||||
console.log(res,'--------------------------------')
|
||||
return
|
||||
// nftList.value = [...nftList.value, ...res.rows]
|
||||
// console.log(res,'--------------------------------')
|
||||
// return
|
||||
nftList.value = [...nftList.value, ...res.rows]
|
||||
// nftListBox = nftList.value.reduce((acc, obj) => {
|
||||
// const existingObj = acc.find(item => item.token_id == obj.token_id)
|
||||
// if(!existingObj) {
|
||||
|
@ -10,7 +10,7 @@
|
||||
<div class="total">
|
||||
<p>Total Contribution Credits: <span>{{ contributionPointTotal }}</span></p>
|
||||
<img src="@/assets/img/marketplace/totalContribution.png" alt="">
|
||||
<img class="icon" @click="rulesDialogVisible = true" src="@/assets/img/marketplace/History.png" alt="">
|
||||
<img class="icon" @click="conLogDialogVisible = true" src="@/assets/img/marketplace/History.png" alt="">
|
||||
</div>
|
||||
<div class="day">
|
||||
<p>Daily Expected: <span>+{{ contributionPoint }}/d</span></p>
|
||||
@ -42,17 +42,59 @@
|
||||
<div class="uaw-cec-amount">
|
||||
<p>
|
||||
CEC:
|
||||
<span v-if="cecInfo?.total != 0">{{ priceCalculated(BigInt(cecInfo?.total),18) }}</span>
|
||||
<span v-if="cecInfo?.total != 0">{{ priceCalculated(BigInt(cecInfo?.total),18).toString().match(/^\d+(?:\.\d{0,2})?/)[0] }}</span>
|
||||
<span v-else>0</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="btn">
|
||||
<span class="yes" v-if="cecInfo?.stages[0]?.unlocked || cecInfo?.stages[1]?.unlocked" @click="confirmDialogVisible = false">Collection</span>
|
||||
<span class="no" v-else @click="confirmCec">Collection</span>
|
||||
<!-- <span class="yes" v-if="cecInfo?.stages[0]?.unlocked || cecInfo?.stages[1]?.unlocked" @click="confirmDialogVisible = false">Collection</span>
|
||||
<span class="no" v-else @click="confirmCec">Collection</span> -->
|
||||
</div>
|
||||
<div ref="logModal">
|
||||
<a-modal :class="'logModal'" :getContainer="() => $refs.logModal" v-model:open="logDialogVisible" :closable="false" :footer="null" :maskClosable="false">
|
||||
<div class="log-title">CEC Incentives Record</div>
|
||||
<div ref="conLogModal">
|
||||
<a-modal :class="'conLogModal'" :getContainer="() => $refs.conLogModal" v-model:open="conLogDialogVisible" :closable="false" :footer="null" :maskClosable="false">
|
||||
<div class="log-title">Staking Contribution Credits Record</div>
|
||||
<div class="closable" @click="conLogDialogVisible = false">
|
||||
<img src="@/assets/img/marketplace/Close_counter.png" alt="">
|
||||
</div>
|
||||
<div class="log-content">
|
||||
<div class="log-header">
|
||||
<!-- <li>
|
||||
Event
|
||||
</li> -->
|
||||
<li>
|
||||
Date
|
||||
</li>
|
||||
<li>
|
||||
Reward
|
||||
</li>
|
||||
</div>
|
||||
<div class="log-body">
|
||||
<div v-if="contributionList == undefined || contributionList.length <= 0" class="no-data">
|
||||
<div>
|
||||
<img src="@/assets/img/marketplace/Empty_state.png" alt="">
|
||||
</div>
|
||||
<p>No Data</p>
|
||||
</div>
|
||||
<div v-else class="pages" v-for="(item, index) in contributionList" :key="index">
|
||||
<!-- <li>
|
||||
<span>contributionList</span>
|
||||
</li> -->
|
||||
<li>
|
||||
{{ timeFormat(item.date*1000) }}
|
||||
</li>
|
||||
<li class="cec-amount">
|
||||
<!-- <span>{{ priceCalculated(BigInt(item.contribution_point),18).toString().match(/^\d+(?:\.\d{0,2})?/)[0] }}</span> -->
|
||||
<span>{{item.contribution_point.match(/^\d+(?:\.\d{0,.})?/)[0]}}</span>
|
||||
<img src="@/assets/img/marketplace/totalContribution.png" alt="">
|
||||
</li>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</a-modal>
|
||||
</div>
|
||||
<div ref="cecLogModal">
|
||||
<a-modal :class="'cecLogModal'" :getContainer="() => $refs.cecLogModal" v-model:open="logDialogVisible" :closable="false" :footer="null" :maskClosable="false">
|
||||
<div class="log-title">CEC Allocation Record</div>
|
||||
<div class="closable" @click="logDialogVisible = false">
|
||||
<img src="@/assets/img/marketplace/Close_counter.png" alt="">
|
||||
</div>
|
||||
@ -74,13 +116,14 @@
|
||||
<span v-if="item.desc == 'uaw'">Hill's Treasure Hunt</span>
|
||||
<span v-else-if="item.desc == 'p2a'">Wheel of Fortune</span>
|
||||
<span v-else-if="item.desc == 'game test parse 1'">P2E Season 1</span>
|
||||
<span v-else>{{ item.desc }}</span>
|
||||
</li>
|
||||
<li>
|
||||
{{ item.earnTime }}
|
||||
</li>
|
||||
<li class="cec-amount">
|
||||
<span v-if="item.desc != ''">{{ priceCalculated(BigInt(item.amount),18) }}</span>
|
||||
<img v-if="item.desc != ''" src="@/assets/img/marketplace/Icon_Points.png" alt="">
|
||||
<span v-if="item.desc != ''">{{ priceCalculated(BigInt(item.amount),18).toString().match(/^\d+(?:\.\d{0,2})?/)[0] }}</span>
|
||||
<img v-if="item.desc != ''" src="@/assets/img/marketplace/CECIcon.png" alt="">
|
||||
</li>
|
||||
</div>
|
||||
<div class="no-data" v-if="cecInfo?.total == 0">
|
||||
@ -266,8 +309,8 @@
|
||||
import { ref, watch, computed, onMounted } from "vue"
|
||||
import ConfirmDialog from "@/components/Dialogs/confirmDialog.vue";
|
||||
import {createModal} from "@/utils/model.util";
|
||||
import { apiCecInfo, apiExpected, apiUserData } from "@/utils/marketplace"
|
||||
import { priceCalculated } from "@/configs/priceCalculate"
|
||||
import { apiCecInfo, apiExpected, apiUserData, apiContribution } from "@/utils/marketplace"
|
||||
import { priceCalculated, timeFormat } from "@/configs/priceCalculate"
|
||||
import { useMarketplaceStore } from "@/store/marketplace"
|
||||
import {walletStore} from "@/store/wallet";
|
||||
|
||||
@ -338,6 +381,20 @@ const getCecInfo = async () => {
|
||||
}
|
||||
}
|
||||
|
||||
const conLogDialogVisible = ref(false)
|
||||
const contributionList = ref()
|
||||
const getContribution = async () => {
|
||||
let address = localWalletStore.address
|
||||
if(address) {
|
||||
const {Rows, errcode} = await apiContribution(address)
|
||||
if(errcode == 0) {
|
||||
contributionList.value = Rows
|
||||
}
|
||||
} else {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
const contributionPoint = ref(0)
|
||||
const getExpected = async () => {
|
||||
let address = localWalletStore.address
|
||||
@ -367,6 +424,7 @@ const getUserData = async () => {
|
||||
|
||||
const dataInfo = async () => {
|
||||
await getCecInfo()
|
||||
await getContribution()
|
||||
await getExpected()
|
||||
await getUserData()
|
||||
}
|
||||
@ -458,6 +516,11 @@ onMounted(() => {
|
||||
height: 23px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
.icon {
|
||||
width: 27px;
|
||||
height: 27px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.day {
|
||||
font-family: 'Poppins';
|
||||
@ -589,7 +652,250 @@ onMounted(() => {
|
||||
}
|
||||
}
|
||||
}
|
||||
:deep(.logModal) {
|
||||
:deep(.conLogModal) {
|
||||
width: 1052px !important;
|
||||
height: 714px;
|
||||
background: #1A1821;
|
||||
box-shadow: 0px 15px 28px 3px rgba(22,22,22,0.13);
|
||||
border-radius: 100px;
|
||||
border: 1px solid #B966FF;
|
||||
.ant-modal-content {
|
||||
padding: 0 99px;
|
||||
color: #FFF;
|
||||
background: #1A1821;
|
||||
box-shadow: 0px 0px 0px 0px rgba(22,22,22,0.13);
|
||||
border-radius: 100px;
|
||||
.ant-modal-body {
|
||||
overflow: hidden;
|
||||
.log-title {
|
||||
font-family: 'Anton';
|
||||
font-weight: 400;
|
||||
font-size: 48px;
|
||||
color: #FFFFFF;
|
||||
margin-top: 23px;
|
||||
}
|
||||
.closable {
|
||||
position: absolute;
|
||||
right: -30px;
|
||||
top: -30px;
|
||||
z-index: 99;
|
||||
cursor: pointer;
|
||||
img {
|
||||
width: 120px;
|
||||
height: 120px;
|
||||
}
|
||||
}
|
||||
.log-content {
|
||||
min-height: 510px;
|
||||
.log-header {
|
||||
display: flex;
|
||||
li {
|
||||
width: 50%;
|
||||
height: 48px;
|
||||
line-height: 48px;
|
||||
text-align: center;
|
||||
font-family: 'Poppins';
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #A8A5AC;
|
||||
background: #2d2738;
|
||||
&:nth-child(1) {
|
||||
border-radius: 50px 0 0 50px;
|
||||
}
|
||||
// &:nth-child(2) {
|
||||
// width: 40%;
|
||||
// }
|
||||
&:nth-child(2) {
|
||||
border-radius: 0 50px 50px 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
.log-body {
|
||||
width: 100%;
|
||||
height: 520px;
|
||||
overflow-y: auto;
|
||||
.pages {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
li {
|
||||
width: 50%;
|
||||
height: 60px;
|
||||
line-height: 60px;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-family: 'Poppins';
|
||||
text-align: center;
|
||||
}
|
||||
.cec-amount {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
color: #9950FA;
|
||||
span {
|
||||
display: flex;
|
||||
justify-content: end;
|
||||
// width: 80px;
|
||||
text-align: right;
|
||||
}
|
||||
img {
|
||||
width: 28px;
|
||||
height: 25px;
|
||||
margin-left: 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.no-data {
|
||||
position: relative;
|
||||
margin-top: 60px;
|
||||
div {
|
||||
width: 260px;
|
||||
height: 260px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
p {
|
||||
position: absolute;
|
||||
bottom: 50px;
|
||||
left: 52%;
|
||||
transform: translateX(-50%);
|
||||
font-family: 'Poppins';
|
||||
font-weight: bold;
|
||||
font-size: 28px;
|
||||
color: #8587B2;
|
||||
}
|
||||
}
|
||||
&::-webkit-scrollbar {
|
||||
width: 5px;
|
||||
}
|
||||
&::-webkit-scrollbar-track {
|
||||
background: #171220;
|
||||
border-radius: 2px;
|
||||
}
|
||||
&::-webkit-scrollbar-corner {
|
||||
display: block;
|
||||
}
|
||||
&::-webkit-scrollbar-thumb {
|
||||
height: 15px;
|
||||
background: #9950fd;
|
||||
border-radius: 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.pagination {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
// background: #1778f1;
|
||||
// .prev {
|
||||
// // width: 100px;
|
||||
// // height: 100px;
|
||||
// display: flex;
|
||||
// align-items: center;
|
||||
// div {
|
||||
// width: 100px;
|
||||
// height: 100px;
|
||||
// }
|
||||
// }
|
||||
.pager {
|
||||
span {
|
||||
display: inline-block;
|
||||
width: 29px;
|
||||
height: 29px;
|
||||
line-height: 29px;
|
||||
text-align: center;
|
||||
border-radius: 10px;
|
||||
margin: 0 5px;
|
||||
background: #2d2738;
|
||||
font-family: 'Poppins';
|
||||
font-weight: 200;
|
||||
font-size: 14px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active {
|
||||
background: #5d5275;
|
||||
}
|
||||
}
|
||||
.prev, .next {
|
||||
// width: 100px;
|
||||
// height: 100px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-family: 'Poppins';
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
color: #9950FD;
|
||||
cursor: pointer;
|
||||
div {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
}
|
||||
}
|
||||
img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
.ant-table-wrapper {
|
||||
.ant-spin-nested-loading {
|
||||
.ant-spin-container {
|
||||
.ant-table {
|
||||
background: #2d2738;
|
||||
border-bottom: 0px solid #2d2738;
|
||||
color: #FFF;
|
||||
.ant-table-container {
|
||||
.ant-table-content {
|
||||
.ant-table-thead {
|
||||
border-radius: 60px;
|
||||
tr {
|
||||
border-radius: 60px;
|
||||
overflow: hidden;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
th {
|
||||
background: #2d2738;
|
||||
border-color: rgba(0,0,0,0);
|
||||
text-align: center;
|
||||
font-family: 'Poppins';
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
color: #A8A5AC;
|
||||
border-radius: 50px !important;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
&::before {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
.ant-table-cell {
|
||||
overflow: hidden;
|
||||
border-radius: 50px !important;
|
||||
}
|
||||
}
|
||||
.ant-table-cell {
|
||||
overflow: hidden;
|
||||
border-radius: 50px !important;
|
||||
}
|
||||
}
|
||||
.ant-table-tbody {
|
||||
tr {
|
||||
background: #16141b;
|
||||
td {
|
||||
border-color: rgba(0,0,0,0);
|
||||
background: #16141b !important;
|
||||
overflow: visible !important;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
:deep(.cecLogModal) {
|
||||
width: 1052px !important;
|
||||
height: 714px;
|
||||
background: #1A1821;
|
||||
@ -626,7 +932,7 @@ onMounted(() => {
|
||||
.log-header {
|
||||
display: flex;
|
||||
li {
|
||||
width: 33%;
|
||||
width: 30%;
|
||||
height: 48px;
|
||||
line-height: 48px;
|
||||
text-align: center;
|
||||
@ -638,6 +944,9 @@ onMounted(() => {
|
||||
&:nth-child(1) {
|
||||
border-radius: 50px 0 0 50px;
|
||||
}
|
||||
&:nth-child(2) {
|
||||
width: 40%;
|
||||
}
|
||||
&:nth-child(3) {
|
||||
border-radius: 0 50px 50px 0;
|
||||
}
|
||||
@ -649,13 +958,16 @@ onMounted(() => {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
li {
|
||||
width: 33%;
|
||||
width: 30%;
|
||||
height: 60px;
|
||||
line-height: 60px;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-family: 'Poppins';
|
||||
text-align: center;
|
||||
&:nth-child(2) {
|
||||
width: 40%;
|
||||
}
|
||||
}
|
||||
.cec-amount {
|
||||
display: flex;
|
||||
@ -663,7 +975,7 @@ onMounted(() => {
|
||||
align-items: center;
|
||||
color: #9950FA;
|
||||
img {
|
||||
width: 20px;
|
||||
width: 25px;
|
||||
height: 28px;
|
||||
margin-left: 15px;
|
||||
}
|
||||
@ -671,6 +983,7 @@ onMounted(() => {
|
||||
}
|
||||
.no-data {
|
||||
position: relative;
|
||||
margin-top: 60px;
|
||||
div {
|
||||
width: 260px;
|
||||
height: 260px;
|
||||
|
@ -43,7 +43,7 @@
|
||||
</div>
|
||||
<div class="card-btn" v-if="nftData.type != 13 && LOCKER_ADDRESS.toLowerCase() != nftData.owner_address.toLowerCase()">
|
||||
<div class="card-sell" v-if="nftData.on_sale == 0">
|
||||
<span v-if="nftData?.status">loading</span>
|
||||
<span v-if="nftData?.status" class="bgC">loading</span>
|
||||
<span v-else @click="sellNft(nftData)">List</span>
|
||||
</div>
|
||||
<div class="card-cancel" v-if="nftData.on_sale == 1" @click="cancelNft(nftData)">Cancel listing</div>
|
||||
@ -53,10 +53,10 @@
|
||||
<span v-if="nftData?.status">loading</span>
|
||||
<span @click="unStake(nftData)">Unstake</span>
|
||||
</div>
|
||||
<div class="card-sell" v-else>
|
||||
<!-- <div class="card-sell" v-else>
|
||||
<span v-if="nftData?.status">loading</span>
|
||||
<span v-else @click="lockToGame('founder')">Stake</span>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
<SellDialog :sellDialogVisible="sellDialogVisible" :floorPrice="floorPrice" :sellDataArr="sellDataArr" @handleClose="sellHandleClose" />
|
||||
<LoadingDialog :loadingDialogVisible="loadingDialogVisible" />
|
||||
@ -504,6 +504,16 @@ onMounted(() => {
|
||||
width: 140px;
|
||||
height: 48px;
|
||||
}
|
||||
span {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
border-radius: 10px;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
color: #FF6271;
|
||||
border: 2px solid #ff6978;
|
||||
}
|
||||
}
|
||||
.enabled {
|
||||
justify-content: center;
|
||||
@ -548,6 +558,12 @@ onMounted(() => {
|
||||
.card-cancel {
|
||||
background: #ff6271;
|
||||
}
|
||||
.card-sell {
|
||||
.bgC {
|
||||
background: #ff6271;
|
||||
border-radius: 12px;
|
||||
}
|
||||
}
|
||||
.card-cat {
|
||||
width: 71px;
|
||||
display: flex;
|
||||
|
@ -11,11 +11,14 @@
|
||||
</div>
|
||||
</template>
|
||||
</a-table-column>
|
||||
<a-table-column title="Status" data-index="nft" :width="400">
|
||||
<template #default="{ text: nft }">
|
||||
<a-table-column title="Status" data-index="type" :width="400">
|
||||
<template #default="{ text: type }">
|
||||
<div class="status">
|
||||
<div class="nft-status" v-if="nft.item_id == '10017' || nft.item_id == '10018'">Redeem</div>
|
||||
<div class="nft-status" v-else>Stake</div>
|
||||
<!-- <div class="nft-status" v-if="nft.item_id == '10017' || nft.item_id == '10018'">Redeem</div>
|
||||
<div class="nft-status" v-else>Stake</div> -->
|
||||
<div class="nft-status" v-if="type == 1">Mint</div>
|
||||
<div class="nft-status" v-else-if="type == 2">Stake</div>
|
||||
<div class="nft-status" v-else-if="type == 3">UnStake</div>
|
||||
</div>
|
||||
</template>
|
||||
</a-table-column>
|
||||
@ -27,10 +30,10 @@
|
||||
</div>
|
||||
</template>
|
||||
</a-table-column>
|
||||
<a-table-column title="From" data-index="event" :width="400">
|
||||
<template #default="{ text: event }">
|
||||
<a-table-column title="From" data-index="from" :width="400">
|
||||
<template #default="{ text: from }">
|
||||
<div class="sender">
|
||||
<div class="nft-sender">{{ sliceAddress(localWalletStore.address) }}</div>
|
||||
<div class="nft-sender">{{ sliceAddress(from) }}</div>
|
||||
</div>
|
||||
</template>
|
||||
</a-table-column>
|
||||
@ -41,17 +44,17 @@
|
||||
</div>
|
||||
</template>
|
||||
</a-table-column>
|
||||
<a-table-column title="To" data-index="nft" :width="400">
|
||||
<template #default="{ text: nft }">
|
||||
<a-table-column title="To" data-index="to" :width="400">
|
||||
<template #default="{ text: to }">
|
||||
<div class="recipient">
|
||||
<div class="nft-recipient">{{ sliceAddress(nft.owner_address) }}</div>
|
||||
<div class="nft-recipient">{{ sliceAddress(to) }}</div>
|
||||
</div>
|
||||
</template>
|
||||
</a-table-column>
|
||||
<a-table-column title="Date" data-index="nft" :width="400">
|
||||
<template #default="{ text: nft }">
|
||||
<a-table-column title="Date" data-index="date" :width="400">
|
||||
<template #default="{ text: date }">
|
||||
<div class="date">
|
||||
<div class="nft-date">{{ timeFormat(nft.last_lock_time*1000) }}</div>
|
||||
<div class="nft-date">{{ timeFormat(date*1000) }}</div>
|
||||
</div>
|
||||
</template>
|
||||
</a-table-column>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="price">
|
||||
<h2>Price</h2>
|
||||
<h2>Price (USDT)</h2>
|
||||
<div class="sort-price">
|
||||
<a-input v-model:value="minPriceValue" placeholder="Min" />
|
||||
<span>to</span>
|
||||
|
@ -109,11 +109,7 @@ const navList = reactive([
|
||||
{ id: 0, name: "ABOUT", path: "/about" },
|
||||
// { id: 1, name: "ASSETS", path: "https://pledge.kingsome.cn/" },
|
||||
// { id: 1, name: "planet", path: "https://planet.kingsome.cn/" },
|
||||
// {
|
||||
// id: 2,
|
||||
// name: "STAKE",
|
||||
// path: "https://pledge.kingsome.cn",
|
||||
// },
|
||||
|
||||
// {
|
||||
// id: 3,
|
||||
// name: "hashrate",
|
||||
@ -139,18 +135,6 @@ const navList = reactive([
|
||||
{ label: "Discord", link: "https://discord.gg/counterfire" },
|
||||
],
|
||||
},
|
||||
// {
|
||||
// id: 5,
|
||||
// name: "EVENT",
|
||||
// path: "/contact",
|
||||
// submenu: [
|
||||
// { label: "Badge", link: "https://badge.counterfire.games/" },
|
||||
// {
|
||||
// label: "Gacha",
|
||||
// link: "https://gacha.counterfire.games/",
|
||||
// },
|
||||
// ],
|
||||
// },
|
||||
{
|
||||
id: 2,
|
||||
name: "MARKETPLACE",
|
||||
@ -160,12 +144,36 @@ const navList = reactive([
|
||||
id: 3,
|
||||
name: "ASSETS",
|
||||
path: "/assets",
|
||||
submenu: [
|
||||
{ label: "Before 2024", link: "https://pledge.kingsome.cn" },
|
||||
{
|
||||
label: "After 2024",
|
||||
path: "/assets",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
name: "NOTICE",
|
||||
path: "/notice",
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
name: "EVENT",
|
||||
path: "/contact",
|
||||
submenu: [
|
||||
{ label: "Badge", link: "https://badge.counterfire.games/" },
|
||||
{
|
||||
label: "Gacha",
|
||||
link: "https://gacha.counterfire.games/",
|
||||
},
|
||||
],
|
||||
},
|
||||
// {
|
||||
// id: 6,
|
||||
// name: "STAKE",
|
||||
// path: "https://pledge.kingsome.cn",
|
||||
// },
|
||||
]);
|
||||
function click(event) {
|
||||
router.push(event.key);
|
||||
@ -185,6 +193,8 @@ const handlHome = () => {
|
||||
};
|
||||
|
||||
function handNavCurent(nav) {
|
||||
// console.log(nav)
|
||||
// return
|
||||
activeIndex.value = nav.id;
|
||||
// if (nav.id == 1) {
|
||||
// window.open(nav.path, "_blank");
|
||||
@ -194,9 +204,13 @@ function handNavCurent(nav) {
|
||||
} else if(nav.id == 2) {
|
||||
router.push(nav.path);
|
||||
} else if(nav.id == 3) {
|
||||
router.push(nav.path);
|
||||
if(nav.submenu[1]?.path) {
|
||||
router.push(nav.submenu[1]?.path)
|
||||
}
|
||||
} else if(nav.id == 4) {
|
||||
router.push(nav.path);
|
||||
// } else if(nav.id == 6) {
|
||||
// window.open(nav.path, "_blank");
|
||||
}
|
||||
// if (nav.id == 1 || nav.id == 2 || nav.id == 3) {
|
||||
// window.open(nav.path, "_blank");
|
||||
|
@ -115,7 +115,7 @@ export const nftDetail = async(address, tokenId) => {
|
||||
|
||||
// UAW查询领取
|
||||
export const apiCecInfo = async(address) => {
|
||||
let res = await axios.get(`${API_UAW}/task/api/cec/info/${address}`)
|
||||
let res = await axios.get(`${API_UAW}/api/cec/info/${address}`)
|
||||
return res.data
|
||||
}
|
||||
|
||||
@ -156,6 +156,12 @@ export const apiTxHash = async (net_id, account_address) => {
|
||||
|
||||
// 活动交易记录
|
||||
export const apiActivity = async (data, account_address) => {
|
||||
const url = `${API_BASE}/api/chain/activity/${account_address}`
|
||||
const url = `${API_BASE}/api/chain/event/activity/${account_address}`
|
||||
return httpPost(url, data)
|
||||
}
|
||||
|
||||
// 贡献值记录
|
||||
export const apiContribution = async (account_address) => {
|
||||
const url = `${API_BASE}/api/activity/stacking/history/${account_address}`
|
||||
return httpGet(url, {})
|
||||
}
|
||||
|
@ -85,17 +85,20 @@
|
||||
<div v-if="myAddress == detailData.nft.owner_address && detailData.nft?.status != 1">
|
||||
<div class="sell" @click="beginSell" v-if="detailData.nft.on_sale == 0 && detailData.nft.type != 13">List</div>
|
||||
<div class="cancel" @click="cancelSell" v-if="detailData.nft.on_sale == 1">Cancel listing</div>
|
||||
<div v-if="detailData.nft?.status == 1" class="cancel">
|
||||
<span>Loading</span>
|
||||
</div>
|
||||
<div class="redeem" v-else-if="detailData.nft.on_sale == 0 && (detailData.nft.type == 1 || detailData.nft.type == 12)">
|
||||
<span @click="lockToGame('convert')">Stake</span>
|
||||
<div class="redeem" v-if="detailData.nft.on_sale == 0 && (detailData.nft.type == 1 || detailData.nft.type == 12)" @click="lockToGame('convert')">
|
||||
<span>Stake</span>
|
||||
</div>
|
||||
<div class="redeem" v-else-if="detailData.nft.type == 13">
|
||||
<span @click="lockToGame('founder')">Stake</span>
|
||||
<span v-if="detailData.nft?.status == 1" @click="lockToGame('founder')">Loading</span>
|
||||
<span v-else @click="lockToGame('founder')">Stake</span>
|
||||
</div>
|
||||
<!-- <div class="redeem" @click="lockToGame('redeem')" v-if="detailData.nft.on_sale == 0 && detailData.nft.type == 11">Redeem</div> -->
|
||||
</div>
|
||||
<!-- <div v-else-if="detailData.nft?.status == 1">
|
||||
<div class="cancel">
|
||||
<span>Loading</span>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
<div class="info">
|
||||
<h2>Info</h2>
|
||||
|
Loading…
x
Reference in New Issue
Block a user