86 lines
2.9 KiB
JavaScript
86 lines
2.9 KiB
JavaScript
const _ = require('lodash/fp')
|
|
const { loadConfig, saveConfig } = require('./settings')
|
|
const CASSETTE_MAX_CAPACITY = 500
|
|
|
|
exports.up = function (next) {
|
|
return loadConfig()
|
|
.then(config => {
|
|
const fiatBalance1 = config.notifications_fiatBalanceCassette1
|
|
const fiatBalance2 = config.notifications_fiatBalanceCassette2
|
|
const fiatBalance3 = config.notifications_fiatBalanceCassette3
|
|
const fiatBalance4 = config.notifications_fiatBalanceCassette4
|
|
const overrides = config.notifications_fiatBalanceOverrides
|
|
const newConfig = {}
|
|
if (fiatBalance1) {
|
|
newConfig.notifications_fillingPercentageCassette1 = (
|
|
100 *
|
|
(fiatBalance1 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
newConfig.notifications_fiatBalanceCassette1 = null
|
|
}
|
|
if (fiatBalance2) {
|
|
newConfig.notifications_fillingPercentageCassette2 = (
|
|
100 *
|
|
(fiatBalance2 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
newConfig.notifications_fiatBalanceCassette2 = null
|
|
}
|
|
if (fiatBalance3) {
|
|
newConfig.notifications_fillingPercentageCassette3 = (
|
|
100 *
|
|
(fiatBalance3 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
newConfig.notifications_fiatBalanceCassette3 = null
|
|
}
|
|
if (fiatBalance4) {
|
|
newConfig.notifications_fillingPercentageCassette4 = (
|
|
100 *
|
|
(fiatBalance4 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
newConfig.notifications_fiatBalanceCassette4 = null
|
|
}
|
|
|
|
if (overrides) {
|
|
newConfig.notifications_fiatBalanceOverrides = _.map(override => {
|
|
const newOverride = {}
|
|
if (override.fiatBalanceCassette1) {
|
|
newOverride.fillingPercentageCassette1 = (
|
|
100 *
|
|
(override.fiatBalanceCassette1 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
}
|
|
if (override.fiatBalanceCassette2) {
|
|
newOverride.fillingPercentageCassette2 = (
|
|
100 *
|
|
(override.fiatBalanceCassette2 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
}
|
|
if (override.fiatBalanceCassette3) {
|
|
newOverride.fillingPercentageCassette3 = (
|
|
100 *
|
|
(override.fiatBalanceCassette3 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
}
|
|
if (override.fiatBalanceCassette4) {
|
|
newOverride.fillingPercentageCassette4 = (
|
|
100 *
|
|
(override.fiatBalanceCassette4 / CASSETTE_MAX_CAPACITY)
|
|
).toFixed(0)
|
|
}
|
|
newOverride.machine = override.machine
|
|
newOverride.id = override.id
|
|
|
|
return newOverride
|
|
}, config.notifications_fiatBalanceOverrides)
|
|
}
|
|
return saveConfig(newConfig).then(() => next())
|
|
})
|
|
.catch(err => {
|
|
console.log(err.message)
|
|
return next(err)
|
|
})
|
|
}
|
|
|
|
module.exports.down = function (next) {
|
|
next()
|
|
}
|