protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); criteria.ProcedureStep.Scheduling.StartTime.IsNotNull(); // only want steps that are actually scheduled return new[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.Report.Status.EqualTo(ReportStatus.C); return(new[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP }); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //bug #3498: exclude procedures that are no longer in SC status return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); return(new[] { criteria }); }
/// <summary> /// Gets the HQL for debugging purposes only. /// </summary> /// <param name="worklist"></param> /// <param name="wqc"></param> /// <returns></returns> public virtual string GetWorklistItemsHql(Worklist worklist, IWorklistQueryContext wqc) { var args = new WorklistQueryArgs(worklist, wqc, false); var query = BuildWorklistQuery(args); return(query.Hql); }
private static ReportingWorklistItemSearchCriteria BuildCommonCriteria(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP, ActivityStatus.SU }); return(criteria); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); criteria.ProcedureStep.Scheduling.Performer.Staff.IsNull(); return new[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); criteria.ProcedureCheckIn.CheckInTime.IsNull(); // exclude anything already checked-in return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.IP }); criteria.ProcedureStep.Performer.Staff.EqualTo(wqc.ExecutingStaff); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { ModalityWorklistItemSearchCriteria criteria = new ModalityWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.IP); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { ModalityWorklistItemSearchCriteria criteria = new ModalityWorklistItemSearchCriteria(); criteria.ProcedureCheckIn.CheckInTime.IsNull(); // not checked in criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP }); criteria.Report.Status.EqualTo(ReportStatus.D); return new[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP }); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //bug #3498: exclude procedures that are no longer in SC status return(new WorklistItemSearchCriteria[] { criteria }); }
/// <summary> /// Gets the set of worklist items in the specified worklist. /// </summary> /// <remarks> /// Subclasses may override this method but in most cases this should not be necessary. /// </remarks> public virtual IList <TItem> GetWorklistItems <TItem>(Worklist worklist, IWorklistQueryContext wqc) where TItem : WorklistItem { var args = new WorklistQueryArgs(worklist, wqc, false); var query = BuildWorklistQuery(args); return(DoQuery <TItem>(query, this.WorklistItemQueryBuilder, args)); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ProtocolingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); criteria.ProcedureStep.Scheduling.Performer.Staff.EqualTo(wqc.ExecutingStaff); criteria.Protocol.Status.EqualTo(ProtocolStatus.PN); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { ModalityWorklistItemSearchCriteria criteria = new ModalityWorklistItemSearchCriteria(); criteria.ProcedureCheckIn.CheckInTime.IsNull(); // not checked in criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); return(new WorklistItemSearchCriteria[] { criteria }); }
/// <summary> /// Gets the criteria established by the worklist filters. /// </summary> /// <param name="wqc"></param> /// <returns></returns> protected virtual WorklistItemSearchCriteria[] GetFilterCriteriaCore(IWorklistQueryContext wqc) { var criteria = new WorklistItemSearchCriteria(); ApplyFilterCriteria(criteria, wqc); return(new[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); criteria.ProcedureStep.Scheduling.StartTime.IsNotNull(); // only want steps that are actually scheduled return(new[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC }); criteria.ProcedureStep.Scheduling.Performer.Staff.EqualTo(wqc.ExecutingStaff); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); criteria.ProcedureCheckIn.CheckInTime.IsNull(); // exclude anything already checked-in return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.In(new[] { ProcedureStatus.DC, ProcedureStatus.CA }); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); criteria.ProcedureStep.Scheduling.Performer.Staff.IsNull(); criteria.ProcedureStep.Scheduling.StartTime.IsNotNull(); return(new [] { criteria }); }
/// <summary> /// Applies this filter to the specified criteria object. /// </summary> /// <param name="criteria"></param> /// <param name="wqc"></param> public void Apply(ProcedureSearchCriteria criteria, IWorklistQueryContext wqc) { if (!this.IsEnabled) { return; } criteria.Portable.EqualTo(this.Value); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ProtocolingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new [] { ActivityStatus.SC, ActivityStatus.IP }); criteria.Protocol.Author.EqualTo(wqc.ExecutingStaff); criteria.Protocol.Status.EqualTo(ProtocolStatus.AA); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ProtocolingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.DC); criteria.ProcedureStep.Performer.Staff.EqualTo(wqc.ExecutingStaff); criteria.Protocol.Status.EqualTo(ProtocolStatus.RJ); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { // this is slightly different than the registration scheduled worklist, because we include // 'checked in' items here, rather than having a separate 'checked in' worklist var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //criteria.Order.Status.EqualTo(OrderStatus.SC); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ProtocolingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); criteria.ProcedureStep.Scheduling.Performer.Staff.IsNull(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //bug #3498: exclude procedures that are no longer in SC status criteria.Protocol.Status.EqualTo(ProtocolStatus.PN); return new WorklistItemSearchCriteria[] { criteria }; }
/// <summary> /// Applies this filter to the specified criteria object. /// </summary> /// <param name="criteria"></param> /// <param name="wqc"></param> public void Apply(ExternalPractitionerSearchCriteria criteria, IWorklistQueryContext wqc) { if (!this.IsEnabled) { return; } criteria.In(this.Values); }
/// <summary> /// Applies this filter to the specified criteria object. /// </summary> /// <param name="criteria"></param> /// <param name="wqc"></param> public void Apply(VisitSearchCriteria criteria, IWorklistQueryContext wqc) { if (!this.IsEnabled) { return; } criteria.CurrentLocation.In(this.Values); }
/// <summary> /// Applies this filter to the specified criteria object. /// </summary> /// <param name="criteria"></param> /// <param name="wqc"></param> public void Apply(DepartmentSearchCriteria criteria, IWorklistQueryContext wqc) { if (!this.IsEnabled) { return; } criteria.In(this.Values); }
/// <summary> /// Applies this filter to the specified criteria object. /// </summary> /// <param name="criteria"></param> /// <param name="wqc"></param> public void Apply(ProcedureTypeSearchCriteria criteria, IWorklistQueryContext wqc) { if (!this.IsEnabled) { return; } criteria.In(this.Values); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP }); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //bug #3498: exclude procedures that are no longer in SC status // any procedures with pending protocol assignment, where the procedure scheduled start time is filtered return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); criteria.ProcedureCheckIn.CheckInTime.IsNotNull(); // include only items that have been checked-in criteria.ProcedureCheckIn.CheckOutTime.IsNull(); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ProtocolingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); criteria.ProcedureStep.Scheduling.Performer.Staff.IsNull(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //bug #3498: exclude procedures that are no longer in SC status criteria.Protocol.Status.EqualTo(ProtocolStatus.PN); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { // this is slightly different than the registration scheduled worklist, because we include // 'checked in' items here, rather than having a separate 'checked in' worklist var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //criteria.Order.Status.EqualTo(OrderStatus.SC); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP }); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); //bug #3498: exclude procedures that are no longer in SC status // any procedures with pending protocol assignment, where the procedure scheduled start time is filtered return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { // "completed" in this context just means the patient has checked-out // the order may still be in progress var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.In(new[] { ProcedureStatus.IP, ProcedureStatus.CM }); criteria.ProcedureCheckIn.CheckOutTime.IsNotNull(); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var performerCriteria = BuildCommonCriteria(wqc); performerCriteria.ProcedureStep.Performer.Staff.IsNotNull(); var scheduledPerformerCriteria = BuildCommonCriteria(wqc); scheduledPerformerCriteria.ProcedureStep.Scheduling.Performer.Staff.IsNotNull(); return new[] { performerCriteria, scheduledPerformerCriteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var assignedToMe = BaseCriteria(); assignedToMe.ProcedureStep.Scheduling.Performer.Staff.EqualTo(wqc.ExecutingStaff); var bySupervisor = BaseCriteria(); bySupervisor.ReportPart.Supervisor.EqualTo(wqc.ExecutingStaff); return new[] { assignedToMe, bySupervisor }; }
/// <summary> /// Applies this filter to the specified criteria object. /// </summary> /// <param name="criteria"></param> /// <param name="wqc"></param> public void Apply(OrderSearchCriteria criteria, IWorklistQueryContext wqc) { if (!this.IsEnabled) { return; } criteria.Priority.In( CollectionUtils.Map(this.Values, (OrderPriorityEnum v) => (OrderPriority)Enum.Parse(typeof(OrderPriority), v.Code))); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); // only unscheduled items should appear in this list criteria.Procedure.ScheduledStartTime.IsNull(); return(new WorklistItemSearchCriteria[] { criteria }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var assignedToMe = BaseCriteria(); assignedToMe.ProcedureStep.Scheduling.Performer.Staff.EqualTo(wqc.ExecutingStaff); var bySupervisor = BaseCriteria(); bySupervisor.ReportPart.Supervisor.EqualTo(wqc.ExecutingStaff); return(new[] { assignedToMe, bySupervisor }); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var performerCriteria = BuildCommonCriteria(wqc); performerCriteria.ProcedureStep.Performer.Staff.IsNotNull(); var scheduledPerformerCriteria = BuildCommonCriteria(wqc); scheduledPerformerCriteria.ProcedureStep.Scheduling.Performer.Staff.IsNotNull(); return(new[] { performerCriteria, scheduledPerformerCriteria }); }
/// <summary> /// Constructor. /// </summary> /// <param name="worklist"></param> /// <param name="wqc"></param> /// <param name="countQuery"></param> public WorklistQueryArgs(Worklist worklist, IWorklistQueryContext wqc, bool countQuery) { this.Worklist = worklist; this.QueryContext = wqc; this.FilterCriteria = worklist.GetFilterCriteria(wqc); // init base class Initialize( worklist.GetProcedureStepSubclasses(), worklist.GetInvariantCriteria(wqc), countQuery ? null : worklist.GetProjection(), wqc.Page); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteriaNotEqual = new ReportingWorklistItemSearchCriteria(); criteriaNotEqual.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP }); criteriaNotEqual.ReportPart.Interpreter.EqualTo(wqc.ExecutingStaff); criteriaNotEqual.ProcedureStep.Scheduling.Performer.Staff.NotEqualTo(wqc.ExecutingStaff); var criteriaNull = new ReportingWorklistItemSearchCriteria(); criteriaNull.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP }); criteriaNull.ReportPart.Interpreter.EqualTo(wqc.ExecutingStaff); criteriaNull.ProcedureStep.Scheduling.Performer.Staff.IsNull(); return new WorklistItemSearchCriteria[] { criteriaNotEqual, criteriaNull }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { // "completed" in this context just means the patient has checked-out // the order may still be in progress var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.In(new[] { ProcedureStatus.IP, ProcedureStatus.CM }); criteria.ProcedureCheckIn.CheckOutTime.IsNotNull(); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var unsupervised = new ReportingWorklistItemSearchCriteria(); unsupervised.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.CM }); unsupervised.ReportPart.Verifier.EqualTo(wqc.ExecutingStaff); var supervised = new ReportingWorklistItemSearchCriteria(); supervised.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.CM }); supervised.ReportPart.Verifier.NotEqualTo(wqc.ExecutingStaff); supervised.ReportPart.Interpreter.EqualTo(wqc.ExecutingStaff); return new WorklistItemSearchCriteria[] { unsupervised, supervised }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); criteria.ProcedureCheckIn.CheckInTime.IsNotNull(); // include only items that have been checked-in criteria.ProcedureCheckIn.CheckOutTime.IsNull(); return new WorklistItemSearchCriteria[] { criteria }; }
public override int GetWorklistItemCount(IWorklistQueryContext wqc) { return wqc.GetBroker<IRegistrationWorklistItemBroker>().CountWorklistItems(this, wqc); }
public override string GetWorklistItemsHql(IWorklistQueryContext wqc) { return wqc.GetBroker<IRegistrationWorklistItemBroker>().GetWorklistItemsHql(this, wqc); }
public override IList GetWorklistItems(IWorklistQueryContext wqc) { return (IList)wqc.GetBroker<IRegistrationWorklistItemBroker>().GetWorklistItems<WorklistItem>(this, wqc); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.In(new[] { ProcedureStatus.DC, ProcedureStatus.CA }); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.CM); // only unscheduled procedures should be in this list criteria.Procedure.ScheduledStartTime.IsNull(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); // checked in procedures are also in the scheduled status and may or may not have no scheduled start time // but they should be excluded since there is no reason to schedule a patient who is already here criteria.ProcedureCheckIn.CheckInTime.IsNull(); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.ProcedureStep.State.EqualTo(ActivityStatus.SC); return new WorklistItemSearchCriteria[] { criteria }; }
/// <summary> /// Gets the criteria established by the worklist filters. /// </summary> /// <param name="wqc"></param> /// <returns></returns> protected virtual WorklistItemSearchCriteria[] GetFilterCriteriaCore(IWorklistQueryContext wqc) { var criteria = new WorklistItemSearchCriteria(); ApplyFilterCriteria(criteria, wqc); return new[] { criteria }; }
/// <summary> /// Modifies the specified criteria to represent the filters that are set for this worklist. /// </summary> /// <param name="criteria"></param> /// <param name="wqc"></param> protected void ApplyFilterCriteria(WorklistItemSearchCriteria criteria, IWorklistQueryContext wqc) { this.ProcedureTypeFilter.Apply(criteria.Procedure.Type, wqc); this.ProcedureTypeGroupFilter.Apply(criteria.Procedure.Type, wqc); this.FacilityFilter.Apply(criteria.Procedure.PerformingFacility, wqc); this.DepartmentFilter.Apply(criteria.Procedure.PerformingDepartment, wqc); this.OrderPriorityFilter.Apply(criteria.Order, wqc); this.PatientClassFilter.Apply(criteria.Visit, wqc); this.PatientLocationFilter.Apply(criteria.Visit, wqc); this.OrderingPractitionerFilter.Apply(criteria.Order.OrderingPractitioner, wqc); this.PortableFilter.Apply(criteria.Procedure, wqc); // note: the TimeFilter is treated as part of the invariant criteria, so it is not processed here }
public override int GetWorklistItemCount(IWorklistQueryContext wqc) { // TODO: ProtocollingWorklistQueryBuilder may not be exactly correct because it contains an additional constraint return wqc.GetBroker<IProtocolWorklistItemBroker>().CountWorklistItems(this, wqc); }
protected override WorklistItemSearchCriteria[] GetInvariantCriteriaCore(IWorklistQueryContext wqc) { var criteria = new RegistrationWorklistItemSearchCriteria(); criteria.Procedure.Status.EqualTo(ProcedureStatus.SC); // only unscheduled items should appear in this list criteria.Procedure.ScheduledStartTime.IsNull(); return new WorklistItemSearchCriteria[] { criteria }; }
protected override WorklistItemSearchCriteria[] GetFilterCriteriaCore(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); // apply base filters ApplyFilterCriteria(criteria, wqc); // add reporting-specific filters if (GetSupportsReportingStaffRoleFilter(GetClass())) { this.InterpretedByStaffFilter.Apply(criteria.ReportPart.Interpreter, wqc); this.TranscribedByStaffFilter.Apply(criteria.ReportPart.Transcriber, wqc); this.VerifiedByStaffFilter.Apply(criteria.ReportPart.Verifier, wqc); this.SupervisedByStaffFilter.Apply(criteria.ReportPart.Supervisor, wqc); } return new[] { criteria }; }
private static ReportingWorklistItemSearchCriteria BuildCommonCriteria(IWorklistQueryContext wqc) { var criteria = new ReportingWorklistItemSearchCriteria(); criteria.ProcedureStep.State.In(new[] { ActivityStatus.SC, ActivityStatus.IP, ActivityStatus.SU }); return criteria; }