public async Task <AddProductOutputDto> AddProductAsync(AddProductInputDto aParams) { var output = new AddProductOutputDto(); try { var item = new Domain.Models.Product { Name = aParams.Name, Price = aParams.Price, DeliveryPrice = aParams.DeliveryPrice, Description = aParams.Description, ProductOptions = Mapper.Map <List <Domain.Models.ProductOption> >(aParams.ProductOptions) }; Domain.Models.Product product = await UnitOfWork.ProductRepository.AddProductAsync(item); await UnitOfWork.SaveChanges(); output = Mapper.Map <AddProductOutputDto>(product); } catch (Exception e) { output.ResultErrors.Messages.Add(e.Message); } return(output); }
public async Task <RemoveProductOptionOutputDto> RemoveProductOption(RemoveProductOptionInputDto aParams) { RemoveProductOptionOutputDto output = new RemoveProductOptionOutputDto(); try { await UnitOfWork.ProductOptionRepository.RemoveProductOptionsAsync(aParams.Id); await UnitOfWork.SaveChanges(); } catch (Exception e) { output.ResultErrors.Messages.Add(e.Message); } return(output); }