async Task DeleteUnenrolledDealers(CampaignDbCall call, IDbConnection connection) { foreach (var unenrolledDealerId in call.UnenrolledDealerIds) { try { await DeleteDealerBanners(unenrolledDealerId, connection); } catch (Exception error) { call.AddError(unenrolledDealerId, error); } } }
async Task ImportDealers(CampaignDbCall call, IDbConnection connection) { var banners = await SelectBanners(connection); var dealers = from dealer in call.Dealers join banner in banners on dealer.Id equals banner.DealerId into dealerBanners select(dealer.Id, new BannerImporter(this, dealer, dealerBanners, connection)); foreach (var(dealerId, importer) in dealers) { try { await importer.Import(); } catch (Exception error) { call.AddError(dealerId, error); } } }
public async Task ImportBanners(CampaignDbCall call, IDbConnection connection) { await ImportDealers(call, connection); await DeleteUnenrolledDealers(call, connection); }
public Task ImportCampaigns(CampaignDbCall call) => _dealerOnDb.ExecuteAction(async connection => { await _homeTable.ImportBanners(call, connection); await _conditionalTable.ImportBanners(call, connection); });