Example #1
0
 /// <summary>
 /// Returns fields: DisplayName, Count.
 /// </summary>
 public static DataTable GetUsersActivityTable(DateTime fromDate, DateTime toDate, ActivityReportType type, int topCount)
 {
     return BuildActivityTable(GetUsersActivity(fromDate, toDate, type, topCount));
 }
Example #2
0
        /// <summary>
        /// Returns ArrayList of ActivityInfo objects.
        /// </summary>
        public static ArrayList GetGroupsActivity(DateTime fromDate, DateTime toDate, ActivityReportType type, int topCount)
        {
            ArrayList list = new ArrayList();
            Hashtable hash = new Hashtable();
            ActivityInfo group;

            foreach (UserActivityInfo user in GetUsersActivity(fromDate, toDate, type, 0))
            {
                group = (ActivityInfo)hash[user.IMGroupId];
                if (group == null)
                {
                    string sDisplayName = "";
                    using (IDataReader _group = UserReport.GetIMGroup(user.IMGroupId))
                    {
                        if (_group.Read())
                            sDisplayName = _group["IMGroupName"].ToString();
                    }
                    group = new ActivityInfo(sDisplayName);
                    hash[user.IMGroupId] = group;
                    list.Add(group);
                }
                group.AddInfo(user);
            }

            // Leave only topCount items
            if (topCount > 0)
            {
                list.Sort();
                if (list.Count > topCount)
                    list.RemoveRange(topCount, list.Count - topCount);
            }

            // Remove items with zero counter
            for (int i = 0; i < list.Count; )
            {
                if (((ActivityInfo)list[i]).Count == 0)
                    list.RemoveAt(i);
                else
                    i++;
            }

            return list;
        }
Example #3
0
        /// <summary>
        /// Returns ArrayList of UserActivityInfo objects.
        /// </summary>
        public static ArrayList GetUsersActivity(DateTime fromDate, DateTime toDate, ActivityReportType type, int topCount)
        {
            ArrayList list = new ArrayList();
            UserActivityInfo user;

            using (IDataReader reader = GetUsersByCompany())
            {
                while (reader.Read())
                {
                    string sDisplayName = reader["DisplayName"].ToString();
                    int iIMGroupId = (int)reader["IMGroupId"];
                    int user_id = (int)reader["UserId"];
                    user = new UserActivityInfo(sDisplayName, iIMGroupId);
                    list.Add(user);
                    using (IDataReader _obj = UserReport.GetUserInfoByOriginalId(user_id))
                    {
                        if (_obj.Read())
                            user_id = (int)_obj["UserId"];
                        else
                            continue;
                    }

                    int DefaultBias = UserReport.GetTimeZoneBias(Security.CurrentUser.TimeZoneId);
                    switch (type)
                    {
                        case ActivityReportType.Messages:
                            using (IDataReader _obj = DBUserReport.GetUserStats(user_id, fromDate, toDate, DefaultBias))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["MsgSent"];
                            }
                            break;
                        case ActivityReportType.FilesExchanged:
                            using (IDataReader _obj = DBUserReport.GetUserStats(user_id, fromDate, toDate, DefaultBias))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["FilesSent"];
                            }
                            break;
                        case ActivityReportType.IMLogins:
                            using (IDataReader _obj = DBUserReport.GetUserStats(user_id, fromDate, toDate, DefaultBias))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["LoginsClient"];
                            }
                            break;
                        case ActivityReportType.PortalLogins:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["PortalLogins"];
                            }
                            break;
                        case ActivityReportType.CalendarEntries:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["NewEventsCount"];
                            }
                            break;
                        case ActivityReportType.ActiveProjects:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["NewProjectsCount"];
                            }
                            break;
                        case ActivityReportType.FilesPublished:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["NewAssetsCount"];
                            }
                            break;
                        case ActivityReportType.FileVersionsPublished:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["NewAssetVersionsCount"];
                            }
                            break;
                        case ActivityReportType.NewIssues:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["NewIncidentsCount"];
                            }
                            break;
                        case ActivityReportType.NewTasks:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["NewTasksCount"];
                            }
                            break;
                        case ActivityReportType.NewToDos:
                            using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                            {
                                if (_obj.Read())
                                    user.Count = (int)_obj["NewToDosCount"];
                            }
                            break;
                        default:
                            break;
                    }
                }
            }

            // Leave only topCount items
            if (topCount > 0)
            {
                list.Sort();
                if (list.Count > topCount)
                    list.RemoveRange(topCount, list.Count - topCount);
            }

            // Remove items with zero counter
            for (int i = 0; i < list.Count; )
            {
                if (((ActivityInfo)list[i]).Count == 0)
                    list.RemoveAt(i);
                else
                    i++;
            }

            return list;
        }
Example #4
0
 /// <summary>
 /// Returns fields: DisplayName, Count.
 /// </summary>
 public static DataTable GetUsersActivityTable(DateTime fromDate, DateTime toDate, ActivityReportType type, int topCount)
 {
     return(BuildActivityTable(GetUsersActivity(fromDate, toDate, type, topCount)));
 }
