FreeApprovalReworkAssignmentActions.cs
2.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
using System;
using System.Collections.Generic;
using System.Linq;
using Sungero.Core;
using Sungero.CoreEntities;
using Sungero.Docflow.FreeApprovalReworkAssignment;
namespace Sungero.Docflow.Client
{
partial class FreeApprovalReworkAssignmentActions
{
public virtual void ExtendDeadline(Sungero.Domain.Client.ExecuteActionArgs e)
{
var newDeadline = Functions.ApprovalTask.GetNewDeadline(_obj.Deadline);
if (newDeadline != null)
{
_obj.Deadline = newDeadline.Value;
_obj.Save();
Dialogs.NotifyMessage(Docflow.Resources.CurrentAssignmentNewDeadline);
}
}
public virtual bool CanExtendDeadline(Sungero.Domain.Client.CanExecuteActionArgs e)
{
return _obj.Status == Workflow.AssignmentBase.Status.InProcess && _obj.AccessRights.CanUpdate() &&
Functions.FreeApprovalTask.HasDocumentAndCanRead(FreeApprovalTasks.As(_obj.Task));
}
public virtual void AbortAction(Sungero.Domain.Client.ExecuteActionArgs e)
{
var assignees = _obj.Approvers.Where(a => a.Approver != null).Select(a => Recipients.As(a.Approver)).ToList();
if (!Functions.Module.ShowDialogGrantAccessRightsWithConfirmationDialog(_obj,
_obj.OtherGroup.All.ToList(),
assignees,
e.Action,
Constants.FreeApprovalTask.ReworkAssignmentConfirmDialogID.AbortAction))
return;
_obj.Task.Abort();
e.CloseFormAfterAction = true;
}
public virtual bool CanAbortAction(Sungero.Domain.Client.CanExecuteActionArgs e)
{
return _obj.Status == Workflow.AssignmentBase.Status.InProcess;
}
public virtual void Reworked(Sungero.Workflow.Client.ExecuteResultActionArgs e)
{
var assignees = _obj.Approvers.Where(a => a.Approver != null).Select(a => Recipients.As(a.Approver)).ToList();
if (!Functions.Module.ShowDialogGrantAccessRightsWithConfirmationDialog(_obj,
_obj.OtherGroup.All.ToList(),
assignees,
e.Action,
Constants.FreeApprovalTask.ReworkAssignmentConfirmDialogID.Reworked))
e.Cancel();
}
public virtual bool CanReworked(Sungero.Workflow.Client.CanExecuteResultActionArgs e)
{
return Functions.FreeApprovalTask.HasDocumentAndCanRead(FreeApprovalTasks.As(_obj.Task));
}
}
}