private void ExecuteTransaction() { using (var unitofWork = new UnitOfWork(new MahalluDBContext())) { Decimal amount; if (!Decimal.TryParse(SourceAmount, out amount)) { MessageBox.Show("Enter a valid amount"); return; } if (CurrentCashSource != null && !String.IsNullOrEmpty(SourceNameText) && CurrentCashSource.SourceName.Equals(SourceNameText.Trim())) { if (isWithdrawal) { amount = 0 - amount; } currentCashSource.Amount += amount; unitofWork.CashSources.Update(CurrentCashSource); if (isWithdrawal) { MessageBox.Show("Withrawal of " + SourceAmount + " is successfull from " + CurrentCashSource.SourceName + " ", "Withdrawal", MessageBoxButton.OK, MessageBoxImage.Information); } if (IsDeposite) { MessageBox.Show("Deposite of " + SourceAmount + " is successfull to " + CurrentCashSource.SourceName + " ", "Deposite", MessageBoxButton.OK, MessageBoxImage.Information); } } else { if (isWithdrawal) { MessageBox.Show("You can't withdraw from a new source"); return; } var cashSource = new CashSource() { SourceName = SourceNameText.Trim(), Amount = amount }; unitofWork.CashSources.Add(cashSource); CashSourceList.Add(cashSource); CurrentCashSource = cashSource; } SourceTotal = SourceTotal + amount; SourceAmount = CurrentCashSource.Amount.ToString(); IsEnableAmount = IsWithdrawal = IsDeposite = false; unitofWork.Complete(); } }
private void DeleteTransaction(CashSource cashSource) { MessageBoxResult messageBoxResult = MessageBox.Show("Are you sure to delete", "Delete", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (messageBoxResult == MessageBoxResult.Yes) { using (var unitofWork = new UnitOfWork(new MahalluDBContext())) { CashSourceList.Remove(cashSource); var result = unitofWork.CashSources.Find((x) => x.Id == cashSource.Id).FirstOrDefault(); SourceTotal -= result.Amount; unitofWork.CashSources.Remove(result); unitofWork.Complete(); } } }