transfer_20220303155752.js
1.07 KB
// eslint-disable-next-line strict
const Subscription = require('egg').Subscription;
const nodeSdk = require('@ddn/node-sdk').default;
class Transfer extends Subscription {
static get schedule() {
return {
interval: '10s',
type: 'worker',
};
}
async subscribe() {
const { ctx, config } = this;
const trsData = await ctx.model.Transfer.findAll({ where: { finish: false } });
console.log(trsData)
trsData.map(async item => {
if (item.id != "e2475660-9942-11ec-b873-171b64126906") {
return
}
const transaction = await nodeSdk.transaction.createTransaction(item.toAddress, item.amount, item.remark || '网络升级转账', config.naclSecret);
const trs = JSON.stringify({ transaction });
// 上链操作
const data = await this.service.sdk.pushTransaction(trs);
if (data.success) {
ctx.model.Transfer.update({ finish: true }, { where: { id: item.id } });
} else {
ctx.model.Transfer.update({ finish: false }, { where: { id: item.id } });
}
});
}
}
module.exports = Transfer;