private PayDayModel GetSelectedIncome(ListView view) { // guard clause - no selection ListView.SelectedListViewItemCollection selectedItems = view.SelectedItems; if (selectedItems.Count == 0) { return(null); } // guard clause - invalid state ListViewItem selectedLvi = selectedItems[0]; if (selectedLvi == null) { return(null); } // guard clause - unexpected type PayDayModel selectedRow = selectedLvi.Tag as PayDayModel; if (selectedRow == null) { return(null); } return(selectedRow); }
private void Initialize(PayDayModel model) { Initialize(); Model = model; textBoxDateDue.Text = Model.Date.ToShortDateString(); textBoxAmount.Text = decimal.Round(model.Amount, 2, MidpointRounding.AwayFromZero).ToString(CultureInfo.InvariantCulture); }
private PayDayModel CreateModel(IPayDay payday) { PayDayModel model = new PayDayModel(); model.CopyFrom(payday); return(model); }
public void UpdatePayDay(PayDayModel model) { IPayDay payDay = Service.GetPayDay(model.RecordId); payDay.Date = model.Date; payDay.Amount = model.Amount; Service.UpdatePayDay(payDay); }
public PayDayModel GetPayDay(int recordId) { PayDayModel model = new PayDayModel(); IPayDay payDay = Service.GetPayDay(recordId); model.CopyFrom(payDay); return(model); }
private void Initialize() { InitializeComponent(); textBoxAmount.BackColor = Color.Tomato; textBoxDateDue.BackColor = Color.Tomato; Model = new PayDayModel(); Presenter = new PayDayPresenter(); }
private PayDayModel CreatePayDayModel() { PayDayModel model = new PayDayModel(); model.Date = new DateTime(2017, 05, 05); model.Amount = 1000m; model.RecordId = 0; return(model); }
private void confirmDeleteToolStripMenuItem1_Click(object sender, EventArgs e) { PayDayModel model = GetSelectedIncome(listViewIncome); Presenter.DeleteIncome(model.RecordId); listViewIncome.Items.Clear(); listViewBudget.Items.Clear(); labelTotalIncome.Text = ""; ShowIncome(); }
private void buttonEditIncome_Click(object sender, EventArgs e) { PayDayModel model = GetSelectedIncome(listViewConfigIncome); if (model == null) { return; } IncomeWindow window = new IncomeWindow(model); window.FormClosing += Action_FormClosing; ShowWindow(window); }
private void CreateIncomeRow(PayDayModel model) { string combinedRowContent = string.Format("{0}, {1}", DollarFormat(model.Amount), model.Date); string[] splitRowContent = combinedRowContent.Split(','); ListViewItem item = new ListViewItem(splitRowContent); item.Tag = model; ListViewItem clonedItem = (ListViewItem)item.Clone(); listViewIncome.Items.Add(item); listViewConfigIncome.Items.Add(clonedItem); TotalIncome += model.Amount; }
public void TestBlueSky_GetPayDaysInMonth() { //set-up CreatePayDayData(); PayDayModel[] models = new PayDayModel[0]; //pre-conditions Assert.AreEqual(0, models.Length); //exercise models = Presenter.GetPayDaysInMonth(new DateTime(2017, 05, 05)); //post-conditions Assert.AreEqual(1, models.Length); }
public void SavePayDay(PayDayModel model) { IPayDay payDayExists = Service.GetPayDay(model.RecordId); PayDaySaveFacade facade = new PayDaySaveFacade(); if (payDayExists == null) { IPayDay payDay = facade.Apply(model); Service.AddPayDay(payDay); return; } payDayExists = facade.Apply(model, payDayExists); Service.UpdatePayDay(payDayExists); }
public void TestBlueSky_GetPayDay() { //set-up Model = CreatePayDayModel(); Presenter.SavePayDay(Model); Model = null; //pre-condition Assert.IsNull(Model); //exercise Model = Presenter.GetPayDay(1); //post-condition Assert.IsNotNull(Model); }
public void TestBlueSky_GetPayDaysInMonth() { //set-up Model = CreatePayDayModel(); Presenter.SavePayDay(Model); PayDayModel[] models = null; //pre-condition Assert.IsNull(models); //exercise models = Presenter.GetPayDaysInMonth(new DateTime(2017, 05, 05)); //post-condition Assert.IsNotNull(models); }
public void TestBlueSky_AddPayDay() { //set-up Model = CreatePayDayModel(); IPayDay payDayShouldNotBeInDb = Service.GetPayDay(Model.RecordId); //Pre-condition Assert.IsNull(payDayShouldNotBeInDb); //exercise Presenter.SavePayDay(Model); IPayDay payDayShouldBeInDb = Service.GetPayDay(1); //post-condition Assert.IsNotNull(payDayShouldBeInDb); }
private void ShowIncome() { PayDayModel[] models = Presenter.GetPayDaysInMonth(DisplayedDate); if (models.Length < 1) { PayDayModel payDayModel = new PayDayModel(); payDayModel.Date = new DateTime(DisplayedDate.Year, DisplayedDate.Month, 1); payDayModel.RecordId = 0; payDayModel.Amount = 0; Presenter.AddPayDay(payDayModel); models = Presenter.GetPayDaysInMonth(DisplayedDate); } models.OrderBy(pdm => pdm.Date).Where(pdm => pdm.Date.Month == DisplayedDate.Month && pdm.Date.Year == DisplayedDate.Year).ToList().ForEach(CreateIncomeRow); labelTotalIncome.Text = decimal.Round(TotalIncome, 2, MidpointRounding.AwayFromZero).ToString(CultureInfo.InvariantCulture); }
public void TestBlueSky_UpdatePayDay() { //set-up Model = CreatePayDayModel(); Presenter.SavePayDay(Model); PayDayModel newModel = Presenter.GetPayDay(1); newModel.Date = Model.Date.AddDays(1); newModel.Amount = Model.Amount + 1m; //pre-condition Assert.AreNotEqual(Model.Date, newModel.Date); Assert.AreNotEqual(Model.Amount, newModel.Amount); //exercise Presenter.UpdatePayDay(newModel); Model = Presenter.GetPayDay(newModel.RecordId); //post-condition Assert.AreEqual(Model.Date, newModel.Date); Assert.AreEqual(Model.Amount, newModel.Amount); }
public IncomeWindow(PayDayModel model) { Initialize(model); }