protected void DisplayRedmineData()
        {
            string HeadText = "Cотрудник: {0}";
            string userName = WebPartsHelper.GetPersonalPageUserName();

            WebPartHeaderLabel.Text = String.Format(HeadText, userName);

            RedmineDataCache.RemoveUserIssues(userName);
            BindRedmineData();
        }
예제 #2
0
        static public List <RedmineIssue> GetUserIssuesAndSetCache(string username)
        {
            var issuesByUser = RedmineDataCache.GetUserIssues(username);

            if (issuesByUser.Count > 0)
            {
                return(issuesByUser);
            }

            int    userIdInt = RedmineDataCache.GetUserId(username);
            string userid    = (userIdInt != 0) ? userIdInt.ToString() : "*";
            string RedmineIssuesApiFilter = String.Format(RedmineIssuesApiFilterTemplate, userid);

            List <RedmineIssue> issuesAll = RedmineData.GetIssues(RedmineIssuesApiFilter);

            RedmineDataCache.initUserIdsCache(issuesAll);

            if (userid == "*")
            {
                List <RedmineIssue> issuesAllFilteredByUser = RedmineData.FilterIssuesByUserName(username, issuesAll);

                if (issuesAllFilteredByUser.Count > 0)
                {
                    RedmineDataCache.AddUserId(username, issuesAllFilteredByUser[0].assigned_to.id);
                }

                issuesByUser = issuesAllFilteredByUser;
            }
            else
            {
                issuesByUser = issuesAll;
            }

            RedmineDataCache.AddUserIssues(username, issuesByUser);

            return(issuesByUser);
        }