コード例 #1
0
        public ReleaseMilstoneCP_Footer(ReleaseMilestone rm, List <int> cpids, ICollection <ReleaseCP> releaseCps, string accountName)
        {
            this.MilestoneName = rm.Milestone.Name;
            this.MilestoneDate = FormatDateTime(rm.MilestoneDate);
            ReleaseCPView releaseCP = null;

            using (IReleaseCPRepository db = new ReleaseCPRepository())
            {
                releaseCP = new ReleaseCPView((!rm.Milestone.CPs.Any(cp => cp.MilestoneID == rm.MilestoneID && cpids.Contains(cp.CPID)))? null :
                                              releaseCps.Where(r => r.ReleaseID == rm.ReleaseID &&
                                                               r.CPID == rm.Milestone.CPs.Where(cp => cp.MilestoneID == rm.MilestoneID && cpids.Contains(cp.CPID)).FirstOrDefault().CPID).FirstOrDefault(), accountName);
            }
            IsCreated           = releaseCP != null;
            this.CheckPointDate = this.IsCreated ? FormatDateTime(releaseCP.PlannedDate) : String.Empty;
            this.CheckPointId   = this.IsCreated ? releaseCP.ReleaseCPID : -1;
            this.CPName         = this.IsCreated ? releaseCP.CPName : String.Empty;
        }
コード例 #2
0
ファイル: StatusReport.cs プロジェクト: anurse/AspNetReports
        private static MilestoneDates ComputeMilestoneDates(DataStore data, DateTime endDate, ReleaseMilestone releaseMilestone, ILogger logger)
        {
            // Identify the number of working days between the end date and the start date
            // Look. I know this could be done with cool math, but this is the easiest thing right now :). We can optimize later
            var current  = endDate;
            var workDays = 0;

            logger.LogDebug("Computing work days in {Milestone}...", releaseMilestone.Name);
            while (current <= releaseMilestone.BranchCloses !.Value)
            {
                if (!data.IsHoliday(current, WorkLocation.US) && current.DayOfWeek != DayOfWeek.Sunday && current.DayOfWeek != DayOfWeek.Saturday)
                {
                    workDays += 1;
                }
                current = current.AddDays(1);
            }
            logger.LogDebug("Computed work days in {Milestone}", releaseMilestone.Name);

            return(new MilestoneDates()
            {
                Name = releaseMilestone.Name,
                BranchCloses = releaseMilestone.BranchCloses !.Value.ToString("yyyy-MM-dd"),
                WorkDaysRemaining = workDays,
            });