Exemplo n.º 1
0
        private static T QueryVisits <T>(ExternalPractitioner practitioner, Converter <VisitSearchCriteria, VisitPractitionerSearchCriteria, T> queryAction)
        {
            var visitsWhere = new VisitPractitionerSearchCriteria();

            visitsWhere.Practitioner.EqualTo(practitioner);
            return(queryAction(new VisitSearchCriteria(), visitsWhere));
        }
Exemplo n.º 2
0
		private static HqlProjectionQuery GetBaseVisitPractitionerQuery(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria)
		{
			var hqlFrom = new HqlFrom(typeof(Visit).Name, "v");
			hqlFrom.Joins.Add(new HqlJoin("v.Practitioners", "vp"));

			var query = new HqlProjectionQuery(hqlFrom);
			query.Conditions.AddRange(HqlCondition.FromSearchCriteria("vp", practitionerSearchCriteria));
			query.Conditions.AddRange(HqlCondition.FromSearchCriteria("v", visitSearchCriteria));
			return query;
		}
Exemplo n.º 3
0
        private static IList <Visit> GetVisitBatch(ExternalPractitioner practitioner, Action <VisitSearchCriteria> priorityFilter, int batchSize, IPersistenceContext context)
        {
            var visitsWhere = new VisitSearchCriteria();

            priorityFilter(visitsWhere);

            var practitionersWhere = new VisitPractitionerSearchCriteria();

            practitionersWhere.Practitioner.EqualTo(practitioner);
            return(context.GetBroker <IVisitBroker>().FindByVisitPractitioner(new VisitSearchCriteria(), practitionersWhere, new SearchResultPage(0, batchSize)));
        }
Exemplo n.º 4
0
        private static HqlProjectionQuery GetBaseVisitPractitionerQuery(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria)
        {
            var hqlFrom = new HqlFrom(typeof(Visit).Name, "v");

            hqlFrom.Joins.Add(new HqlJoin("v.Practitioners", "vp"));

            var query = new HqlProjectionQuery(hqlFrom);

            query.Conditions.AddRange(HqlCondition.FromSearchCriteria("vp", practitionerSearchCriteria));
            query.Conditions.AddRange(HqlCondition.FromSearchCriteria("v", visitSearchCriteria));
            return(query);
        }
Exemplo n.º 5
0
        public long CountByVisitPractitioner(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria)
        {
            var query = GetBaseVisitPractitionerQuery(visitSearchCriteria, practitionerSearchCriteria);

            query.Selects.Add(new HqlSelect("count(*)"));
            return(ExecuteHqlUnique <long>(query));
        }
Exemplo n.º 6
0
        public IList <Visit> FindByVisitPractitioner(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria, SearchResultPage page)
        {
            var query = GetBaseVisitPractitionerQuery(visitSearchCriteria, practitionerSearchCriteria);

            query.Page = page;
            return(ExecuteHql <Visit>(query));
        }
Exemplo n.º 7
0
 public IList <Visit> FindByVisitPractitioner(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria)
 {
     return(FindByVisitPractitioner(visitSearchCriteria, practitionerSearchCriteria, new SearchResultPage()));
 }
Exemplo n.º 8
0
		public long CountByVisitPractitioner(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria)
		{
			var query = GetBaseVisitPractitionerQuery(visitSearchCriteria, practitionerSearchCriteria);
			query.Selects.Add(new HqlSelect("count(*)"));
			return ExecuteHqlUnique<long>(query);
		}
Exemplo n.º 9
0
		public IList<Visit> FindByVisitPractitioner(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria, SearchResultPage page)
		{
			var query = GetBaseVisitPractitionerQuery(visitSearchCriteria, practitionerSearchCriteria);
			query.Page = page;
			return ExecuteHql<Visit>(query);
		}
Exemplo n.º 10
0
		public IList<Visit> FindByVisitPractitioner(VisitSearchCriteria visitSearchCriteria, VisitPractitionerSearchCriteria practitionerSearchCriteria)
		{
			return FindByVisitPractitioner(visitSearchCriteria, practitionerSearchCriteria, new SearchResultPage());
		}