public async Task <bool> EditStoreAsync(EditStoreDto editStore) { var store = await _dbContext.Stores.FindAsync(editStore.Id); store.Name = editStore.Name; store.Address = editStore.Address; store.Phone = editStore.Phone; return(await _dbContext.SaveChangesAsync() > 0); }
public async Task <IActionResult> EditStore([FromBody] EditStoreDto store) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!await _storeRepository.StoreExistsAsync(store.Id)) { ModelState.AddModelError("store", "Store not found"); return(BadRequest(ModelState)); } if (await _storeRepository.IsDuplicateStoreAsync(store)) { ModelState.AddModelError("store", "Store already exists"); return(BadRequest(ModelState)); } var wasStoreEdited = await _storeRepository.EditStoreAsync(store); if (wasStoreEdited) { return(Ok()); } return(NoContent()); } catch (Exception e) { _logger.LogCritical($"PUT {Route} - {e.GetType().Name} - {e.Message} - {e.StackTrace}"); return(StatusCode(500, "An error ocurred in server")); } }
public async Task <bool> IsDuplicateStoreAsync(EditStoreDto editStore) { return(await _dbContext.Stores.AnyAsync(store => store.Name == editStore.Name && store.Id != editStore.Id && store.IsActive)); }