mnemo_cards/mnemo_cards_backend/lib/cron/discount_campaign_task.dart
Dmitry 306b2fdca7
Some checks are pending
Backend CI / test (push) Waiting to run
Backend CI / build (push) Blocked by required conditions
Deploy Mnemo Cards / Deploy Backend (push) Waiting to run
Deploy Mnemo Cards / Deploy Web App (push) Blocked by required conditions
Deploy Mnemo Cards / Final Verification (push) Blocked by required conditions
Deploy Telegram Bot / Deploy Telegram Bot (push) Waiting to run
fixes
2025-12-13 17:48:00 +03:00

29 lines
687 B
Dart

import 'package:mnemo_cards_backend/database/database.dart';
import '../discounts/discounts_manager.dart';
import 'task.dart' as task;
class DiscountCampaignTask with task.Task {
final DiscountsManager _discountsManager;
final AppDatabase _db;
DiscountCampaignTask(this._discountsManager, this._db);
@override
String get name => 'discount_campaign';
@override
Future<void> task() async {
final campaigns = await _db.discountDao.getCampaignsByStatuses([
'created',
'active',
]);
for (final campaign in campaigns) {
await _discountsManager.changeCampaignStatus(campaign);
}
}
@override
int get intervalSeconds => 15 * 60;
}