54 lines
3.6 KiB
Plaintext
54 lines
3.6 KiB
Plaintext
UI:
|
|
* when we choose a tab of bill_data -> set new bill select based on tab
|
|
& vice-versa, add a bill of type, reload page to show the tab of those bills
|
|
|
|
For bills:
|
|
* gas bills are a mess and more than 4 per year... *SIGH* try this:
|
|
- if len(bills) > num_ann_bills (effectively too many bills for what we expect)
|
|
- normalise by looping over *EVERY* year of bills
|
|
- for each bill in yr:
|
|
- pb=find_prev_bill( bill )...
|
|
- calc days between pb and bill to get daily cost
|
|
- work out qtr() and take # days from bill in Qtr X and add it to Q[X]
|
|
- if # days i X+1 add those to Q[X+1]
|
|
- then need to be careful when working out totals/growth to use Q[...] not bill['year']
|
|
* growth for internet/monthly is a bit skewed.... Really think min/avg/max might need to be smarter
|
|
- at least max, its 114-134 BUT, not in 1 year, really that changed from 2022 to 2025, so 3 years... (or max = 18% over 3 years, or 6%)
|
|
-- so ann_growth_avg or max needs to factor in years of same prices
|
|
[DONE] -- Pragmatical growth before I bonkers:
|
|
[DONE] - monthly, prob. just flat by default (simple 1 or 12 bills for the year each year and I can get a growth rate from that)
|
|
[DONE] - and apply monthly growth - annually 12 + months from last bill each year
|
|
[DONE] - quarterly - should be able to take last qtr-1 ... qtr-4 and then grow them all by growth
|
|
[DONE]- annual easy
|
|
* once auto-filled bills exist:
|
|
[DONE]- calc growth
|
|
[DONE] - project out to I am 60 (A/Q/M) - A/Q done, M to go
|
|
[DONE] - probably need to allow a toggle to: allow show manual, show auto-filled past, show auto-filled future, show all
|
|
- remove bills from Living_Expenses (carefully - but by hand)
|
|
- fold future bills into calc so they are taken out in a more time and growth appropriate way
|
|
- inflation can then be put to a more realistic quarterly figure
|
|
|
|
LONGER/HARDER:
|
|
* need to work out 'first bill' and 'last bill' to auto-fill missing bills based on
|
|
-- all missing bills follow varying growth models & its by choice -- therefore I need this in DB
|
|
- ANN: flat, min, avg, max, manual
|
|
- QTR: flat, qtrly seasonal: min/avg/max/manual, qtrly simple: min/avg/max/manual, annual: min/avg/max/manual
|
|
- MON: flat, monthly: min/avg/max/manual, annual: min/avg/max/manual
|
|
-- use this logic to add missing bills (date):
|
|
-- ANN: missing annual bill, find date based on MM-DD and add new year - given we start with first_bill anyway, will only be used for future bill predictions
|
|
-- QTR: missing quarterly bill, find date based on MM-DD and ??? - can have missing bilsl in first year
|
|
-- MON: missing monthly bills, find date based on DD and put in each missing month
|
|
-- use this logic to add missing bills (amount):
|
|
-- ANN: future only, so add ann_growth (based on drop-down) for each future year
|
|
-- QTR: add growth (based on drop-down) for each future year
|
|
-- MON: add growth (based on drop-down) for each future year
|
|
|
|
MUCH LONGER/HARDER:
|
|
potentially for each bill_type, there are unique extras - e.g. THIS feels too hard:
|
|
water has 2 fixed charges (water & sewerage) and then a consumption charge (per ML)
|
|
elec has 1 fixe charge (daily) and then consumption (per kwh) BUT, also daily solar rate
|
|
gas has fixed charge and consumption
|
|
internet, kayo is monthly fixed (but can go up sometimes)
|
|
eweka is annual fixed
|
|
phone is messier again.
|