示例#1
0
        private void AddItemToList(STLoadFileInfo data)
        {
            string text;

            ListViewItem item;

            try
            {
                if (data.iErrorCode == 0)
                {
                    item = new ListViewItem(data.strFileName);
                }
                else
                {
                    item = new ListViewItem(data.strFileName);
                }
                text = string.Format("{0}", data.dtWrite.ToShortDateString());
                item.SubItems.Add(data.iIdSeason.ToString());
                item.SubItems.Add(text);

                listViewFile.Items.Add(item);
            }
            catch (Exception ex) { MessageBox.Show(ex.Message, ex.Source); }
        }
示例#2
0
        private void StartProc(object sender, DoWorkEventArgs e)
        {
            string[]   files; // каталог с файлами
            STFileInfo stFI;

            try
            {
                // находим все файлы для закачки
                files = Directory.GetFiles(clParam.s_Path.pathsgmfile, "NBL*?.sgm");

                // цикл по ним
                foreach (string file in files)
                {
                    // если нажата кнопка отмена - выскакиваем
                    if (backgroundWorker1.CancellationPending)
                    {
                        e.Cancel = true;
                        backgroundWorker1.ReportProgress(0);
                        return;
                    }

                    FileInfo FI = new FileInfo(file);

                    stFI           = new STFileInfo();
                    stFI.idseason  = IS.idseason;
                    stFI.filename  = FI.Name;
                    stFI.enterdate = DateTime.Now;

                    // проверяем не записан ли этот файл ранее
                    STFileInfo?inbase = clFileInfo.GetRecord(stFI.idseason, stFI.filename);
                    if (inbase != null)
                    {
                        if (MessageBox.Show(string.Format("Файл {0} был записан ранее. Перезаписать?", FI.Name),
                                            "Внимание!", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                        {
                            clFileInfo.Update(stFI, (STFileInfo)inbase);
                            fileinfo = write_file(file); // перезаписываем

                            //  AddItemToList(fileinfo);
                        }
                    }
                    else
                    {
                        clFileInfo.Insert(stFI);
                        fileinfo = write_file(file); // если не записан такой файл записываем его

                        //      AddItemToList(fileinfo);
                    }

                    // если все хорошо переносим его в архив  и удаляем с пула
                    if (fileinfo.iErrorCode == 0)
                    {
                        string archfile = Path.Combine(clParam.s_Path.pathsgmfilearch, FI.Name);

                        if (File.Exists(archfile))
                        {
                            File.Delete(archfile);
                        }

                        FI.MoveTo(Path.Combine(clParam.s_Path.pathsgmfilearch, FI.Name));
                    }
                }
            }
            catch (Exception ex) { MessageBox.Show(ex.Message, ex.Source); }
        }
示例#3
0
        private STLoadFileInfo write_file(string filename)
        {
            STStats        stStats;
            STLoadFileInfo ret = new STLoadFileInfo();

            try
            {
                ret.iErrorCode = 0;

                CSmartStats clSS = new CSmartStats(filename);

                STGame stGame = clSS.stGame;

                // вычисляем дивизион
                CGame  clGame = new CGame(connect);
                STGame rgame  = clGame.GetGame(IS.idseason, stGame.idgame);
                int    iddiv  = (int)rgame.iddivision;

                lst_records = clRecords.GetRecords(iddiv);

                // Записываем игру
                clGame.UpdateSGM(stGame, stGame.idseason, stGame.idgame);

                // Записываем статистику
                CStats clStats = new CStats(connect);

                List <STStats> lst = clSS.stStatsTeam1;

                foreach (STStats item in lst)
                {
                    if (item.ptime > 0)
                    {
                        stStats = verify_player(item);

                        verify_records(stStats);

                        clStats.Insert(stStats);
                    }
                }

                lst = clSS.stStatsTeam2;

                foreach (STStats item in lst)
                {
                    if (item.ptime > 0)
                    {
                        stStats = verify_player(item);

                        verify_records(stStats);

                        clStats.Insert(stStats);
                    }
                }

                // Записываем карту бросков
                CCardTrow clCardTrow = new CCardTrow(connect);

                STCardTrow card = clSS.stCardTrow1;
                clCardTrow.Insert(card);
                card = clSS.stCardTrow2;
                clCardTrow.Insert(card);

                // Записываем статистику тренеров
                CStatsCoach clStatCoach = new CStatsCoach(connect);

                STStatsCoach coach = clSS.stCoach1;
                clStatCoach.Insert(coach);
                coach = clSS.stCoach2;
                clStatCoach.Insert(coach);

                // Записываем статистику судей
                CStatsReferee clStatReferee = new CStatsReferee(connect);

                STStatsReferee referee = clSS.stReferee1_t1;
                clStatReferee.Insert(referee);
                referee = clSS.stReferee1_t2;
                clStatReferee.Insert(referee);
                referee = clSS.stReferee2_t1;
                clStatReferee.Insert(referee);
                referee = clSS.stReferee2_t2;
                clStatReferee.Insert(referee);
                referee = clSS.stStReferee_t1;
                clStatReferee.Insert(referee);
                referee = clSS.stStReferee_t2;
                clStatReferee.Insert(referee);
            }
            catch (Exception ex) { MessageBox.Show(ex.Message, ex.Source); }

            return(ret);
        }