Example #1
0
        public Boolean VirtualDeleteActivity(long idProject, long idActivity, List <dtoLiteMapActivity> activities)
        {
            Boolean result = false;

            if (UserContext.isAnonymous)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                dtoLiteMapActivity activity = activities.Where(a => a.IdActivity == idActivity).FirstOrDefault();
                if (Service.SetActivityVirtualDelete(idActivity, true))
                {
                    result = true;
                    View.SendUserAction(View.ProjectIdCommunity, CurrentIdModule, idProject, ModuleProjectManagement.ActionType.ActivityVirtualDelete);
                }
                else
                {
                    if (activity != null)
                    {
                        View.DisplayUnableToRemoveActivity((activity != null) ? activity.Current.Name : "", GetChildrenCount(idActivity, activities));
                    }
                }
            }
            return(result);
        }
 private void setChildrenDelete(dtoLiteMapActivity activity, List <dtoLiteMapActivity> activities)
 {
     activity.IsDeleted = true;
     foreach (dtoLiteMapActivity child in activities.Where(a => a.IdParent == activity.IdActivity))
     {
         setChildrenDelete(child, activities);
     }
 }
Example #3
0
        private void LoadLinks(dtoActivity dto, List <dtoLiteMapActivity> activities, Boolean firstLoad = false)
        {
            foreach (dtoActivityLink l in dto.Links)
            {
                dtoLiteMapActivity act = activities.Where(a => a.IdActivity == l.IdTarget).FirstOrDefault();
                if (act != null)
                {
                    l.Name        = (String.IsNullOrEmpty(act.Current.Name) ? act.Previous.Name : act.Current.Name);
                    l.RowNumber   = act.RowNumber;
                    l.AllowDelete = dto.Permission.SetPredecessors;
                }
                else
                {
                    l.Id = 0;
                }
            }
            List <long> idPredecessors = Service.GetAvailableIdPredecessors(dto, activities).Where(id => !dto.Links.Where(l => l.IdTarget == id).Any()).ToList();

            if (firstLoad)
            {
                View.LoaderLinks = dto.Links;
            }
            View.LoadAvailableLinks(activities.Where(a => idPredecessors.Contains(a.IdActivity)).ToDictionary(a => a.IdActivity, act => act.RowNumber + " - " + (String.IsNullOrEmpty(act.Current.Name) ? act.Previous.Name : act.Current.Name)), dto.Links.Where(l => l.Id > 0).ToList());
        }