From a33ea7eee04cb45fcfdfa8a4d7276c415bb102ac Mon Sep 17 00:00:00 2001
From: fave3722 <372276175@qq.com>
Date: Thu, 8 Sep 2022 17:09:25 +0800
Subject: [PATCH] feat
---
components.d.ts | 6 +-
src/api/AddressController/index.ts | 38 ++++
src/api/TokensController/index.ts | 39 ++++-
src/api/TransactionsController/index.ts | 44 ++++-
src/components/row-search.vue | 163 ++++++++++++++++++
src/components/search.vue | 21 ++-
src/components/table/constant.ts | 24 ++-
src/components/table/dBase/detailsRow.vue | 9 +-
src/components/table/dBase/hpRow.vue | 6 +-
.../table/dBase/tokensDetailsRow.vue | 8 +-
.../table/dBase/transactDetailsRow.vue | 25 +--
src/components/table/dBase/transfersRow.vue | 44 +++++
src/components/table/desktop/bkTable.vue | 5 +
.../table/desktop/tokensDetails.vue | 58 ++++---
src/components/table/desktop/tokensTable.vue | 65 +++++--
.../table/desktop/transactDetails.vue | 51 +-----
.../table/desktop/transactTable.vue | 45 +++--
src/components/table/mBase/detailsRow.vue | 9 +-
src/components/table/mBase/mobileCard.vue | 7 +-
src/components/table/mBase/nowrapRow.vue | 2 +-
.../table/mBase/tokensDetailsRow.vue | 14 +-
.../table/mBase/transactDetailsRow.vue | 20 ++-
src/components/table/mobile/bkTable.vue | 68 ++++++--
.../table/mobile/bkTableDetails.vue | 69 +++++---
src/components/table/mobile/tokensDetails.vue | 60 +++----
src/components/table/mobile/tokensTable.vue | 75 +++++---
.../table/mobile/transactDetails.vue | 60 ++-----
src/components/table/mobile/transactTable.vue | 75 ++++++--
src/pages/BitcNFt/cards.vue | 9 +-
src/pages/BitcNFt/centerContent.vue | 138 +++++++++++++--
src/pages/BitcNFt/holdersRow.vue | 28 +++
src/pages/BitcNFt/index.vue | 3 +
src/pages/HomePage/index.vue | 3 +-
src/pages/TableBlock/Block/details.vue | 47 ++++-
src/pages/TableBlock/Block/index.vue | 91 +---------
src/pages/TableBlock/Tokens/details.vue | 159 ++++++++++++++++-
src/pages/TableBlock/Tokens/index.vue | 103 +----------
src/pages/TableBlock/Transactions/details.vue | 153 ++++++++++------
src/pages/TableBlock/Transactions/index.vue | 126 +-------------
src/pages/TableBlock/Transactions/logs.vue | 55 ++++++
src/pages/TableBlock/index.vue | 57 +-----
src/pages/VNFT/centerContent.vue | 131 ++++++++------
src/pages/VNFT/mobileRow.vue | 4 +-
src/utils/test.js | 48 ++++++
src/utils/throttle.ts | 6 +
45 files changed, 1441 insertions(+), 830 deletions(-)
create mode 100644 src/api/AddressController/index.ts
create mode 100644 src/components/row-search.vue
create mode 100644 src/components/table/dBase/transfersRow.vue
create mode 100644 src/pages/BitcNFt/holdersRow.vue
create mode 100644 src/pages/TableBlock/Transactions/logs.vue
create mode 100644 src/utils/test.js
diff --git a/components.d.ts b/components.d.ts
index 1364ada..ea66189 100644
--- a/components.d.ts
+++ b/components.d.ts
@@ -13,10 +13,7 @@ declare module '@vue/runtime-core' {
DetailsRow: typeof import('./src/components/table/dBase/detailsRow.vue')['default']
ElIcon: typeof import('element-plus/es')['ElIcon']
ElInput: typeof import('element-plus/es')['ElInput']
- ElOption: typeof import('element-plus/es')['ElOption']
ElPagination: typeof import('element-plus/es')['ElPagination']
- ElSelect: typeof import('element-plus/es')['ElSelect']
- ElSelectV2: typeof import('element-plus/es')['ElSelectV2']
ElSkeleton: typeof import('element-plus/es')['ElSkeleton']
ElSkeletonItem: typeof import('element-plus/es')['ElSkeletonItem']
ElTabPane: typeof import('element-plus/es')['ElTabPane']
@@ -31,8 +28,8 @@ declare module '@vue/runtime-core' {
NowrapRow: typeof import('./src/components/table/mBase/nowrapRow.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']
+ RowSearch: typeof import('./src/components/row-search.vue')['default']
Search: typeof import('./src/components/search.vue')['default']
- Tabs: typeof import('./src/components/tabs.vue')['default']
THeader: typeof import('./src/components/table/dBase/tHeader.vue')['default']
TokensCard: typeof import('./src/components/table/mBase/tokensCard.vue')['default']
TokensDetails: typeof import('./src/components/table/desktop/tokensDetails.vue')['default']
@@ -42,6 +39,7 @@ declare module '@vue/runtime-core' {
TransactDetails: typeof import('./src/components/table/desktop/transactDetails.vue')['default']
TransactDetailsRow: typeof import('./src/components/table/dBase/transactDetailsRow.vue')['default']
TransactTable: typeof import('./src/components/table/desktop/transactTable.vue')['default']
+ TransfersRow: typeof import('./src/components/table/dBase/transfersRow.vue')['default']
UpperLowerSwitch: typeof import('./src/components/base/UpperLowerSwitch.vue')['default']
}
}
diff --git a/src/api/AddressController/index.ts b/src/api/AddressController/index.ts
new file mode 100644
index 0000000..8e34b13
--- /dev/null
+++ b/src/api/AddressController/index.ts
@@ -0,0 +1,38 @@
+import { requestService } from '../requst'
+interface getAddressInfoParams {
+ address: string
+}
+export const getAddressInfo = (params: getAddressInfoParams) => {
+ return requestService({
+ url: '/api/address/getAddressInfo',
+ method: 'get',
+ params,
+ })
+}
+interface getContractAddressParams {
+ contractAddress: string
+}
+export const getContractAddressInfoList = (
+ params: getContractAddressParams
+) => {
+ return requestService({
+ url: '/api/address/getContractAddressInfoList',
+ method: 'get',
+ params,
+ })
+}
+
+interface getContractHoldingParams {
+ pageNum?: number
+ pageSize?: number
+ contractAddress: string
+}
+export const getContractHoldingQuantity = (
+ params: getContractHoldingParams
+) => {
+ return requestService({
+ url: '/api/address/getContractHoldingQuantity',
+ method: 'get',
+ params,
+ })
+}
diff --git a/src/api/TokensController/index.ts b/src/api/TokensController/index.ts
index 2e0513e..5af5b66 100644
--- a/src/api/TokensController/index.ts
+++ b/src/api/TokensController/index.ts
@@ -1,8 +1,43 @@
+import { StringChain } from 'lodash'
import { requestService } from '../requst'
-
-export const getFindTokenList = () => {
+interface TokensListProps {
+ pageNum?: number
+ pageSize?: number
+ search?: string
+}
+export const getFindTokenList = (params: TokensListProps) => {
return requestService({
url: '/api/token/findTokenList',
method: 'get',
+ params,
+ })
+}
+interface FindReceiptByTokenPageProps {
+ pageNum?: number
+ pageSize?: number
+ tokenId?: string
+ contractAddress: string
+}
+export const getFindReceiptByTokenPage = (
+ params: FindReceiptByTokenPageProps
+) => {
+ return requestService({
+ url: '/api/token/findReceiptByTokenPage',
+ method: 'get',
+ params,
+ })
+}
+interface TokenInfoProps {
+ pageNum?: number
+ pageSize?: number
+ tokenId: string
+ contractAddress: string
+}
+///api/token/findTokenInfo
+export const getFindTokenInfo = (params: TokenInfoProps) => {
+ return requestService({
+ url: '/api/token/findTokenInfo',
+ method: 'get',
+ params,
})
}
diff --git a/src/api/TransactionsController/index.ts b/src/api/TransactionsController/index.ts
index b99118f..3134f0c 100644
--- a/src/api/TransactionsController/index.ts
+++ b/src/api/TransactionsController/index.ts
@@ -1,12 +1,54 @@
import { requestService } from '../requst'
interface TransactionListProps {
+ address?: string
+ isContract?: Number
+ number?: Number
pageNum?: Number
pageSize?: Number
}
+// 分页请求
export const getFindTransactionListPage = (params: TransactionListProps) => {
return requestService({
url: '/api/transactions/findTransactionListPage',
- params: params,
+ params,
+ method: 'get',
+ })
+}
+interface TransactionsDetailProps {
+ hash: string
+}
+// 请求详情
+export const getFindTransactionsDetail = (params: TransactionsDetailProps) => {
+ return requestService({
+ url: '/api/transactions/findTransactionsDetail',
+ params,
+ method: 'get',
+ })
+}
+interface TransactionsLogsProps {
+ hash: string
+}
+// 请求logs /api/transactions/findTransactionsLogs
+export const getFindTransactionsLogs = (params: TransactionsLogsProps) => {
+ return requestService({
+ url: '/api/transactions/findTransactionsLogs',
+ params,
+ method: 'get',
+ })
+}
+interface FindReceiptByAddressPageProps {
+ pageNum?: Number
+ pageSize?: Number
+ address?: string
+ filterType?: string
+}
+// /api/transactions/findReceiptByAddressPage
+export const getFindReceiptByAddressPage = (
+ params: FindReceiptByAddressPageProps
+) => {
+ return requestService({
+ url: '/api/transactions/findReceiptByAddressPage',
+ params,
method: 'get',
})
}
diff --git a/src/components/row-search.vue b/src/components/row-search.vue
new file mode 100644
index 0000000..54393cc
--- /dev/null
+++ b/src/components/row-search.vue
@@ -0,0 +1,163 @@
+
+
+ MetaForce Scan
+
+ MetaForce Scan
+
+
{{ value }}
{{ title }}
++ {{ value1 }} +
+{{ value2 }}
+{{ value3 }}
++ {{ state }} +
+{{ data?.tokens }}
+{{ currentData?.address }}
{{ value }}
@@ -50,8 +49,8 @@ import { ElSelect, ElOption } from 'element-plus' import Icons from '@src/components/icons/index.vue' import { onMounted, ref } from 'vue' const props = defineProps({ - title: String, - value: [String, Array] as any, + title: [String, Number] as any, + value: [Number, String, Array] as any, valueColor: String, isCopy: Boolean, isLast: Boolean, @@ -65,7 +64,6 @@ onMounted(() => { }) const list = ref{{ title }}
+{{ value1 }}
+{{ value2 }}
+{{ value3 }}
+There are no transactions for this block.
There are no transactions for this block.
Address
-- 0x6c4bb7121d1cf8d395a3d295d1d9e5fa85f3a342 -
-Address
-- [1] - 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef -
-- [1] - 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef -
-- [1] - 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef -
-Address
-- 0x6c4bb7121d1cf8d395a3d295d1d9e5fa85f3a342 -
-Address
-- 0x6c4bb7121d1cf8d395a3d295d1d9e5fa85f3a342 -
-Address
+{{ logsData?.address || '' }}
+Topics
++ {{ `[${index}] ${item}` }} +
+Data
+{{ logsData?.data }}
+Log Index
+{{ logsData?.logIndex }}
+{{ value2 }}
+{{ value2 }}
{{ value3 }}
+{{ value3 }}