Ejemplo n.º 1
0
        /// <summary>
        /// 获取对应时间段新建的客户问题列表
        /// </summary>
        /// <returns></returns>
        public async Task <List <Issue> > GetIssuesByPeriodAsync(DuePeriodType periodType)
        {
            var timeFilter  = DueTimeTrackingHelper.GetTimeFilter(periodType, "ResolutionDate");
            var requestText = $"project = {CustomUtils.ProjectName} AND Assignee = {CustomUtils.Account}";

            if (!string.IsNullOrEmpty(timeFilter))
            {
                requestText = $"{requestText} AND {timeFilter}";
            }
            requestText = $"{requestText} ORDER BY Rank ASC";
            var issues = await JiraConnectionHelper.RequestAsync(JiraCvteCom, requestText);

            return(issues);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 获取已完成的客户问题数
        /// </summary>
        /// <returns></returns>
        public async Task <List <Issue> > GetHandledIssuesAfterTimeAsync(DuePeriodType periodType, List <string> solvedStatusList)
        {
            //使用更新日期(因为测试中、验收等的问题,并没有解决,所以没有解决日期)
            var timeFilter  = DueTimeTrackingHelper.GetAfterTimeFilter(periodType, "updatedDate");
            var requestText = $"project = {CustomUtils.ProjectName} AND Assignee = {CustomUtils.Account} AND status in ({string.Join(",", solvedStatusList)})";

            if (!string.IsNullOrEmpty(timeFilter))
            {
                requestText = $"{requestText} AND {timeFilter}";
            }
            requestText = $"{requestText} ORDER BY Rank ASC";
            var issues = await JiraConnectionHelper.RequestAsync(JiraCvteCom, requestText);

            return(issues);
        }
        /// <summary>
        /// 获取大于时间段的时间筛选
        /// </summary>
        /// <param name="periodType"></param>
        /// <param name="searchParameter"></param>
        /// <returns></returns>
        public static string GetAfterTimeFilter(DuePeriodType periodType, string searchParameter)
        {
            //created >= 2017 - 07 - 20 AND created <= now()
            var timeFilter  = string.Empty;
            var dateTimeNow = DateTime.Now;

            switch (periodType)
            {
            case DuePeriodType.今日:
            {
                //今日
                string startDay = dateTimeNow.ToString("yyyy-MM-dd");
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.昨日:
            {
                //今日
                var startDay = dateTimeNow.AddDays(-1).ToString("yyyy-MM-dd");
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.本周:
            {
                var startDay = GetWeekFirstDay(dateTimeNow, 0);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.周:
            {
                var startDay = GetWeekFirstDay(dateTimeNow, 1);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.周:
            {
                var startDay = GetWeekFirstDay(dateTimeNow, 2);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.周:
            {
                var startDay = GetWeekFirstDay(dateTimeNow, 3);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.本月:
            {
                var startDay = GetMonthFirstDay(dateTimeNow);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.月:
            {
                var startDay = GetMonthFirstDay(dateTimeNow, 1);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.今年:
            {
                var startDay = GetYearFirstDay(dateTimeNow);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;

            case DuePeriodType.去年:
            {
                var startDay = GetYearFirstDay(dateTimeNow, 1);
                timeFilter = $"{searchParameter} >= {startDay}";
            }
            break;
            }

            return(timeFilter);
        }
Ejemplo n.º 4
0
        private async void RequestJiraByDuePeriodType(DuePeriodType selectedPeriodType)
        {
            var issues = await GetSolvedIssuesByCurrentAuthor(selectedPeriodType);

            RequestJiraData(issues);
        }
        /// <summary>
        /// 时间是否在相应的时间段
        /// </summary>
        /// <param name="dateTime"></param>
        /// <param name="duePeriodType"></param>
        /// <returns></returns>
        public static bool IsInDuePeriodRange(DateTime dateTime, DuePeriodType duePeriodType)
        {
            var dateTimeNow = DateTime.Now;

            switch (duePeriodType)
            {
            case DuePeriodType.今日:
            {
                //今日
                string   startDay = dateTimeNow.ToString("yyyy-MM-dd");
                DateTime dt       = Convert.ToDateTime(startDay);
                return(dateTime >= dt);
            }
            break;

            case DuePeriodType.昨日:
            {
                //今日
                var      endDay    = dateTimeNow.ToString("yyyy-MM-dd");
                var      startDay  = dateTimeNow.AddDays(-1).ToString("yyyy-MM-dd");
                DateTime startTime = Convert.ToDateTime(startDay);
                DateTime endTime   = Convert.ToDateTime(endDay);
                return(dateTime >= startTime && dateTime < endTime);
            }
            break;

            case DuePeriodType.本周:
            {
                var      startDay = GetWeekFirstDay(dateTimeNow, 0);
                DateTime dt       = Convert.ToDateTime(startDay);
                return(dateTime >= dt);
            }
            break;

            case DuePeriodType.周:
            {
                var      endDay    = GetWeekFirstDay(dateTimeNow, 0);
                var      startDay  = GetWeekFirstDay(dateTimeNow, 1);
                DateTime startTime = Convert.ToDateTime(startDay);
                DateTime endTime   = Convert.ToDateTime(endDay);
                return(dateTime >= startTime && dateTime < endTime);
            }
            break;

            case DuePeriodType.周:
            {
                var      endDay    = GetWeekFirstDay(dateTimeNow, 1);
                var      startDay  = GetWeekFirstDay(dateTimeNow, 2);
                DateTime startTime = Convert.ToDateTime(startDay);
                DateTime endTime   = Convert.ToDateTime(endDay);
                return(dateTime >= startTime && dateTime < endTime);
            }
            break;

            case DuePeriodType.周:
            {
                var      endDay    = GetWeekFirstDay(dateTimeNow, 2);
                var      startDay  = GetWeekFirstDay(dateTimeNow, 3);
                DateTime startTime = Convert.ToDateTime(startDay);
                DateTime endTime   = Convert.ToDateTime(endDay);
                return(dateTime >= startTime && dateTime < endTime);
            }
            break;

            case DuePeriodType.本月:
            {
                var      startDay = GetMonthFirstDay(dateTimeNow);
                DateTime dt       = Convert.ToDateTime(startDay);
                return(dateTime >= dt);
            }
            break;

            case DuePeriodType.月:
            {
                var      endDay    = GetMonthFirstDay(dateTimeNow);
                var      startDay  = GetMonthFirstDay(dateTimeNow, 1);
                DateTime startTime = Convert.ToDateTime(startDay);
                DateTime endTime   = Convert.ToDateTime(endDay);
                return(dateTime >= startTime && dateTime < endTime);
            }
            break;

            case DuePeriodType.今年:
            {
                var      startDay  = GetYearFirstDay(dateTimeNow);
                DateTime startTime = Convert.ToDateTime(startDay);
                return(dateTime >= startTime);
            }
            break;

            case DuePeriodType.去年:
            {
                var      endDay    = GetYearFirstDay(dateTimeNow);
                var      startDay  = GetYearFirstDay(dateTimeNow, 1);
                DateTime startTime = Convert.ToDateTime(startDay);
                DateTime endTime   = Convert.ToDateTime(endDay);
                return(dateTime >= startTime && dateTime < endTime);
            }
            break;
            }

            return(false);
        }