001/*- 002 * #%L 003 * HAPI FHIR JPA Server - International Patient Summary (IPS) 004 * %% 005 * Copyright (C) 2014 - 2024 Smile CDR, Inc. 006 * %% 007 * Licensed under the Apache License, Version 2.0 (the "License"); 008 * you may not use this file except in compliance with the License. 009 * You may obtain a copy of the License at 010 * 011 * http://www.apache.org/licenses/LICENSE-2.0 012 * 013 * Unless required by applicable law or agreed to in writing, software 014 * distributed under the License is distributed on an "AS IS" BASIS, 015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 016 * See the License for the specific language governing permissions and 017 * limitations under the License. 018 * #L% 019 */ 020package ca.uhn.fhir.jpa.ips.jpa.section; 021 022import ca.uhn.fhir.jpa.ips.api.IpsSectionContext; 023import ca.uhn.fhir.jpa.ips.jpa.JpaSectionSearchStrategy; 024import jakarta.annotation.Nonnull; 025import org.hl7.fhir.r4.model.Condition; 026 027public class ProblemListJpaSectionSearchStrategy extends JpaSectionSearchStrategy<Condition> { 028 029 @SuppressWarnings("RedundantIfStatement") 030 @Override 031 public boolean shouldInclude( 032 @Nonnull IpsSectionContext<Condition> theIpsSectionContext, @Nonnull Condition theCandidate) { 033 if (theCandidate 034 .getClinicalStatus() 035 .hasCoding("http://terminology.hl7.org/CodeSystem/condition-clinical", "inactive") 036 || theCandidate 037 .getClinicalStatus() 038 .hasCoding("http://terminology.hl7.org/CodeSystem/condition-clinical", "resolved") 039 || theCandidate 040 .getVerificationStatus() 041 .hasCoding("http://terminology.hl7.org/CodeSystem/condition-ver-status", "entered-in-error")) { 042 return false; 043 } 044 045 return true; 046 } 047}