Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
T
ts-api-demo
Project
Project
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
wmvm
ts-api-demo
Commits
5e3bc186
Commit
5e3bc186
authored
Dec 09, 2024
by
ml
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加
parent
448f7f5e
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
123 additions
and
1 deletion
+123
-1
assetCheck.control.ts
src/functional/mvc/control/v2/assetCheck.control.ts
+51
-0
assetCheck.service.ts
src/functional/mvc/service/v2/assetCheck.service.ts
+66
-0
index.ts
src/functional/router/v2/index.ts
+6
-1
No files found.
src/functional/mvc/control/v2/assetCheck.control.ts
0 → 100644
View file @
5e3bc186
import
*
as
assetCheckService
from
"../../service/v2/assetCheck.service"
;
import
{
CommonParam
}
from
"../../service/v2/assetCheck.service"
;
let
{
logger
,
Res3Utils
,
optionalUtils
:
Optional
,
apiAssertUtils
:
ApiAssert
}
=
require
(
'@madex/ex-js-public'
);
import
{
ErrorCode
}
from
"../../../../constant/errorCode"
;
/**
* 用户地址列表
* @param req
* @param commonParam
*/
export
const
userAddrList
=
async
(
req
:
any
,
commonParam
:
CommonParam
)
=>
{
let
func_name
=
"assetCheck.control.userAddrList"
;
try
{
setPageAndSize
(
commonParam
);
let
res
=
await
assetCheckService
.
userAddrList
(
commonParam
.
page
,
commonParam
.
size
,
commonParam
.
user_id
);
return
Res3Utils
.
result
(
res
);
}
catch
(
e
)
{
logger
.
error
(
`
${
func_name
}
error:
${
e
}
`
);
return
Res3Utils
.
getErrorResult
(
e
);
}
};
/**
* 资产分布
* @param req
* @param commonParam
*/
export
const
assetDetails
=
async
(
req
:
any
,
commonParam
:
CommonParam
)
=>
{
let
func_name
=
"assetCheck.control.userAddrList"
;
try
{
setPageAndSize
(
commonParam
);
if
(
!
commonParam
.
user_id
){
throw
ErrorCode
.
PARAM_MISS
;
}
// let res = await assetCheckService.assetDetails(commonParam.page, commonParam.size, commonParam.user_id);
// return Res3Utils.result(res);
}
catch
(
e
)
{
logger
.
error
(
`
${
func_name
}
error:
${
e
}
`
);
return
Res3Utils
.
getErrorResult
(
e
);
}
};
function
setPageAndSize
(
commonParam
:
CommonParam
)
{
commonParam
.
page
=
commonParam
.
page
?
Number
(
commonParam
.
page
)
:
1
;
commonParam
.
size
=
commonParam
.
size
?
Number
(
commonParam
.
size
)
:
20
;
}
src/functional/mvc/service/v2/assetCheck.service.ts
0 → 100644
View file @
5e3bc186
import
{
madAdminOrmDB
,
coinAddress
,
coinType
}
from
"@madex/ex-ts-dao"
;
import
{
getOneAbkUserByAccount
,
getOneAbkUserByUid
,
checkAbkTotp
}
from
"../../../../utils/abkUserUtils"
;
import
{
ErrorCode
}
from
"../../../../constant/errorCode"
;
import
{
AbkUserInfoConst
}
from
"../../../../constant/abkUserConstant"
;
import
{
CryptUtils
}
from
"../../../../utils/crypt-utils"
;
import
{
RedisVal
}
from
"../../../../constant/redis-val"
;
import
Config
from
"../../../../../config"
;
const
Otplib
=
require
(
'otplib'
);
let
{
logger
,
apiAssertUtils
:
ApiAssert
,
BigNumberUtils
}
=
require
(
'@madex/ex-js-public'
);
let
{
authCommon
:
AuthCommon
,
redisUtilsCommon
:
RedisClient
,
}
=
require
(
'@madex/ex-js-common'
);
let
_
=
require
(
'lodash'
);
export
interface
CommonParam
{
user_id
?:
number
;
page
?:
number
,
size
?:
number
}
export
async
function
userAddrList
(
page
:
any
,
size
:
any
,
user_id
:
any
)
{
let
where
:
any
=
{};
if
(
user_id
)
{
where
[
"user_id"
]
=
Number
(
user_id
);
}
let
res
=
await
coinAddress
.
prototype
.
findAndCount
({
attributes
:
[
'user_id'
,
'coin_id'
,
'coin_symbol'
,
'address'
,
'createdAt'
],
where
:
where
,
limit
:
size
,
offset
:
(
page
-
1
)
*
size
,
order
:
[[
"createdAt"
,
"desc"
]],
raw
:
true
});
if
(
res
.
rows
.
length
)
{
let
coinIds
=
res
.
rows
.
map
(
item
=>
item
.
coin_id
);
let
coinMap
=
await
getCoinTypeMapByCoinIds
(
coinIds
);
for
(
let
item
of
res
.
rows
)
{
item
.
chain_type
=
coinMap
[
item
.
coin_id
].
chain_type
;
item
.
coin_symbol
=
coinMap
[
item
.
coin_id
].
symbol
;
}
}
return
res
;
}
async
function
getCoinTypeMapByCoinIds
(
coin_ids
:
any
[])
{
let
map
:
any
=
{};
let
dbList
=
await
coinType
.
prototype
.
findAll
({
where
:
{
id
:
coin_ids
},
raw
:
true
});
for
(
let
item
of
dbList
)
{
map
[
item
.
id
]
=
item
;
}
return
map
;
}
src/functional/router/v2/index.ts
View file @
5e3bc186
...
...
@@ -11,11 +11,12 @@ const router = Express.Router();
import
*
as
abkUserCtrl
from
"../../mvc/control/v2/abkUserInfo.control"
;
import
*
as
userAuthConfigCtrl
from
"../../mvc/control/userAuthConfig
.control"
;
import
*
as
assetCheckCtrl
from
"../../mvc/control/v2/assetCheck
.control"
;
import
Config
from
"../../../../config"
;
const
postFunc
=
{
//账号管理
'abkUser/login'
:
abkUserCtrl
.
login
,
'abkUser/logout'
:
abkUserCtrl
.
logout
,
'abkUser/getInfo'
:
abkUserCtrl
.
getInfo
,
...
...
@@ -25,6 +26,10 @@ const postFunc = {
'abkUser/list'
:
abkUserCtrl
.
userList
,
'abkUser/updateStatus'
:
abkUserCtrl
.
updateStatus
,
'abkUser/addUser'
:
abkUserCtrl
.
addAbkUser
,
//资产对账
'assetCheck/userAddrList'
:
assetCheckCtrl
.
userAddrList
,
'assetCheck/assetDetails'
:
assetCheckCtrl
.
assetDetails
,
'assetCheck/depositAndWithDraw'
:
assetCheckCtrl
.
assetDetails
,
/*
'user/login/confirm': userOptCtrl.loginConfirm,
'user/bind/totp/ask': userOptCtrl.bindTotpAsk,
...
...
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