diff --git a/pkg/u/u.go b/pkg/u/u.go index 6a0c1c3..56509b3 100644 --- a/pkg/u/u.go +++ b/pkg/u/u.go @@ -81,16 +81,6 @@ func Map[T any, R any](src []T, convert func(T) R) []R { // 时间 // ==================== -func DateHead(date time.Time) time.Time { - var y, m, d = date.Local().Date() - return time.Date(y, m, d, 0, 0, 0, 0, time.Local).UTC() -} - -func DateTail(date time.Time) time.Time { - var y, m, d = date.Local().Date() - return time.Date(y, m, d, 23, 59, 59, 999999999, time.Local).UTC() -} - func IsSameDate(date1, date2 time.Time) bool { var y1, m1, d1 = date1.Local().Date() var y2, m2, d2 = date2.Local().Date() @@ -98,7 +88,8 @@ func IsSameDate(date1, date2 time.Time) bool { } func Today() time.Time { - return DateHead(time.Now()) + var y, m, d = time.Now().Date() + return time.Date(y, m, d, 0, 0, 0, 0, time.Local) } func IsToday(date time.Time) bool { diff --git a/web/auth/session.go b/web/auth/session.go index 82256ce..0323651 100644 --- a/web/auth/session.go +++ b/web/auth/session.go @@ -16,7 +16,7 @@ func FindSession(accessToken string, now time.Time) (*m.Session, error) { Preload(field.Associations). Where( q.Session.AccessToken.Eq(accessToken), - q.Session.AccessTokenExpires.Gt(now), + q.Session.AccessTokenExpires.Gt(now.UTC()), ).First() } @@ -25,7 +25,7 @@ func FindSessionByRefresh(refreshToken string, now time.Time) (*m.Session, error Preload(field.Associations). Where( q.Session.RefreshToken.Eq(refreshToken), - q.Session.RefreshTokenExpires.Gt(now), + q.Session.RefreshTokenExpires.Gt(now.UTC()), ).First() } diff --git a/web/handlers/balance_activity.go b/web/handlers/balance_activity.go index cd761e9..ee6e257 100644 --- a/web/handlers/balance_activity.go +++ b/web/handlers/balance_activity.go @@ -1,7 +1,6 @@ package handlers import ( - "platform/pkg/u" "platform/web/auth" "platform/web/core" g "platform/web/globals" @@ -31,12 +30,10 @@ func PageBalanceActivity(c *fiber.Ctx) error { do = do.Where(q.Bill.As("Bill").BillNo.Eq(*req.BillNo)) } if req.CreatedAtStart != nil { - t := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.BalanceActivity.CreatedAt.Gte(t)) + do = do.Where(q.BalanceActivity.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - t := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.BalanceActivity.CreatedAt.Lte(t)) + do = do.Where(q.BalanceActivity.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } // 查询余额变动列表 @@ -93,12 +90,10 @@ func PageBalanceActivityByAdmin(c *fiber.Ctx) error { do = do.Where(q.Bill.As("Bill").BillNo.Eq(*req.BillNo)) } if req.CreatedAtStart != nil { - t := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.BalanceActivity.CreatedAt.Gte(t)) + do = do.Where(q.BalanceActivity.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - t := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.BalanceActivity.CreatedAt.Lte(t)) + do = do.Where(q.BalanceActivity.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } // 查询余额变动列表 @@ -155,12 +150,10 @@ func PageBalanceActivityOfUserByAdmin(c *fiber.Ctx) error { do = do.Where(q.Bill.As("Bill").BillNo.Eq(*req.BillNo)) } if req.CreatedAtStart != nil { - t := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.BalanceActivity.CreatedAt.Gte(t)) + do = do.Where(q.BalanceActivity.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - t := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.BalanceActivity.CreatedAt.Lte(t)) + do = do.Where(q.BalanceActivity.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } // 查询余额变动列表 diff --git a/web/handlers/batch.go b/web/handlers/batch.go index b21325c..af5f886 100644 --- a/web/handlers/batch.go +++ b/web/handlers/batch.go @@ -1,7 +1,6 @@ package handlers import ( - "platform/pkg/u" "platform/web/auth" "platform/web/core" c "platform/web/core" @@ -29,12 +28,10 @@ func PageBatch(ctx *fiber.Ctx) error { // 查询批次 conds := q.LogsUserUsage.Where(q.LogsUserUsage.UserID.Eq(authCtx.User.ID)) if req.TimeStart != nil { - start := u.DateHead(*req.TimeStart) - conds.Where(q.LogsUserUsage.Time.Gte(start)) + conds.Where(q.LogsUserUsage.Time.Gte(req.TimeStart.UTC())) } if req.TimeEnd != nil { - end := u.DateTail(*req.TimeEnd) - conds.Where(q.LogsUserUsage.Time.Lte(end)) + conds.Where(q.LogsUserUsage.Time.Lte(req.TimeEnd.UTC())) } if req.ResourceNo != nil { conds.Where(q.Resource.As("Resource").ResourceNo.Eq(*req.ResourceNo)) @@ -97,12 +94,10 @@ func PageBatchByAdmin(c *fiber.Ctx) error { do = do.Where(q.LogsUserUsage.ISP.Eq(*req.Isp)) } if req.CreatedAtStart != nil { - time := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.LogsUserUsage.Time.Gte(time)) + do = do.Where(q.LogsUserUsage.Time.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - time := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.LogsUserUsage.Time.Lte(time)) + do = do.Where(q.LogsUserUsage.Time.Lte(req.CreatedAtEnd.UTC())) } list, total, err := q.LogsUserUsage. @@ -166,12 +161,10 @@ func PageBatchOfUserByAdmin(ctx *fiber.Ctx) error { do = do.Where(q.LogsUserUsage.ISP.Eq(*req.Isp)) } if req.CreatedAtStart != nil { - t := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.LogsUserUsage.Time.Gte(t)) + do = do.Where(q.LogsUserUsage.Time.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - t := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.LogsUserUsage.Time.Lte(t)) + do = do.Where(q.LogsUserUsage.Time.Lte(req.CreatedAtEnd.UTC())) } list, total, err := q.LogsUserUsage. diff --git a/web/handlers/bill.go b/web/handlers/bill.go index 4e431d4..3d538a1 100644 --- a/web/handlers/bill.go +++ b/web/handlers/bill.go @@ -1,7 +1,6 @@ package handlers import ( - "platform/pkg/u" "platform/web/auth" "platform/web/core" g "platform/web/globals" @@ -40,12 +39,10 @@ func PageBillByAdmin(c *fiber.Ctx) error { do = do.Where(q.Bill.BillNo.Eq(*req.BillNo)) } if req.CreatedAtStart != nil { - time := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Bill.CreatedAt.Gte(time)) + do = do.Where(q.Bill.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - time := u.DateHead(*req.CreatedAtEnd) - do = do.Where(q.Bill.CreatedAt.Lte(time)) + do = do.Where(q.Bill.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } if req.ProductCode != nil { do = do.Where(q.Resource.As("Resource").Code.Eq(*req.ProductCode)) @@ -127,12 +124,10 @@ func PageBillOfUserByAdmin(c *fiber.Ctx) error { do = do.Where(q.Bill.BillNo.Eq(*req.BillNo)) } if req.CreatedAtStart != nil { - time := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Bill.CreatedAt.Gte(time)) + do = do.Where(q.Bill.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - time := u.DateHead(*req.CreatedAtEnd) - do = do.Where(q.Bill.CreatedAt.Lte(time)) + do = do.Where(q.Bill.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } if req.ProductCode != nil { do = do.Where(q.Resource.As("Resource").Code.Eq(*req.ProductCode)) @@ -207,12 +202,10 @@ func ListBill(c *fiber.Ctx) error { do.Where(q.Bill.Type.Eq(int(*req.Type))) } if req.CreateAfter != nil { - start := u.DateHead(*req.CreateAfter) - do = do.Where(q.Bill.CreatedAt.Gte(start)) + do = do.Where(q.Bill.CreatedAt.Gte(req.CreateAfter.UTC())) } if req.CreateBefore != nil { - end := u.DateTail(*req.CreateBefore) - do = do.Where(q.Bill.CreatedAt.Lte(end)) + do = do.Where(q.Bill.CreatedAt.Lte(req.CreateBefore.UTC())) } if req.BillNo != nil && *req.BillNo != "" { do.Where(q.Bill.BillNo.Eq(*req.BillNo)) diff --git a/web/handlers/channel.go b/web/handlers/channel.go index 7315fc4..2fef88b 100644 --- a/web/handlers/channel.go +++ b/web/handlers/channel.go @@ -42,12 +42,10 @@ func ListChannel(c *fiber.Ctx) error { } if req.ExpireAfter != nil { - start := u.DateHead(*req.ExpireAfter) - cond = cond.Where(q.Channel.ExpiredAt.Gte(start)) + cond = cond.Where(q.Channel.ExpiredAt.Gte(req.ExpireAfter.UTC())) } if req.ExpireBefore != nil { - end := u.DateTail(*req.ExpireBefore) - cond = cond.Where(q.Channel.ExpiredAt.Lte(end)) + cond = cond.Where(q.Channel.ExpiredAt.Lte(req.ExpireBefore.UTC())) } // 查询数据 @@ -226,18 +224,16 @@ func PageChannelByAdmin(c *fiber.Ctx) error { do = do.Where(q.Channel.IP.Eq(ip)) } if req.ExpiredAtStart != nil { - time := u.DateHead(*req.ExpiredAtStart) - do = do.Where(q.Channel.ExpiredAt.Gte(time)) + do = do.Where(q.Channel.ExpiredAt.Gte(req.ExpiredAtStart.UTC())) } if req.ExpiredAtEnd != nil { - time := u.DateHead(*req.ExpiredAtEnd) - do = do.Where(q.Channel.ExpiredAt.Lte(time)) + do = do.Where(q.Channel.ExpiredAt.Lte(req.ExpiredAtEnd.UTC())) } if req.Expired != nil { if *req.Expired { - do = do.Where(q.Channel.ExpiredAt.Lte(time.Now())) + do = do.Where(q.Channel.ExpiredAt.Lte(time.Now().UTC())) } else { - do = do.Where(q.Channel.ExpiredAt.Gt(time.Now())) + do = do.Where(q.Channel.ExpiredAt.Gt(time.Now().UTC())) } } @@ -308,12 +304,10 @@ func PageChannelOfUserByAdmin(c *fiber.Ctx) error { do = do.Where(q.Channel.Port.Eq(*req.ProxyPort)) } if req.ExpiredAtStart != nil { - t := u.DateHead(*req.ExpiredAtStart) - do = do.Where(q.Channel.ExpiredAt.Gte(t)) + do = do.Where(q.Channel.ExpiredAt.Gte(req.ExpiredAtStart.UTC())) } if req.ExpiredAtEnd != nil { - t := u.DateHead(*req.ExpiredAtEnd) - do = do.Where(q.Channel.ExpiredAt.Lte(t)) + do = do.Where(q.Channel.ExpiredAt.Lte(req.ExpiredAtEnd.UTC())) } // 查询通道列表 diff --git a/web/handlers/coupon_user.go b/web/handlers/coupon_user.go index e1d7174..d172869 100644 --- a/web/handlers/coupon_user.go +++ b/web/handlers/coupon_user.go @@ -2,7 +2,6 @@ package handlers import ( "errors" - "platform/pkg/u" "platform/web/auth" "platform/web/core" g "platform/web/globals" @@ -276,34 +275,28 @@ func couponUserPageConditions(req CouponUserPageFilter) []gen.Condition { } if req.Expired != nil { if *req.Expired { - conds = append(conds, q.CouponUser.ExpireAt.IsNotNull(), q.CouponUser.ExpireAt.Lte(time.Now())) + conds = append(conds, q.CouponUser.ExpireAt.IsNotNull(), q.CouponUser.ExpireAt.Lte(time.Now().UTC())) } else { - conds = append(conds, q.CouponUser.Where(q.CouponUser.ExpireAt.IsNull()).Or(q.CouponUser.ExpireAt.Gt(time.Now()))) + conds = append(conds, q.CouponUser.Where(q.CouponUser.ExpireAt.IsNull()).Or(q.CouponUser.ExpireAt.Gt(time.Now().UTC()))) } } if req.CreatedAtStart != nil { - start := u.DateHead(*req.CreatedAtStart) - conds = append(conds, q.CouponUser.CreatedAt.Gte(start)) + conds = append(conds, q.CouponUser.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - end := u.DateTail(*req.CreatedAtEnd) - conds = append(conds, q.CouponUser.CreatedAt.Lte(end)) + conds = append(conds, q.CouponUser.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } if req.ExpireAtStart != nil { - start := u.DateHead(*req.ExpireAtStart) - conds = append(conds, q.CouponUser.ExpireAt.Gte(start)) + conds = append(conds, q.CouponUser.ExpireAt.Gte(req.ExpireAtStart.UTC())) } if req.ExpireAtEnd != nil { - end := u.DateTail(*req.ExpireAtEnd) - conds = append(conds, q.CouponUser.ExpireAt.Lte(end)) + conds = append(conds, q.CouponUser.ExpireAt.Lte(req.ExpireAtEnd.UTC())) } if req.UsedAtStart != nil { - start := u.DateHead(*req.UsedAtStart) - conds = append(conds, q.CouponUser.UsedAt.Gte(start)) + conds = append(conds, q.CouponUser.UsedAt.Gte(req.UsedAtStart.UTC())) } if req.UsedAtEnd != nil { - end := u.DateTail(*req.UsedAtEnd) - conds = append(conds, q.CouponUser.UsedAt.Lte(end)) + conds = append(conds, q.CouponUser.UsedAt.Lte(req.UsedAtEnd.UTC())) } return conds } diff --git a/web/handlers/resource.go b/web/handlers/resource.go index cd348ce..18d031a 100644 --- a/web/handlers/resource.go +++ b/web/handlers/resource.go @@ -44,30 +44,26 @@ func PageResourceShort(c *fiber.Ctx) error { do.Where(q.ResourceShort.As(q.Resource.Short.Name()).Type.Eq(*req.Type)) } if req.CreateAfter != nil { - start := u.DateHead(*req.CreateAfter) - do = do.Where(q.Resource.CreatedAt.Gte(start)) + do = do.Where(q.Resource.CreatedAt.Gte(req.CreateAfter.UTC())) } if req.CreateBefore != nil { - end := u.DateTail(*req.CreateBefore) - do = do.Where(q.Resource.CreatedAt.Lte(end)) + do = do.Where(q.Resource.CreatedAt.Lte(req.CreateBefore.UTC())) } if req.ExpireAfter != nil { - start := u.DateHead(*req.ExpireAfter) - do = do.Where(q.ResourceShort.As(q.Resource.Short.Name()).ExpireAt.Gte(start)) + do = do.Where(q.ResourceShort.As(q.Resource.Short.Name()).ExpireAt.Gte(req.ExpireAfter.UTC())) } if req.ExpireBefore != nil { - end := u.DateTail(*req.ExpireBefore) - do = do.Where(q.ResourceShort.As(q.Resource.Short.Name()).ExpireAt.Lte(end)) + do = do.Where(q.ResourceShort.As(q.Resource.Short.Name()).ExpireAt.Lte(req.ExpireBefore.UTC())) } if req.Status != nil { var short = q.ResourceShort.As(q.Resource.Short.Name()) switch *req.Status { case 1: - var timeCond = q.Resource.Where(short.Type.Eq(int(m.ResourceModeTime)), short.ExpireAt.Gte(time.Now())) + var timeCond = q.Resource.Where(short.Type.Eq(int(m.ResourceModeTime)), short.ExpireAt.Gte(time.Now().UTC())) var quotaCond = q.Resource.Where(short.Type.Eq(int(m.ResourceModeQuota)), short.Quota.GtCol(short.Used)) do.Where(q.Resource.Where(timeCond).Or(quotaCond)) case 2: - var timeCond = q.Resource.Where(short.Type.Eq(int(m.ResourceModeTime)), short.ExpireAt.Lte(time.Now())) + var timeCond = q.Resource.Where(short.Type.Eq(int(m.ResourceModeTime)), short.ExpireAt.Lte(time.Now().UTC())) var quotaCond = q.Resource.Where(short.Type.Eq(int(m.ResourceModeQuota)), short.Quota.LteCol(short.Used)) do.Where(q.Resource.Where(timeCond).Or(quotaCond)) } @@ -145,30 +141,26 @@ func PageResourceLong(c *fiber.Ctx) error { do.Where(q.ResourceLong.As(q.Resource.Long.Name()).Type.Eq(int(*req.Type))) } if req.CreateAfter != nil { - start := u.DateHead(*req.CreateAfter) - do = do.Where(q.Resource.CreatedAt.Gte(start)) + do = do.Where(q.Resource.CreatedAt.Gte(req.CreateAfter.UTC())) } if req.CreateBefore != nil { - end := u.DateTail(*req.CreateBefore) - do = do.Where(q.Resource.CreatedAt.Lte(end)) + do = do.Where(q.Resource.CreatedAt.Lte(req.CreateBefore.UTC())) } if req.ExpireAfter != nil { - start := u.DateHead(*req.ExpireAfter) - do = do.Where(q.ResourceLong.As(q.Resource.Long.Name()).ExpireAt.Gte(start)) + do = do.Where(q.ResourceLong.As(q.Resource.Long.Name()).ExpireAt.Gte(req.ExpireAfter.UTC())) } if req.ExpireBefore != nil { - end := u.DateTail(*req.ExpireBefore) - do = do.Where(q.ResourceLong.As(q.Resource.Long.Name()).ExpireAt.Lte(end)) + do = do.Where(q.ResourceLong.As(q.Resource.Long.Name()).ExpireAt.Lte(req.ExpireBefore.UTC())) } if req.Status != nil { var long = q.ResourceLong.As(q.Resource.Long.Name()) switch *req.Status { case 1: - var timeCond = q.Resource.Where(long.Type.Eq(int(m.ResourceModeTime)), long.ExpireAt.Gte(time.Now())) + var timeCond = q.Resource.Where(long.Type.Eq(int(m.ResourceModeTime)), long.ExpireAt.Gte(time.Now().UTC())) var quotaCond = q.Resource.Where(long.Type.Eq(int(m.ResourceModeQuota)), long.Quota.GtCol(long.Used)) do.Where(q.Resource.Where(timeCond).Or(quotaCond)) case 2: - var timeCond = q.Resource.Where(long.Type.Eq(int(m.ResourceModeTime)), long.ExpireAt.Lte(time.Now())) + var timeCond = q.Resource.Where(long.Type.Eq(int(m.ResourceModeTime)), long.ExpireAt.Lte(time.Now().UTC())) var quotaCond = q.Resource.Where(long.Type.Eq(int(m.ResourceModeQuota)), long.Quota.LteCol(long.Used)) do.Where(q.Resource.Where(timeCond).Or(quotaCond)) } @@ -243,18 +235,16 @@ func PageResourceShortByAdmin(c *fiber.Ctx) error { do = do.Where(q.ResourceShort.As("Short").Type.Eq(int(*req.Mode))) } if req.CreatedAtStart != nil { - time := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Resource.CreatedAt.Gte(time)) + do = do.Where(q.Resource.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - time := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.Resource.CreatedAt.Lte(time)) + do = do.Where(q.Resource.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } if req.Expired != nil { if *req.Expired { do = do.Where(q.Resource.Where( q.ResourceShort.As("Short").Type.Eq(int(m.ResourceModeTime)), - q.ResourceShort.As("Short").ExpireAt.Lte(time.Now()), + q.ResourceShort.As("Short").ExpireAt.Lte(time.Now().UTC()), ).Or( q.ResourceShort.As("Short").Type.Eq(int(m.ResourceModeQuota)), q.ResourceShort.As("Short").Quota.LteCol(q.ResourceShort.As("Short").Used), @@ -262,7 +252,7 @@ func PageResourceShortByAdmin(c *fiber.Ctx) error { } else { do = do.Where(q.Resource.Where( q.ResourceShort.As("Short").Type.Eq(int(m.ResourceModeTime)), - q.ResourceShort.As("Short").ExpireAt.Gt(time.Now()), + q.ResourceShort.As("Short").ExpireAt.Gt(time.Now().UTC()), ).Or( q.ResourceShort.As("Short").Type.Eq(int(m.ResourceModeQuota)), q.ResourceShort.As("Short").Quota.GtCol(q.ResourceShort.As("Short").Used), @@ -337,18 +327,16 @@ func PageResourceLongByAdmin(c *fiber.Ctx) error { do = do.Where(q.ResourceLong.As("Long").Type.Eq(*req.Mode)) } if req.CreatedAtStart != nil { - start := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Resource.CreatedAt.Gte(start)) + do = do.Where(q.Resource.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - end := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.Resource.CreatedAt.Lte(end)) + do = do.Where(q.Resource.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } if req.Expired != nil { if *req.Expired { do = do.Where(q.Resource.Where( q.ResourceLong.As("Long").Type.Eq(int(m.ResourceModeTime)), - q.ResourceLong.As("Long").ExpireAt.Lte(time.Now()), + q.ResourceLong.As("Long").ExpireAt.Lte(time.Now().UTC()), ).Or( q.ResourceLong.As("Long").Type.Eq(int(m.ResourceModeQuota)), q.ResourceLong.As("Long").Quota.LteCol(q.ResourceLong.As("Long").Used), @@ -356,7 +344,7 @@ func PageResourceLongByAdmin(c *fiber.Ctx) error { } else { do = do.Where(q.Resource.Where( q.ResourceLong.As("Long").Type.Eq(int(m.ResourceModeTime)), - q.ResourceLong.As("Long").ExpireAt.Gt(time.Now()), + q.ResourceLong.As("Long").ExpireAt.Gt(time.Now().UTC()), ).Or( q.ResourceLong.As("Long").Type.Eq(int(m.ResourceModeQuota)), q.ResourceLong.As("Long").Quota.GtCol(q.ResourceLong.As("Long").Used), @@ -428,12 +416,10 @@ func PageResourceShortOfUserByAdmin(c *fiber.Ctx) error { do = do.Where(q.ResourceShort.As("Short").Type.Eq(int(*req.Mode))) } if req.CreatedAtStart != nil { - t := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Resource.CreatedAt.Gte(t)) + do = do.Where(q.Resource.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - t := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.Resource.CreatedAt.Lte(t)) + do = do.Where(q.Resource.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } list, total, err := q.Resource. @@ -499,12 +485,10 @@ func PageResourceLongOfUserByAdmin(c *fiber.Ctx) error { do = do.Where(q.ResourceLong.As("Long").Type.Eq(*req.Mode)) } if req.CreatedAtStart != nil { - t := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Resource.CreatedAt.Gte(t)) + do = do.Where(q.Resource.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - t := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.Resource.CreatedAt.Lte(t)) + do = do.Where(q.Resource.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } list, total, err := q.Resource. @@ -572,9 +556,9 @@ func AllActiveResource(c *fiber.Ctx) error { q.Resource.Type.Eq(int(m.ResourceTypeShort)), q.ResourceShort.As(q.Resource.Short.Name()).Where( short.Type.Eq(int(m.ResourceModeTime)), - short.ExpireAt.Gte(now), + short.ExpireAt.Gte(now.UTC()), q.ResourceShort.As(q.Resource.Short.Name()). - Where(short.LastAt.Lt(u.Today())). + Where(short.LastAt.Lt(u.Today().UTC())). Or(short.Quota.GtCol(short.Daily)), ).Or( short.Type.Eq(int(m.ResourceModeQuota)), @@ -584,9 +568,9 @@ func AllActiveResource(c *fiber.Ctx) error { q.Resource.Type.Eq(int(m.ResourceTypeLong)), q.ResourceLong.As(q.Resource.Long.Name()).Where( long.Type.Eq(int(m.ResourceModeTime)), - long.ExpireAt.Gte(now), + long.ExpireAt.Gte(now.UTC()), q.ResourceLong.As(q.Resource.Long.Name()). - Where(long.LastAt.Lt(u.Today())). + Where(long.LastAt.Lt(u.Today().UTC())). Or(long.Quota.GtCol(long.Daily)), ).Or( long.Type.Eq(int(m.ResourceModeQuota)), @@ -765,12 +749,10 @@ func StatisticResourceUsage(c *fiber.Ctx) error { ) if req.TimeAfter != nil { - start := u.DateHead(*req.TimeAfter) - do = do.Where(q.LogsUserUsage.Time.Gte(start)) + do = do.Where(q.LogsUserUsage.Time.Gte(req.TimeAfter.UTC())) } if req.TimeBefore != nil { - end := u.DateTail(*req.TimeBefore) - do = do.Where(q.LogsUserUsage.Time.Lte(end)) + do = do.Where(q.LogsUserUsage.Time.Lte(req.TimeBefore.UTC())) } var data = new(StatisticResourceUsageResp) diff --git a/web/handlers/trade.go b/web/handlers/trade.go index e536459..9512b36 100644 --- a/web/handlers/trade.go +++ b/web/handlers/trade.go @@ -5,7 +5,6 @@ import ( "fmt" "log/slog" "platform/pkg/env" - "platform/pkg/u" "platform/web/auth" "platform/web/core" g "platform/web/globals" @@ -53,12 +52,10 @@ func PageTradeByAdmin(c *fiber.Ctx) error { do = do.Where(q.Trade.Status.Eq(*req.Status)) } if req.CreatedAtStart != nil { - time := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Trade.CreatedAt.Gte(time)) + do = do.Where(q.Trade.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - time := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.Trade.CreatedAt.Lte(time)) + do = do.Where(q.Trade.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } // 查询用户列表 @@ -129,12 +126,10 @@ func PageTradeOfUserByAdmin(c *fiber.Ctx) error { do = do.Where(q.Trade.Status.Eq(*req.Status)) } if req.CreatedAtStart != nil { - time := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.Trade.CreatedAt.Gte(time)) + do = do.Where(q.Trade.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - time := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.Trade.CreatedAt.Lte(time)) + do = do.Where(q.Trade.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } // 查询订单列表 diff --git a/web/handlers/user.go b/web/handlers/user.go index 09f51b4..38ab379 100644 --- a/web/handlers/user.go +++ b/web/handlers/user.go @@ -2,7 +2,6 @@ package handlers import ( "errors" - "platform/pkg/u" "platform/web/auth" "platform/web/core" g "platform/web/globals" @@ -68,12 +67,10 @@ func PageUserByAdmin(c *fiber.Ctx) error { } } if req.CreatedAtStart != nil { - start := u.DateHead(*req.CreatedAtStart) - do = do.Where(q.User.CreatedAt.Gte(start)) + do = do.Where(q.User.CreatedAt.Gte(req.CreatedAtStart.UTC())) } if req.CreatedAtEnd != nil { - end := u.DateTail(*req.CreatedAtEnd) - do = do.Where(q.User.CreatedAt.Lte(end)) + do = do.Where(q.User.CreatedAt.Lte(req.CreatedAtEnd.UTC())) } // 查询用户列表 diff --git a/web/routes.go b/web/routes.go index fff9517..2142ac7 100644 --- a/web/routes.go +++ b/web/routes.go @@ -29,7 +29,7 @@ func ApplyRouters(app *fiber.App) { debug.Get("/sms/:phone", handlers.DebugGetSmsCode) debug.Get("/iden/clear/:phone", handlers.DebugIdentifyClear) debug.Get("/session/now", func(ctx *fiber.Ctx) error { - rs, err := q.Session.Where(q.Session.AccessTokenExpires.Gt(time.Now())).Find() + rs, err := q.Session.Where(q.Session.AccessTokenExpires.Gt(time.Now().UTC())).Find() if err != nil { return err } diff --git a/web/services/channel_baiyin.go b/web/services/channel_baiyin.go index 44afa05..fabb80e 100644 --- a/web/services/channel_baiyin.go +++ b/web/services/channel_baiyin.go @@ -312,7 +312,7 @@ func (s *channelBaiyinProvider) ClearExpiredChannels(proxyId int32) (int, error) Select(q.Channel.BatchNo). Where( q.Channel.BatchNo.In(batchList...), - q.Channel.ExpiredAt.Gte(now), + q.Channel.ExpiredAt.Gte(now.UTC()), ). Group(q.Channel.BatchNo). Scan(&batchQueried) diff --git a/web/services/coupon.go b/web/services/coupon.go index e322e08..f69f227 100644 --- a/web/services/coupon.go +++ b/web/services/coupon.go @@ -134,7 +134,7 @@ func (s *couponService) GetUserCoupon(uid int32, cuid int32, amount decimal.Deci q.CouponUser.ID.Eq(cuid), q.CouponUser.UserID.Eq(uid), q.CouponUser.Status.Eq(int(m.CouponUserStatusUnused)), - q.CouponUser.Where(q.CouponUser.ExpireAt.IsNull()).Or(q.CouponUser.ExpireAt.Gt(time.Now())), + q.CouponUser.Where(q.CouponUser.ExpireAt.IsNull()).Or(q.CouponUser.ExpireAt.Gt(time.Now().UTC())), ).Take() if errors.Is(err, gorm.ErrRecordNotFound) { return nil, core.NewBizErr("优惠券不存在或已失效")