Beispiel #1
0
        public dynamic Get(DashboardInput userInfo)
        {
            DSEEntities           objEntities       = new DSEEntities();
            List <Activity>       privateActivities = new List <Activity>();
            List <Group>          userCreatedGroups = new List <Group>();
            List <User_Request>   userRequests      = new List <User_Request>();
            List <Activity_Group> groupActivities   = new List <Activity_Group>();
            List <Group>          user_groups       = new List <Group>();
            var publicActivites   = objEntities.Activities.Where(act => act.type == 1).ToList();
            var createdActivities = objEntities.Activities.Where(act => act.createdby == userInfo.userId).ToList();
            var userGroups        = objEntities.User_Group.Where(group => group.user_id == userInfo.userId).ToList();
            var user_answer       = objEntities.User_Answer.Where(usanswr => usanswr.user_id == userInfo.userId).ToList();
            var user_activity     = this.getDistinct(user_answer);

            if (userGroups != null)
            {
                foreach (var userGroup in userGroups)
                {
                    var Group = objEntities.Groups.Where(group => group.id == userGroup.group_id).FirstOrDefault();
                    user_groups.Add(Group);
                }
            }
            if (userGroups != null)
            {
                foreach (var grp in userGroups)
                {
                    groupActivities = objEntities.Activity_Group.Where(actgrp => actgrp.group_id == grp.group_id).ToList();
                }
            }
            if (groupActivities != null)
            {
                foreach (var grpact in groupActivities)
                {
                    var activity = objEntities.Activities.Where(act => act.id == grpact.activity_id).FirstOrDefault();
                    privateActivities.Add(activity);
                }
            }

            if (userInfo.role != 1)
            {
                userCreatedGroups = objEntities.Groups.Where(grp => grp.createdby == userInfo.userId).ToList();
            }
            if (userInfo.role == 3)
            {
                userRequests = objEntities.User_Request.ToList();
            }
            DashboardOutput objDBOutput = new DashboardOutput();

            objDBOutput.groups             = userCreatedGroups;
            objDBOutput.privateActivities  = privateActivities;
            objDBOutput.publicActivities   = publicActivites;
            objDBOutput.requests           = userRequests;
            objDBOutput.createdActitvities = createdActivities;
            objDBOutput.userAnswer         = user_activity;
            objDBOutput.user_groups        = user_groups;
            return(objDBOutput);
        }