chore: integrate new admin with l-s

This commit is contained in:
Taranto 2020-05-06 22:11:55 +01:00
parent 6b3db134e7
commit bf8f1d991c
72 changed files with 1493 additions and 1611 deletions

View file

@ -3,8 +3,8 @@ const axios = require('axios')
const db = require('./db')
const pairing = require('./pairing')
const configManager = require('./config-manager')
const settingsLoader = require('./settings-loader')
const configManager = require('./new-config-manager')
const settingsLoader = require('./new-settings-loader')
module.exports = {getMachineName, getMachines, getMachineNames, setMachine}
@ -17,6 +17,7 @@ function getMachines () {
cassette2: r.cassette2,
pairedAt: new Date(r.created).valueOf(),
lastPing: new Date(r.last_online).valueOf(),
name: r.name,
// TODO: we shall start using this JSON field at some point
// location: r.location,
paired: r.paired
@ -26,18 +27,20 @@ function getMachines () {
function getConfig (defaultConfig) {
if (defaultConfig) return Promise.resolve(defaultConfig)
return settingsLoader.loadRecentConfig()
return settingsLoader.loadLatest().config
}
function getMachineNames (config) {
return Promise.all([getMachines(), getConfig(config)])
.then(([machines, config]) => {
const addName = r => {
const machineScoped = configManager.machineScoped(r.deviceId, config)
const name = _.defaultTo('', machineScoped.machineName)
const cashOut = machineScoped.cashOutEnabled
const machineModel = _.defaultTo('', machineScoped.machineModel)
const machineLocation = _.defaultTo('', machineScoped.machineLocation)
const cashOutConfig = configManager.getCashOut(r.deviceId, config)
const cashOut = cashOutConfig.active
// TODO new-admin: these two fields were not ever working
const machineModel = ''
const machineLocation = ''
// TODO: obtain next fields from somewhere
const printer = null
@ -45,7 +48,7 @@ function getMachineNames (config) {
const statuses = [{label: 'Unknown detailed status', type: 'warning'}]
const softwareVersion = ''
return _.assign(r, {name, cashOut, machineModel, machineLocation, printer, pingTime, statuses, softwareVersion})
return _.assign(r, {cashOut, machineModel, machineLocation, printer, pingTime, statuses, softwareVersion})
}
return _.map(addName, machines)
@ -63,11 +66,9 @@ function getMachineNames (config) {
* @returns {string} machine name
*/
function getMachineName (machineId) {
return settingsLoader.loadRecentConfig()
.then(config => {
const machineScoped = configManager.machineScoped(machineId, config)
return machineScoped.machineName
})
const sql = 'select * from devices where device_id=$1'
return db.oneOrNone(sql, [machineId])
.then(it => it.name)
}
function resetCashOutBills (rec) {