/// <summary> /// Used to generate rebates /// </summary> public void GenerateRebate() { _hGR(); Console.Write("\nSales ID\tTotal\tRebate Amount\n"); List <Sale> rebates = _rm.GetGeneratedRebates(); foreach (Sale s in rebates) { double total = s.Total(); Console.Write("\n{0}\t\t{1}\t\t{2}", s.ID, total.ToString("C"), s.RebateAmount.ToString("C")); } Console.WriteLine("\nRebates generated."); }
/// <summary> /// Update's the output view according to the current state. /// </summary> public void update() { RebateModelState state = _rebateModel.GetCurrentState(); switch (state) { case RebateModelState.Initial: uxRebateList.Items.Clear(); uxRebateCheckList.Items.Clear(); break; case RebateModelState.RebateGenerated: List <Sale> rebates = _rebateModel.GetUngeneratedRebates(); uxRebateList.Items.Clear(); foreach (Sale sale in rebates) { uxRebateList.Items.Add(new ListViewItem(new[] { sale.ID.ToString(), String.Format("{0:c}", sale.Total()), String.Format("{0:c}", sale.RebateAmount) })); } break; case RebateModelState.RebateChecksGenerated: MessageBox.Show("Rebate checks generated and sent", "Success"); uxRebateList.Items.Clear(); uxRebateCheckList.Items.Clear(); foreach (Sale sale in _rebateModel.GetGeneratedRebates()) { uxRebateCheckList.Items.Add(new ListViewItem(new[] { sale.ID.ToString(), String.Format("{0:c}", sale.Total()), String.Format("{0:c}", sale.RebateAmount) })); } break; case RebateModelState.RebateEnterError: MessageBox.Show(_rebateModel.Error); _rebateModel.State = RebateModelState.Initial; update(); break; } }