package utils import ( "time" ) const ( timeDateLayout = "2006-01-02" timeSecondLayout = "2006-01-02 15:04:05" timeMinuteLayout = "2006-01-02 15:04" timeLayout = "15:04" ) func FormatDateTime(t *time.Time) string { if t == nil { return "" } return t.Format(timeDateLayout) } func ParseDateTime(dateTime string) (*time.Time, error) { t, err := time.ParseInLocation(timeDateLayout, dateTime, time.Local) if err != nil { return nil, err } return &t, nil } func FormatMinuteTime(t *time.Time) string { if t == nil { return "" } return t.Format(timeMinuteLayout) } func ParseMinuteTime(minuteTime string) (*time.Time, error) { t, err := time.ParseInLocation(timeMinuteLayout, minuteTime, time.Local) if err != nil { return nil, err } return &t, nil } func FormatSecondTime(t *time.Time) string { if t == nil { return "" } return t.Format(timeSecondLayout) } func ParseSecondTime(secondTime string) (*time.Time, error) { t, err := time.ParseInLocation(timeSecondLayout, secondTime, time.Local) if err != nil { return nil, err } return &t, nil } func FormatTime(t *time.Time) string { if t == nil { return "" } return t.Format(timeLayout) } func ParseTime(dateTime string) (*time.Time, error) { dateTime = "9999-01-01 " + dateTime t, err := time.ParseInLocation(timeMinuteLayout, dateTime, time.Local) if err != nil { return nil, err } return &t, nil } var WeekDayMap = map[string]string{ "Monday": "星期一", "Tuesday": "星期二", "Wednesday": "星期三", "Thursday": "星期四", "Friday": "星期五", "Saturday": "星期六", "Sunday": "星期日", } func ParseChWeekDay(t *time.Time) string { return WeekDayMap[t.Weekday().String()] }