Example #5
0
        /// <summary>
        /// Returns ArrayList of UserActivityInfo objects.
        /// </summary>
        public static ArrayList GetUsersActivity(DateTime fromDate, DateTime toDate, ActivityReportType type, int topCount)
        {
            ArrayList        list = new ArrayList();
            UserActivityInfo user;

            using (IDataReader reader = GetUsersByCompany())
            {
                while (reader.Read())
                {
                    string sDisplayName = reader["DisplayName"].ToString();
                    int    iIMGroupId   = (int)reader["IMGroupId"];
                    int    user_id      = (int)reader["UserId"];
                    user = new UserActivityInfo(sDisplayName, iIMGroupId);
                    list.Add(user);
                    using (IDataReader _obj = UserReport.GetUserInfoByOriginalId(user_id))
                    {
                        if (_obj.Read())
                        {
                            user_id = (int)_obj["UserId"];
                        }
                        else
                        {
                            continue;
                        }
                    }

                    int DefaultBias = UserReport.GetTimeZoneBias(Security.CurrentUser.TimeZoneId);
                    switch (type)
                    {
                    case ActivityReportType.Messages:
                        using (IDataReader _obj = DBUserReport.GetUserStats(user_id, fromDate, toDate, DefaultBias))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["MsgSent"];
                            }
                        }
                        break;

                    case ActivityReportType.FilesExchanged:
                        using (IDataReader _obj = DBUserReport.GetUserStats(user_id, fromDate, toDate, DefaultBias))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["FilesSent"];
                            }
                        }
                        break;

                    case ActivityReportType.IMLogins:
                        using (IDataReader _obj = DBUserReport.GetUserStats(user_id, fromDate, toDate, DefaultBias))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["LoginsClient"];
                            }
                        }
                        break;

                    case ActivityReportType.PortalLogins:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["PortalLogins"];
                            }
                        }
                        break;

                    case ActivityReportType.CalendarEntries:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["NewEventsCount"];
                            }
                        }
                        break;

                    case ActivityReportType.ActiveProjects:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["NewProjectsCount"];
                            }
                        }
                        break;

                    case ActivityReportType.FilesPublished:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["NewAssetsCount"];
                            }
                        }
                        break;

                    case ActivityReportType.FileVersionsPublished:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["NewAssetVersionsCount"];
                            }
                        }
                        break;

                    case ActivityReportType.NewIssues:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["NewIncidentsCount"];
                            }
                        }
                        break;

                    case ActivityReportType.NewTasks:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["NewTasksCount"];
                            }
                        }
                        break;

                    case ActivityReportType.NewToDos:
                        using (IDataReader _obj = GetQuickSnapshotReport(fromDate, toDate, user_id))
                        {
                            if (_obj.Read())
                            {
                                user.Count = (int)_obj["NewToDosCount"];
                            }
                        }
                        break;

                    default:
                        break;
                    }
                }
            }

            // Leave only topCount items
            if (topCount > 0)
            {
                list.Sort();
                if (list.Count > topCount)
                {
                    list.RemoveRange(topCount, list.Count - topCount);
                }
            }

            // Remove items with zero counter
            for (int i = 0; i < list.Count;)
            {
                if (((ActivityInfo)list[i]).Count == 0)
                {
                    list.RemoveAt(i);
                }
                else
                {
                    i++;
                }
            }

            return(list);
        }
Example #6
0
        /// <summary>
        /// Returns ArrayList of ActivityInfo objects.
        /// </summary>
        public static ArrayList GetGroupsActivity(DateTime fromDate, DateTime toDate, ActivityReportType type, int topCount)
        {
            ArrayList    list = new ArrayList();
            Hashtable    hash = new Hashtable();
            ActivityInfo group;

            foreach (UserActivityInfo user in GetUsersActivity(fromDate, toDate, type, 0))
            {
                group = (ActivityInfo)hash[user.IMGroupId];
                if (group == null)
                {
                    string sDisplayName = "";
                    using (IDataReader _group = UserReport.GetIMGroup(user.IMGroupId))
                    {
                        if (_group.Read())
                        {
                            sDisplayName = _group["IMGroupName"].ToString();
                        }
                    }
                    group = new ActivityInfo(sDisplayName);
                    hash[user.IMGroupId] = group;
                    list.Add(group);
                }
                group.AddInfo(user);
            }

            // Leave only topCount items
            if (topCount > 0)
            {
                list.Sort();
                if (list.Count > topCount)
                {
                    list.RemoveRange(topCount, list.Count - topCount);
                }
            }

            // Remove items with zero counter
            for (int i = 0; i < list.Count;)
            {
                if (((ActivityInfo)list[i]).Count == 0)
                {
                    list.RemoveAt(i);
                }
                else
                {
                    i++;
                }
            }

            return(list);
        }
