diff --git a/internal/entity/license.go b/internal/entity/license.go index 5a1aa2e..105254a 100644 --- a/internal/entity/license.go +++ b/internal/entity/license.go @@ -103,10 +103,12 @@ type PartnerLicense struct { func (l *LicenseDB) ToPartnerLicense() PartnerLicense { now := time.Now() - daysToExpire := int64(l.EndDate.Sub(now).Hours() / 24) + daysToExpire := int64(l.EndDate.Sub(now).Hours() / 24) var licenseStatus string - if daysToExpire < 0 { + if now.Before(l.StartDate) { + licenseStatus = "INACTIVE" + } else if daysToExpire < 0 { licenseStatus = "EXPIRED" } else if daysToExpire <= 30 { licenseStatus = "EXPIRING_SOON" diff --git a/internal/services/auth/init.go b/internal/services/auth/init.go index f1e9c00..c80c320 100644 --- a/internal/services/auth/init.go +++ b/internal/services/auth/init.go @@ -73,7 +73,8 @@ func (u *AuthServiceImpl) AuthenticateUser(ctx context.Context, email, password } licensePartner = partnerLicense.ToPartnerLicense() - if licensePartner.LicenseStatus == "EXPIRED" { + if licensePartner.LicenseStatus == "EXPIRED" + || licensePartner.LicenseStatus == "INACTIVE" { return nil, errors.ErrorInvalidLicense } }