Example #1
0
        /// <summary>
        /// Initializes a new instance of the BedWizardDialog class.
        /// </summary>
        /// <param name="sheetName">Name of the sheet which has to be parsed.</param>
        /// <param name="columnNumbers">List of column numbers which have to be mapped to headers.</param>
        /// <param name="bedHeader">List of BED headers.</param>
        /// <param name="requiredHeaders">List of mandatory headers.</param>
        public BedWizardDialog(string sheetName, List<int> columnNumbers, List<string> bedHeader, List<string> requiredHeaders)
        {
            this.InitializeComponent();
            this.btnOK.Click += this.OnBedWizardSave;
            this.btnCancel.Click += this.OnCancelBedWizard;
            this.PreviewKeyUp += this.OnBedWizardDialogKeyUp;
            this.bedHeader = bedHeader;
            this.requiredHeaders = requiredHeaders;    
            
            this.txtSubText.Text = string.Format(Properties.Resources.HEADER_SUBTEXT, sheetName);
            
            foreach (string s in requiredHeaders)
            {
                ColumnMap map = new ColumnMap(columnNumbers, s);
                this.stkfirstPanel.Children.Add(map);
            }

            IEnumerable<string> optionalHeaders = bedHeader.Except(requiredHeaders);

            foreach (string s in optionalHeaders)
            {
                ColumnMap map = new ColumnMap(columnNumbers, s);
                this.stkSecondPanel.Children.Add(map);
            }
        }
        void canvas_MouseDown(object sender, MouseButtonEventArgs e)
        {
            if (Mode != ToolMode.Draw) {
                return;
            }
            var pos = e.GetPosition(canvas);
            var names = new List<string>();
            if (starNamesBox.IsChecked.Value) {
                names.AddRange(starNames);
            }
            if (fictionalNamesBox.IsChecked.Value) {
                names.AddRange(fictionalNames);
            }
            if (customNamesCheckBox.IsChecked.Value) {
                names.AddRange(customNamesTextBox.Text.Replace("\r\n", "\n").Split('\n'));
            }
            names = names.Except(galaxyDrawing.PlanetDrawings.Select(p => p.PlanetName)).ToList();
            var name = names.Count == 0 ? "No name" : names[random.Next(names.Count)];
            galaxyDrawing.AddPlanet(pos, name).Label.Visibility = DisplayNames.IsChecked.Value ? Visibility.Visible : Visibility.Hidden;

        }
        private void btnSave_Click(Object sender, RoutedEventArgs e)
        {
            var oldEntries = new List<RouteTimeTableEntry>(this.Airliner.Routes.SelectMany(r => r.TimeTable.Entries.Where(en => en.Airliner == this.Airliner)));

            var deleteEntries = oldEntries.Except(this.Entries);
            var newEntries = this.Entries.Except(oldEntries);

            foreach (RouteTimeTableEntry entry in newEntries)
            {
                entry.TimeTable.Route.TimeTable.addEntry(entry);

                if (!this.Airliner.Routes.Contains(entry.TimeTable.Route))
                    this.Airliner.addRoute(entry.TimeTable.Route);
            }

            foreach (RouteTimeTableEntry entry in deleteEntries)
            {
                entry.TimeTable.Route.TimeTable.removeEntry(entry);

                if (entry.TimeTable.Entries.Count(en => en.Airliner == this.Airliner) == 0)
                    this.Airliner.removeRoute(entry.TimeTable.Route);
            }
        }
        private void btnEventLaunchMod_Click(object sender, RoutedEventArgs e)
        {
            string eventSelected = this.eventListView.SelectedItem.ToString().Replace(" ", "_");
            string encryptedJson = System.IO.File.ReadAllText(workingDir + "\\Config\\" + eventSelected);
            string decryptedJson = CryptoService.Load.Decrypt(encryptedJson, softwareCfg.cipherKey);
            _eventFileName = this.eventListView.SelectedItem.ToString().Replace(" ", "_");
            eventVar _event = JsonConvert.DeserializeObject<eventVar>(decryptedJson);

            string modArgs = null;
            bool weHaveNotMod = false;
            string missMod = null;

            //MOD LIST EXTRACT
            List<string> modListEvent = new List<string>();
            foreach (string mod in _event.eventMods)
            {
                modListEvent.Add(mod);

            }
            //COMPLETE MOD STRING
            foreach (string mod in _event.eventMods)
            {
                modArgs += modPath + "\\" + mod + ";";
            }

            #region Mod Comparation
            List<string> modList = new List<string>();

            string[] folders = System.IO.Directory.GetDirectories(modPath, "@*", System.IO.SearchOption.AllDirectories);

            foreach (string folder in folders)
            {
                string input = folder;
                string output = input.Split('@').Last();
                modList.Add("@" + output);
            }

            List<string> missingMod = new List<string>();

            var firstNotSecond = modListEvent.Except(modList).ToList();

            foreach (var x in firstNotSecond)
            {
                missingMod.Add(x);
                missMod += x + "; ";
            }

            foreach (string missing in missingMod)
            {
                string mystring = missing;
                if (eventListViewMods.Items.Contains(mystring))
                    weHaveNotMod = true;

            }
            #endregion

            if (weHaveNotMod == false)
            {
                if (!string.IsNullOrEmpty(modPath) && !string.IsNullOrEmpty(armaPath))
                {
                    Process arma = new Process();


                    arma.StartInfo.FileName = ("arma3.exe");
                    arma.StartInfo.Arguments = ("\"-mod=" + modArgs + "\"");
                    arma.StartInfo.WorkingDirectory = armaPath;
                    arma.Start();
                }
                else
                    MsgBox("Error", "Choose your Arma path and Mods path");
            }
            else
            {
                MsgBox("Error", "Some mods are missing " + missMod);
            }
        }
