Esempio n. 1
0
        /// <summary>
        /// Abandon the so by sosysno.
        /// </summary>
        /// <param name="soMaster"></param>
        public static void AbandonSO(int sysNo, JobContext context)
        {
            SOAbandonReq req = new SOAbandonReq();

            req.SOSysNoList = new System.Collections.Generic.List <int> {
                sysNo
            };

            string baseUrl      = System.Configuration.ConfigurationManager.AppSettings["SORestFulBaseUrl"];
            string languageCode = System.Configuration.ConfigurationManager.AppSettings["LanguageCode"];

            ECCentral.Job.Utility.RestClient       client = new ECCentral.Job.Utility.RestClient(baseUrl, languageCode);
            ECCentral.Job.Utility.RestServiceError error;
            var ar = client.Update("/SO/Abandon", req, out error);

            if (error != null && error.Faults != null && error.Faults.Count > 0)
            {
                string errorMsg = "";
                foreach (var errorItem in error.Faults)
                {
                    errorMsg += errorItem.ErrorDescription;
                }
                Logger.WriteLog(errorMsg, "JobConsole");
                throw new Exception(errorMsg);
            }
        }
Esempio n. 2
0
        public static bool BlankOutSO(int SoSysNo)
        {
            //IMaintainSOV31 service = ServiceBroker.FindService<IMaintainSOV31>();
            try
            {
                //    SOV31 actionPara = new SOV31()
                //{
                //    Header = new Newegg.Oversea.Framework.Contract.MessageHeader()
                //    {
                //        OperationUser = new OperationUser
                //        (Settings.UserDisplayName,
                //        Settings.UserLoginName,
                //        Settings.StoreSourceDirectoryKey,
                //        Settings.CompanyCode),
                //        CompanyCode = Settings.CompanyCode,
                //        StoreCompanyCode=Settings.CompanyCode,
                //        FromSystem = "127.0.0.1"
                //    }
                //    ,
                //    Body = new SOMsg { SOMaster = new SOMasterMsg { SystemNumber = SoSysNo } }
                //};
                //    actionPara = service.EmployeeAbandonSO(actionPara);

                SOAbandonReq req = new SOAbandonReq();
                req.SOSysNoList = new List <int>();
                req.SOSysNoList.Add(SoSysNo);
                req.ImmediatelyReturnInventory = true;
                req.IsCreateAO = false;

                string baseUrl      = System.Configuration.ConfigurationManager.AppSettings["SORestFulBaseUrl"];
                string languageCode = System.Configuration.ConfigurationManager.AppSettings["LanguageCode"];
                string companyCode  = System.Configuration.ConfigurationManager.AppSettings["CompanyCode"];
                ECCentral.Job.Utility.RestClient       client = new ECCentral.Job.Utility.RestClient(baseUrl, languageCode);
                ECCentral.Job.Utility.RestServiceError error;
                var ar = client.Update("/SO/Abandon", req, out error);

                if (error != null && error.Faults != null && error.Faults.Count > 0)
                {
                    string tmpSendMessageException = error.Faults[0].ErrorDescription + "\r\n" +
                                                     error.Faults[0].ErrorCode;
                    WriteLog(string.Format("订单{0}作废失败:\r\n{1}.", SoSysNo, tmpSendMessageException));
                    return(false);
                }
                else
                {
                    WriteLog(string.Format("订单{0}作废成功.", SoSysNo));
                    return(true);
                }
            }
            catch (Exception ex)
            {
                WriteErrorLog(string.Format("订单[{0}]作废异常\r\n{1}", SoSysNo, ex.Message));
                return(false);
            }
        }
Esempio n. 3
0
        public SOInfo AbandonSO(SOAbandonReq request)
        {
            SOInfo       soInfo  = null;
            SOAppService service = ObjectFactory <SOAppService> .Instance;

            if (request.IsCreateAO)
            {
                service.AbandonSO(request.SOSysNoList[0], request.ImmediatelyReturnInventory, request.IsCreateAO, request.RefundInfo, out soInfo);
            }
            else
            {
                List <SOInfo> soInfoList = null;
                service.AbandonSO(request.SOSysNoList, request.ImmediatelyReturnInventory, out soInfoList);
                soInfo = soInfoList != null && soInfoList.Count > 0 ? soInfoList[0] : null;
            }
            return(soInfo);
        }
Esempio n. 4
0
        public void DeclareFailAbandon(string SOSysNo)
        {
            SOInfo       soInfo  = null;
            SOAppService service = ObjectFactory <SOAppService> .Instance;

            SOAbandonReq request = new SOAbandonReq();

            request.SOSysNoList = new List <int>();
            request.SOSysNoList.Add(int.Parse(SOSysNo));
            request.ImmediatelyReturnInventory = true;
            request.IsCreateAO = true;
            request.RefundInfo = new BizEntity.Invoice.SOIncomeRefundInfo();
            var refundInfo = service.GetValidSOIncomeInfo(int.Parse(SOSysNo));

            request.RefundInfo.BankName       = "";
            request.RefundInfo.BranchBankName = "";
            request.RefundInfo.CardNumber     = "";
            request.RefundInfo.CardOwnerName  = "";
            request.RefundInfo.PostAddress    = "";
            request.RefundInfo.PostCode       = "";
            request.RefundInfo.ReceiverName   = "";
            request.RefundInfo.Note           = "";
            request.RefundInfo.RefundPayType  = BizEntity.Invoice.RefundPayType.BankRefund;
            request.RefundInfo.RefundCashAmt  = refundInfo.OrderAmt;
            request.SOSysNoList = request.SOSysNoList;

            if (request.IsCreateAO)
            {
                service.AbandonSO(request.SOSysNoList[0], request.ImmediatelyReturnInventory, request.IsCreateAO, request.RefundInfo, out soInfo);
            }
            else
            {
                List <SOInfo> soInfoList = null;
                service.AbandonSO(request.SOSysNoList, request.ImmediatelyReturnInventory, out soInfoList);
            }
        }