public async Task CreateOrUpdatePlaqueState(PlaqueStateCreateOrUpdateInput input) { await CheckValidation(input); if (input.Id.HasValue) { await UpdatePlaqueStateAsync(input); } else { await CreatePlaqueStateAsync(input); } }
private async Task CheckValidation(PlaqueStateCreateOrUpdateInput input) { var existingObj = (await _plaqueStateRepository.GetAll().AsNoTracking() .FirstOrDefaultAsync(l => l.Code == input.Code)); if (existingObj != null && existingObj.Id != input.Id) { throw new UserFriendlyException(L("ThisCodeAlreadyExists")); } existingObj = (await _plaqueStateRepository.GetAll().AsNoTracking() .FirstOrDefaultAsync(l => l.Name == input.Name)); if (existingObj != null && existingObj.Id != input.Id) { throw new UserFriendlyException(L("ThisNameAlreadyExists")); } }
public async Task <PlaqueStateCreateOrUpdateInput> GetPlaqueStateForEdit(NullableIdDto <int> input) { //Getting all available roles var output = new PlaqueStateCreateOrUpdateInput(); if (input.Id.HasValue) { //Editing an existing user var plaqueState = await _plaqueStateRepository.GetAsync(input.Id.Value); if (plaqueState != null) { ObjectMapper.Map <PlaqueState, PlaqueStateCreateOrUpdateInput>(plaqueState, output); } } return(output); }
private async Task UpdatePlaqueStateAsync(PlaqueStateCreateOrUpdateInput input) { var plaqueState = ObjectMapper.Map <PlaqueState>(input); await _plaqueStateRepository.UpdateAsync(plaqueState); }