fio.go (898B)
1 package fio 2 3 import ( 4 "fmt" 5 "time" 6 ) 7 8 type Fio struct { 9 Base_url string 10 Token string 11 } 12 13 func fmtDate(time time.Time) string { 14 return fmt.Sprintf("%d-%d-%d", time.Year(), time.Month(), time.Day()) 15 } 16 17 func (f *Fio) Period(from time.Time, to time.Time) *Root { 18 return get(fmt.Sprintf("%s/periods/%s/%s/%s/transactions.json", f.Base_url, f.Token, fmtDate(from), fmtDate(to))) 19 } 20 21 func (f *Fio) Statement(year int, id int) *Root { 22 return get(fmt.Sprintf("%s/by_id/%s/%d/%d/transactions.json", f.Base_url, f.Token, year, id)) 23 } 24 25 func (f *Fio) Last() *Root { 26 return get(fmt.Sprintf("%s/last/%s/transactions.json", f.Base_url, f.Token)) 27 } 28 29 func (f *Fio) SetLastID(id int) *Root { 30 return get(fmt.Sprintf("%s/set-last-id/%s/%d", f.Base_url, f.Token, id)) 31 } 32 33 func (f *Fio) SetLastDate(date time.Time) *Root { 34 return get(fmt.Sprintf("%s/set-last-date/%s/%s", f.Base_url, f.Token, fmtDate(date))) 35 }