Example #1
0
        public OrderEditModel CreateOrderEditModel(UOrder_Order from)
        {
            var to = new OrderEditModel();

            CopyOrderEditModel(to, from);
            return(to);
        }
        //private void CopyReturnRequestEditModel(ReturnRequestEditModel to, UOrder_Order fromOrder, MFulfillment_ReturnRequest fromReturnRequest, IReadOnlyList<MFulfillment_ReturnRequestReason> fromReturnRequestReasons)
        //{
        //    var toReturnRequestItems = new List<ReturnRequestEditItemModel>();
        //    foreach (var fromReturnRequestItem in fromReturnRequest.ReturnRequestItems)
        //    {
        //        var fromOrderItemId = ParseOrderItemId.FromFulfillableItemReference(fromReturnRequestItem.FulfillableItemReference);
        //        var fromOrderItem = fromOrder.MOrder.OrderItems.Where(r => r.OrderItemId == fromOrderItemId).Single();
        //        if (fromOrderItem.CanReturn)
        //        {
        //            var toReturnRequestItem = new ReturnRequestEditItemModel()
        //            {
        //                OrderReturnRequestItemId = fromReturnRequestItem.ReturnRequestItemId,
        //                Quantity = fromReturnRequestItem.Quantity,
        //                MaximumQuantity = fromOrderItem.FulfillmentCompleteQuantity,
        //                OrderItem = ReturnRequestOrderModelFactory.CreateReturnRequestOrderItemModel(fromOrder.MOrder.OrderItems.Where(r => r.OrderItemId == fromOrderItem.OrderItemId).Single())
        //            };
        //            toReturnRequestItems.Add(toReturnRequestItem);
        //        }
        //    }

        //    to.OrderReturnRequestId = fromReturnRequest.ReturnRequestId;
        //    to.ReturnTypeCode = fromReturnRequest.ReturnRequestType;
        //    to.ReturnTypeName = fromReturnRequest.ReturnRequestTypeCode;
        //    //to.ReasonTypeCode = fromReturnRequest.re;
        //    //to.ReasonTypeName = fromReturnRequestReasons.Where(r => r.ReturnRequestReasonTypeCode == fromReturnRequest.ReasonTypeCode).SingleOrDefault()?.Name;
        //    to.ReasonTypes = CreateReasonTypes(fromReturnRequestReasons);
        //    //to.Notes = fromReturnRequest.;
        //    to.Items = toReturnRequestItems;
        //    to.OrderId = fromOrder.MOrder.OrderId;
        //    to.OrderNumber = fromOrder.MOrder.OrderNumber;
        //}

        private void CopyReturnRequestEditModel(ReturnRequestEditModel to, UOrder_Order fromOrder, IReadOnlyList <MFulfillment_ReturnRequestReason> fromReturnRequestReasons)
        {
            var toReturnRequestItems = new List <ReturnRequestEditItemModel>();

            foreach (var fromOrderItem in fromOrder.MOrder.OrderItems)
            {
                if (fromOrderItem.CanReturn)
                {
                    var toReturnRequestItem = new ReturnRequestEditItemModel()
                    {
                        OrderReturnRequestItemId = null,
                        Quantity        = 0,
                        MaximumQuantity = fromOrderItem.NetQuantity,
                        OrderItem       = ReturnRequestOrderModelFactory.CreateReturnRequestOrderItemModel(fromOrder.MOrder.OrderItems.Where(r => r.OrderItemId == fromOrderItem.OrderItemId).Single())
                    };
                    toReturnRequestItems.Add(toReturnRequestItem);
                }
            }

            to.OrderReturnRequestId = null;
            //to.ReturnTypeCode = 0;
            to.ReturnTypeName = null;
            to.ReasonTypeCode = null;
            to.ReasonTypeName = null;
            to.ReasonTypes    = CreateReasonTypes(fromReturnRequestReasons);
            to.Notes          = null;
            to.Items          = toReturnRequestItems;
            to.OrderId        = fromOrder.MOrder.OrderId;
            to.OrderNumber    = fromOrder.MOrder.OrderNumber;
        }
        private void CopyReturnRequestViewModel(ReturnRequestViewModel to, UOrder_Order fromOrder, MFulfillment_ReturnRequest fromReturnRequest, IReadOnlyList <MFulfillment_ReturnRequestReason> fromReturnRequestReasons)
        {
            //var toReturnRequestItems = new List<ReturnRequestViewItemModel>();
            //foreach (var fromReturnRequestItem in fromReturnRequest.Items)
            //{
            //    var fromOrderItem = fromOrder.OrderItems.Where(r => r.OrderItem.OrderItemId == fromReturnRequestItem.OrderItemId).Single();
            //    if (fromOrderItem.OrderItem.CanReturn)
            //    {
            //        var toReturnRequestItem = new ReturnRequestViewItemModel()
            //        {
            //            OrderReturnRequestItemId = fromReturnRequestItem.OrderReturnRequestItemId,
            //            Quantity = fromReturnRequestItem.Quantity,
            //            OrderItem = ReturnRequestOrderModelFactory.CreateReturnRequestOrderItemModel(fromOrder.OrderItems.Where(r => r.OrderItem.OrderItemId == fromOrderItem.OrderItem.OrderItemId).Single())
            //        };
            //        toReturnRequestItems.Add(toReturnRequestItem);
            //    }
            //}

            //to.OrderReturnRequestId = fromReturnRequest.OrderReturnRequestId;
            //to.ReturnRequestNumber = fromReturnRequest.ReturnRequestNumber;
            //to.ReturnTypeCode = (int)fromReturnRequest.ReturnType;
            //to.ReturnTypeName = GetReturnTypeName(fromReturnRequest.ReturnType);
            //to.ReasonTypeCode = fromReturnRequest.ReasonTypeCode;
            //to.ReasonTypeName = fromReturnRequestReasons.Where(r => r.ReturnRequestReasonTypeCode == fromReturnRequest.ReasonTypeCode).Single().Name;
            //to.Notes = fromReturnRequest.Notes;
            //to.Items = toReturnRequestItems;
            //to.OrderId = fromOrder.MOrder.OrderId;
            //to.OrderNumber = fromOrder.MOrder.OrderNumber;
        }