Example #7
0
        /// <summary>
        /// Returns ArrayList of ActivityInfo objects.
        /// </summary>
        public static ArrayList GetSecureGroupsActivity(DateTime fromDate, DateTime toDate, ActivityReportType type, int topCount)
        {
            ArrayList list = new ArrayList();
            ActivityInfo group;

            using (IDataReader reader = SecureGroup.GetListGroups())
            {
                while (reader.Read())
                {
                    string sDisplayName = Common.GetWebResourceString(reader["GroupName"].ToString());
                    int iGroupId = (int)reader["GroupId"];
                    group = new ActivityInfo(sDisplayName);
                    using (IDataReader _obj = GetSecGroupStats(iGroupId, fromDate, toDate, false))
                    {
                        if (_obj.Read())
                        {
                            switch (type)
                            {
                                case ActivityReportType.PortalLogins:
                                    group.Count = (int)_obj["PortalLogins"];
                                    break;
                                case ActivityReportType.CalendarEntries:
                                    group.Count = (int)_obj["NewEventsCount"];
                                    break;
                                case ActivityReportType.ActiveProjects:
                                    group.Count = (int)_obj["NewProjectsCount"];
                                    break;
                                /*								case ActivityReportType.FilesPublished:
                                                                    group.Count=(int)_obj["NewAssetsCount"];
                                                                    break;
                                                                case ActivityReportType.FileVersionsPublished:
                                                                    group.Count=(int)_obj["NewAssetVersionsCount"];
                                                                    break;
                                */
                                case ActivityReportType.NewIssues:
                                    group.Count = (int)_obj["NewIncidentsCount"];
                                    break;
                                case ActivityReportType.NewTasks:
                                    group.Count = (int)_obj["NewTasksCount"];
                                    break;
                                case ActivityReportType.NewToDos:
                                    group.Count = (int)_obj["NewToDosCount"];
                                    break;
                                default:
                                    break;
                            }
                        }
                    }
                    list.Add(group);
                }
            }

            // Leave only topCount items
            if (topCount > 0)
            {
                list.Sort();
                if (list.Count > topCount)
                    list.RemoveRange(topCount, list.Count - topCount);
            }

            // Remove items with zero counter
            for (int i = 0; i < list.Count; )
            {
                if (((ActivityInfo)list[i]).Count == 0)
                    list.RemoveAt(i);
                else
                    i++;
            }

            return list;
        }
Example #8
0
        private void BindTable()
        {
            DateTime StartDate, EndDate;

            //SetDates(ddPeriod.Value, out StartDate, out EndDate, fromDate.Text, toDate.Text);
            UserReport.GetDates(ddPeriod.Value, out StartDate, out EndDate, dtcStartDate.SelectedDate.ToShortDateString(), dtcEndDate.SelectedDate.ToShortDateString());

            ActivityReportType art = (ActivityReportType)Enum.Parse(typeof(ActivityReportType), ddSelectView.SelectedItem.Value);

            DataTable at = null;

            switch (rblSelectType.SelectedItem.Value)
            {
            case "Group":
                at = UserReport.GetGroupsActivityTable(StartDate, EndDate, art, topxx);
                break;

            case "User":
                at = UserReport.GetUsersActivityTable(StartDate, EndDate, art, topxx);
                break;

            case "SecGroup":
                switch (art)
                {
                case ActivityReportType.PortalLogins:
                    at = UserReport.GetMostActiveGroupsByPortalLoginsReport(StartDate, EndDate, topxx);
                    break;

                case ActivityReportType.ActiveProjects:
                    at = UserReport.GetMostActiveGroupsByProjectReport(StartDate, EndDate, topxx);
                    break;

                case ActivityReportType.NewIssues:
                    at = UserReport.GetMostActiveGroupsByIncidentReport(StartDate, EndDate, topxx);
                    break;

                case ActivityReportType.CalendarEntries:
                    at = UserReport.GetMostActiveGroupsByEventReport(StartDate, EndDate, topxx);
                    break;

                case ActivityReportType.NewTasks:
                    at = UserReport.GetMostActiveGroupsByTaskReport(StartDate, EndDate, topxx);
                    break;

                case ActivityReportType.NewToDos:
                    at = UserReport.GetMostActiveGroupsByToDoReport(StartDate, EndDate, topxx);
                    break;

                case ActivityReportType.FilesPublished:
                    at = UserReport.GetMostActiveGroupsByAssetReport(StartDate, EndDate, topxx);
                    break;

                case ActivityReportType.FileVersionsPublished:
                    at = UserReport.GetMostActiveGroupsByAssetVersionReport(StartDate, EndDate, topxx);
                    break;
                }
                break;
            }

            if (at.Rows.Count > 0)
            {
                BuildTable(at);
            }
            else
            {
                lblTable.Text    = "<td colspan='4'>" + LocRM.GetString("tNoRec") + "</td>";
                trLegend.Visible = false;
            }

            string sFilter = "&nbsp;&nbsp;" + LocRM.GetString("tViewBy") + ":&nbsp;" + ddSelectView.SelectedItem.Text;

            if (ddPeriod.Value != "0")
            {
                sFilter += "<br/>&nbsp;&nbsp;" + LocRM.GetString("tPeriod") + ":&nbsp;" + StartDate.ToShortDateString() + " - " + EndDate.ToShortDateString();
            }
            _header.Filter  = sFilter;
            lblRepType.Text = ddSelectView.SelectedItem.Text;
        }