feat: show alerts for full cash boxes
This commit is contained in:
parent
8a50dbf435
commit
8b4109ee36
1 changed files with 15 additions and 6 deletions
|
|
@ -71,7 +71,9 @@ const fiatBalancesNotify = (fiatWarnings) => {
|
||||||
const { cassette, deviceId } = o.detail
|
const { cassette, deviceId } = o.detail
|
||||||
return cassette === balance.cassette && deviceId === balance.deviceId
|
return cassette === balance.cassette && deviceId === balance.deviceId
|
||||||
}, notInvalidated)) return
|
}, notInvalidated)) return
|
||||||
const message = `Cash-out cassette ${balance.cassette} low or empty!`
|
const message = balance.code === 'LOW_CASH_OUT' ?
|
||||||
|
`Cash-out cassette ${balance.cassette} low or empty!` :
|
||||||
|
`Cash box full or almost full!`
|
||||||
const detailB = utils.buildDetail({ deviceId: balance.deviceId, cassette: balance.cassette })
|
const detailB = utils.buildDetail({ deviceId: balance.deviceId, cassette: balance.cassette })
|
||||||
return queries.addNotification(FIAT_BALANCE, message, detailB)
|
return queries.addNotification(FIAT_BALANCE, message, detailB)
|
||||||
})
|
})
|
||||||
|
|
@ -111,11 +113,18 @@ const cryptoBalancesNotify = (cryptoWarnings) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const balancesNotify = (balances) => {
|
const balancesNotify = (balances) => {
|
||||||
const cryptoFilter = o => o.code === 'HIGH_CRYPTO_BALANCE' || o.code === 'LOW_CRYPTO_BALANCE'
|
const isCryptoCode = c => _.includes(c, ['HIGH_CRYPTO_BALANCE', 'LOW_CRYPTO_BALANCE'])
|
||||||
const fiatFilter = o => o.code === 'LOW_CASH_OUT'
|
const isFiatCode = c => _.includes(c, ['LOW_CASH_OUT', 'CASH_BOX_FULL'])
|
||||||
const cryptoWarnings = _.filter(cryptoFilter, balances)
|
const by = o =>
|
||||||
const fiatWarnings = _.filter(fiatFilter, balances)
|
isCryptoCode(o) ? 'crypto' :
|
||||||
return Promise.all([cryptoBalancesNotify(cryptoWarnings), fiatBalancesNotify(fiatWarnings)])
|
isFiatCode(o) ? 'fiat' :
|
||||||
|
undefined
|
||||||
|
const warnings = _.flow(
|
||||||
|
_.groupBy(_.flow(_.get(['code']), by)),
|
||||||
|
_.update('crypto', _.defaultTo([])),
|
||||||
|
_.update('fiat', _.defaultTo([])),
|
||||||
|
)(balances)
|
||||||
|
return Promise.all([cryptoBalancesNotify(warnings.crypto), fiatBalancesNotify(warnings.fiat)])
|
||||||
}
|
}
|
||||||
|
|
||||||
const clearOldErrorNotifications = alerts => {
|
const clearOldErrorNotifications = alerts => {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue