|
@@ -20,8 +20,6 @@ public class TaskGrid : DynamicDataGrid<Kanban>, ITaskControl, IDefaultGrid
|
|
|
ActionColumns.Add(new DynamicImageColumn(PRSDesktop.Resources.menu.AsBitmapImage(), FormMenuClick));
|
|
|
|
|
|
HiddenColumns.Add(x => x.EmployeeLink.ID);
|
|
|
- HiddenColumns.Add(x => x.EmployeeLink.Deleted);
|
|
|
- HiddenColumns.Add(x => x.ManagerLink.Deleted);
|
|
|
|
|
|
OnCustomiseEditor += CustomiseEditor;
|
|
|
OnBeforeSave += BeforeSave;
|
|
@@ -34,8 +32,6 @@ public class TaskGrid : DynamicDataGrid<Kanban>, ITaskControl, IDefaultGrid
|
|
|
options.AddRange(DynamicGridOption.SelectColumns, DynamicGridOption.FilterRows, DynamicGridOption.RecordCount);
|
|
|
}
|
|
|
|
|
|
- public Guid MyID { get; set; } = CoreUtils.FullGuid;
|
|
|
-
|
|
|
private bool FormMenuClick(CoreRow? row)
|
|
|
{
|
|
|
if (row is null)
|
|
@@ -62,7 +58,7 @@ public class TaskGrid : DynamicDataGrid<Kanban>, ITaskControl, IDefaultGrid
|
|
|
switch (column.ColumnName)
|
|
|
{
|
|
|
case "Private":
|
|
|
- enabled = kanban.EmployeeLink.ID == MyID && kanban.ManagerLink.ID == MyID;
|
|
|
+ enabled = kanban.EmployeeLink.ID == App.EmployeeID && kanban.ManagerLink.ID == App.EmployeeID;
|
|
|
break;
|
|
|
case "Description":
|
|
|
enabled = kanban.ID == Guid.Empty || (bFullControl && !kanban.Private);
|
|
@@ -90,7 +86,7 @@ public class TaskGrid : DynamicDataGrid<Kanban>, ITaskControl, IDefaultGrid
|
|
|
{
|
|
|
foreach (var kanban in kanbans)
|
|
|
{
|
|
|
- if (!MyID.Equals(kanban.ManagerLink.ID) && !MyID.Equals(kanban.EmployeeLink.ID))
|
|
|
+ if (!App.EmployeeID.Equals(kanban.ManagerLink.ID) && !App.EmployeeID.Equals(kanban.EmployeeLink.ID))
|
|
|
{
|
|
|
// If you can change others tasks, IsFullControl is true - but we don't check at the beginning of the function
|
|
|
// to save checking security tokens every time.
|
|
@@ -117,25 +113,6 @@ public class TaskGrid : DynamicDataGrid<Kanban>, ITaskControl, IDefaultGrid
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- protected override void AfterLoad(IDynamicEditorForm editor, Kanban[] kanbans)
|
|
|
- {
|
|
|
- base.AfterLoad(editor, kanbans);
|
|
|
- //EnsureAssignee(editor, kanbans.FirstOrDefault());
|
|
|
- //EnsureAllocator(editor, kanbans.FirstOrDefault());
|
|
|
-
|
|
|
- if (MyID == CoreUtils.FullGuid)
|
|
|
- {
|
|
|
- var row = new Client<Employee>()
|
|
|
- .Query(new Filter<Employee>(x => x.UserLink.ID).IsEqualTo(ClientFactory.UserGuid), new Columns<Employee>(x => x.ID)).Rows
|
|
|
- .FirstOrDefault();
|
|
|
- if (row != null)
|
|
|
- MyID = row.Get<Employee, Guid>(x => x.ID);
|
|
|
- }
|
|
|
-
|
|
|
- //if (kanbans.FirstOrDefault().ID == Guid.Empty)
|
|
|
- // ReloadForms<Kanban, KanbanForm, KanbanTypeForm>(editor, kanbans.FirstOrDefault(), x => x.Type.ID, kanbans.FirstOrDefault().Type.ID);
|
|
|
- }
|
|
|
-
|
|
|
protected override Dictionary<string, object?> EditorValueChanged(IDynamicEditorForm editor, Kanban[] items, string name, object value)
|
|
|
{
|
|
|
var result = base.EditorValueChanged(editor, items, name, value);
|
|
@@ -168,13 +145,13 @@ public class TaskGrid : DynamicDataGrid<Kanban>, ITaskControl, IDefaultGrid
|
|
|
managerEditor.IsEnabled = enabled;
|
|
|
if (!enabled)
|
|
|
{
|
|
|
- employeeEditor.SetValue(employeeEditor.ColumnName, MyID);
|
|
|
- managerEditor.SetValue(managerEditor.ColumnName, MyID);
|
|
|
+ employeeEditor.SetValue(employeeEditor.ColumnName, App.EmployeeID);
|
|
|
+ managerEditor.SetValue(managerEditor.ColumnName, App.EmployeeID);
|
|
|
|
|
|
foreach(var item in items)
|
|
|
{
|
|
|
- item.EmployeeLink.ID = MyID;
|
|
|
- item.ManagerLink.ID = MyID;
|
|
|
+ item.EmployeeLink.ID = App.EmployeeID;
|
|
|
+ item.ManagerLink.ID = App.EmployeeID;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -250,6 +227,8 @@ public class TaskGrid : DynamicDataGrid<Kanban>, ITaskControl, IDefaultGrid
|
|
|
|
|
|
public void Setup()
|
|
|
{
|
|
|
+ FilterComponent.SetSettings(Host.KanbanSettings.Filters, false);
|
|
|
+
|
|
|
Refresh(true, false);
|
|
|
}
|
|
|
|