Модуль вывода: добавлены метки выполнения

Этот коммит содержится в:
Softonik 2024-06-26 16:56:04 +03:00 коммит произвёл Nobody
родитель a2d7a7913f
коммит 2a73e2bf0c

Просмотреть файл

@ -17,8 +17,17 @@ func NewCLI() *CLI {
func (c *CLI) Печать(год *schet.Год) error {
c.год = год
fmt.Printf("## Год: %v\n", c.год.Год())
fmt.Printf("* Доход за год: %v р.\n", c.год.Доход())
пр, err := c.год.ПроцентСверх300тр()
if err != nil {
fmt.Printf("1пр свыше 300тр: ошибка: %v\n", err)
return err
}
fmt.Printf("* 1пр свыше 300тр: %v р.\n", пр)
err := c.кварталы()
fmt.Printf("\n")
err = c.распечататьКварталы()
if err != nil {
return err
}
@ -26,61 +35,40 @@ func (c *CLI) Печать(год *schet.Год) error {
return nil
}
func (c *CLI) кварталы() error {
func (c *CLI) распечататьКварталы() error {
цели := c.год.Цели()
for _, k := range цели.Кварталы {
c.квартал(k)
c.распечататьКвартал(k)
}
return nil
}
func (c *CLI) квартал(k *schet.Квартал) error {
fmt.Printf("### к%v\n\n", k.Номер())
fmt.Printf("- [ ] ОПС: %v р.\n", k.ОПС.Сумма())
func (c *CLI) распечататьКвартал(k *schet.Квартал) error {
fmt.Printf("### к%v\n", k.Номер())
fmt.Printf("* Доход: %v р.\n", k.Доход())
сделано := пометкаДляЦели(k.ЦельДостигнута(schet.ЦельОПС))
fmt.Printf("- [%v] ОПС: %v р.\n", сделано, k.ОПС.Сумма())
пр, err := k.ПроцентСверх300тр()
if err != nil {
fmt.Printf("- [ ] 1пр свыше 300тр: ошибка: %v\n", err)
return err
}
fmt.Printf("- [ ] 1пр свыше 300тр: %v р.\n", пр)
fmt.Printf("- [ ] УСН: %v р.\n", k.УСН.Сумма())
fmt.Printf("==================================\n\n")
сделано = пометкаДляЦели(k.ЦельДостигнута(schet.Цель1пр))
fmt.Printf("- [%v] 1пр свыше 300тр: %v р.\n", сделано, пр)
сделано = пометкаДляЦели(k.ЦельДостигнута(schet.ЦельУСН))
fmt.Printf("- [%v] УСН: %v р.\n", сделано, k.УСН.Сумма())
fmt.Printf("\n")
return nil
}
// func (g *CLI) Квартал(in int) (k *Квартал, e error) {
// return g.цели.Квартал(in)
// }
// func (g *CLI) ДобавитьДоход(доход float64, i int) error {
// k, err := g.Квартал(i)
// if err != nil {
// return err
// }
// g.доход += доход
// return k.ДобавитьДоход(доход)
// }
// func (g *CLI) Доход() float64 {
// return g.доход
// }
// func (g *CLI) ПроцентСверх300тр() (float64, error) {
// return ПроцентСверх300тр(g.доход), nil
// }
// func (g *CLI) Сверх300трвКвартале(квартал int) (float64, error) {
// сумматор := NewСумматор300тр()
// for i := НомерПервогоКвартала; i <= квартал; i++ {
// k, err := g.Квартал(i)
// if err != nil {
// return 0, err
// }
// сумматор.ДобавитьКвартал(k.доход)
// }
// return сумматор.Квартал(квартал)
// }
func пометкаДляЦели(b bool) string {
if b {
return "x"
}
return " "
}