public void Transfert(Int32 Client)
 {
     this.Semaphore.WaitOne();
     try
     {
         Core.Transfert.TransfertSageClient transfert = new Core.Transfert.TransfertSageClient();
         List <string> log;
         transfert.Exec(Client, out log);
         if (log.Count > 0)
         {
             log.Add(Core.Log.LogLineSeparator);
             lock (this.logs)
             {
                 logs.AddRange(log);
             }
         }
     }
     catch (Exception ex)
     {
         Core.Error.SendMailError(ex.ToString());
     }
     lock (this)
     {
         this.CurrentCount += 1;
     }
     this.ReportProgress(this.CurrentCount * 100 / this.ListCount);
     this.Semaphore.Release();
 }
Exemplo n.º 2
0
        private void BtTransfert_Click(object sender, RoutedEventArgs e)
        {
            if (this.CBClientSage.SelectedItem != null)
            {
                try
                {
                    List <String> log;
                    if (!string.IsNullOrWhiteSpace(Core.Global.GetConfig().TransfertPrestashopCookieKey))
                    {
                        if (this.CBClientSage.SelectedItem != null && this.CBClientSage.SelectedItem is Model.Sage.F_COMPTET_Light)
                        {
                            Model.Sage.F_COMPTET_Light F_COMPTET = (Model.Sage.F_COMPTET_Light) this.CBClientSage.SelectedItem;

                            Model.Local.CustomerRepository CustomerRepository = new Model.Local.CustomerRepository();
                            if (CustomerRepository.ExistSage(F_COMPTET.cbMarq) == false)
                            {
                                Loading loadscreen = new Loading();
                                loadscreen.Show();
                                Core.Transfert.TransfertSageClient Sync = new Core.Transfert.TransfertSageClient();
                                Sync.Exec(F_COMPTET.cbMarq, out log);
                                loadscreen.Close();
                                if (log.Count > 0)
                                {
                                    Core.Log.SendLog(log, Core.Log.LogIdentifier.TransfertClient);
                                }

                                this.ButtonSearchSageToPrestashop_Click(this.BtTransfert, new RoutedEventArgs());
                            }
                            else
                            {
                                MessageBox.Show("Compte client déjà transféré !", "", MessageBoxButton.OK, MessageBoxImage.Error);
                            }
                        }
                        else
                        {
                            MessageBox.Show("Erreur de sélection du compte client Sage !", "", MessageBoxButton.OK, MessageBoxImage.Error);
                        }
                    }
                    else
                    {
                        MessageBox.Show("La clé cookie de votre site Prestashop n'est pas renseignée dans la configuration de Prestaconnect, création du compte client dans Prestashop impossible !", "Clé cookie non renseignée", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
                catch (Exception ex)
                {
                    Core.Error.SendMailError(ex.ToString());
                }
            }
        }