public async Task CreateOrUpdateProviderInfo(ProviderInfoCreateOrUpdateInput input) { await CheckValidation(input); if (input.Id.HasValue) { await UpdateProviderInfoAsync(input); } else { await CreateProviderInfoAsync(input); } }
private async Task CheckValidation(ProviderInfoCreateOrUpdateInput input) { var existingObj = (await _providerInfoRepository.GetAll().AsNoTracking() .FirstOrDefaultAsync(l => l.Code == input.Code)); if (existingObj != null && existingObj.Id != input.Id) { throw new UserFriendlyException(L("ThisCodeAlreadyExists")); } existingObj = (await _providerInfoRepository.GetAll().AsNoTracking() .FirstOrDefaultAsync(l => l.Name == input.Name)); if (existingObj != null && existingObj.Id != input.Id) { throw new UserFriendlyException(L("ThisNameAlreadyExists")); } }
public async Task <ProviderInfoCreateOrUpdateInput> GetProviderInfoForEdit(NullableIdDto <int> input) { //Getting all available roles var output = new ProviderInfoCreateOrUpdateInput(); if (input.Id.HasValue) { //Editing an existing user var providerInfo = await _providerInfoRepository.GetAsync(input.Id.Value); if (providerInfo != null) { ObjectMapper.Map <ProviderInfo, ProviderInfoCreateOrUpdateInput>(providerInfo, output); } } return(output); }
private async Task UpdateProviderInfoAsync(ProviderInfoCreateOrUpdateInput input) { var providerInfo = ObjectMapper.Map <ProviderInfo>(input); await _providerInfoRepository.UpdateAsync(providerInfo); }