WIP debugging

This commit is contained in:
Josh Harvey 2014-11-25 19:58:36 -05:00
parent f38b02df94
commit e4a4e556a2
2 changed files with 19 additions and 16 deletions

View file

@ -106,12 +106,12 @@ function query(client, queryStr, values, cb) {
values = [];
}
// console.log(queryStr);
// console.log(values);
// console.trace(); // DEBUG
client.query(queryStr, values, function(err, results) {
if (err) return cb(new Error(err));
if (err) {
console.log(queryStr);
console.log(values);
return cb(new Error(err));
}
cb(null, results);
});
}
@ -393,7 +393,7 @@ exports.addInitialIncoming = function addInitialIncoming(session, tx, cb) {
};
function lastTxStatus(client, session, cb) {
var sql = 'SELECT satoshis, authority FROM transactions ' +
var sql = 'SELECT satoshis, stage, authority FROM transactions ' +
'WHERE device_fingerprint=$1 AND session_id=$2 AND incoming=$3 ' +
'ORDER BY id DESC LIMIT 1';
var values = [session.fingerprint, session.id, true];
@ -427,7 +427,7 @@ exports.dispenseStatus = function dispenseStatus(session, cb) {
if (!pending) return cb(null, null);
var requiredSatoshis = results[0].rows[0].requiredSatoshis;
var lastTx = results[1].rows[1];
var lastTx = results[1].rows[0];
// TODO: handle multiple deposits
var status = (lastTx.satoshis < requiredSatoshis) ?
@ -444,14 +444,14 @@ function lastDispenseCount(client, session, transactionId, cb) {
'ORDER BY id DESC LIMIT 1';
client.query(sql, [session.fingerprint], function(err, results) {
if (err) return cb(err);
if (results.rows.length === 0) return cb(null, [0, 0]);
if (results.rows.length === 0) return cb(null, transactionId, [0, 0]);
cb(null, transactionId, [results.rows[0].count1, results.rows[0].count2]);
});
}
function insertDispense(client, tx, transactionId, counts, cb) {
function insertDispense(client, session, tx, transactionId, counts, cb) {
var fields = [
'transaction_id',
'device_fingerprint', 'transaction_id',
'dispense1', 'reject1', 'count1',
'dispense2', 'reject2', 'count2',
'refill', 'error'
@ -466,10 +466,11 @@ function insertDispense(client, tx, transactionId, counts, cb) {
var count1 = Math.max(counts[0] - (dispense1 + reject1), 0);
var count2 = Math.max(counts[1] - (dispense2 + reject2), 0);
var values = [
transactionId,
session.fingerprint, transactionId,
dispense1, reject1, count1, dispense2, reject2, count2,
false, tx.error
];
console.dir(values); // DEBUG
client.query(sql, values, cb);
}
@ -479,12 +480,12 @@ exports.addDispense = function addDispense(session, tx) {
async.waterfall([
async.apply(insertIncoming, client, session, tx, 0, tx.fiat,
'deposit', 'authorized'),
'dispense', 'authorized'),
async.apply(lastDispenseCount, client, session),
async.apply(insertDispense, client, tx)
async.apply(insertDispense, client, session, tx)
], function(_err) {
done();
if (_err) logger.error(err);
if (_err) logger.error(_err);
});
});
};