|
@@ -673,3 +673,61 @@ func InArrayByInt(idIntList []int, searchId int) (has bool) {
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+// GetNowWeekMonday 获取本周周一的时间
|
|
|
+func GetNowWeekMonday() time.Time {
|
|
|
+ offset := int(time.Monday - time.Now().Weekday())
|
|
|
+ if offset == 1 { //正好是周日,但是按照中国人的理解,周日是一周最后一天,而不是一周开始的第一天
|
|
|
+ offset = -6
|
|
|
+ }
|
|
|
+ mondayTime := time.Now().AddDate(0, 0, offset)
|
|
|
+ mondayTime = time.Date(mondayTime.Year(), mondayTime.Month(), mondayTime.Day(), 0, 0, 0, 0, mondayTime.Location())
|
|
|
+ return mondayTime
|
|
|
+}
|
|
|
+
|
|
|
+// GetLastWeekMonday 获取上周周一的时间
|
|
|
+func GetLastWeekMonday() time.Time {
|
|
|
+ offset := int(time.Monday - time.Now().Weekday())
|
|
|
+ if offset == 1 { //正好是周日,但是按照中国人的理解,周日是一周最后一天,而不是一周开始的第一天
|
|
|
+ offset = -6
|
|
|
+ }
|
|
|
+ mondayTime := time.Now().AddDate(0, 0, offset-7)
|
|
|
+ mondayTime = time.Date(mondayTime.Year(), mondayTime.Month(), mondayTime.Day(), 0, 0, 0, 0, mondayTime.Location())
|
|
|
+ return mondayTime
|
|
|
+}
|
|
|
+
|
|
|
+// GetNowWeekSunDay 获取本周周日的时间
|
|
|
+func GetNowWeekSunday() time.Time {
|
|
|
+ return GetNowWeekMonday().AddDate(0, 0, 6)
|
|
|
+}
|
|
|
+
|
|
|
+// GetLastWeekSunday 获取上周周日的时间
|
|
|
+func GetLastWeekSunday() time.Time {
|
|
|
+ return GetLastWeekMonday().AddDate(0, 0, 6)
|
|
|
+}
|
|
|
+
|
|
|
+// GetNowMonthFirstDay 获取本月第一天的时间
|
|
|
+func GetNowMonthFirstDay() time.Time {
|
|
|
+ nowMonthFirstDay := time.Date(time.Now().Year(), time.Now().Month(), 1, 0, 0, 0, 0, time.Now().Location())
|
|
|
+ return nowMonthFirstDay
|
|
|
+}
|
|
|
+
|
|
|
+// GetNowMonthLastDay 获取本月最后一天的时间
|
|
|
+func GetNowMonthLastDay() time.Time {
|
|
|
+ nowMonthLastDay := time.Date(time.Now().Year(), time.Now().Month(), 1, 0, 0, 0, 0, time.Now().Location()).AddDate(0, 1, -1)
|
|
|
+ nowMonthLastDay = time.Date(nowMonthLastDay.Year(), nowMonthLastDay.Month(), nowMonthLastDay.Day(), 23, 59, 59, 0, nowMonthLastDay.Location())
|
|
|
+ return nowMonthLastDay
|
|
|
+}
|
|
|
+
|
|
|
+// GetNowMonthFirstDay 获取上月第一天的时间
|
|
|
+func GetLastMonthFirstDay() time.Time {
|
|
|
+ nowMonthFirstDay := time.Date(time.Now().Year(), time.Now().AddDate(0, -1, 0).Month(), 1, 0, 0, 0, 0, time.Now().Location())
|
|
|
+ return nowMonthFirstDay
|
|
|
+}
|
|
|
+
|
|
|
+// GetNowMonthLastDay 获取上月最后一天的时间
|
|
|
+func GetLastMonthLastDay() time.Time {
|
|
|
+ nowMonthLastDay := time.Date(time.Now().Year(), time.Now().AddDate(0, -1, 0).Month(), 1, 0, 0, 0, 0, time.Now().Location()).AddDate(0, 1, -1)
|
|
|
+ nowMonthLastDay = time.Date(nowMonthLastDay.Year(), nowMonthLastDay.Month(), nowMonthLastDay.Day(), 23, 59, 59, 0, nowMonthLastDay.Location())
|
|
|
+ return nowMonthLastDay
|
|
|
+}
|