Example #1
0
        internal static void RefreshCategoryTree()
        {
            if (refreshCategoryTreeThread == null)
            {
                Task.Factory.StartNew(() =>
                {
                    try
                    {
                        refreshCategoryTreeThread = Thread.CurrentThread;
                        var machineInfo           = Global.MachineSettings.MachineInformations;//全局信息
                        BaseApiParams _queryInfo  = new BaseApiParams()
                        {
                            StoreId = machineInfo.StoreId, MachineSn = machineInfo.MachineSn, CID = Global.MachineSettings.MachineInformations.CompanyId
                        };
                        var result = ApiManager.Post <BaseApiParams, ApiRetrunResult <TreeModel> >(@"api/GetProductCategory", _queryInfo);

                        Application.Current.Dispatcher.Invoke(new Action(() =>
                        {
                            if (result.Code == "200")
                            {
                                categoryTree = categoryTree.InitCategory(result.Result);
                                if (CategoryTreeRefreshEvent != null)
                                {
                                    CategoryTreeRefreshEvent(categoryTree);
                                }
                            }
                            else
                            {
                                Toast.ShowMessage(result.Message, null);
                                categoryTree = categoryTree.InitCategory(null);
                                if (CategoryTreeRefreshEvent != null)
                                {
                                    CategoryTreeRefreshEvent(categoryTree);
                                }
                            }
                        }));
                    }
                    catch (Exception ex) { }
                    finally
                    {
                        refreshCategoryTreeThread = null;
                    }
                });
            }
        }
Example #2
0
 internal static void RefreshPayStatus()
 {
     if (refreshPayStatusThread == null)
     {
         Task.Factory.StartNew(() =>
         {
             while (true)
             {
                 try
                 {
                     refreshPayStatusThread = Thread.CurrentThread;
                     var result             = ApiManager.Post <BaseApiParams, ApiRetrunResult <IEnumerable <PayItem> > >(@"api/PaysStatus", new BaseApiParams()
                     {
                         CID     = Global.MachineSettings.MachineInformations.CompanyId,
                         StoreId = Global.MachineSettings.MachineInformations.StoreId
                     });
                     if (result.Code == "200")
                     {
                         Application.Current.Dispatcher.Invoke(new Action(() =>
                         {
                             Payways = result.Result;
                         }));
                     }
                     else
                     {
                         //Toast.ShowMessage(result.Message, Application.Current.MainWindow);
                     }
                 }
                 catch (Exception ex) { }
                 finally
                 {
                     refreshPayStatusThread = null;
                 }
                 Thread.Sleep(15000);
             }
         });
     }
 }