Example #5
0
        private void CompanyData(string updatetime)
        {
            I_Sql = SqlFactory.MakeSelect(TableType.Table_Type.Compnay);
            DataTable SqlTable = new DataTable();
            DataTable SqliteTable = new DataTable();
            List<int> listsql = new List<int>();
            List<int> listsqlite = new List<int>();
            List<int> difference = new List<int>();
            List<string> SelectList = new List<string>();
            SqlTable = Db_Sql.ReSelectdtb(((SqlInterface)I_Sql).GetDatafromSql(updatetime));
            SqliteTable = Db_Sqlite.ReSelectdtb(I_Sql.GetSqliteSelect());
            Dictionary<int, CompanyModel> sqltablelist = GetSqlcCompany(SqlTable);
            IList<DbParameter[]> parlist = new List<DbParameter[]>();

            for (int j = 0; j < SqliteTable.Rows.Count; j++)
            {
                int id = Int32.Parse(SqliteTable.Rows[j]["ID"].ToString());
                for (int i = 0; i < sqltablelist.Count; i++)
                {
                    if (id == sqltablelist.Keys.ToList()[i])
                    {
                        DbParameter[] DbUpdate = ExecutionSelectCompany(sqltablelist[id]);
                        parlist.Add(DbUpdate);
                        SelectList.Add(I_Sql.GetSqliteUpdate());
                        sqltablelist.Remove(id);
                        i--;
                    }
                }
            }

            foreach (int Select in sqltablelist.Keys)                                               //根据差集进行插入操作
            {
                DbParameter[] DbInsert = ExecutionSelectCompany(sqltablelist[Select]);
                parlist.Add(DbInsert);
                SelectList.Add(I_Sql.GetSqliteInsert());
            }

            SqlTable = Db_Sql.ReSelectdtb(I_Sql.GetSqlSelect());
            SqliteTable = Db_Sqlite.ReSelectdtb(I_Sql.GetSqliteSelect());
            foreach (DataRow dr in SqlTable.Rows)
            {
                int id = Int32.Parse(dr["ID"].ToString());
                listsql.Add(id);
            }
            foreach (DataRow dr in SqliteTable.Rows)
            {
                int id = Int32.Parse(dr["ID"].ToString());
                listsqlite.Add(id);
            }
            difference = listsqlite.Except(listsql).ToList();
            foreach (int Select in difference)
            {
                Db_Sqlite.ExSQL(((SqlInterface)I_Sql).GetSqliteDelect(Select));                         //删除Service端没有的数据
            }

            int m = Db_Sqlite.ReExNum(SelectList, parlist);
            WriteLog("公司表需要更新" + SelectList.Count().ToString() + "条记录" + "  实际更新" + m.ToString() + "条记录");
        }
     private void DoSave(object sender, ExecutedRoutedEventArgs e)
     {
         lock(stateLock)
         {
             var window = new DiffWindow();
             List<PathEntry> newPaths = new List<PathEntry>(SystemPath.Concat(UserPath).Select(_ => _.Path));
             List<PathEntry> oldPaths = new List<PathEntry>(reg.SystemPath.Concat(reg.UserPath));
             foreach (var x in new ObservableCollection<DiffPath>(newPaths.Except(oldPaths).Select(p => new DiffPath(p, true)).Concat(
                             oldPaths.Except(newPaths).Select(p => new DiffPath(p, false)))))
             {
                 window.Changes.Add(x);
             }
 
             if (window.ShowDialog() == true)
             {
                 Write();
             }
         }
     }
