internal override EntityRef Submit(OrderRequisition requisition, OrderEditorComponent component)
            {
                ModifyOrderResponse response = null;

                requisition.OrderRef = component.OrderRef;
                Platform.GetService <IOrderEntryService>(service =>
                {
                    response = service.ModifyOrder(new ModifyOrderRequest(requisition));
                });
                return(response.Order.OrderRef);
            }
예제 #2
0
        public ModifyOrderResponse ModifyOrder(ModifyOrderRequest request)
        {
            ModifyOrderResponse response = new ModifyOrderResponse();

            Order order = _orderRepository
                          .FindBy(request.OrderID);

            order.Id             = request.OrderID;
            order.OrderDate      = request.OrderDate;
            order.RequiredDate   = request.RequiredDate;
            order.ShippedDate    = request.ShippedDate;
            order.Freight        = request.Freight;
            order.ShipName       = request.ShipName;
            order.ShipAddress    = request.ShipAddress;
            order.ShipCity       = request.ShipCity;
            order.ShipRegion     = request.ShipRegion;
            order.ShipPostalCode = request.ShipPostalCode;
            order.ShipCountry    = request.ShipCountry;
            order.Products       = request.Products.ConvertToProducts();
            order.Employee       = request.Employee.ConvertToEmployee();
            order.Customer       = request.Customer.ConvertToCustomer();
            order.Shipper        = request.Shipper.ConvertToShipper();


            if (order.GetBrokenRules().Count() > 0)
            {
                response.Errors = order.GetBrokenRules().ToList();
            }
            else
            {
                try {
                    _orderRepository.Save(order);
                    _uow.Commit();
                    response.Errors = new List <BusinessRule>();
                } catch (Exception ex)
                {
                    response.Errors = new List <BusinessRule>();
                    response.Errors.Add(new BusinessRule("DAL", "DAL_ERROR: " + ex.Message));
                }
            }


            return(response);
        }
예제 #3
0
        public JsonResult Update(OrderDetailView vm)
        {
            GetOrderRequest request = new GetOrderRequest();

            request.OrderID = vm.OrderID;

            ModifyOrderRequest updateRequest = _orderService.GetOrder(request).Order.ConvertToModifyOrderRequest();

            updateRequest.OrderID = vm.OrderID;
            GetCustomerRequest customerRequest = new GetCustomerRequest();

            customerRequest.CustomerID = vm.CustomerCustomerID;
            updateRequest.Customer     = _customerService.GetCustomer(customerRequest).Customer;
            GetEmployeeRequest employeeRequest = new GetEmployeeRequest();

            employeeRequest.EmployeeID = vm.EmployeeEmployeeID;
            updateRequest.Employee     = _employeeService.GetEmployee(employeeRequest).Employee;
            updateRequest.OrderDate    = vm.OrderDate;
            updateRequest.RequiredDate = vm.RequiredDate;
            updateRequest.ShippedDate  = vm.ShippedDate;
            GetShipperRequest shipperRequest = new GetShipperRequest();

            shipperRequest.ShipperID     = vm.ShipperShipperID;
            updateRequest.Shipper        = _shipperService.GetShipper(shipperRequest).Shipper;
            updateRequest.Freight        = vm.Freight;
            updateRequest.ShipName       = vm.ShipName;
            updateRequest.ShipAddress    = vm.ShipAddress;
            updateRequest.ShipCity       = vm.ShipCity;
            updateRequest.ShipRegion     = vm.ShipRegion;
            updateRequest.ShipPostalCode = vm.ShipPostalCode;
            updateRequest.ShipCountry    = vm.ShipCountry;

            ModifyOrderResponse response = _orderService.ModifyOrder(updateRequest);

            return(Json(response));
        }