Example #4
0
        public CartEditModel CreateCartEditModel(UOrder_Order from)
        {
            var to = new CartEditModel();

            Copy(to, from);
            return(to);
        }
Example #5
0
 private void Copy(CartEditShippingAddressModel to, UOrder_Order from)
 {
     to.OrderId      = from.MOrder.OrderId;
     to.Name         = from.MOrder.ShippingAddress?.Name;
     to.AddressLine1 = from.MOrder.ShippingAddress?.AddressLine1;
     to.AddressLine2 = from.MOrder.ShippingAddress?.AddressLine2;
     to.City         = from.MOrder.ShippingAddress?.City;
     to.StateCode    = from.MOrder.ShippingAddress?.StateCode;
     to.PostalCode   = from.MOrder.ShippingAddress?.PostalCode;
     to.CountryCode  = from.MOrder.ShippingAddress?.CountryCode;
 }
Example #6
0
        public OrderEditShippingAddressModel CreateOrderShippingAddressModel(UOrder_Order from)
        {
            if (from == null)
            {
                return(null);
            }

            var to = new OrderEditShippingAddressModel();

            CopyOrderEditShippingAddressModel(to, from);
            return(to);
        }
Example #7
0
        public CartEditShippingAddressModel CreateCartShippingAddressModel(UOrder_Order from)
        {
            if (from == null)
            {
                return(null);
            }

            var to = new CartEditShippingAddressModel();

            Copy(to, from);
            return(to);
        }
        public ReturnRequestViewModel CreateReturnRequestViewModel(UOrder_Order fromOrder, MFulfillment_ReturnRequest fromReturnRequest, IReadOnlyList <MFulfillment_ReturnRequestReason> fromReturnRequestReasons)
        {
            var to = new ReturnRequestViewModel();

            if (fromReturnRequest != null)
            {
                CopyReturnRequestViewModel(to, fromOrder, fromReturnRequest, fromReturnRequestReasons);
            }
            else
            {
                CopyReturnRequestViewModel(to, fromOrder);
            }
            return(to);
        }
Example #9
0
 private void CopyOrderEditModel(OrderEditModel to, UOrder_Order from)
 {
     to.OrderId            = from.MOrder.OrderId;
     to.OrderNumber        = from.MOrder.OrderNumber;
     to.Items              = CreateOrderEditItemModels(from.MOrder.OrderItems);
     to.ItemSubtotal       = from.MOrder.ItemSubtotalAmount;
     to.Discount           = from.MOrder.DiscountAmount;
     to.Shipping           = from.MOrder.ShippingAmount;
     to.TaxableSubtotal    = to.ItemSubtotal - to.Discount + to.Shipping;
     to.SalesTaxPercent    = from.MOrder.SalesTaxPercent;
     to.SalesTax           = from.MOrder.SalesTaxAmount;
     to.Total              = from.MOrder.TotalAmount;
     to.SubmissionDateTime = Locale.GetLocalTimeFromUtc(from.MOrder.SubmissionDateTimeUtc);
     to.OrderStatus        = from.MOrder.OrderStatus.ToString();
 }