Example #7
0
        private void MyAnalyze()
        {
            List<Product> listProductsSend;
            if (countProverok > 0 && listProducts == null)
            {
                countProverok++;
                textBlock.Dispatcher.BeginInvoke(new Action(delegate ()
                {
                    textBlock.DataContext = null;
                    textBlock.Text = "Идет проверка №" + countProverok;
                }));
                List<Product> listProducts2;
                EasyAnalyze esAnalyze = new EasyAnalyze();
                listProducts = esAnalyze.GoToPage(urlSite);

                if (!File.Exists("Products.json"))
                {
                    //первый запуск
                    try
                    {
                        File.WriteAllText(@"Products.json", JsonConvert.SerializeObject(listProducts));
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Ошибка записи файла. " + ex.Message);
                    }


                }
                else
                {
                    listProducts2 = JsonConvert.DeserializeObject<List<Product>>(File.ReadAllText("Products.json"));
                    

                    var differences = listProducts2.Where(l2 => listProducts.Any(l1 => l1.Id == l2.Id && l1.Price != l2.Price)).ToList();

                    listProductsSend = listProducts2.Except(listProducts, new ProductComparer()).ToList();
                    listProductsSend.AddRange(differences);
                    listProductsSend.AddRange(listProducts.Except(listProducts2, new ProductComparer()).ToList());
                    if (listProductsSend.Count > 0)
                    {
                        string allprod = "";
                        foreach (var prod in listProductsSend)
                        {
                            prod.Url = Regex.Replace(prod.Url, @"vk.com/wkview\.php\?act=show&al=1&loc=market-([0-9]{1,22}?)&w=product-([0-9)]{1,33})",
                                "vk.com/market-$1?w=product-$2");
                            allprod = allprod + " | " + prod.Name + " | " + prod.Price + " | " + prod.Url + " ; \n\r ";
                        }
                        Email.SendMail(login, pass, osn, allprod);
                        try
                        {
                            File.WriteAllText(@"Products.json", JsonConvert.SerializeObject(listProducts));
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("Файл не записался. " + ex.Message);
                        }

                    }

                }
                

                listProducts = null;

                //Distinct(new ProductComparer()).ToList(); ;
            }
            else if (countProverok == 0 && listProducts == null)
            {
                textBlock.Dispatcher.BeginInvoke(new Action(delegate ()
                {
                    textBlock.DataContext = null;
                    textBlock.Text = "Первичный сбор информации";
                }));
                
                EasyAnalyze esAnalyze = new EasyAnalyze();
                listProducts = esAnalyze.GoToPage(urlSite);

                if (!File.Exists("Products.json"))
                {
                    File.WriteAllText(@"Products.json", JsonConvert.SerializeObject(listProducts));

                }

                countProverok++;
                listProducts = null;
            }
            
        }
        //public void SeatComboBox(int divsonID)
        //{
        //    SqlConnection conn = new SqlConnection(dataconnection);
        //    SqlCommand cmd = new SqlCommand("uspseats", conn);
        //    cmd.Connection = conn;
        //    cmd.CommandType = CommandType.StoredProcedure;
        //    cmd.Parameters.AddWithValue("RoomId", divsonID);
        //    DataSet ds = new DataSet();
        //    SqlDataAdapter da = new SqlDataAdapter(cmd);
        //    da.SelectCommand = cmd;
        //    conn.Open();
        //    da.Fill(ds);
        //    conn.Close();

        //    if (ds.Tables[0].Rows.Count > 0)
        //    {
        //        SeatIDComboBox.SelectedValuePath = "SeatName";
        //        SeatIDComboBox.DisplayMemberPath = "SeatName";
        //        SeatIDComboBox.ItemsSource = ds.Tables[0].DefaultView;
        //    }
        //}



        public void SeatComboBox()
        {
            List<string> allSeadCodes = new List<string>() { "S1","S2","S3","S4"};
            //List<string> list1 = allSeadCodes.Intersect(allocatedSeatOfARoom).ToList();
            var list1 = allSeadCodes.Except(allocatedSeatOfARoom);
            SeatIDComboBox.ItemsSource = list1;
            //SeatIDComboBox.ItemsSource = allSeadCodes.Intersect(allocatedSeatOfARoom).ToList();
            //SeatIDComboBox.ItemsSource = allocatedSeatOfARoom;
        }
