예제 #1
0
        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);
        }