常用类型及数据操作方法
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

62 lines
1.4 KiB

package helper
import (
"strconv"
"time"
)
func FormatDateTime(str string) string {
date, err := strconv.ParseInt(str, 10, 64)
if err != nil {
return ""
}
return time.Unix(date, 0).Format("2006-01-02 15:04:05")
}
func FormatDate(str string) string {
date, err := strconv.ParseInt(str, 10, 64)
if err != nil {
return ""
}
return time.Unix(date, 0).Format("2006-01-02")
}
//获取当天开始时间戳
func GetTodayStartTimeStamp() int64{
var reserveTime time.Time
loc, _ := time.LoadLocation("Asia/Shanghai")
date := time.Now().Format("2006-01-02")
reserveTime,_ = time.ParseInLocation("2006-01-02",date,loc)
return reserveTime.Unix()
}
//获取本周开始时间戳
func GetWeekStartTimeStamp() int64{
var reserveTime time.Time
now := time.Now()
loc, _ := time.LoadLocation("Asia/Shanghai")
offset := int(time.Monday - now.Weekday())
if offset > 0 {
offset = -6
}
weekStartDate := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, time.Local).AddDate(0, 0, offset)
weekMonday := weekStartDate.Format("2006-01-02")
reserveTime,_ = time.ParseInLocation("2006-01-02",weekMonday,loc)
return reserveTime.Unix()
}
//获取当月开始时间戳
func GetMonthStartTimeStamp() int64{
var reserveTime time.Time
loc, _ := time.LoadLocation("Asia/Shanghai")
date := time.Now().Format("2006-01")
reserveTime,_ = time.ParseInLocation("2006-01",date,loc)
return reserveTime.Unix()
}