Esempio n. 1
0
        private SOInfo CreateSubSO()
        {
            SOInfo subSOInfo = new SOInfo();

            subSOInfo.BaseInfo   = SerializationUtility.DeepClone <SOBaseInfo>(CurrentSO.BaseInfo);
            subSOInfo.ClientInfo = SerializationUtility.DeepClone <SOClientInfo>(CurrentSO.ClientInfo);
            subSOInfo.FPInfo     = SerializationUtility.DeepClone <SOFPInfo>(CurrentSO.FPInfo);
            //添加增值税发票信息到每个仓库
            subSOInfo.InvoiceInfo  = SerializationUtility.DeepClone <SOInvoiceInfo>(CurrentSO.InvoiceInfo);
            subSOInfo.ReceiverInfo = SerializationUtility.DeepClone <SOReceiverInfo>(CurrentSO.ReceiverInfo);
            subSOInfo.ShippingInfo = SerializationUtility.DeepClone <SOShippingInfo>(CurrentSO.ShippingInfo);

            subSOInfo.CompanyCode = CurrentSO.BaseInfo.CompanyCode;
            subSOInfo.Merchant    = CurrentSO.Merchant;
            subSOInfo.WebChannel  = CurrentSO.WebChannel;
            //提前生成子单号
            int subSOSysNo = SODA.NewSOSysNo();

            subSOInfo.SysNo                  = subSOSysNo;
            subSOInfo.BaseInfo.SOID          = subSOSysNo.ToString();
            subSOInfo.BaseInfo.CreateTime    = DateTime.Now;
            subSOInfo.BaseInfo.SplitType     = SOSplitType.SubSO;
            subSOInfo.BaseInfo.SOSplitMaster = SOSysNo;
            subSOInfo.ShippingInfo.IsCombine = null;
            return(subSOInfo);
        }