package timez import "time" func YmdHiParse(parse string, tOffset int32) (Parse, error) { p := NewParse(parse, tOffset) return p.YmdHiParse() } type Parse struct { t time.Time parse string tOffset int32 } func NewParse(parse string, tOffset int32) Parse { return Parse{ parse: parse, tOffset: tOffset, } } func (s Parse) YmdHiParse() (Parse, error) { t, err := time.ParseInLocation("2006-01-02 15:04", s.parse, Location(s.tOffset)) if err != nil { return Parse{}, err } return Parse{ t: t, }, nil } func (s Parse) Unix() int64 { if s.t.IsZero() { return 0 } return s.t.Unix() }