Skip to content
This repository was archived by the owner on Oct 3, 2022. It is now read-only.

Commit 69692b3

Browse files
committed
ChangeStatus to InProgress
1 parent de08795 commit 69692b3

File tree

5 files changed

+46
-34
lines changed

5 files changed

+46
-34
lines changed

.vs/TakeMyTime.NETCore/v16/.suo

-7 KB
Binary file not shown.

TakeMyTime.BLL/Logic/AssignmentLogic.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using TakeMyTime.DAL.uow;
66

77
using TakeMyTime.Models.Models;
8+
using static Common.Enums.EnumDefinition;
89

910
namespace TakeMyTime.BLL.Logic
1011
{
@@ -59,6 +60,16 @@ public void UpdateAssignment(int id, Assignment.IUpdateParam param)
5960
unitOfWork.Complete();
6061
}
6162

63+
public void UpdateAssignmentStatus(int id, AssignmentStatus status)
64+
{
65+
var edit = unitOfWork.Assignments.Get(id);
66+
if (edit != null)
67+
{
68+
edit.UpdateStatus(status);
69+
unitOfWork.Complete();
70+
}
71+
}
72+
6273
public void DeleteAssignment(int id)
6374
{
6475
var toBeDeleted = GetAssignmentById(id);

TakeMyTime.WPF/Assignments/AddAssignment.xaml.cs

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -46,19 +46,21 @@ public AddAssignment(int assignment_id, int project_id)
4646

4747
private void Load()
4848
{
49-
if (EditMode)
50-
{
51-
var assignmentLogic = new AssignmentLogic();
52-
this.Assignment = assignmentLogic.GetAssignmentById(this.Assignment.Id);
53-
assignmentLogic.Dispose();
54-
55-
this.tb_AssignmentDescription.Text = this.Assignment.Description;
56-
this.tb_AssignmentName.Text = this.Assignment.Name;
57-
this.tb_AssignmentPlannedDurationHours.Text = Assignment.DurationPlannedAsTicks.HasValue ? new TimeSpan(this.Assignment.DurationPlannedAsTicks.Value).Hours.ToString() : null;
58-
this.tb_AssignmentPlannedDurationMinutes.Text = Assignment.DurationPlannedAsTicks.HasValue ? new TimeSpan(this.Assignment.DurationPlannedAsTicks.Value).Minutes.ToString() : null;
59-
this.dp_AssignmentDue.SelectedDate = this.Assignment.DateDue;
60-
this.dp_Planned.SelectedDate = this.Assignment.DatePlanned;
61-
}
49+
if (!EditMode) return;
50+
var assignmentLogic = new AssignmentLogic();
51+
this.Assignment = assignmentLogic.GetAssignmentById(this.Assignment.Id);
52+
assignmentLogic.Dispose();
53+
54+
this.tb_AssignmentDescription.Text = this.Assignment.Description;
55+
this.tb_AssignmentName.Text = this.Assignment.Name;
56+
this.tb_AssignmentPlannedDurationHours.Text = Assignment.DurationPlannedAsTicks.HasValue
57+
? new TimeSpan(this.Assignment.DurationPlannedAsTicks.Value).Hours.ToString()
58+
: null;
59+
this.tb_AssignmentPlannedDurationMinutes.Text = Assignment.DurationPlannedAsTicks.HasValue
60+
? new TimeSpan(this.Assignment.DurationPlannedAsTicks.Value).Minutes.ToString()
61+
: null;
62+
this.dp_AssignmentDue.SelectedDate = this.Assignment.DateDue;
63+
this.dp_Planned.SelectedDate = this.Assignment.DatePlanned;
6264
}
6365

6466
#region GUI Events

TakeMyTime.WPF/Assignments/AssignmentOverview.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public AssignmentOverview()
4242
private void SetDefaultFilters()
4343
{
4444
this.cb_ProjectSelection.SelectedItem = this.ProjectViewModels.Single(pvm => pvm.Id == 0);
45-
this.cb_StatusFilter.SelectedItem = cbi_Future;
45+
this.cb_StatusFilter.SelectedItem = cbi_Active;
4646
}
4747

4848
private void LoadProjectViewModels()

TakeMyTime.WPF/Entries/AddEntry.xaml.cs

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,11 @@
11
using Common.Enums;
22
using System;
33
using System.Collections.Generic;
4-
using System.Diagnostics;
54
using System.Linq;
6-
using System.Text;
7-
using System.Threading;
8-
using System.Threading.Tasks;
9-
using System.Timers;
105
using System.Windows;
116
using System.Windows.Controls;
12-
using System.Windows.Data;
13-
using System.Windows.Documents;
147
using System.Windows.Input;
158
using System.Windows.Media;
16-
using System.Windows.Media.Imaging;
17-
using System.Windows.Shapes;
189
using System.Windows.Threading;
1910
using TakeMyTime.BLL.Logic;
2011
using TakeMyTime.Models.Models;
@@ -44,7 +35,7 @@ public AddEntry(int projectId, int assignmentId)
4435
this.btn_StartStop.Content = ResourceStringManager.GetResourceByKey("ButtonTextStart");
4536
this.Load();
4637
this.cb_Subtask.SelectedItem = this.SubtaskViewModels.FirstOrDefault(s => s.Id > 0);
47-
if (this.SubtaskViewModels.Count() == 0) this.chebo_FinishesSubtask.IsEnabled = false;
38+
if (!this.SubtaskViewModels.Any()) this.chebo_FinishesSubtask.IsEnabled = false;
4839
}
4940

5041
public AddEntry(int entry_id)
@@ -77,17 +68,15 @@ private void btn_Close_Click(object sender, RoutedEventArgs e)
7768

7869
private void btn_Save_Click(object sender, RoutedEventArgs e)
7970
{
80-
if (!string.IsNullOrWhiteSpace(this.tb_Name.Text))
71+
if (string.IsNullOrWhiteSpace(this.tb_Name.Text)) return;
72+
if (this.entry_id.HasValue)
73+
{
74+
this.EditAndSaveEntry();
75+
}
76+
else
8177
{
82-
if (!this.entry_id.HasValue)
83-
{
84-
this.stopped = DateTime.Now;
85-
this.CreateEntry();
86-
}
87-
else
88-
{
89-
this.EditAndSaveEntry();
90-
}
78+
this.stopped = DateTime.Now;
79+
this.CreateEntry();
9180
}
9281
}
9382

@@ -144,6 +133,7 @@ public void CreateEntry()
144133
projectLogic.Dispose();
145134
var subtaskLogic = new SubtaskLogic();
146135
var subtask = subtaskLogic.GetById(this.SelectedSubtask.Id);
136+
ChangeParentAssignmentToInProgress(subtask);
147137

148138
var entryCreateViewModel = new EntryCreateViewModel
149139
{
@@ -163,6 +153,15 @@ public void CreateEntry()
163153
this.Close();
164154
}
165155

156+
private static void ChangeParentAssignmentToInProgress(Subtask subtask)
157+
{
158+
// Update AssignmentStatus to InProgress
159+
if (subtask == null) return;
160+
var assignmentLogic = new AssignmentLogic();
161+
assignmentLogic.UpdateAssignmentStatus(subtask.Assignment_Id.GetValueOrDefault(0), EnumDefinition.AssignmentStatus.InProgress);
162+
assignmentLogic.Dispose();
163+
}
164+
166165
public void StartStopTimer()
167166
{
168167
if (!timer.IsEnabled)

0 commit comments

Comments
 (0)