public async Task <IActionResult> Delete(long id)
        {
            var order = await _orderAppService.GetById(id);

            await _orderAppService.RemoveAsync(order);

            return(Ok());
        }
Beispiel #2
0
        public async Task Create(OrderItemCreateModel orderItem)
        {
            if (orderItem.OrderId == null || await _orderAppService.GetById(orderItem.OrderId) == null)
            {
                throw new Exception("Order not found");
            }

            if (orderItem.ProductId == null)
            {
                throw new Exception("No product given");
            }
            var product = await _productAppService.GetById(orderItem.ProductId);

            if (product == null)
            {
                throw new Exception("No product match has been found.");
            }

            int newProductStock = product.Stock - orderItem.Quantity;


            product.Stock = newProductStock;
            await _productAppService.UpdateStock(product.Stock, product.Id);

            Models.OrderItem newOrderItem = new Models.OrderItem()
            {
                Number      = product.Number,
                Price       = product.Price,
                ProductId   = product.Id,
                Description = product.Description,
                Name        = product.Name,
                OrderId     = orderItem.OrderId,
                Quantity    = orderItem.Quantity,
                SKUCode     = product.SKUCode,
                Tax         = product.TaxGroup.Percentage,
                Weight      = product.Weight
            };
            await _repository.InsertAsync(newOrderItem);

            return;
        }
        public async Task <OrderListModel> PrepareEditModel(Guid orderId)
        {
            var model = new OrderListModel();
            var order = await _appService.GetById(orderId);

            model.OrderId        = orderId;
            model.NewOrderNumber = order.Number;
            var customers = await _customerAppService.GetAll();

            model.Customers = customers.Select(x => new SelectListItem {
                Text = x.CompanyName, Value = x.Id.ToString()
            }).ToList();
            model.Customers.FirstOrDefault(x => x.Value == order.CustomerId.ToString()).Selected = true;

            var companies = await _companyAppService.GetAll();

            model.Companies = companies.Select(x => new SelectListItem {
                Text = x.Name, Value = x.Id.ToString()
            }).ToList();
            model.Companies.FirstOrDefault(x => x.Value == order.CompanyId.ToString()).Selected = true;

            //ISSUE
            var address = await _addressAppService.GetAllByCustomerId(order.CustomerId);

            model.Addresses = address.Select(x => new SelectListItem {
                Text = x.StreetAddress, Value = x.Id.ToString()
            }).ToList();
            model.Addresses.FirstOrDefault(x => x.Value == order.CustomerAddressId.ToString()).Selected = true;

            var paymentTypes = await _paymentTypeAppService.GetAll();

            model.PaymentTypes = paymentTypes.Select(x => new SelectListItem {
                Text = x.TypeName, Value = x.Id.ToString()
            }).ToList();
            model.PaymentTypes.FirstOrDefault(x => x.Value == order.PaymentTypeId.ToString()).Selected = true;
            return(model);
        }
        public IActionResult Get(Guid id)
        {
            var viewModel = _orderAppService.GetById(id);

            return(Response(viewModel));
        }
Beispiel #5
0
        public async Task <IHttpActionResult> Get(Guid id)
        {
            var result = await _orderAppService.GetById(id);

            return(Ok(result));
        }
Beispiel #6
0
        public async Task <IActionResult> Get(Guid id)
        {
            var data = await _orderAppService.GetById(id);

            return(Ok(data));
        }