public async Task <ImageSaveError> SaveCampaignContentImage(FileModel file) { var campaign = await _campaignsRepository.GetByIdAsync(file.CampaignId, true); if (campaign == null) { return(ImageSaveError.VoucherCampaignNotFound); } var campaignContent = campaign.LocalizedContents.FirstOrDefault(c => c.ContentType == CampaignContentType.ImageUrl && c.Language == file.Language); if (campaignContent == null) { campaignContent = new VoucherCampaignContent { CampaignId = campaign.Id, ContentType = CampaignContentType.ImageUrl, Language = file.Language, }; campaignContent.Id = await _campaignContentsRepository.CreateAsync(campaignContent); } var url = await _fileService.SaveAsync(file, campaignContent.Id); if (url == null) { return(ImageSaveError.InvalidFileFormat); } campaignContent.Value = url; await _campaignContentsRepository.UpdateAsync(campaignContent); return(ImageSaveError.None); }
public async Task UpdateAsync(VoucherCampaignContent campaignContent) { var entity = _mapper.Map <VoucherCampaignContentEntity>(campaignContent); using (var context = _contextFactory.CreateDataContext()) { context.CampaignsContents.Update(entity); await context.SaveChangesAsync(); } }