private void BtnSave_Click(object sender, RoutedEventArgs e) { try { TypeExpenseDto typeExpenseDto = new TypeExpenseDto(); typeExpenseDto.Description = tbDescription.Text; typeExpenseDto.Limited = double.Parse(tbLimited.Text); typeExpenseDto.Title = tbTitle.Text; ITypeExpenseProcess typeExpenseProcess = ProcessFactory.GetTypeExpenseProcess(); if (_id == 0) { typeExpenseProcess.Add(typeExpenseDto); } else { typeExpenseDto.idType = _id; typeExpenseProcess.Update(typeExpenseDto); } this.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
public void Load(TypeExpenseDto typeExpenseDto) { if (typeExpenseDto == null) { return; } _id = typeExpenseDto.idType; //this.tbDivisionID.Text = divisionDto.idDivision.ToString(); this.tbDescription.Text = typeExpenseDto.Description.ToString(); this.tbLimited.Text = typeExpenseDto.Limited.ToString(); this.tbTitle.Text = typeExpenseDto.Title.ToString(); }
public static TypeExpense Convert(TypeExpenseDto typeExpenseDto) { if (typeExpenseDto == null) { return(null); } TypeExpense typeExpense = new TypeExpense(); typeExpense.Description = typeExpenseDto.Description; typeExpense.idType = typeExpenseDto.idType; typeExpense.Limited = typeExpenseDto.Limited; typeExpense.Title = typeExpenseDto.Title; return(typeExpense); }
private void BtnEdit_Click(object sender, RoutedEventArgs e) { switch (currentTable) { case "Worker": WorkerDto workerDto = (WorkerDto)dgMain.SelectedItem; if (workerDto != null) { WorkerWindow workerWindow = new WorkerWindow(); workerWindow.Load(workerDto); workerWindow.ShowDialog(); MenuItem_Click(sender, e); //update table } break; case "Division": DivisionDto divisionDto = (DivisionDto)dgMain.SelectedItem; if (divisionDto != null) { DivisionWindow divisionWindow = new DivisionWindow(); divisionWindow.Load(divisionDto); divisionWindow.ShowDialog(); MenuItem_Click_1(sender, e); } break; case "ExpenseByWorker": ExpenseDto expenseDto = (ExpenseDto)dgMain.SelectedItem; if (expenseDto != null) { ExpenseWindow expenseWindow = new ExpenseWindow(); expenseWindow.Load(expenseDto); expenseWindow.ShowDialog(); MenuItem_Click_3(sender, e); } break; case "TypeExpense": TypeExpenseDto typeExpenseDto = (TypeExpenseDto)dgMain.SelectedItem; if (typeExpenseDto != null) { TypeExpenseWindow typeExpenseWindow = new TypeExpenseWindow(); typeExpenseWindow.Load(typeExpenseDto); typeExpenseWindow.ShowDialog(); MenuItem_Click_4(sender, e); } break; } }
private void btnDelete_Click(object sender, RoutedEventArgs e) { switch (currentTable) { case "Worker": WorkerDto item = (WorkerDto)dgMain.SelectedItem; if (item == null) { MessageBox.Show("Choose item from delete", "Worker delete"); return; } MessageBoxResult result = MessageBox.Show("Delete " + item.Name + "?", "Worker delete", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (result != MessageBoxResult.Yes) { return; } ProcessFactory.GetWorkerProcess().Delete(item.idWorker); MenuItem_Click(sender, e); //update table break; case "Division": DivisionDto itemDivision = (DivisionDto)dgMain.SelectedItem; if (itemDivision == null) { MessageBox.Show("Choose item from delete", "Division delete"); return; } MessageBoxResult resultDivision = MessageBox.Show("Delete " + itemDivision.Title + "?", "Division delete", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (resultDivision != MessageBoxResult.Yes) { return; } ProcessFactory.GetDivisionProcess().Delete(itemDivision.idDivision); MenuItem_Click_1(sender, e); break; case "ExpenseByWorker": ExpenseDto itemExpenseDto = (ExpenseDto)dgMain.SelectedItem; if (itemExpenseDto == null) { MessageBox.Show("Choose item from delete", "Expense delete"); return; } MessageBoxResult resultExpense = MessageBox.Show("Delete " + itemExpenseDto.Description + "?", "Expense delete", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (resultExpense != MessageBoxResult.Yes) { return; } ProcessFactory.GetExpenseByWorkerProcess().Delete(itemExpenseDto.idConsumption); MenuItem_Click_3(sender, e); break; case "TypeExpense": TypeExpenseDto itemTypeExpenseDto = (TypeExpenseDto)dgMain.SelectedItem; if (itemTypeExpenseDto == null) { MessageBox.Show("Choose item from delete", "Type expense delete"); return; } MessageBoxResult resultTypeExpense = MessageBox.Show("Delete " + itemTypeExpenseDto.Title + "?", "Type expense delete", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (resultTypeExpense != MessageBoxResult.Yes) { return; } ProcessFactory.GetExpenseByWorkerProcess().Delete(itemTypeExpenseDto.idType); MenuItem_Click_4(sender, e); break; } }
public void Update(TypeExpenseDto expenseDto) { _typeExpenseDao.Update(DtoConverter.Convert(expenseDto)); }
public void Add(TypeExpenseDto expenseDto) { _typeExpenseDao.Add(DtoConverter.Convert(expenseDto)); }
public void fillExcelTableByType(IEnumerable <object> grid, string currentTable, FileInfo xlsxFile) { if (grid != null) { ExcelPackage pck = new ExcelPackage(xlsxFile); var excel = pck.Workbook.Worksheets.Add(currentTable); int x = 1; int y = 1; // Устанавливает фиксированный десятичный разделитель (нужно для верногораспознавания типа данных Excel'ем). CultureInfo cultureInfo = new CultureInfo(Thread.CurrentThread.CurrentCulture.Name); Thread.CurrentThread.CurrentCulture = cultureInfo; cultureInfo.NumberFormat.NumberDecimalSeparator = "."; // Первая строка (шапка таблицы) – жирным стилем. excel.Cells["A1: Z1"].Style.Font.Bold = true; // Выравнивание текста в ячейках – по левому краю. excel.Cells.Style.HorizontalAlignment = ExcelHorizontalAlignment.Left; // Устанавливает формат ячеек. excel.Cells.Style.Numberformat.Format = "General"; // Пустой объект для получения списка property. Object dtObj = new Object(); switch (currentTable) { case "Worker": dtObj = new WorkerDto(); break; case "Division": dtObj = new DivisionDto(); break; case "ExpenseByWorker": dtObj = new ExpenseDto(); break; case "TypeExpense": dtObj = new TypeExpenseDto(); break; } // Генерация шапки таблицы. foreach (var prop in dtObj.GetType().GetProperties()) { excel.Cells[y, x].Value = prop.Name.Trim(); x++; } // Генерация строк-записей таблицы. foreach (var item in grid) { y++; // Объект-контейнер для текущего читаемого элемента. Object itemObj = item; x = 1; foreach (var prop in itemObj.GetType().GetProperties()) { object t = prop.GetValue(itemObj, null); object val; if (t == null) { val = ""; } else { val = t.ToString(); // Если тип сложный, то вытаскиваем нужное поле. if (t is WorkerDto) { val = ((WorkerDto)t).Name; } if (t is DivisionDto) { val = ((DivisionDto)t).Title; } if (t is ExpenseDto) { val = ((ExpenseDto)t).Description; } if (t is TypeExpenseDto) { val = ((TypeExpenseDto)t).Title; } } excel.Cells[y, x].Value = val; x++; } } // Устанавливаем размер колонок по ширине содержимого. excel.Cells.AutoFitColumns(); // Сохраняем файл. pck.Save(); } else { MessageBox.Show("Данные не загружены!"); } }