moving conversion.js into service folder
This commit is contained in:
parent
5344b79cdb
commit
fef11b4712
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
const blockchain = require('./blockchain');
|
const blockchain = require('./blockchain');
|
||||||
const conversion = require('./conversion');
|
const conversion_rates = require('./services/conversion').getRate;
|
||||||
|
|
||||||
const {
|
const {
|
||||||
LAUNCH_SELLER_TAG,
|
LAUNCH_SELLER_TAG,
|
||||||
@ -219,7 +219,7 @@ function verifyConvert() {
|
|||||||
results.forEach(req => {
|
results.forEach(req => {
|
||||||
if (mode == _sql.CONVERT_MODE_GET) {
|
if (mode == _sql.CONVERT_MODE_GET) {
|
||||||
verifyTx.token(req.floID, req.in_txid, true).then(({ amount }) => {
|
verifyTx.token(req.floID, req.in_txid, true).then(({ amount }) => {
|
||||||
conversion.getRate().then(rate => {
|
conversion_rates.BTC_INR().then(rate => {
|
||||||
blockchain.convertToCoin.init(req.floID, "BTC", amount, amount / rate, req.id)
|
blockchain.convertToCoin.init(req.floID, "BTC", amount, amount / rate, req.id)
|
||||||
}).catch(error => console.error(error))
|
}).catch(error => console.error(error))
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
@ -230,7 +230,7 @@ function verifyConvert() {
|
|||||||
});
|
});
|
||||||
} else if (mode == _sql.CONVERT_MODE_PUT) {
|
} else if (mode == _sql.CONVERT_MODE_PUT) {
|
||||||
verifyTx.BTC(req.floID, req.in_txid).then(quantity => {
|
verifyTx.BTC(req.floID, req.in_txid).then(quantity => {
|
||||||
conversion.getRate().then(rate => {
|
conversion_rates.BTC_INR().then(rate => {
|
||||||
blockchain.convertFromCoin.init(req.floID, quantity * rate, quantity, req.id)
|
blockchain.convertFromCoin.init(req.floID, quantity * rate, quantity, req.id)
|
||||||
}).catch(error => console.error(error))
|
}).catch(error => console.error(error))
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const market = require("./market");
|
const market = require("./market");
|
||||||
const conversion = require('./conversion');
|
const conversion = require('./services/conversion');
|
||||||
|
|
||||||
const {
|
const {
|
||||||
SIGN_EXPIRE_TIME,
|
SIGN_EXPIRE_TIME,
|
||||||
|
|||||||
@ -1,17 +1,21 @@
|
|||||||
const _sql = require('./_constants').sql;
|
const _sql = require('../_constants').sql;
|
||||||
|
const eCode = require('../../docs/scripts/floExchangeAPI').errorCode;
|
||||||
|
|
||||||
const allowedConversion = ["BTC"];
|
const allowedConversion = ["BTC"];
|
||||||
|
|
||||||
function getRate() {
|
var DB; //container for database
|
||||||
|
|
||||||
|
function BTC_INR() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
getRate.BTC_USD().then(BTC_rate => {
|
BTC_USD().then(btc_usd => {
|
||||||
getRate.USD_INR().then(INR_rate => {
|
USD_INR().then(usd_inr => {
|
||||||
resolve(BTC_rate * INR_rate);
|
resolve(btc_usd * usd_inr);
|
||||||
}).catch(error => reject(error))
|
}).catch(error => reject(error))
|
||||||
}).catch(error => reject(error))
|
}).catch(error => reject(error))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
getRate.BTC_USD = function () {
|
function BTC_USD() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
fetch('https://api.coinlore.net/api/ticker/?id=90').then(response => {
|
fetch('https://api.coinlore.net/api/ticker/?id=90').then(response => {
|
||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
@ -24,7 +28,7 @@ getRate.BTC_USD = function () {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
getRate.USD_INR = function () {
|
function USD_INR() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
fetch('https://api.exchangerate-api.com/v4/latest/usd').then(response => {
|
fetch('https://api.exchangerate-api.com/v4/latest/usd').then(response => {
|
||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
@ -53,6 +57,7 @@ function convertToCoin(floID, txid, coin) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function convertFromCoin(floID, txid, coin) {
|
function convertFromCoin(floID, txid, coin) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
if (!allowedConversion.includes(coin))
|
if (!allowedConversion.includes(coin))
|
||||||
return reject(INVALID(eCode.INVALID_TOKEN_NAME, `Invalid coin (${coin})`));
|
return reject(INVALID(eCode.INVALID_TOKEN_NAME, `Invalid coin (${coin})`));
|
||||||
DB.query("SELECT status FROM DirectConvert WHERE in_txid=? AND floID=? mode=?", [txid, floID, _sql.CONVERT_MODE_PUT]).then(result => {
|
DB.query("SELECT status FROM DirectConvert WHERE in_txid=? AND floID=? mode=?", [txid, floID, _sql.CONVERT_MODE_PUT]).then(result => {
|
||||||
@ -63,10 +68,18 @@ function convertFromCoin(floID, txid, coin) {
|
|||||||
.then(result => resolve("Conversion request in process"))
|
.then(result => resolve("Conversion request in process"))
|
||||||
.catch(error => reject(error));
|
.catch(error => reject(error));
|
||||||
}).catch(error => reject(error))
|
}).catch(error => reject(error))
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
getRate,
|
getRate: {
|
||||||
|
BTC_USD,
|
||||||
|
USD_INR,
|
||||||
|
BTC_INR
|
||||||
|
},
|
||||||
convertToCoin,
|
convertToCoin,
|
||||||
convertFromCoin
|
convertFromCoin,
|
||||||
|
set DB(db) {
|
||||||
|
DB = db;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user