Example #10
0
        //private async Task<MFulfillment_CreateReturnRequest> CreateReturnRequestAsync(ReturnRequestEditModel model)
        //{
        //    var mCreateReturnRequestItems = new List<MFulfillment_CreateReturnRequestItem>();
        //    foreach (var item in model.Items)
        //    {
        //        var fulfillableItemReference = CreateFulfillableItemReference.FromOrderItemId(item.OrderItem.OrderItemId);
        //        var fulfillableItemId = (await FulfillmentMicroService.LookupFulfillableItemAsync(fulfillableItemReference)).Value;

        //        var mCreateReturnRequestItem = new MFulfillment_CreateReturnRequestItem()
        //        {
        //            FulfillableItemId = fulfillableItemId,
        //            Quantity = item.Quantity
        //        };
        //        mCreateReturnRequestItems.Add(mCreateReturnRequestItem);
        //    }

        //    var mCreateReturnRequest = new MFulfillment_CreateReturnRequest()
        //    {
        //        ReturnRequestReasonCode = model.ReasonTypeCode,
        //        ReturnRequestType = Enum.Parse<MFulfillment_ReturnRequestTypes>(model.ReturnTypeCode),
        //        Notes = model.Notes,
        //        CreateReturnRequestItems = mCreateReturnRequestItems
        //    };
        //    return mCreateReturnRequest;
        //}

        //private async Task<MFulfillment_UpdateReturnRequest> UpdateReturnRequestAsync(ReturnRequestEditModel model)
        //{
        //    var fulfillableReference = CreateFulfillableReference.FromOrderId(model.OrderId);
        //    var fulfillableId = (await FulfillmentMicroService.LookupFulfillableAsync(fulfillableReference)).Value;

        //    var svcItems = new List<MFulfillment_UpdateReturnRequestItem>();
        //    foreach (var item in model.Items)
        //    {
        //        var fulfillableItemReference = CreateFulfillableItemReference.FromOrderItemId(item.OrderItem.OrderItemId);
        //        var fulfillableItemId = (await FulfillmentMicroService.LookupFulfillableItemAsync(fulfillableItemReference)).Value;

        //        var svcItem = new MFulfillment_UpdateReturnRequestItem()
        //        {
        //            ReturnRequestItemId = item.OrderReturnRequestItemId.Value,
        //            Quantity = item.Quantity
        //        };
        //        svcItems.Add(svcItem);
        //    }

        //    var svcReturnRequest = new MFulfillment_UpdateReturnRequest()
        //    {
        //        ReturnRequestId = model.OrderReturnRequestId.Value,
        //        //ReturnType = (MFulfillment_ReturnRequestTypes)model.ReturnTypeCode,
        //        ReturnRequestReasonCode = model.ReasonTypeCode,
        //        Notes = model.Notes,
        //        UpdateReturnRequestItems = svcItems
        //    };
        //    return svcReturnRequest;
        //}

        private MFulfillment_ReturnRequest GetActiveReturnRequest(UOrder_Order svcOrder)
        {
            return(svcOrder.MFulfillable.ReturnRequests.Count != 0 ?
                   svcOrder.MFulfillable.ReturnRequests[0]
                : null);

            //return null;
            //var svcOpenReturnRequest = svcOrder.ReturnRequests.Where(r => r.StatusType.In(UOrder_OrderReturnRequest.StatusTypes.Open)).SingleOrDefault();
            //if (svcOpenReturnRequest != null)
            //{
            //    return svcOpenReturnRequest;
            //}

            //var svcPostedReturnRequest = svcOrder.ReturnRequests.Where(r => r.StatusType.In(UOrder_OrderReturnRequest.StatusTypes.Posted)).SingleOrDefault();
            //return svcPostedReturnRequest;
        }
Example #11
0
 private void Copy(CartDetailModel to, UOrder_Order from)
 {
     to.OrderId              = from.MOrder.OrderId;
     to.OrderNumber          = from.MOrder.OrderNumber;
     to.Items                = CreateCartDetailItemModels(from.MOrder.OrderItems);
     to.ItemSubtotalAmount   = from.MOrder.ItemSubtotalAmount;
     to.DiscountAmount       = from.MOrder.DiscountAmount;
     to.ShippingAmount       = from.MOrder.ShippingAmount;
     to.TaxableSubtotal      = to.ItemSubtotalAmount - to.DiscountAmount + to.ShippingAmount;
     to.SalesTaxPercent      = from.MOrder.SalesTaxPercent;
     to.SalesTaxAmount       = from.MOrder.SalesTaxAmount;
     to.TotalAmount          = from.MOrder.TotalAmount;
     to.SubmissionDateTime   = Locale.GetLocalTimeFromUtc(from.MOrder.SubmissionDateTimeUtc);
     to.OrderStatus          = from.MOrder.OrderStatus.ToString();
     to.ShippingName         = from.MOrder.ShippingAddress.Name;
     to.ShippingAddressLines =
         FormatAddress(
             from.MOrder.ShippingAddress.AddressLine1,
             from.MOrder.ShippingAddress.AddressLine2,
             from.MOrder.ShippingAddress.City,
             from.MOrder.ShippingAddress.StateCode,
             from.MOrder.ShippingAddress.PostalCode,
             from.MOrder.ShippingAddress.CountryCode);
 }
