//查询Profession
        public async Task <IEnumerable <Profession> > GetProfessionsAsync(ProfessionDtoParameters professionDtoParameters)
        {
            if (professionDtoParameters == null)
            {
                throw new ArgumentNullException(nameof(professionDtoParameters));
            }
            //如果 筛选条件 和 查询字符串 都为空的话
            if (string.IsNullOrWhiteSpace(professionDtoParameters.ProfessionName) && string.IsNullOrWhiteSpace(professionDtoParameters.SearchTerm))
            {
                return(await _context.Professions.ToListAsync());
            }

            var professionItems = _context.Professions as IQueryable <Profession>;

            //筛选条件
            if (!string.IsNullOrWhiteSpace(professionDtoParameters.ProfessionName))
            {
                professionDtoParameters.ProfessionName = professionDtoParameters.ProfessionName.Trim();

                professionItems = professionItems.Where(x => x.ProfessionName == professionDtoParameters.ProfessionName);
            }
            //查询条件
            if (!string.IsNullOrWhiteSpace(professionDtoParameters.SearchTerm))
            {
                professionDtoParameters.SearchTerm = professionDtoParameters.SearchTerm.Trim();

                professionItems = professionItems.Where(x => x.ProfessionName.Contains(professionDtoParameters.SearchTerm) ||
                                                        x.ProfessionCode.Contains(professionDtoParameters.SearchTerm));
            }

            return(await professionItems.ToListAsync());
        }
Exemple #2
0
        public async Task <ActionResult <IEnumerable <ProfessionDto> > > GetProfessions([FromQuery] ProfessionDtoParameters professionDtoParameters)
        {
            var professions = await _professionRepository.GetProfessionsAsync(professionDtoParameters);

            //添加导航属性
            foreach (var professin in professions)
            {
                professin.Academy = await _academyRepository.GetAcademyAsync(professin.AcademyId);
            }
            var professionDtos = _mapper.Map <IEnumerable <ProfessionDto> >(professions);

            return(Ok(professionDtos));
        }