diff --git a/internal/dao/bundleExtend.go b/internal/dao/bundleExtend.go index d904441..3d63e02 100644 --- a/internal/dao/bundleExtend.go +++ b/internal/dao/bundleExtend.go @@ -24,11 +24,14 @@ func AddBundleExtendRecord(data model.BundleExtensionRecords) error { if err := tx.Model(&model.BundleOrderRecords{}).Where(&model.BundleOrderRecords{CustomerID: strconv.Itoa(data.UserId)}).First(&record).Error; err != nil { return err } - - expireTime, err := time.Parse(time.DateOnly, record.ExpirationTime) - if err != nil { - return err + var expireTime time.Time + if record.ExpirationTime != "" { + et, _ := time.Parse(time.DateOnly, record.ExpirationTime) + expireTime = et + } else { + expireTime = time.Now() } + switch data.TimeUnit { case 1: expireTime = datetime.AddDay(expireTime, int64(data.AvailableDurationAdditional)) @@ -40,8 +43,7 @@ func AddBundleExtendRecord(data model.BundleExtensionRecords) error { return errors.New("时间单位有误") } record.ExpirationTime = expireTime.Format(time.DateOnly) - err = tx.Model(&model.BundleOrderRecords{}).Where(&model.BundleOrderRecords{UUID: record.UUID}).Updates(&record).Error - return err + return tx.Model(&model.BundleOrderRecords{}).Where(&model.BundleOrderRecords{UUID: record.UUID}).Updates(&record).Error } return nil })