Example #1
0
        public IEnumerable <CreateProgramScheduleDto> GetProgramSchedules(FilterModel filter)
        {
            var propertyInfo = typeof(ProgramSchedule);
            var result       = new List <CreateProgramScheduleDto>();
            var propery      = propertyInfo.GetProperty(filter.SortedField ?? "FitnessProgramName");

            if (string.IsNullOrEmpty(filter.Term))
            {
                var schedules = GetProgramSchedules() as IEnumerable <ProgramSchedule>;
                schedules = filter.SortAsc ? schedules.OrderBy(p => propery.GetValue(p)) : schedules.OrderByDescending(p => propery.GetValue(p));
                foreach (var p in schedules)
                {
                    result.Add(new CreateProgramScheduleDto
                    {
                        Id = p.Id,
                        FitnessProgramName          = p.FitnessProgramName,
                        NutritionProgramName        = p.NutritionProgramName,
                        FitnessProgramDescription   = p.FitnessProgramDescription,
                        NutritionProgramDescription = p.NutritionProgramDescription,
                        TypeName = _programTypeService.GetProgramTypeById(p.ProgramTypeId).Name
                    });
                }

                return(result);
            }
            var programs = _programScheduleRepository.GetAll().AsEnumerable().Where(u => u.FitnessProgramName.StartsWith(filter.Term) || u.NutritionProgramName.StartsWith(filter.Term));

            programs = filter.SortAsc ? programs.OrderBy(p => propery.GetValue(p)) : programs.OrderByDescending(p => propery.GetValue(p));
            foreach (var p in programs)
            {
                result.Add(new CreateProgramScheduleDto
                {
                    Id = p.Id,
                    FitnessProgramName          = p.FitnessProgramName,
                    NutritionProgramName        = p.NutritionProgramName,
                    FitnessProgramDescription   = p.FitnessProgramDescription,
                    NutritionProgramDescription = p.NutritionProgramDescription,
                    TypeName = _programTypeService.GetProgramTypeById(p.ProgramTypeId).Name
                });
            }
            return(result);
        }
        public IActionResult Get(int id)
        {
            var programType = _programTypeService.GetProgramTypeById(id);

            if (programType == null)
            {
                return(NotFound());
            }

            return(Ok(_mapper.Map <ProgramTypeDto>(programType)));
        }