ENH sane defaults for income

This commit is contained in:
Nathan Dwarshuis 2023-03-16 23:55:59 -04:00
parent ad4cb6a702
commit 2a38b52fc4
1 changed files with 19 additions and 12 deletions

View File

@ -216,17 +216,24 @@ let Allocation = Allocation_ Amount
let IntervalAllocation = Allocation_ (TimeAmount Interval) let IntervalAllocation = Allocation_ (TimeAmount Interval)
let Income = let Income =
{ incGross : Decimal { Type =
, incCurrency : CurID { incGross : Decimal
, incWhen : DatePat , incCurrency : CurID
, incPretax : List Allocation , incWhen : DatePat
, incTaxes : List Allocation , incPretax : List Allocation
, incPosttax : List Allocation , incTaxes : List Allocation
, incFrom : , incPosttax : List Allocation
{- this must be an income AcntID, and is the only place income , incFrom :
accounts may be specified in the entire budget -} {- this must be an income AcntID, and is the only place income
TaggedAcnt accounts may be specified in the entire budget -}
, incToBal : TaggedAcnt TaggedAcnt
, incToBal : TaggedAcnt
}
, default =
{ incPretax = [] : List Allocation
, incTaxes = [] : List Allocation
, incPosttaxx = [] : List Allocation
}
} }
let Transfer = let Transfer =
@ -267,7 +274,7 @@ let ShadowTransfer =
let Budget = let Budget =
{ budgetLabel : Text { budgetLabel : Text
, incomes : List Income , incomes : List Income.Type
, pretax : List IntervalAllocation , pretax : List IntervalAllocation
, tax : List IntervalAllocation , tax : List IntervalAllocation
, posttax : List IntervalAllocation , posttax : List IntervalAllocation