Ejemplo n.º 1
0
        public override ExtensibleObject CloneObject()
        {
            OrderItemGroup op = new OrderItemGroup()
            {
                MerchantSysNo   = this.MerchantSysNo,
                MerchantName    = this.MerchantName,
                Quantity        = this.Quantity,
                MinCountPerSO   = this.MinCountPerSO,
                MaxCountPerSO   = this.MaxCountPerSO,
                ProductItemList = this.ProductItemList == null ? null : this.ProductItemList.ConvertAll <OrderProductItem>(x => x == null ? null : (OrderProductItem)x.Clone()),
                PackageNo       = this.PackageNo,
                PackageType     = this.PackageType,
                PackageChecked  = this.PackageChecked,
            };

            return(op);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 将购物车对象转换成OrderInfo
        /// </summary>
        /// <param name="shoppingCart"></param>
        /// <returns></returns>
        public static OrderInfo Convert2OrderInfo(ShoppingCart shoppingCart)
        {
            OrderInfo orderInfo = new OrderInfo();

            orderInfo.Customer           = new CustomerInfo();
            orderInfo.Customer.SysNo     = shoppingCart.CustomerSysNo;
            orderInfo.Receipt            = new ReceiptInfo();
            orderInfo.GiftItemList       = new List <OrderGiftItem>();
            orderInfo.AttachmentItemList = new List <OrderAttachment>();
            orderInfo.DiscountDetailList = new List <OrderItemDiscountInfo>();

            orderInfo.LanguageCode       = shoppingCart.LanguageCode;
            orderInfo.ChannelID          = shoppingCart.ChannelID;
            orderInfo.OrderItemGroupList = new List <OrderItemGroup>();
            foreach (ShoppingItemGroup itemGroup in shoppingCart.ShoppingItemGroupList)
            {
                OrderItemGroup orderItemGroup = new OrderItemGroup();
                if (itemGroup.PackageChecked)
                {
                    orderItemGroup.PackageChecked = true;
                }
                orderItemGroup.PackageType     = itemGroup.PackageType;
                orderItemGroup.PackageNo       = itemGroup.PackageNo;
                orderItemGroup.Quantity        = itemGroup.Quantity;
                orderItemGroup.ProductItemList = new List <OrderProductItem>();
                foreach (ShoppingItem item in itemGroup.ShoppingItemList)
                {
                    OrderProductItem orderProductItem = new OrderProductItem();
                    if (item.ProductChecked)
                    {
                        orderProductItem.ProductChecked = true;
                    }
                    orderProductItem.ProductSysNo = item.ProductSysNo;
                    orderProductItem.UnitQuantity = item.UnitQuantity;
                    orderItemGroup.ProductItemList.Add(orderProductItem);
                }
                orderInfo.OrderItemGroupList.Add(orderItemGroup);
            }
            orderInfo["ShoppingCart"] = shoppingCart;

            return(orderInfo);
        }