Example #9
0
        public SpeakerSynchronizer(WPFTranscription Transcription, AdvancedSpeakerCollection SpeakersDatabase)
            : this()
        {
            this._transcription = Transcription;
            this._speakersDatabase = SpeakersDatabase;

            _pairs = _transcription.Speakers
                .OrderBy(s => s.Surname)
                .ThenBy(s => s.FirstName)
                .ThenBy(s => s.MiddleName)
                .Select(s => new SpeakerPair { Speaker1 = new SpeakerContainer(s) })
                .ToList();

            //Join speakers from document with speakers from localDB by fullname and order pairs
            var first = _pairs.Join(_speakersDatabase, p => p.Speaker1.Speaker.FullName.ToLower(), s => s.FullName.ToLower(), (sp, s) => new { document = sp, local = s })
                .Distinct()
                .OrderBy(s => s.local.Surname)
                .ThenBy(s => s.local.FirstName)
                .ThenBy(s => s.local.MiddleName);

            //get all speakers from local DB that was not joined
            var other = _speakersDatabase.Except(first.Select(s => s.local).ToArray())
                .OrderBy(s => s.Surname)
                .ThenBy(s => s.FirstName)
                .ThenBy(s => s.MiddleName);

            //concat all speakers from local DB but ordered to match remaining speakers in document.
            listlocal.ItemsSource = first.Select(s => s.local).Concat(other).ToList();

            //add pairs with order matching to listlocal and concat speakers without matching name in local DB
            listdocument.ItemsSource = _pairs = first.Select(s => s.document)
                                                        .OrderBy(s => s.Speaker1.SurName)
                                                        .ThenBy(s => s.Speaker1.FirstName)
                                                        .ThenBy(s => s.Speaker1.MiddleName)
                                                        .Concat(_pairs.Except(first.Select(s => s.document))).ToList();
        }