修改了时间计算方法

This commit is contained in:
2024-08-08 17:00:57 +08:00
parent 3dce6ebfc8
commit 6137740b13
21 changed files with 119 additions and 593 deletions
+14 -23
View File
@@ -266,27 +266,28 @@ func (r *Coupon) AddSystemCoupon(c *gin.Context) {
// 时间区间
if req.ValidStartTime != nil {
// 获取本地时区
location, err := time.LoadLocation("Local")
// 字符串时间转localtime
validStartTime, err := utils.StrToLocalTime(*req.ValidStartTime)
if err != nil {
tx.Rollback()
responses.FailWithMessage("新增失败", c)
return
}
t, err := time.ParseInLocation("2006-01-02 15:04:05", *req.ValidStartTime, location)
if err != nil {
tx.Rollback()
responses.FailWithMessage("新增失败", c)
return
}
validStartTime := model.LocalTime(t)
coupon.ValidStartTime = &validStartTime
coupon.ValidStartTime = validStartTime
}
if req.ValidEndTime != nil {
// 字符串时间转localtime
validEndTime, err := utils.StrToLocalTime(*req.ValidEndTime)
if err != nil {
tx.Rollback()
responses.FailWithMessage("新增失败", c)
return
}
coupon.ValidEndTime = validEndTime
// 获取本地时区
location, err := time.LoadLocation("Local")
if err != nil {
@@ -295,21 +296,11 @@ func (r *Coupon) AddSystemCoupon(c *gin.Context) {
return
}
t, err := time.ParseInLocation("2006-01-02 15:04:05", *req.ValidEndTime, location)
if err != nil {
tx.Rollback()
responses.FailWithMessage("新增失败", c)
return
}
validEndTime := model.LocalTime(t)
coupon.ValidEndTime = &validEndTime
// 检测结束时间-不允许当天结束
now := time.Now()
year, month, day := now.Date()
endOfDay := time.Date(year, month, day, 23, 59, 59, 0, location)
if time.Time(validEndTime).Before(endOfDay) {
if time.Time(*validEndTime).Before(endOfDay) {
tx.Rollback()
responses.FailWithMessage("优惠卷过期时间最低设置为明天", c)
return
+2 -44
View File
@@ -10,7 +10,6 @@ import (
"hepa-calc-admin-api/global"
"hepa-calc-admin-api/utils"
"strconv"
"time"
)
type OrderSingle struct{}
@@ -49,34 +48,14 @@ func (b *OrderSingle) GetOrderSinglePage(c *gin.Context) {
return
}
// 获取单项配置
systemSingleDao := dao.SystemSingleDao{}
maps := make(map[string]interface{})
systemSingle, err := systemSingleDao.GetSystemSingle(maps)
if err != nil {
responses.FailWithMessage("内部错误", c)
return
}
// 处理返回值
g := dto.GetOrderSingleListDto(orderSingles)
for _, singleDto := range g {
// 有效时间
var validTime *time.Time
// 计算有效期
if singleDto.IsMember == 1 {
validTime = singleDto.MemberExpireDate
} else {
if singleDto.PayTime != nil {
payTime := singleDto.PayTime.Add(time.Duration(systemSingle.ValidDays) * 24 * time.Hour)
validTime = &payTime
}
singleDto.LoadValidDate(singleDto.MemberExpireDate)
}
singleDto.LoadValidDate(validTime)
}
result := make(map[string]interface{})
@@ -236,27 +215,9 @@ func (b *OrderSingle) GetOrderSingle(c *gin.Context) {
return
}
// 获取单项配置
systemSingleDao := dao.SystemSingleDao{}
maps := make(map[string]interface{})
systemSingle, err := systemSingleDao.GetSystemSingle(maps)
if err != nil {
responses.FailWithMessage("内部错误", c)
return
}
// 有效时间
var validTime *time.Time
// 计算有效期
if orderSingle.User.IsMember == 1 {
validTime = orderSingle.User.MemberExpireDate
} else {
if orderSingle.PayTime != nil {
payTime := orderSingle.PayTime.Add(time.Duration(systemSingle.ValidDays) * 24 * time.Hour)
validTime = &payTime
}
orderSingle.ValidDate = orderSingle.User.MemberExpireDate
}
g := dto.GetOrderSingleDto(orderSingle)
@@ -264,9 +225,6 @@ func (b *OrderSingle) GetOrderSingle(c *gin.Context) {
// 加载题目数据
g.LoadQuestion(orderSingle.Question)
// 加载到期时间
g.LoadValidDate(validTime)
// 加载用户数据
g.LoadUserAttr(orderSingle.User)
+4 -2
View File
@@ -287,7 +287,8 @@ func (b *Public) GetIndexData(c *gin.Context) {
}
for _, orderSingle := range orderSingles {
date := orderSingle.PayTime.Format("2006-01-02")
payTime := time.Time(*orderSingle.PayTime)
date := payTime.Format("2006-01-02")
results[date]++
}
}
@@ -310,7 +311,8 @@ func (b *Public) GetIndexData(c *gin.Context) {
}
for _, orderMember := range orderMembers {
date := orderMember.PayTime.Format("2006-01-02")
payTime := time.Time(*orderMember.PayTime)
date := payTime.Format("2006-01-02")
results[date]++
}
}
+6 -20
View File
@@ -11,7 +11,6 @@ import (
"hepa-calc-admin-api/global"
"hepa-calc-admin-api/utils"
"strconv"
"time"
)
type Question struct{}
@@ -242,14 +241,8 @@ func (b *Question) PutQuestion(c *gin.Context) {
// 优惠截止时间
if req.DiscountEndTime != nil {
// 获取本地时区
location, err := time.LoadLocation("Local")
if err != nil {
responses.FailWithMessage("优惠截止时间错误", c)
return
}
discountEndTime, err := time.ParseInLocation("2006-01-02 15:04:05", *req.DiscountEndTime, location)
// 字符串时间转localtime
discountEndTime, err := utils.StrToLocalTime(*req.DiscountEndTime)
if err != nil {
responses.FailWithMessage("优惠截止时间错误", c)
return
@@ -258,7 +251,7 @@ func (b *Question) PutQuestion(c *gin.Context) {
if question.DiscountEndTime == nil {
questionData["discount_end_time"] = discountEndTime
} else {
if *question.DiscountEndTime != discountEndTime {
if *question.DiscountEndTime != *discountEndTime {
questionData["discount_end_time"] = discountEndTime
}
}
@@ -384,22 +377,15 @@ func (b *Question) AddQuestion(c *gin.Context) {
// 处理优惠截止时间
if req.DiscountEndTime != nil {
// 获取本地时区
location, err := time.LoadLocation("Local")
// 字符串时间转localtime
discountEndTime, err := utils.StrToLocalTime(*req.DiscountEndTime)
if err != nil {
tx.Rollback()
responses.FailWithMessage("优惠截止时间错误", c)
return
}
discountEndTime, err := time.ParseInLocation("2006-01-02 15:04:05", *req.DiscountEndTime, location)
if err != nil {
tx.Rollback()
responses.FailWithMessage("优惠截止时间错误", c)
return
}
question.DiscountEndTime = &discountEndTime
question.DiscountEndTime = discountEndTime
}
questionDao := dao.QuestionDao{}
+6 -20
View File
@@ -10,7 +10,6 @@ import (
"hepa-calc-admin-api/global"
"hepa-calc-admin-api/utils"
"strconv"
"time"
)
type SystemMember struct{}
@@ -138,14 +137,8 @@ func (b *SystemMember) PutSystemMember(c *gin.Context) {
// 优惠截止时间
if req.DiscountEndTime != nil {
// 获取本地时区
location, err := time.LoadLocation("Local")
if err != nil {
responses.FailWithMessage("优惠截止时间错误", c)
return
}
discountEndTime, err := time.ParseInLocation("2006-01-02 15:04:05", *req.DiscountEndTime, location)
// 字符串时间转localtime
discountEndTime, err := utils.StrToLocalTime(*req.DiscountEndTime)
if err != nil {
responses.FailWithMessage("优惠截止时间错误", c)
return
@@ -154,7 +147,7 @@ func (b *SystemMember) PutSystemMember(c *gin.Context) {
if systemMember.DiscountEndTime == nil {
systemMemberData["discount_end_time"] = discountEndTime
} else {
if *systemMember.DiscountEndTime != discountEndTime {
if *systemMember.DiscountEndTime != *discountEndTime {
systemMemberData["discount_end_time"] = discountEndTime
}
}
@@ -228,22 +221,15 @@ func (b *SystemMember) AddSystemMember(c *gin.Context) {
// 处理优惠截止时间
if req.DiscountEndTime != nil {
// 获取本地时区
location, err := time.LoadLocation("Local")
// 字符串时间转localtime
discountEndTime, err := utils.StrToLocalTime(*req.DiscountEndTime)
if err != nil {
tx.Rollback()
responses.FailWithMessage("优惠截止时间错误", c)
return
}
discountEndTime, err := time.ParseInLocation("2006-01-02 15:04:05", *req.DiscountEndTime, location)
if err != nil {
tx.Rollback()
responses.FailWithMessage("优惠截止时间错误", c)
return
}
systemMember.DiscountEndTime = &discountEndTime
systemMember.DiscountEndTime = discountEndTime
}
systemMemberDao := dao.SystemMemberDao{}