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); } }
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); } }
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); }