private void AddLoadTransactionProc() { //NewLoadTransaction = new NewLoadTransactionModel(); if (NewLoadTransaction == null) { return; } if (!NewLoadTransaction.HasChanges) { return; } if (CheckIfNumber() || (NewLoadTransaction.ModelCopy.LoadAmount <= 0)) { MessageBox.Show("Invalid input for Amount field.", "Error", MessageBoxButton.OK); return; } NewLoadTransaction.ModelCopy.LoadAmount = Convert.ToInt32(TextBoxAmount); if (LoadTransactionList.Count > 0) { NewLoadTransaction.ModelCopy.AmountBeginning = LoadTransactionList[LoadTransactionList.Count - 1].Model.CurrentBalance; } if ((IsCheckedLoad == false) && (IsCheckedReLoad == false)) { MessageBox.Show("You need to click an option between Load and Reload."); return; } if (IsCheckedLoad) // Load { if (NewLoadTransaction.ModelCopy.AmountBeginning < NewLoadTransaction.ModelCopy.LoadAmount) { MessageBox.Show("You have insufficient load balance."); return; } NewLoadTransaction.ModelCopy.LoadProfileId = 1; NewLoadTransaction.ModelCopy.CurrentBalance = NewLoadTransaction.ModelCopy.AmountBeginning - NewLoadTransaction.ModelCopy.LoadAmount; } if (IsCheckedReLoad) //Reload { if (NewLoadTransaction.ModelCopy.LoadAmount <= 0) { MessageBox.Show("Error in Amount. You cannot have zero amount."); return; } NewLoadTransaction.ModelCopy.LoadProfileId = 2; NewLoadTransaction.ModelCopy.CurrentBalance = NewLoadTransaction.ModelCopy.AmountBeginning + NewLoadTransaction.ModelCopy.LoadAmount; } NewLoadTransaction.ModelCopy.NetworkId = SelectedNetworkModel.Model.NetworkId; try { _repository.LoadTransactions.Add(NewLoadTransaction.ModelCopy); LoadTransactionList.Add(new LoadTransactionModel(NewLoadTransaction.ModelCopy, _repository)); CurrentBalance = NewLoadTransaction.ModelCopy.CurrentBalance; MessageBox.Show("Load Transaction has been updated."); } catch (Exception e) { MessageBox.Show("An error occurred during save. Error: " + e, "Load Transaction"); } }
private void LoadTranscation() { if (SelectedNetworkModel != null) { LoadTransactionList.Clear(); var loadtransactions = _repository.LoadTransactions.GetRange(c => c.NetworkId == SelectedNetworkModel.Model.NetworkId); foreach (var loadtransaction in loadtransactions) { LoadTransactionList.Add(new LoadTransactionModel(loadtransaction, _repository)); } var list = LoadTransactionList.LastOrDefault(); if (list != null) { CurrentBalance = list.Model.CurrentBalance; } else { CurrentBalance = null; } } }