private void Timer1_Tick(object sender, EventArgs e) { logController.GetAllRecords(); if (LogsCount != logList.Count) { string prodName = "ПРодуктище"; // GetProductNameById(logList[logList.Count - 1].ProductId); string userName = "******"; // GetUserNameByUserId(logList[logList.Count - 1].CreationUserId); string text = logList[logList.Count - 1].Text; LoggerModel lm = new LoggerModel(); lm = logList[logList.Count - 1]; LoggerNotification logNotific = new LoggerNotification(this, lm, userName, prodName, text); logNotific.Show(); LogsCount = logList.Count; } }
/* Обновляем таблицу каждую 1 секунду */ private void Timer1_Tick(object sender, EventArgs e) { if (startDate < endDate) //да "С" должна быть раньше даты "ПО" { try { logController.GetRecordsByFilters(ChooseFilter()); if (logList.Count != previousCountOfLogs && logList.Count != 0) //если после запроса к БД количество строк изменилось, то перерисовываем таблицу { dgv_Log.Visible = true; label6.Visible = false; previousCountOfLogs = logList.Count; Draw_dgv_Logs(); if (WindowState == FormWindowState.Minimized) { string prodName = GetProductNameById(logList[logList.Count - 1].ProductId); string userName = GetUserNameByUserId(logList[logList.Count - 1].CreationUserId); string text = logList[logList.Count - 1].Text; LoggerModel lm = new LoggerModel(); lm = logList[logList.Count - 1]; LoggerNotification logNotific = new LoggerNotification(this, lm, userName, prodName, logList[logList.Count - 1].SKU, GetProductSkuById(logList[logList.Count - 1].ProductId), GetProductMarketPlaceNameBySKU(logList[logList.Count - 1].SKU), GetUserNameByUserId(logList[logList.Count - 1].EditUserId), text, userModel.UserId); logNotific.Show(); } } else if (logList.Count == 0) //если по фильтрам поиска ничего не нашли { label6.Visible = true; dgv_Log.Visible = false; previousCountOfLogs = logList.Count; } } catch (Exception ex) { MessageBox.Show("При установке соединения с БД произошел сбой. Logger будет закрыт", "Ошибка"); this.Close(); } } }
/* Иницируем сохранение отчета в БД для одиночного файла */ private void Btn_Save_Click(object sender, EventArgs e) { if (fileNames.Count > 0) { if (MessageBox.Show("Загрузить отчеты?", "Подтвердите действие", MessageBoxButtons.YesNo) == DialogResult.Yes) { lb_Progress.Visible = true; this.Enabled = false; richTextBox2.Text = ""; string errors = ""; foreach (var _fileName in fileNames) { insertedCount = 0; updatedCount = 0; advProductsList.Clear(); advProductsListForUpdate.Clear(); advProductsListOfErrors.Clear(); OpenNewFileForSponsoredProducts(_fileName); if (advProductsList.Count > 0) { SetCampaignAndMarketplaceToAllRows_AP(_fileName); if (advProductsListOfErrors.Count > 0) { foreach (var t in advProductsListOfErrors) { errors += "Date: " + UpdateDate.ToString() + " Campaign: " + t.CampaignName + "; AdGroup: " + t.AdGroupName + "; Targeting: " + t.Targeting + "; Marketplace: " + GetMarketPlaceNameById(t.MarketPlaceId) + "\n\n"; } } if (errors.Length == 0 || errors.Contains("Competitors")) { MakeSummaryAdvProductListbyTargetingInAdGroups(); lb_Progress.Text = "Обновление данных..."; lb_Progress.Refresh(); advertController.InsertAdvertising_Product_Report(advProductsList, lb_Progress); if (advProductsListForUpdate.Count > 0) { advertController.UpdateAdvertising_Product_Report(advProductsListForUpdate, lb_Progress); } richTextBox2.Text += _fileName + "\n" + "Загружено: " + insertedCount + "\nОбновлено: " + updatedCount + "\nВсего: " + (insertedCount + updatedCount).ToString() + " из " + advProductsList.Count + "\n\n"; LoggerNotification log = new LoggerNotification(_fileName); log.Show(); } else { richTextBox2.Text += errors; } } else { richTextBox2.Text += "Пустой файл: " + _fileName + "\n"; } } this.Enabled = true; lb_Progress.Visible = false; lb_Progress.Text = ""; } } else { MessageBox.Show("Не выбраны файлы для загрузки.", "Ошибка"); } }