aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2018-08-01 18:46:05 +0300
committerRoy Ben-Shabat <Roy@Twine-s.com>2018-08-01 18:46:05 +0300
commit44728b1223a0e90785fe67f4e5782bee0683ed09 (patch)
tree4c17718eecd87d407b6f9eb4b81d29895301aa8c /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs
parentd5adb83c9487cd7198500a1e46933ca27a3411af (diff)
downloadTango-44728b1223a0e90785fe67f4e5782bee0683ed09.tar.gz
Tango-44728b1223a0e90785fe67f4e5782bee0683ed09.zip
Implemented default report issue settings on machine studio.
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs37
1 files changed, 35 insertions, 2 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs
index 2935ff81b..96800d9cf 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/ReportIssueViewVM.cs
@@ -3,8 +3,10 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Tango.MachineStudio.Common;
using Tango.MachineStudio.Common.Notifications;
using Tango.MachineStudio.UI.TFS;
+using Tango.Settings;
using Tango.SharedUI;
using Tango.SharedUI.Components;
using Tango.TFS;
@@ -13,6 +15,8 @@ namespace Tango.MachineStudio.UI.ViewModels
{
public class ReportIssueViewVM : DialogViewVM
{
+ private MachineStudioSettings _settings;
+
public SelectedObjectCollection<Tag> SelectedTags { get; set; }
public Project Project { get; set; }
@@ -22,14 +26,33 @@ namespace Tango.MachineStudio.UI.ViewModels
public ReportIssueViewVM() : base()
{
-
+ _settings = SettingsManager.Default.GetOrCreate<MachineStudioSettings>();
}
public ReportIssueViewVM(Project project, WorkItem workItem) : this()
{
Project = project;
WorkItem = workItem;
- SelectedTags = new SelectedObjectCollection<Tag>(Project.Tags.ToObservableCollection(), new System.Collections.ObjectModel.ObservableCollection<Tag>());
+
+ var area = project.Areas.FirstOrDefault(x => x.Name == _settings.DefaultIssueReportArea);
+ if (area != null)
+ {
+ workItem.Area = area;
+ }
+
+ var assignedTo = project.Members.FirstOrDefault(x => x.Email == _settings.DefaultIssueReportAssignTo);
+ if (assignedTo != null)
+ {
+ workItem.AssignedTo = assignedTo;
+ }
+
+ var tags = project.Tags.Where(x => _settings.DefaultIssueReportTags.Contains(x.Name)).ToList();
+ if (tags != null)
+ {
+ workItem.Tags = tags;
+ }
+
+ SelectedTags = new SelectedObjectCollection<Tag>(Project.Tags.ToObservableCollection(), workItem.Tags.ToObservableCollection());
}
protected override void Accept()
@@ -37,6 +60,16 @@ namespace Tango.MachineStudio.UI.ViewModels
if (Validate())
{
WorkItem.Tags = SelectedTags.SynchedSource.ToList();
+
+ try
+ {
+ _settings.DefaultIssueReportArea = WorkItem.Area.Name;
+ _settings.DefaultIssueReportAssignTo = WorkItem.AssignedTo.Email;
+ _settings.DefaultIssueReportTags = WorkItem.Tags.Select(x => x.Name).ToList();
+ _settings.Save();
+ }
+ catch { }
+
base.Accept();
}
}