Exemplo n.º 1
0
        /// <summary>
        /// 保存单个子订单
        /// </summary>
        /// <param name="subSOInfo"></param>
        protected virtual void SaveSubSO(SOInfo subSOInfo)
        {
            if (IsAutoSplit)
            {
                subSOInfo.StatusChangeInfoList = SerializationUtility.DeepClone(CurrentSO.StatusChangeInfoList);
            }

            //保存订单主信息
            SODA.InsertSOMainInfo(subSOInfo);

            //邮政自提
            if (IsPostShip)
            {
                subSOInfo.ShippingInfo.PostInfo.SOSysNo = subSOInfo.SysNo;
                SODA.InsertChinaPost(subSOInfo.ShippingInfo.PostInfo);
            }
            //添加增值税发票信息
            if (subSOInfo.InvoiceInfo != null && subSOInfo.InvoiceInfo.IsVAT.Value && subSOInfo.InvoiceInfo.VATInvoiceInfo != null)
            {
                SODA.UpdateSOVATInvoice(subSOInfo.InvoiceInfo.VATInvoiceInfo);
            }

            SODA.InsertSOItemInfo(subSOInfo);

            SODA.InsertSOCheckShippingInfo(subSOInfo);
            //处理赠品信息 2011-8-29
            foreach (SOPromotionInfo promotionInfo in subSOInfo.SOPromotions)
            {
                SODA.InsertSOPromotionInfo(promotionInfo, subSOInfo.CompanyCode);
            }

            //处理毛利分配信息
            foreach (ItemGrossProfitInfo gross in subSOInfo.ItemGrossProfitList)
            {
                SODA.InsertSOItemGossProfit(gross);
            }
        }