From a2c39263d3af4106ea7fcbcf9b85ac830655da6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E6=B6=9B?= Date: Sat, 20 Aug 2022 10:35:43 +0800 Subject: [PATCH] =?UTF-8?q?refactor(utils):=E6=94=B9=E8=BF=9B=E5=AF=B9?= =?UTF-8?q?=E4=BA=8E=E6=9C=88=E4=BB=BD=E5=B7=AE=E5=80=BC=E7=9A=84=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/time.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/utils/time.go b/utils/time.go index 1531dc1..10e88a4 100644 --- a/utils/time.go +++ b/utils/time.go @@ -1,6 +1,8 @@ package utils -import "time" +import ( + "time" +) func VeryBeginOfDate(date time.Time) time.Time { return time.Date(date.Year(), date.Month(), date.Day(), 0, 0, 0, 0, date.Location()) @@ -10,7 +12,7 @@ func VeryEndOfDate(date time.Time) time.Time { return time.Date(date.Year(), date.Month(), date.Day(), 23, 59, 59, 999999999, date.Location()) } -func IsNextMonth(t1, t2 time.Time) bool { +func DifferenceInMonth(t1, t2 time.Time) int { var differYear, differMonth int if t1.After(t2) { differYear = t1.Year() - t2.Year() @@ -19,5 +21,9 @@ func IsNextMonth(t1, t2 time.Time) bool { differYear = t2.Year() - t1.Year() differMonth = int(t2.Month() - t1.Month()) } - return (differMonth == -11 && differYear == 1) || (differMonth == 1 && differYear == 0) + return differYear*12 + differMonth +} + +func IsNextMonth(t1, t2 time.Time) bool { + return DifferenceInMonth(t1, t2) == 1 }