示例#1
0
        private T SetPlans <T>(T model, List <int> gameIds, int?gameClass = null) where T : MonthlyReportGameBaseModel
        {
            if (gameClass.HasValue)
            {
                if (HuntPlans.Any(x => gameIds.Contains(x.GameId) && x.Class == gameClass))
                {
                    model.HuntPlanCulls = (int)HuntPlans.FirstOrDefault(x => gameIds.Contains(x.GameId) && x.Class == gameClass).Cull;
                }

                model.Culls  = HuntedGames.Count(x => gameIds.Contains(x.GameId) && x.GameClass == gameClass);
                model.Losses = LossGames.Count(x => gameIds.Contains(x.GameId) && x.Class == gameClass);
            }
            else
            {
                if (HuntPlans.Any(x => gameIds.Contains(x.GameId)))
                {
                    model.HuntPlanCulls = (int)HuntPlans.Where(x => gameIds.Contains(x.GameId)).Sum(x => x.Cull);
                }

                model.Culls   = HuntedGames.Count(x => gameIds.Contains(x.GameId));
                model.Catches = CaughtGames.Where(x => gameIds.Contains(x.GameId)).Sum(x => x.Count);
                model.Losses  = LossGames.Count(x => gameIds.Contains(x.GameId));
            }

            return(model);
        }