public List <WorkFlowTreeNodeAc> GetWorkFlowTreeViewByActivityId(int activityId) { try { var workFlowTreeCollection = new List <WorkFlowTreeNodeAc>(); int getParentId = ParentNodeForTreeView(activityId); var workFlow = _workFlowDataRepository.Fetch(x => x.Id == getParentId).ToList(); foreach (var workflowDetails in workFlow) { var workFlowTreeAc = new WorkFlowTreeNodeAc(); var workFlowLogDetails = _workFlowLogDataRepository.FirstOrDefault(x => x.WorkFlowId == workflowDetails.Id); if (workFlowLogDetails != null) { workFlowTreeAc.IsAllowEdit = false; } else { workFlowTreeAc.IsAllowEdit = true; } // workFlowTreeAc.WorkFlowName = workflowDetails.WorkFlowName; // workFlowTreeAc.ActionName = workflowDetails.WorkFlowAction.Name; workFlowTreeAc.ActivityName = workflowDetails.Activity.Name; //workFlowTreeAc.OldStatus = workflowDetails.OldStatus.Name; workFlowTreeAc.IsParentNode = workflowDetails.IsParentAction; workFlowTreeAc.IsCollapse = true; workFlowTreeAc.IsCondition = workflowDetails.IsCondition; //workFlowTreeAc.NewStatus = workflowDetails.NewStatus.Name; workFlowTreeAc.Initiator = workflowDetails.InitiatorRole.RoleName; workFlowTreeAc.Assigned = workflowDetails.AssignedRole.RoleName; workFlowTreeAc.WorkFlowId = workflowDetails.Id; workFlowTreeAc.Children = ChildWorkFlowNode(workflowDetails.Id); if (workFlowTreeAc.Children.Count != 0) { var workFlowChildDetails = workFlowTreeAc.Children.Find(x => !x.IsAllowEdit); foreach (var workFlowChildCollection in workFlowTreeAc.Children) { } } workFlowTreeCollection.Add(workFlowTreeAc); } return(workFlowTreeCollection); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }
public List <WorkFlowTreeNodeAc> GetWorkFlowDetailsForTreeViewByActivityId(int activityId) { try { var workFlowTreeCollection = new List <WorkFlowTreeNodeAc>(); var workFlow = _workFlowDataRepository.Fetch(x => x.WorkFlowId == activityId && x.ParentActivityId == 0).ToList(); foreach (var workFlowDetail in workFlow.GroupBy(x => x.Id).ToList()) { var ss = _workFlowDataRepository.Fetch(x => x.ActivityId == workFlowDetail.Key).ToList(); var sss = _workFlowDataRepository.Fetch(x => x.ActivityId == workFlowDetail.Key) .ToList(); foreach (var workflowDetails in _workFlowDataRepository.Fetch(x => x.Id == workFlowDetail.Key).ToList()) { var workFlowTreeAc = new WorkFlowTreeNodeAc(); // workFlowTreeAc.ActionName = workflowDetails.WorkFlowAction.Name; workFlowTreeAc.ActivityName = workflowDetails.Activity.Name; //workFlowTreeAc.OldStatus = workflowDetails.OldStatus.Name; workFlowTreeAc.IsParentNode = workflowDetails.IsParentAction; workFlowTreeAc.IsCollapse = true; //workFlowTreeAc.NewStatus = workflowDetails.NewStatus.Name; workFlowTreeAc.Initiator = workflowDetails.InitiatorRole.RoleName; workFlowTreeAc.Assigned = workflowDetails.AssignedRole.RoleName; workFlowTreeAc.WorkFlowId = workflowDetails.Id; workFlowTreeAc.ParentWorkFlowId = workflowDetails.Id; workFlowTreeAc.Children = ChildWorkFlowNode(workflowDetails.Id); workFlowTreeCollection.Add(workFlowTreeAc); } } return(workFlowTreeCollection); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }
public List <WorkFlowTreeNodeAc> ChildWorkFlowNode(int activityId) { try { var childrens = new List <WorkFlowTreeNodeAc>(); var childFlow = _workFlowDataRepository.Fetch(x => x.ParentActivityId == activityId).ToList(); foreach (var child in childFlow) { var activityDetails = _childPermissionDataRepository.FirstOrDefault(x => x.Id == child.NextActivityId); // if(child.) var childCollection = new WorkFlowTreeNodeAc(); var workFlowLogDetails = _workFlowLogDataRepository.FirstOrDefault(x => x.WorkFlowId == child.Id); if (workFlowLogDetails != null) { childCollection.IsAllowEdit = false; } else { childCollection.IsAllowEdit = true; } if (activityDetails != null) { if (child.IsApprovePanel) { if (child.Activity.IsClosed) { childCollection.ActivityName = activityDetails.AcceptPermission; } else { childCollection.ActivityName = activityDetails.AcceptPermission; } } else { if (child.Activity.IsClosed) { childCollection.ActivityName = activityDetails.RejectPermission; } else { childCollection.ActivityName = activityDetails.RejectPermission; } } } else { childCollection.ActivityName = child.Activity.Name; } childCollection.Initiator = child.InitiatorRole.RoleName; childCollection.Assigned = child.AssignedRole.RoleName; childCollection.ParentWorkFlowId = child.ParentActivityId; childCollection.IsClosed = child.Activity.IsClosed; childCollection.WorkFlowId = child.Id; childCollection.IsApprovePanel = child.IsApprovePanel; childCollection.IsRejectPanel = child.IsRejectPanel; childCollection.IsAllowOtherWorkFLow = child.IsAllowOtherWorkFlow; childCollection.Children = ChildWorkFlowNode(child.Id); childrens.Add(childCollection); } return(childrens); } catch (Exception ex) { _errorLog.LogException(ex); throw; } }