|
@@ -263,16 +263,16 @@
|
|
|
for idx from (1+ (length expenses))
|
|
for idx from (1+ (length expenses))
|
|
|
for info = (saver/get-income-info payment payments moment)
|
|
for info = (saver/get-income-info payment payments moment)
|
|
|
when info
|
|
when info
|
|
|
- collect (format nil "~D) ~A по [[~A]]: отложить _~$_ *~A*"
|
|
|
|
|
|
|
+ collect (format nil "~D) ~A по [[~A]]: *~A*, отложить _~$_"
|
|
|
idx
|
|
idx
|
|
|
(saver/payment-name payment)
|
|
(saver/payment-name payment)
|
|
|
(saver/payment-schedule payment)
|
|
(saver/payment-schedule payment)
|
|
|
- (/ (getf info :next-save) 100)
|
|
|
|
|
- (%saver/format-time (saver/payment-next-time payment moment)))))
|
|
|
|
|
|
|
+ (%saver/format-time (saver/payment-next-time payment moment))
|
|
|
|
|
+ (/ (getf info :next-save) 100))))
|
|
|
(closest-income (saver/find-next-payment incomes moment))
|
|
(closest-income (saver/find-next-payment incomes moment))
|
|
|
(closest-income-info (and closest-income (saver/get-income-info closest-income payments moment))))
|
|
(closest-income-info (and closest-income (saver/get-income-info closest-income payments moment))))
|
|
|
(if (or expenses-info incomes-info)
|
|
(if (or expenses-info incomes-info)
|
|
|
- (format nil "*Платежи*~%~{~A~^~%~}~%*Следующий платёж*~%'~A' *~A*, заплатить _~$_~%~%*Накопления*~%~{~A~^~%~}~%*Следующее накопление*~%'~A' *~A*, отложить _~$_~%~%*Накоплено должно быть* _~$_"
|
|
|
|
|
|
|
+ (format nil "*Платежи*~%~{~A~^~%~}~%*Следующий платёж*~%'~A': *~A*, заплатить _~$_~%~%*Накопления*~%~{~A~^~%~}~%*Следующее накопление*~%'~A': *~A*, отложить _~$_~%~%*Накоплено должно быть* _~$_"
|
|
|
expenses-info
|
|
expenses-info
|
|
|
(and closest-expense (saver/payment-name closest-expense))
|
|
(and closest-expense (saver/payment-name closest-expense))
|
|
|
(and closest-expense (%saver/format-time (saver/payment-next-time closest-expense moment)))
|
|
(and closest-expense (%saver/format-time (saver/payment-next-time closest-expense moment)))
|