Example #1
0
        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;
            }
        }
Example #2
0
        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;
            }
        }
Example #3
0
        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;
            }
        }