Exemplo n.º 1
0
        public List <MeetingSearchDomainModel> Handle()
        {
            OrgManUnitOfWork uow = new OrgManUnitOfWork();

            DynamicSearchService searchService = new DynamicSearchService();

            Expression <Func <DataModel.Meeting, bool> > whereExpression = null;

            if (_query.SearchCriterias != null)
            {
                try
                {
                    whereExpression = searchService.GetWhereExpression <DataModel.Meeting>(_query.SearchCriterias);
                }
                catch (Exception)
                {
                    throw new InvalidOperationException("Exception thrown while Building Search Expression from SearchCriteria");
                }
            }

            DynamicOrderService orderService = new DynamicOrderService();

            SortOrderDomainModel orderDomainModel = new SortOrderDomainModel()
            {
                Direction = Common.DynamicOrderService.DynamicOrderModel.Enums.OrderCriteriaDirectionEnum.OrderByDescending,
                Field     = "StartDate"
            };

            var orderQuery = orderService.GetOrderBy <DataModel.Meeting>(orderDomainModel);

            var meetings = uow.MeetingRepository.Get(_query.MandatorUIDs, whereExpression, orderQuery, null, _query.NumberOfRows);

            return(AutoMapper.Mapper.Map <List <MeetingSearchDomainModel> >(meetings));
        }
Exemplo n.º 2
0
        public List <AdressManagementSearchDomainModel> Handle()
        {
            try
            {
                OrgManUnitOfWork uow = new OrgManUnitOfWork();

                DynamicSearchService searchService = new DynamicSearchService();

                Expression <Func <DataModel.IndividualPerson, bool> > whereExpression = null;

                if (_query.SearchCriterias != null)
                {
                    try
                    {
                        whereExpression = searchService.GetWhereExpression <DataModel.IndividualPerson>(_query.SearchCriterias);
                    }
                    catch (Exception)
                    {
                        throw new InvalidOperationException("Exception thrown while Building Search Expression from SearchCriteria");
                    }
                }

                var items = uow.IndividualPersonRepository.Get(_query.MandatorUIDs, whereExpression, null, "Person, Person.PersonToMandators, MemberInformation, Adress", _query.NumberOfRows);

                return(Mapper.Map <List <AdressManagementSearchDomainModel> >(items));
            }
            catch (InvalidOperationException e)
            {
                throw new Exception("Internal Server Error", e);
            }
            catch (Exception)
            {
                throw new Exception("Internal Server Error");
            }
        }