Ejemplo n.º 1
0
        public CollectionResult <Department> GetDepartmentsByParams(DepartmentsFilterParams parameters)
        {
            var appointments = GetAllDepartments();

            FillDepartmentsQueryParams(parameters);

            appointments = appointments.Where(parameters.Expression);

            var totalCount = appointments.Count();

            var result = appointments
                         .OrderBy(x => x.Name)
                         .Skip(parameters.Skip)
                         .Take(parameters.Take)
                         .AsNoTracking()
                         .ToList();

            var appointmentsResult = new CollectionResult <Department>
            {
                Collection = result,
                TotalCount = totalCount
            };

            return(appointmentsResult);
        }
Ejemplo n.º 2
0
        private void FillDepartmentsQueryParams(DepartmentsFilterParams filterParams)
        {
            var predicate = PredicateBuilder.New <Department>(t => t.FacilityId == filterParams.FacilityId);

            if (!string.IsNullOrWhiteSpace(filterParams.Term))
            {
                predicate = predicate.And(t => t.Name.Contains(filterParams.Term));
            }

            filterParams.Expression = predicate;
        }
Ejemplo n.º 3
0
        public CollectionResult <DepartmentDto> GetDepartmentsByParams(DepartmentsFilterParams filterParams)
        {
            var items = _unitOfWork.DepartmentRepository.GetDepartmentsByParams(filterParams);

            var result = new CollectionResult <DepartmentDto>
            {
                TotalCount = items.TotalCount,
                Collection = AutoMapper.Mapper.Map <IEnumerable <Department>, List <DepartmentDto> >(items.Collection)
            };

            return(result);
        }
Ejemplo n.º 4
0
        public IActionResult GetDepartments([FromBody] DepartmentsFilterParams filterParams)
        {
            var userModel = User.GetUserModel();

            if (userModel.FacilityId.HasValue)
            {
                filterParams.FacilityId = userModel.FacilityId.Value;
            }

            var items = _departmentService.GetDepartmentsByParams(filterParams);

            return(Json(JsonResultData.Success(items)));
        }