private async Task <PoiDto> AddPoiAsync(AddOrEditPoiDto dto) { Poi poi = Mapper.Map <Poi>(dto); DbContext.Pois.Add(poi); await DbContext.SaveChangesAsync(); return(Mapper.Map <PoiDto>(poi)); }
private async Task <PoiDto> EditPoiAsync(AddOrEditPoiDto dto) { Poi poi = await DbContext.Pois.FirstOrDefaultAsync(p => p.Id == dto.Id); if (poi == null) { throw new Exception(ExceptionMessages.NotFound); } Poi editedPoi = Mapper.Map <Poi>(dto); //TODO: propertynkent vizsgani aztan elmenteni if (poi.Name != editedPoi.Name) { poi.Name = editedPoi.Name; } if (poi.Url != editedPoi.Url) { poi.Url = editedPoi.Url; } if (poi.PhoneNumber != editedPoi.PhoneNumber) { poi.PhoneNumber = editedPoi.PhoneNumber; } if (poi.OpeningTime != editedPoi.OpeningTime) { poi.OpeningTime = editedPoi.OpeningTime; } if (poi.CloseTime != editedPoi.CloseTime) { poi.CloseTime = editedPoi.CloseTime; } if (!poi.Location.EqualsTopologically(editedPoi.Location)) { poi.Location = editedPoi.Location; } await DbContext.SaveChangesAsync(); return(Mapper.Map <PoiDto>(poi)); }
public async Task <PoiDto> AddOrEditPoiAsync(AddOrEditPoiDto dto) { if (dto == null) { throw new ArgumentNullException(); } if (string.IsNullOrEmpty(dto.Name)) { throw new Exception(ExceptionMessages.Required); } //TODO: visszaadni poit if (dto.Id == null) { return(await AddPoiAsync(dto)); } else { return(await EditPoiAsync(dto)); } }
public async Task <ActionResult <PoiDto> > AddOrEditPoi(AddOrEditPoiDto dto) => Result(await PoiManager.AddOrEditPoiAsync(dto));