@fabrix/spool-cart
Version:
Spool - eCommerce Spool for Fabrix
47 lines (46 loc) • 1.65 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const spool_crons_1 = require("@fabrix/spool-crons");
class SubscriptionsCron extends spool_crons_1.Cron {
cancelFailed() {
const rule = new this.scheduler.RecurrenceRule();
rule.minute = 30;
this.scheduler.scheduleJob('SubscriptionsCron.cancelFailed', rule, () => {
this.app.services.SubscriptionService.cancelThisHour()
.catch(err => {
this.app.log.error(err);
});
});
}
renew() {
const rule = new this.scheduler.RecurrenceRule();
rule.minute = 0;
this.scheduler.scheduleJob('SubscriptionsCron.renew', rule, () => {
this.app.services.SubscriptionService.renewThisHour()
.catch(err => {
this.app.log.error(err);
});
});
}
retryFailed() {
const rule = new this.scheduler.RecurrenceRule();
rule.minute = 15;
this.scheduler.scheduleJob('SubscriptionsCron.retryFailed', rule, () => {
this.app.services.SubscriptionService.retryThisHour()
.catch(err => {
this.app.log.error(err);
});
});
}
willRenew() {
const rule = new this.scheduler.RecurrenceRule();
rule.minute = 0;
this.scheduler.scheduleJob('SubscriptionsCron.willRenew', rule, () => {
this.app.services.SubscriptionService.willRenewDate()
.catch(err => {
this.app.log.error(err);
});
});
}
}
exports.SubscriptionsCron = SubscriptionsCron;