niki/param/date.go

30 lines
441 B
Go

package param
import (
"fmt"
"strings"
"time"
)
type Date struct {
time.Time
}
func (t Date) MarshalJSON() ([]byte, error) {
date := t.Time.Format("2006-01-02")
fmt.Println(date)
date = fmt.Sprintf(`"%s"`, date)
return []byte(date), nil
}
func (t *Date) UnmarshalJSON(b []byte) (err error) {
s := strings.Trim(string(b), "\"")
date, err := time.Parse("2006-01-02", s)
if err != nil {
return err
}
t.Time = date
return
}