Some checks are pending
Backend CI / test (push) Waiting to run
Backend CI / build (push) Blocked by required conditions
Mobile App CI / test (push) Waiting to run
Mobile App CI / build-android (push) Blocked by required conditions
Mobile App CI / build-ios (push) Blocked by required conditions
Web App CI / test (push) Waiting to run
Web App 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
29 lines
683 B
Dart
29 lines
683 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;
|
|
}
|