Пример #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="inUID"></param>
        /// <param name="inBasePrice"></param>
        /// <param name="inDiscountID"></param>
        /// <param name="inQty"></param>
        /// <param name="inOrderItemOptions"></param>
        /// <param name="inOrderItemSides"></param>
        /// <param name="outOrderItem"></param>
        public bool CreateWebOrderItem(
            DTO_UID inUID,
            Decimal inBasePrice,
            UInt32 inDiscountID,
            UInt32 inQty,
            DTO_WebOrderItemOptions inOrderItemOptions,
            DTO_WebOrderItemSides inOrderItemSides,
            ref DTO_WebOrderItem outOrderItem)
        {
            errorMsg_  = "";
            errorCode_ = ResponseCode.Successful;

            inOrderItemOptions.PropertyChanged += propertyChangedEventHandler;
            inOrderItemSides.PropertyChanged   += propertyChangedEventHandler;

            DTO_WebOrderResponse response = wcfClient_.CreateWebOrderItem(
                inUID,
                inBasePrice,
                inDiscountID,
                inQty,
                inOrderItemOptions,
                inOrderItemSides,
                ref outOrderItem);

            if (!response.Succesful)
            {
                errorMsg_  = response.Message;
                errorCode_ = response.ResponseCode;
            }

            return(response.Succesful);
        }
Пример #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="inItemsSectionNode"></param>
        /// <param name="outOrderHeaderAccount"></param>
        void readWebOrderItemsComplete(
            XmlNode inItemsSectionNode,
            DTO_WebOrderAccount outOrderHeaderAccount)
        {
            XmlNodeList itemNodeList = XMLDocManager.GetNodeList(inItemsSectionNode, @"Item");

            List <DTO_WebOrderItem> itemList = new List <DTO_WebOrderItem>();

            foreach (XmlNode itemNode in itemNodeList)
            {
                DTO_WebOrderItem item = new DTO_WebOrderItem();

                item.UID        = getXMLOrderAttribute(itemNode, @"uid", @"");
                item.BasePrice  = Convert.ToDecimal(getXMLOrderAttribute(itemNode, @"basePrice", @"0.00"));
                item.Qty        = Convert.ToSingle(getXMLOrderAttribute(itemNode, @"quantity", @"0.0"));
                item.DiscountID = Convert.ToUInt32(getXMLOrderAttribute(itemNode, @"discountID", @"0"));
                item.Note       = getXMLOrderAttribute(itemNode, @"note", @"");

                item.ItemOptions = readWebOrderItemOptionsComplete(itemNode.FirstChild);           // Options node
                item.ItemSides   = readWebOrderItemSidesComplete(itemNode.FirstChild.NextSibling); // Sides node

                itemList.Add(item);
            }

            outOrderHeaderAccount.OrderItems = itemList.ToArray();
        }
Пример #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="inDiscountID"></param>
        /// <param name="inGUID"></param>
        /// <param name="inQty"></param>
        /// <param name="inBasePrice"></param>
        /// <returns></returns>
        public DTO_WebOrderItem CreateAccountOrderItem(
            uint inDiscountID,
            string inGUID,
            float inQty,
            decimal inBasePrice,
            string inNote,
            List <DTO_WebOrderItemOption> inItemOptions,
            List <DTO_WebOrderItemSide> inItemSides)
        {
            DTO_WebOrderItem result = new DTO_WebOrderItem();

            //......................................................

            result.DiscountID  = inDiscountID;
            result.UID         = inGUID;
            result.Qty         = inQty;
            result.BasePrice   = inBasePrice;
            result.Note        = inNote;
            result.ItemOptions = inItemOptions.ToArray();
            result.ItemSides   = inItemSides.ToArray();

            //......................................................

            return(result);
        }