|
@@ -183,6 +183,18 @@ namespace PRSDesktop
|
|
|
public Guid JobID { get; set; }
|
|
|
public Guid FolderID { get; set; }
|
|
|
|
|
|
+ public bool DisciplineVisible { get; set; }
|
|
|
+ public Guid DisciplineID { get; set; }
|
|
|
+
|
|
|
+ public bool TypeVisible { get; set; }
|
|
|
+ public Guid TypeID { get; set; }
|
|
|
+
|
|
|
+ public bool CategoryVisible { get; set; }
|
|
|
+ public Guid CategoryID { get; set; }
|
|
|
+
|
|
|
+ public bool AreaVisible { get; set; }
|
|
|
+ public Guid AreaID { get; set; }
|
|
|
+
|
|
|
private Dictionary<Guid,MileStoneType> _types = null;
|
|
|
private CoreTable _milestones = null;
|
|
|
public CoreTable Data { get; private set; } = null;
|
|
@@ -215,11 +227,22 @@ namespace PRSDesktop
|
|
|
treeGrid.ItemsSource = null;
|
|
|
|
|
|
var setfilter = new Filter<JobDocumentSet>(x => x.Job.ID).IsEqualTo(JobID);
|
|
|
- if(FolderID != CoreUtils.FullGuid)
|
|
|
- {
|
|
|
- setfilter = setfilter.And(x => x.Folder.ID).IsEqualTo(FolderID);
|
|
|
- }
|
|
|
+
|
|
|
+ if (FolderID != CoreUtils.FullGuid)
|
|
|
+ setfilter = setfilter.And(x => x.Folder.ID).IsEqualTo(FolderID);
|
|
|
+
|
|
|
+ if (DisciplineID != Guid.Empty)
|
|
|
+ setfilter = setfilter.And(x => x.Discipline.ID).IsEqualTo(DisciplineID);
|
|
|
|
|
|
+ if (TypeID != Guid.Empty)
|
|
|
+ setfilter = setfilter.And(x => x.Type.ID).IsEqualTo(TypeID);
|
|
|
+
|
|
|
+ if (CategoryID != Guid.Empty)
|
|
|
+ setfilter = setfilter.And(x => x.Category.ID).IsEqualTo(CategoryID);
|
|
|
+
|
|
|
+ if (AreaID != Guid.Empty)
|
|
|
+ setfilter = setfilter.And(x => x.Area.ID).IsEqualTo(AreaID);
|
|
|
+
|
|
|
if (!_includeretired)
|
|
|
setfilter = setfilter.And(x => x.Retired).IsEqualTo(DateTime.MinValue);
|
|
|
|
|
@@ -398,6 +421,7 @@ namespace PRSDesktop
|
|
|
ConfigureStackedHeader();
|
|
|
|
|
|
treeGrid.ItemsSource = documentsets.Nodes;
|
|
|
+ DocumentCount.Content = $"{documentsets.Nodes.Count} {(documentsets.Nodes.Count > 1 ? "Records" : "Record")}";
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -1150,6 +1174,10 @@ namespace PRSDesktop
|
|
|
set.Folder.ID = FolderID;
|
|
|
set.Code = Path.GetFileNameWithoutExtension(filename).ToUpper();
|
|
|
set.Description = Path.GetFileNameWithoutExtension(filename).ToUpper();
|
|
|
+ set.Discipline.ID = DisciplineID;
|
|
|
+ set.Type.ID = TypeID;
|
|
|
+ set.Category.ID = CategoryID;
|
|
|
+ set.Area.ID = AreaID;
|
|
|
|
|
|
JobDocumentSetMileStone milestone = new JobDocumentSetMileStone();
|
|
|
milestone.Type.ID = type;
|
|
@@ -1201,6 +1229,11 @@ namespace PRSDesktop
|
|
|
JobDocumentSet set = new JobDocumentSet();
|
|
|
set.Job.ID = JobID;
|
|
|
set.Folder.ID = FolderID;
|
|
|
+ set.Discipline.ID = DisciplineID;
|
|
|
+ set.Type.ID = TypeID;
|
|
|
+ set.Category.ID = CategoryID;
|
|
|
+ set.Area.ID = AreaID;
|
|
|
+
|
|
|
var grid = new DynamicDataGrid<JobDocumentSet>();
|
|
|
grid.OnAfterSave += (form, items) =>
|
|
|
{
|
|
@@ -1255,6 +1288,11 @@ namespace PRSDesktop
|
|
|
JobDocumentSet set = new JobDocumentSet();
|
|
|
set.Job.ID = JobID;
|
|
|
set.Folder.ID = FolderID;
|
|
|
+ set.Discipline.ID = DisciplineID;
|
|
|
+ set.Type.ID = TypeID;
|
|
|
+ set.Category.ID = CategoryID;
|
|
|
+ set.Area.ID = AreaID;
|
|
|
+
|
|
|
var grid = new DynamicDataGrid<JobDocumentSet>();
|
|
|
if (grid.EditItems(new[] { set }))
|
|
|
Refresh();
|
|
@@ -1274,6 +1312,17 @@ namespace PRSDesktop
|
|
|
new Filter<JobDocumentSet>(x => x.ID).InList(setIDs)
|
|
|
).Rows.Select(x => x.ToObject<JobDocumentSet>()).ToArray();
|
|
|
var grid = new DynamicDataGrid<JobDocumentSet>();
|
|
|
+ grid.OnCustomiseEditor += (form, items, column, editor) =>
|
|
|
+ {
|
|
|
+ if (String.Equals(column.ColumnName, "Discipline.ID"))
|
|
|
+ editor.Editable = DisciplineVisible ? Editable.Enabled : Editable.Hidden;
|
|
|
+ if (String.Equals(column.ColumnName, "Type.ID"))
|
|
|
+ editor.Editable = TypeVisible ? Editable.Enabled : Editable.Hidden;
|
|
|
+ if (String.Equals(column.ColumnName, "Category.ID"))
|
|
|
+ editor.Editable = CategoryVisible ? Editable.Enabled : Editable.Hidden;
|
|
|
+ if (String.Equals(column.ColumnName, "Area.ID"))
|
|
|
+ editor.Editable = AreaVisible ? Editable.Enabled : Editable.Hidden;
|
|
|
+ };
|
|
|
if (grid.EditItems(sets))
|
|
|
Refresh();
|
|
|
}
|