27 lines
662 B
Go
27 lines
662 B
Go
package tasks
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
|
|
"git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/service"
|
|
)
|
|
|
|
const (
|
|
monthlyExpiryJobPeriod = 24 * time.Hour
|
|
monthlyExpiryJobTTL = 6 * time.Hour
|
|
)
|
|
|
|
func init() {
|
|
RegisterInnerTask("NotifyMonthlyPackageExpiry", "NotifyMonthlyPackageExpiry")
|
|
}
|
|
|
|
// NotifyMonthlyPackageExpiry uses an independent sys_job target and Redis lock.
|
|
func (t Task) NotifyMonthlyPackageExpiry() {
|
|
t.runWithRedisJobLock(context.Background(), redisJobLockOptions{
|
|
InvokeTarget: "NotifyMonthlyPackageExpiry",
|
|
Period: monthlyExpiryJobPeriod,
|
|
TTL: monthlyExpiryJobTTL,
|
|
}, service.SimWarning().NotifyMonthlyExpiry)
|
|
}
|