Advertisement
Guest User

Untitled

a guest
May 12th, 2016
337
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.01 KB | None | 0 0
  1.             var crossQuery1 = from r in context.TimeSheetWeeklyRequirements
  2.                               let reqKey = new TimeSheetTaskService.ReqKey() { TeamId = r.TeamId, WorkItemId = r.WorkItemId }
  3.                               join f in context.TeamForecast on reqKey equals new TimeSheetTaskService.ReqKey() { TeamId = f.TeamId, WorkItemId = f.WorkItemId }
  4.                               let parents = (
  5.                                 from fh in context.TeamForecastHierarchy
  6.                                 where fh.ChildId == f.Id
  7.                                 join f2 in context.TeamForecast on fh.ParentId equals f2.Id
  8.                                 select f2
  9.                               )
  10.                               let isInView = parents.Any(fp => fp.TfsFeatureView.Any())
  11.                               where f.HistoryId == null && !isInView
  12.                               select new ProductPlanCrossData()
  13.                               {
  14.                                   ProjectId = r.TimeSheetWeeklyReleases.ProjectRelease.ProjectId,
  15.                                   UniqueId = r.Id,
  16.                                   PlanId = r.TimeSheetWeeklyReleases.WeeklyTaskPlan.Id,
  17.                                   ProjectReleaseId = r.TimeSheetWeeklyReleases.ProjectRelease.Id,
  18.                                   RequirementId = r.Id,
  19.                                   RequirementId2 = null,
  20.                                   TeamId = r.TfsTeams.Id,
  21.                                   UserId = r.TimeSheetWeeklyReleases.WeeklyTaskPlan.UserCache.Id,
  22.                                   ForecastId = f.Id,
  23.                                   WeeklyReleaseId = r.TimeSheetWeeklyReleases.Id,
  24.                                   Hours = r.Hours,
  25.                                   WorkItemId = r.WorkItemId,
  26.                                   IsPrimary = r.TimeSheetWeeklyReleases.IsPrimary,
  27.                                   WeekStart = r.TimeSheetWeeklyReleases.WeeklyTaskPlan.WeekStart
  28.                               };
  29.  
  30.             var crossQuery2 = from r in context.TimesheetWeeklyRequirementsWithoutRelease
  31.                               from p in r.TfsTeams.Projects
  32.                               let reqKey = new TimeSheetTaskService.ReqKey() { TeamId = r.TeamId, WorkItemId = r.WorkItemId }
  33.                               join f in context.TeamForecast on reqKey equals new TimeSheetTaskService.ReqKey() { TeamId = f.TeamId, WorkItemId = f.WorkItemId }
  34.                               let parents = (
  35.                                 from fh in context.TeamForecastHierarchy
  36.                                 where fh.ChildId == f.Id
  37.                                 join f2 in context.TeamForecast on fh.ParentId equals f2.Id
  38.                                 select f2
  39.                               )
  40.                               let isInView = parents.Any(fp => fp.TfsFeatureView.Any())
  41.                               where f.HistoryId == null && !isInView
  42.                               select new ProductPlanCrossData()
  43.                               {
  44.                                   ProjectId = p.Id,
  45.                                   UniqueId = r.Id,
  46.                                   PlanId = r.WeeklyTaskPlan.Id,
  47.                                   ProjectReleaseId = null,
  48.                                   RequirementId = null,
  49.                                   RequirementId2 = r.Id,
  50.                                   TeamId = r.TfsTeams.Id,
  51.                                   UserId = r.WeeklyTaskPlan.UserCache.Id,
  52.                                   ForecastId = f.Id,
  53.                                   WeeklyReleaseId = null,
  54.                                   Hours = r.Hours,
  55.                                   WorkItemId = r.WorkItemId,
  56.                                   IsPrimary = r.IsPrimary,
  57.                                   WeekStart = r.WeeklyTaskPlan.WeekStart
  58.                               };
  59.  
  60.             var crossQuery3 = from r in context.WeeklyPlansWithoutRelease
  61.                               select new ProductPlanCrossData()
  62.                               {
  63.                                   ProjectId = r.ProjectId,
  64.                                   UniqueId = r.Id,
  65.                                   PlanId = r.WeeklyTaskPlan.Id,
  66.                                   ProjectReleaseId = null,
  67.                                   RequirementId = null,
  68.                                   RequirementId2 = null,
  69.                                   TeamId = null,
  70.                                   UserId = r.WeeklyTaskPlan.UserCache.Id,
  71.                                   ForecastId = null,
  72.                                   WeeklyReleaseId = null,
  73.                                   Hours = r.Hours,
  74.                                   WorkItemId = null,
  75.                                   IsPrimary = false,
  76.                                   WeekStart = r.WeeklyTaskPlan.WeekStart
  77.                               };
  78.  
  79.             var crossQueryAll = crossQuery1.Concat(crossQuery2).Concat(crossQuery3).Where(r => r.ProjectId == project.Id);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement