From 20703d0271d698a9b80f053dcacfc1f49dcdde33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Oliveira?= Date: Thu, 25 Mar 2021 15:09:36 +0000 Subject: [PATCH] feat: cashbox batch table and update bills --- lib/cashbox-batches.js | 19 ++++++++++++++ .../1616528363530-add_cashbox_batches.js | 26 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 lib/cashbox-batches.js create mode 100644 migrations/1616528363530-add_cashbox_batches.js diff --git a/lib/cashbox-batches.js b/lib/cashbox-batches.js new file mode 100644 index 00000000..155cd95f --- /dev/null +++ b/lib/cashbox-batches.js @@ -0,0 +1,19 @@ +const db = require('./db') + +function createCashBoxBatch (rec) { + const sql = 'INSERT INTO cashbox_batches (device_id, created) VALUES ($1, now()) RETURNING *' + const sql2 = ` + UPDATE bills SET cashbox_batch_id=$1 + FROM cash_in_txs + WHERE bills.cash_in_txs_id = cash_in_txs.id AND + cash_in_txs.device_id = $2 AND + bills.cashbox_batch_id IS NULL + ` + return db.oneOrNone(sql, [rec.deviceId]) + .then(res => { + console.log(res) + return db.oneOrNone(sql2, [res.id, res.device_id]) + }) +} + +module.exports = { createCashBoxBatch } diff --git a/migrations/1616528363530-add_cashbox_batches.js b/migrations/1616528363530-add_cashbox_batches.js new file mode 100644 index 00000000..fb257e23 --- /dev/null +++ b/migrations/1616528363530-add_cashbox_batches.js @@ -0,0 +1,26 @@ +var db = require('./db') + +exports.up = function (next) { + var sqls = [ + `create table cashbox_batches ( + id serial PRIMARY KEY, + device_id text REFERENCES devices (device_id), + created timestamptz NOT NULL default now() + )`, + + `ALTER TABLE bills ADD COLUMN legacy boolean DEFAULT false`, + + `ALTER TABLE bills ADD COLUMN cashbox_batch_id int`, + + `ALTER TABLE bills ADD CONSTRAINT cashbox_batch_id + FOREIGN KEY (cashbox_batch_id) + REFERENCES cashbox_batches (id)`, + + `UPDATE bills SET legacy = 'true'` + ] + db.multi(sqls, next) +} + +exports.down = function (next) { + next() +}