refactor: apply review comments
This commit is contained in:
parent
6444b20a8c
commit
900756d6f4
4 changed files with 52 additions and 52 deletions
|
|
@ -7,7 +7,11 @@ exports.up = function (next) {
|
||||||
'cash-out-1-refill',
|
'cash-out-1-refill',
|
||||||
'cash-out-1-empty',
|
'cash-out-1-empty',
|
||||||
'cash-out-2-refill',
|
'cash-out-2-refill',
|
||||||
'cash-out-2-empty'
|
'cash-out-2-empty',
|
||||||
|
'cash-out-3-refill',
|
||||||
|
'cash-out-3-empty',
|
||||||
|
'cash-out-4-refill',
|
||||||
|
'cash-out-4-empty'
|
||||||
)`,
|
)`,
|
||||||
`ALTER TABLE cashbox_batches ADD COLUMN operation_type cashbox_batch_type NOT NULL`,
|
`ALTER TABLE cashbox_batches ADD COLUMN operation_type cashbox_batch_type NOT NULL`,
|
||||||
`ALTER TABLE cashbox_batches ADD COLUMN bill_count_override SMALLINT`,
|
`ALTER TABLE cashbox_batches ADD COLUMN bill_count_override SMALLINT`,
|
||||||
|
|
|
||||||
|
|
@ -76,38 +76,34 @@ const CashboxHistory = ({ machines, currency }) => {
|
||||||
|
|
||||||
const batches = R.path(['cashboxBatches'])(data)
|
const batches = R.path(['cashboxBatches'])(data)
|
||||||
|
|
||||||
const getOperationRender = {
|
const getOperationRender = R.reduce(
|
||||||
|
(ret, i) =>
|
||||||
|
R.pipe(
|
||||||
|
R.assoc(
|
||||||
|
`cash-out-${i}-refill`,
|
||||||
|
<>
|
||||||
|
<TxOutIcon />
|
||||||
|
<span className={classes.operationType}>Cash-out {i} refill</span>
|
||||||
|
</>
|
||||||
|
),
|
||||||
|
R.assoc(
|
||||||
|
`cash-out-${i}-empty`,
|
||||||
|
<>
|
||||||
|
<TxOutIcon />
|
||||||
|
<span className={classes.operationType}>Cash-out {i} emptied</span>
|
||||||
|
</>
|
||||||
|
)
|
||||||
|
)(ret),
|
||||||
|
{
|
||||||
'cash-in-empty': (
|
'cash-in-empty': (
|
||||||
<>
|
<>
|
||||||
<TxInIcon />
|
<TxInIcon />
|
||||||
<span className={classes.operationType}>Cash-in emptied</span>
|
<span className={classes.operationType}>Cash-in emptied</span>
|
||||||
</>
|
</>
|
||||||
),
|
|
||||||
'cash-out-1-refill': (
|
|
||||||
<>
|
|
||||||
<TxOutIcon />
|
|
||||||
<span className={classes.operationType}>Cash-out 1 refill</span>
|
|
||||||
</>
|
|
||||||
),
|
|
||||||
'cash-out-1-empty': (
|
|
||||||
<>
|
|
||||||
<TxOutIcon />
|
|
||||||
<span className={classes.operationType}>Cash-out 1 emptied</span>
|
|
||||||
</>
|
|
||||||
),
|
|
||||||
'cash-out-2-refill': (
|
|
||||||
<>
|
|
||||||
<TxOutIcon />
|
|
||||||
<span className={classes.operationType}>Cash-out 2 refill</span>
|
|
||||||
</>
|
|
||||||
),
|
|
||||||
'cash-out-2-empty': (
|
|
||||||
<>
|
|
||||||
<TxOutIcon />
|
|
||||||
<span className={classes.operationType}>Cash-out 2 emptied</span>
|
|
||||||
</>
|
|
||||||
)
|
)
|
||||||
}
|
},
|
||||||
|
R.range(1, 5)
|
||||||
|
)
|
||||||
|
|
||||||
const save = row => {
|
const save = row => {
|
||||||
const field = R.find(f => f.id === row.id, fields)
|
const field = R.find(f => f.id === row.id, fields)
|
||||||
|
|
|
||||||
|
|
@ -17,11 +17,10 @@ const Wizard = ({ machine, cashoutSettings, locale, onClose, save, error }) => {
|
||||||
config: { active: true }
|
config: { active: true }
|
||||||
})
|
})
|
||||||
|
|
||||||
const numberOfCassettes = machine.numberOfCassettes
|
const numberOfCassettes = R.isEmpty(cashoutSettings)
|
||||||
const numberOfCassetteSteps = R.isEmpty(cashoutSettings)
|
|
||||||
? 0
|
? 0
|
||||||
: numberOfCassettes
|
: machine.numberOfCassettes
|
||||||
const LAST_STEP = numberOfCassetteSteps + 1
|
const LAST_STEP = numberOfCassettes + 1
|
||||||
|
|
||||||
const title = `Update counts`
|
const title = `Update counts`
|
||||||
const isLastStep = step === LAST_STEP
|
const isLastStep = step === LAST_STEP
|
||||||
|
|
@ -29,16 +28,9 @@ const Wizard = ({ machine, cashoutSettings, locale, onClose, save, error }) => {
|
||||||
const onContinue = it => {
|
const onContinue = it => {
|
||||||
const cashbox = config?.wasCashboxEmptied === 'YES' ? 0 : machine?.cashbox
|
const cashbox = config?.wasCashboxEmptied === 'YES' ? 0 : machine?.cashbox
|
||||||
|
|
||||||
console.log('Wizard.js:Wizard:it', it)
|
|
||||||
if (isLastStep) {
|
if (isLastStep) {
|
||||||
save(
|
const { cassette1, cassette2, cassette3, cassette4 } = R.map(parseInt, it)
|
||||||
machine.id,
|
save(machine.id, cashbox, cassette1, cassette2, cassette3, cassette4)
|
||||||
parseInt(cashbox),
|
|
||||||
parseInt(it[1] ?? 0),
|
|
||||||
parseInt(it[2] ?? 0),
|
|
||||||
parseInt(it[3] ?? 0),
|
|
||||||
parseInt(it[4] ?? 0)
|
|
||||||
)
|
|
||||||
return onClose()
|
return onClose()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -50,11 +42,14 @@ const Wizard = ({ machine, cashoutSettings, locale, onClose, save, error }) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const makeCassetteSteps = R.pipe(
|
const makeCassetteSteps = R.pipe(
|
||||||
|
R.add(1),
|
||||||
R.range(1),
|
R.range(1),
|
||||||
R.map(i => ({
|
R.map(i => ({
|
||||||
type: `cassette ${i}`,
|
type: `cassette ${i}`,
|
||||||
schema: Yup.object().shape({
|
schema: Yup.object().shape({
|
||||||
[i]: Yup.number()
|
[`cassette${i}`]: Yup.number()
|
||||||
|
.positive()
|
||||||
|
.integer()
|
||||||
.required()
|
.required()
|
||||||
.min(0)
|
.min(0)
|
||||||
.max(CASHBOX_DEFAULT_CAPACITY)
|
.max(CASHBOX_DEFAULT_CAPACITY)
|
||||||
|
|
@ -69,7 +64,7 @@ const Wizard = ({ machine, cashoutSettings, locale, onClose, save, error }) => {
|
||||||
wasCashboxEmptied: Yup.string().required()
|
wasCashboxEmptied: Yup.string().required()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
makeCassetteSteps(numberOfCassetteSteps + 1)
|
makeCassetteSteps(numberOfCassettes)
|
||||||
)
|
)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|
|
||||||
|
|
@ -128,7 +128,7 @@ const WizardStep = ({
|
||||||
const originalCassetteCount = machine?.[cassetteField]
|
const originalCassetteCount = machine?.[cassetteField]
|
||||||
const cassetteDenomination = cashoutSettings?.[cassetteField]
|
const cassetteDenomination = cashoutSettings?.[cassetteField]
|
||||||
|
|
||||||
const cassetteCount = values => values[`${step - 1}`] || originalCassetteCount
|
const cassetteCount = values => values[cassetteField] || originalCassetteCount
|
||||||
const cassetteTotal = values => cassetteCount(values) * cassetteDenomination
|
const cassetteTotal = values => cassetteCount(values) * cassetteDenomination
|
||||||
const getPercentage = R.pipe(
|
const getPercentage = R.pipe(
|
||||||
cassetteCount,
|
cassetteCount,
|
||||||
|
|
@ -150,7 +150,7 @@ const WizardStep = ({
|
||||||
onSubmit={onContinue}
|
onSubmit={onContinue}
|
||||||
initialValues={{ wasCashboxEmptied: '' }}
|
initialValues={{ wasCashboxEmptied: '' }}
|
||||||
enableReinitialize
|
enableReinitialize
|
||||||
validationSchema={steps[step - 1].schema}>
|
validationSchema={steps[0].schema}>
|
||||||
{({ values }) => (
|
{({ values }) => (
|
||||||
<Form>
|
<Form>
|
||||||
<div
|
<div
|
||||||
|
|
@ -211,7 +211,12 @@ const WizardStep = ({
|
||||||
validateOnBlur={false}
|
validateOnBlur={false}
|
||||||
validateOnChange={false}
|
validateOnChange={false}
|
||||||
onSubmit={onContinue}
|
onSubmit={onContinue}
|
||||||
initialValues={{ 1: '', 2: '', 3: '', 4: '' }}
|
initialValues={{
|
||||||
|
cassette1: '',
|
||||||
|
cassette2: '',
|
||||||
|
cassette3: '',
|
||||||
|
cassette4: ''
|
||||||
|
}}
|
||||||
enableReinitialize
|
enableReinitialize
|
||||||
validationSchema={steps[step - 1].schema}>
|
validationSchema={steps[step - 1].schema}>
|
||||||
{({ values }) => (
|
{({ values }) => (
|
||||||
|
|
@ -262,7 +267,7 @@ const WizardStep = ({
|
||||||
decimalPlaces={0}
|
decimalPlaces={0}
|
||||||
width={50}
|
width={50}
|
||||||
placeholder={originalCassetteCount.toString()}
|
placeholder={originalCassetteCount.toString()}
|
||||||
name={step - 1}
|
name={cassetteField}
|
||||||
className={classes.cashboxBills}
|
className={classes.cashboxBills}
|
||||||
/>
|
/>
|
||||||
<P>
|
<P>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue