public async Task <LocalisationTextDto> GetAsync(string id) { var localisationText = await GetLocalisationTextAsync(id); if (localisationText == null) { return(null); } LocalisationTextDto localisationTextDto = new LocalisationTextDto() { Id = localisationText.Id, ETag = localisationText.ETag, GroupId = localisationText.GroupId, Culture = localisationText.Culture, Section = localisationText.Section, Key = localisationText.Key, Remark = localisationText.Remark, Priority = localisationText.Priority, Value = localisationText.Value, IncludeInPod = localisationText.IncludeInPod, UpdatedOnUtc = localisationText.UpdatedOnUtc, UpdatedById = localisationText.UpdatedById, UpdatedByName = localisationText.UpdatedByName }; return(localisationTextDto); }
public async Task <DocumentUpdateResultDto> CreateAsync(LocalisationTextDto localisationTextDto) { await CheckForDuplicates(localisationTextDto); LocalisationText localisationText = new LocalisationText(); AssignLocalisationDtoToEntity(localisationText, localisationTextDto); return(await _dataContext.CreateDocumentAsync(localisationText)); }
public async Task <DocumentUpdateResultDto> UpdateAsync(LocalisationTextDto localisationTextDto) { await CheckForDuplicates(localisationTextDto); var localisation = await GetLocalisationTextAsync(localisationTextDto.Id); AssignLocalisationDtoToEntity(localisation, localisationTextDto); return(await _dataContext.ReplaceDocumentAsync(localisation)); }
private async Task CheckForDuplicates(LocalisationTextDto localisationTextDto) { var exists = await _dataContext.AnyAsync <LocalisationText>(q => q.Where(d => d.Key == localisationTextDto.Key && d.GroupId == localisationTextDto.GroupId && d.Culture == localisationTextDto.Culture && d.Section == localisationTextDto.Section && (localisationTextDto.Id == null || d.Id != localisationTextDto.Id))); if (exists) { throw new DocumentDuplicateException(); } }
private void AssignLocalisationDtoToEntity(LocalisationText localisationSetting, LocalisationTextDto localisationSettingDto) { localisationSetting.Section = localisationSettingDto.Section; localisationSetting.Culture = localisationSettingDto.Culture; localisationSetting.Key = localisationSettingDto.Key; localisationSetting.Remark = localisationSettingDto.Remark; localisationSetting.Value = localisationSettingDto.Value; localisationSetting.IncludeInPod = localisationSettingDto.IncludeInPod; localisationSetting.Priority = ConfigurationHelper.GetConfigurationPriority(localisationSettingDto.GroupId, localisationSettingDto.Culture, localisationSettingDto.Section); if (!string.IsNullOrEmpty(localisationSetting.Id)) { localisationSetting.ETag = localisationSettingDto.ETag; } }
public async Task <DocumentUpdateResultDto> Put([FromBody] LocalisationTextDto localisationTextDto) { return(await _localisationService.UpdateAsync(localisationTextDto)); }