fix: issue when saving cassettes 3 and 4

This commit is contained in:
Sérgio Salgado 2021-09-01 01:04:59 +01:00
parent 5788b6216d
commit 575235283a
3 changed files with 56 additions and 6 deletions

View file

@ -127,8 +127,8 @@ function renameMachine (rec) {
function resetCashOutBills (rec) { function resetCashOutBills (rec) {
const detailB = notifierUtils.buildDetail({ deviceId: rec.deviceId }) const detailB = notifierUtils.buildDetail({ deviceId: rec.deviceId })
const sql = `UPDATE devices SET cassette1=$1, cassette2=$2 WHERE device_id=$3;` const sql = `UPDATE devices SET cassette1=$1, cassette2=$2, cassette3=$3, cassette4=$4 WHERE device_id=$5;`
return db.none(sql, [rec.cassettes[0], rec.cassettes[1], rec.deviceId]).then(() => notifierQueries.invalidateNotification(detailB, 'fiatBalance')) return db.none(sql, [rec.cassettes[0], rec.cassettes[1], rec.cassettes[2], rec.cassettes[3], rec.deviceId]).then(() => notifierQueries.invalidateNotification(detailB, 'fiatBalance'))
} }
function emptyCashInBills (rec) { function emptyCashInBills (rec) {

View file

@ -6,13 +6,13 @@ function getMachine (machineId) {
.then(machines => machines.find(({ deviceId }) => deviceId === machineId)) .then(machines => machines.find(({ deviceId }) => deviceId === machineId))
} }
function machineAction ({ deviceId, action, cashbox, cassette1, cassette2, newName }) { function machineAction ({ deviceId, action, cashbox, cassette1, cassette2, cassette3, cassette4, newName }) {
return getMachine(deviceId) return getMachine(deviceId)
.then(machine => { .then(machine => {
if (!machine) throw new UserInputError(`machine:${deviceId} not found`, { deviceId }) if (!machine) throw new UserInputError(`machine:${deviceId} not found`, { deviceId })
return machine return machine
}) })
.then(machineLoader.setMachine({ deviceId, action, cashbox, cassettes: [cassette1, cassette2], newName })) .then(machineLoader.setMachine({ deviceId, action, cashbox, cassettes: [cassette1, cassette2, cassette3, cassette4], newName }))
.then(getMachine(deviceId)) .then(getMachine(deviceId))
} }

View file

@ -40,6 +40,8 @@ const SET_CASSETTE_BILLS = gql`
$cashbox: Int! $cashbox: Int!
$cassette1: Int! $cassette1: Int!
$cassette2: Int! $cassette2: Int!
$cassette3: Int!
$cassette4: Int!
) { ) {
machineAction( machineAction(
deviceId: $deviceId deviceId: $deviceId
@ -47,11 +49,15 @@ const SET_CASSETTE_BILLS = gql`
cashbox: $cashbox cashbox: $cashbox
cassette1: $cassette1 cassette1: $cassette1
cassette2: $cassette2 cassette2: $cassette2
cassette3: $cassette3
cassette4: $cassette4
) { ) {
deviceId deviceId
cashbox cashbox
cassette1 cassette1
cassette2 cassette2
cassette3
cassette4
} }
} }
` `
@ -119,6 +125,46 @@ const CashCassettes = ({ machine, config, refetchData }) => {
inputProps: { inputProps: {
decimalPlaces: 0 decimalPlaces: 0
} }
},
{
name: 'cassette3',
header: 'Cash-out 3',
width: 265,
stripe: true,
view: (value, { deviceId }) => {
return (
<CashOut
className={classes.cashbox}
denomination={getCashoutSettings(deviceId)?.cassette2}
currency={{ code: fiatCurrency }}
notes={value}
/>
)
},
input: NumberInput,
inputProps: {
decimalPlaces: 0
}
},
{
name: 'cassette4',
header: 'Cash-out 4',
width: 265,
stripe: true,
view: (value, { deviceId }) => {
return (
<CashOut
className={classes.cashbox}
denomination={getCashoutSettings(deviceId)?.cassette2}
currency={{ code: fiatCurrency }}
notes={value}
/>
)
},
input: NumberInput,
inputProps: {
decimalPlaces: 0
}
} }
] ]
@ -126,14 +172,18 @@ const CashCassettes = ({ machine, config, refetchData }) => {
refetchQueries: () => refetchData() refetchQueries: () => refetchData()
}) })
const onSave = (...[, { deviceId, cashbox, cassette1, cassette2 }]) => { const onSave = (
...[, { deviceId, cashbox, cassette1, cassette2, cassette3, cassette4 }]
) => {
return setCassetteBills({ return setCassetteBills({
variables: { variables: {
action: 'setCassetteBills', action: 'setCassetteBills',
deviceId: deviceId, deviceId: deviceId,
cashbox, cashbox,
cassette1, cassette1,
cassette2 cassette2,
cassette3,
cassette4
} }
}) })
} }