feat: 社区模块
This commit is contained in:
5
src/common/constant.js
Normal file
5
src/common/constant.js
Normal file
@@ -0,0 +1,5 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = {
|
||||
USDTAddr: '0xdac17f958d2ee523a2206206994597c13d831ec7'
|
||||
};
|
||||
@@ -2,8 +2,8 @@
|
||||
// 该脚本只用于系统账户对用户进行提现转账
|
||||
const { ERC20 } = require('../utils/erc20');
|
||||
const { inject } = require('./Provider');
|
||||
const { USDTAddr } = require('./constant');
|
||||
|
||||
const USDTAddr = '0xdac17f958d2ee523a2206206994597c13d831ec7';
|
||||
const RootAccount = inject(function (SysConfig) {
|
||||
const { ROOTSECWORD } = SysConfig;
|
||||
return ERC20.fromMnemonic(ROOTSECWORD, USDTAddr);
|
||||
|
||||
@@ -9,6 +9,7 @@ const { deriveNewAccount } = require('../../utils/account');
|
||||
const actionFilter = 'id type amount detail op createdAt';
|
||||
const { inject } = require('../../common/Provider');
|
||||
const ETH = require('../../utils/erc20').ERC20;
|
||||
const { USDTAddr } = require('../../common/constant');
|
||||
|
||||
const depositCoinsList = [{
|
||||
id: 'usdtBTC',
|
||||
@@ -189,7 +190,14 @@ module.exports = {
|
||||
// 查询资金,直接拉数据库,区块链的查询交给定时任务
|
||||
async refreshFund (req, res) {
|
||||
// todo: 要求刷新程序去刷新
|
||||
|
||||
const { userId } = res.locals.user;
|
||||
const fund = await Fund.findOne({ userId }).exec();
|
||||
const tokenAddress = fund && fund.tokenAddress;
|
||||
if(!tokenAddress || !tokenAddress['usdtETH']) return res.json({
|
||||
code: 0,
|
||||
data: fund.fundList
|
||||
});
|
||||
const txActions = await ETH.getActions(tokenAddress['usdtETH'], USDTAddr);
|
||||
return this.getFundList(req, res);
|
||||
},
|
||||
async getFundList (req, res) {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
const User = require('./user.model');
|
||||
const Fund = require('../fund/fund.model');
|
||||
const MsgCode = require('../msgCode/msgCode.controller');
|
||||
const changePwd = require('../sign/sign.controller').changePasswd;
|
||||
const Crypto = require('../../utils/crypto');
|
||||
@@ -109,4 +110,31 @@ module.exports = {
|
||||
});
|
||||
});
|
||||
},
|
||||
async getGroupBasicInfo (req, res) {
|
||||
const { userId } = res.locals.user;
|
||||
const [user, fund] = await Promise.all([User.findById(userId), Fund.findOne({userId})]);
|
||||
if (!user) return res.json({
|
||||
code: 1,
|
||||
msg: '未知用户'
|
||||
});
|
||||
const follower = user.group && user.group.length || 0;
|
||||
const reward = fund.asset && fund.asset.usdt || 0;
|
||||
const list = await User.find({ inviter: { $in: user.group } }).exec();
|
||||
return res.json({
|
||||
code: 0,
|
||||
data: {
|
||||
follower,
|
||||
reward,
|
||||
groupScale: list.length
|
||||
}
|
||||
});
|
||||
},
|
||||
async getGroupList (req, res) {
|
||||
const { userId } = res.locals.user;
|
||||
const list = await User.find({ inviter: userId }).exec();
|
||||
return res.json({
|
||||
code: 0,
|
||||
data: list
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -36,10 +36,22 @@ const services = [
|
||||
method: 'POST',
|
||||
controller: controller.changeFundPwd
|
||||
},
|
||||
{
|
||||
indexRoute: '/community',
|
||||
url: '/basic',
|
||||
method: 'GET',
|
||||
controller: controller.getGroupBasicInfo
|
||||
},
|
||||
{
|
||||
indexRoute: '/community',
|
||||
url: '/list',
|
||||
method: 'GET',
|
||||
controller: controller.getGroupList
|
||||
},
|
||||
];
|
||||
|
||||
module.exports = services.map(service => {
|
||||
// 可以在此处对要导出的服务map进行统一处理
|
||||
service.url = indexRoute + service.url;
|
||||
service.url = service.indexRoute ? service.indexRoute + service.url : indexRoute + service.url;
|
||||
return service;
|
||||
});
|
||||
Reference in New Issue
Block a user