Example #12
0
        private void CopyOrderDetailModel(OrderDetailModel to, UOrder_Order from)
        {
            var toItems = CreateOrderDetailItemModels(from.MOrder.OrderItems);

            var toShipments   = new List <OrderDetailShipmentModel>();
            var fromShipments = from.MFulfillable?.Shipments;

            if (fromShipments != null)
            {
                foreach (var fromShipment in fromShipments)
                {
                    var toShipment = new OrderDetailShipmentModel()
                    {
                        ShipmentDateTime = Locale.GetLocalTimeFromUtc(fromShipment.ShipmentDateTimeUtc),
                        ShippingVendor   = fromShipment.ShippingVendorId,
                        TrackingCode     = fromShipment.TrackingCode
                    };

                    var toShipmentItems = new List <OrderDetailItemModel>();
                    foreach (var fromShipmentItem in fromShipment.ShipmentItems)
                    {
                        var fromOrderItemId = ParseOrderItemId.FromFulfillableItemReference(fromShipmentItem.FulfillableItemReference);
                        var toItem          = toItems.Where(r => r.OrderItemId == fromOrderItemId).Single();
                        toShipmentItems.Add(toItem);
                        _ = toItems.Remove(toItem);
                    }
                    toShipment.Items = toShipmentItems;

                    toShipments.Add(toShipment);
                }
            }

            var toReturns   = new List <OrderDetailReturnModel>();
            var fromReturns = from.MFulfillable?.Returns;

            if (fromReturns != null)
            {
                foreach (var fromReturn in fromReturns)
                {
                    var toReturn = new OrderDetailReturnModel()
                    {
                        ReturnDateTime = Locale.GetLocalTimeFromUtc(fromReturn.CreateDateTimeUtc)
                    };

                    var toReturnItems = new List <OrderDetailItemModel>();
                    foreach (var fromReturnItem in fromReturn.ReturnItems)
                    {
                        var fromOrderItemId = ParseOrderItemId.FromFulfillableItemReference(fromReturnItem.FulfillableItemReference);
                        var toItem          = toItems.Where(r => r.OrderItemId == fromOrderItemId).Single();
                        toReturnItems.Add(toItem);
                        _ = toItems.Remove(toItem);
                    }
                    toReturn.Items = toReturnItems;

                    toReturns.Add(toReturn);
                }
            }

            to.OrderId              = from.MOrder.OrderId;
            to.OrderNumber          = from.MOrder.OrderNumber;
            to.ItemSubtotal         = from.MOrder.ItemSubtotalAmount;
            to.Shipping             = from.MOrder.ShippingAmount;
            to.Discount             = from.MOrder.DiscountAmount;
            to.TaxableAmount        = from.MOrder.TaxableAmount;
            to.SalesTaxPercent      = from.MOrder.SalesTaxPercent;
            to.SalesTax             = from.MOrder.SalesTaxAmount;
            to.Total                = from.MOrder.TotalAmount;
            to.OrderStatus          = from.MOrder.OrderStatus.ToString();
            to.StatusDateTime       = Locale.GetLocalTimeFromUtc(from.MOrder.UpdateDateTimeUtc);
            to.SubmissionDateTime   = Locale.GetLocalTimeFromUtc(from.MOrder.SubmissionDateTimeUtc);
            to.ShippingName         = from.MOrder.ShippingAddress.Name;
            to.ShippingAddressLines =
                FormatAddress(
                    from.MOrder.ShippingAddress.AddressLine1,
                    from.MOrder.ShippingAddress.AddressLine2,
                    from.MOrder.ShippingAddress.City,
                    from.MOrder.ShippingAddress.StateCode,
                    from.MOrder.ShippingAddress.PostalCode,
                    from.MOrder.ShippingAddress.CountryCode).ToArray();
            to.PendingItems = toItems;
            to.Shipments    = toShipments;
            to.Returns      = toReturns;
            to.CanCancel    = from.MOrder.CanCancel;
            to.CanPay       = from.MOrder.CanPay;
            to.CanReturn    = from.MOrder.CanReturn;
        }
 private void CopyReturnRequestViewModel(ReturnRequestViewModel to, UOrder_Order fromOrder)
 {
     to.OrderId     = fromOrder.MOrder.OrderId;
     to.OrderNumber = fromOrder.MOrder.OrderNumber;
 }