示例#1
0
        public void SendOrderFlightAsync(Check chk)
        {
            Th = new Thread(
                () =>
            {
                Utils.ToLog("[SendOrderFlightAsync] ");
                try
                {
                    string SendOrderFlightSavePath = @"C:\Aloha\check\Discount\Tmp\Flight\";
                    var dir = new DirectoryInfo(SendOrderFlightSavePath);
                    if (!Directory.Exists(SendOrderFlightSavePath))
                    {
                        Directory.CreateDirectory(SendOrderFlightSavePath);
                    }
                    if (chk != null)
                    {
                        string fileName = SendOrderFlightSavePath + chk.GuidId + "Flight.xml";
                        if (!File.Exists(fileName))
                        {
                            CloseCheck.SerializeCheck(fileName, chk);
                            if (DBProvider.SendOrder(GetOrderFlightFromAlohaCheck(chk)))
                            {
                                File.Delete(fileName);
                                Utils.ToLog("[SendOrderFlightAsync]  File.Delete(fileName);" + fileName);
                            }
                        }
                    }
                    foreach (var d in dir.GetFiles("*Flight.xml"))
                    {
                        try
                        {
                            Utils.ToLog("[SendOrderFlightAsync] Find File" + d.Name);
                            var chk2 = CloseCheck.ReadCheckFromTmp(d.FullName);
                            if (DBProvider.SendOrder(GetOrderFlightFromAlohaCheck(chk2)))
                            {
                                File.Delete(d.FullName);
                            }
                        }
                        catch (Exception ee)
                        {
                            Utils.ToLog("[SendOrderFlightAsync] error " + ee.Message);
                        }
                    }

                    //var XChk = GetOrderFlightFromAlohaCheck(chk);
                    //DBProvider.SendOrder(XChk);
                }
                catch (Exception e)
                {
                    Utils.ToLog("[Error] SendOrderFlightAsync " + e.Message);
                }
            }
                );
            Th.Start();
        }
        public static void SendOldProcess()
        {
            if (iniFile.FRSEnabled)
            {
                try
                {
                    if (Directory.GetFiles(ChecksPath).Where(a => a.Contains("hamster")).Count() == 0)
                    {
                        return;
                    }
                    DirectoryInfo Di = new DirectoryInfo(ChecksPath);
                    foreach (FileInfo fi in Di.GetFiles())
                    {
                        if (fi.Name.Contains("hamster"))
                        {
                            AllChecks myAllChecks2 = CloseCheck.ReadAllChecks(fi.FullName);
                            Utils.ToCardLog("SendOldHamster " + fi.FullName);
                            //ZRSrv.Service1 srv1 = new ZRSrv.Service1();

                            bool Ok       = true;
                            int  UndepNum = 0;
                            try
                            {
                                UndepNum = Convert.ToInt32(AlohainiFile.DepNum.ToString() + AlohaTSClass.GetTermNum().ToString());
                            }
                            catch
                            {
                                UndepNum = 9984;
                            }
                            foreach (Check Chk in myAllChecks2.Checks)
                            {
                                try
                                {
                                    Utils.ToCardLog("SendOldHamster " + Chk.BusinessDate);
                                    XmlSerializer xs   = new XmlSerializer(typeof(Check));
                                    StringWriter  xout = new StringWriter();
                                    xs.Serialize(xout, Chk);

                                    string res = "";
                                    try
                                    {
                                        ZRepSrv.Service1SoapClient Cl = GetZrepClient();
                                        res = Cl.AddHamsterCheck(xout.ToString(), UndepNum, AlohainiFile.DepNum, ChecksPath + @"\hamster.xml");
                                        Cl.Close();
                                    }
                                    catch (Exception e)
                                    {
                                        Utils.ToCardLog("Error send oldChk " + e.Message);
                                    }

                                    if (!((res == "Ok") || (res == "exist")))
                                    {
                                        if (!Directory.Exists(CloseCheck.BugChecksPath))
                                        {
                                            Directory.CreateDirectory(CloseCheck.BugChecksPath);
                                        }
                                        using (XmlWriter Xwr = new XmlTextWriter(CloseCheck.BugChecksPath + @"\" + Chk.GuidId.ToString() + ".xml", System.Text.Encoding.UTF8))
                                        {
                                            xs.Serialize(Xwr, Chk);
                                            Utils.ToCardLog("Save oldChk ");
                                        }
                                        //Utils.ToCardLog("Move SendHamsterChk" + XmlFileName);
                                    }



                                    xout.Close();
                                    xout.Dispose();

                                    Utils.ToCardLog("SendOldHamster End res = " + res);
                                }
                                catch (Exception e)
                                {
                                    Utils.ToCardLog("SendOldHamster error= " + e.Message);
                                }
                            }
                            fi.Delete();
                        }
                    }
                }
                catch (Exception e)
                {
                    Utils.ToCardLog("Error SendOldProcess" + e.Message);
                }
            }
        }