Merge pull request #2398 from dv1/combov2-fixes-001

comboctl-main: Use the standard bolus' total amount as its immediate amount
This commit is contained in:
Milos Kozak 2023-02-09 21:01:04 +01:00 committed by GitHub
commit ea7ccfc8f8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1533,11 +1533,26 @@ class Pump(
pumpMode = null, pumpMode = null,
isIdempotent = false, isIdempotent = false,
description = DeliveringBolusCommandDesc( description = DeliveringBolusCommandDesc(
totalBolusAmount, totalBolusAmount = totalBolusAmount,
immediateBolusAmount, // A standard bolus only has an immediate portion, no extended one. This
durationInMinutes, // implies that its total amount is also its immediate amount. As the
standardBolusReason, // function documentation states, the user only species the total amount
bolusType // when delivering a standard bolus - the immediateBolusAmount argument
// of deliverBolus() is ignored. It makes no sense for users to have
// to specify the same value twice.
//
// For UI elements it is however useful to have immediateBolusAmount be
// automatically set to the totalBolusAmount when delivering a standard
// bolus. One example for why this is useful is when during the immediate
// portion of a bolus, a modal dialog is shown with a progress bar, while
// the extended portion shows no such dialog.
//
// For this reason, assign the totalBolusAmount quantity to the
// immediateBolusAmount field of the command desc if this is a standard bolus.
immediateBolusAmount = if (bolusType == CMDDeliverBolusType.STANDARD_BOLUS) totalBolusAmount else immediateBolusAmount,
durationInMinutes = durationInMinutes,
standardBolusReason = standardBolusReason,
bolusType = bolusType
) )
) { ) {
require((totalBolusAmount > 0) && (totalBolusAmount <= 250)) { require((totalBolusAmount > 0) && (totalBolusAmount <= 250)) {