Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

<artifactId>opensrp-server-core</artifactId>
<packaging>jar</packaging>
<version>2.13.5-SNAPSHOT</version>
<version>2.13.6-LOCAL-SNAPSHOT</version>
<name>opensrp-server-core</name>
<description>OpenSRP Server Core module</description>
<url>https://github.com/OpenSRP/opensrp-server-core</url>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ public Practitioner getPractitionerByUsername(String username) {

@Override
public List<Practitioner> getAllPractitioners(PractitionerSearchBean practitionerSearchBean) {
Pair<Integer, Integer> pageSizeAndOffset = RepositoryUtil.getPageSizeAndOffset(practitionerSearchBean);
Pair<Integer, Integer> pageSizeAndOffset = RepositoryUtil.getPageSizeAndOffset(practitionerSearchBean.getPageNumber(), practitionerSearchBean.getPageSize());
PractitionerExample practitionerExample = new PractitionerExample();
practitionerExample.createCriteria().andDateDeletedIsNull();
if(practitionerSearchBean.getOrderByFieldName() != null && practitionerSearchBean.getOrderByType() != null) {
Expand All @@ -205,8 +205,8 @@ public List<Practitioner> getAllPractitioners(PractitionerSearchBean practitione

@Override
public List<Practitioner> getAllPractitionersByIdentifiers(List<String> practitionerIdentifiers) {
PractitionerSearchBean practitionerSearchBean = new PractitionerSearchBean(null);
Pair<Integer, Integer> pageSizeAndOffset = RepositoryUtil.getPageSizeAndOffset(practitionerSearchBean);
PractitionerSearchBean practitionerSearchBean = new PractitionerSearchBean();
Pair<Integer, Integer> pageSizeAndOffset = RepositoryUtil.getPageSizeAndOffset(practitionerSearchBean.getPageNumber(), practitionerSearchBean.getPageSize());
PractitionerExample practitionerExample = new PractitionerExample();
practitionerExample.createCriteria().andDateDeletedIsNull().andIdentifierIn(practitionerIdentifiers);
List<org.opensrp.domain.postgres.Practitioner> pgPractitionerList = practitionerMapper.selectMany(practitionerExample, pageSizeAndOffset.getRight(), pageSizeAndOffset.getLeft());
Expand Down
24 changes: 19 additions & 5 deletions src/main/java/org/opensrp/search/PractitionerSearchBean.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,34 @@

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.experimental.SuperBuilder;

@Data
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class PractitionerSearchBean extends BaseSearchBean {
@Getter
@Setter
public class PractitionerSearchBean {

private Long serverVersion;

public Long getServerVersion() {
return serverVersion;
public enum OrderByType {
ASC, DESC
}

public void setServerVersion(Long serverVersion) {
this.serverVersion = serverVersion;
public enum FieldName {
id, server_version
}

private Integer pageNumber = 0;

private Integer pageSize = 0;

private OrderByType orderByType;

private FieldName orderByFieldName;
}
Original file line number Diff line number Diff line change
Expand Up @@ -342,17 +342,17 @@ public void testGetAllPractitioners() {
Practitioner practitioner2 = initTestPractitioner2();
practitionerRepository.add(practitioner2);
PractitionerSearchBean practitionerSearchBean = PractitionerSearchBean.builder().
orderByType(BaseSearchBean.OrderByType.DESC).
orderByFieldName(BaseSearchBean.FieldName.id).build();
orderByType(PractitionerSearchBean.OrderByType.DESC).
orderByFieldName(PractitionerSearchBean.FieldName.id).build();
practitionerSearchBean.setServerVersion(1l);
List<Practitioner> practitioners = practitionerRepository.getAllPractitioners(practitionerSearchBean);
assertNotNull(practitioners);
assertEquals(2,practitioners.size());
assertEquals("practitioner-2-identifier",practitioners.get(0).getIdentifier());
assertEquals("practitioner-1-identifier",practitioners.get(1).getIdentifier());

practitionerSearchBean = PractitionerSearchBean.builder().orderByType(BaseSearchBean.OrderByType.ASC).
orderByFieldName(BaseSearchBean.FieldName.id).build();
practitionerSearchBean = PractitionerSearchBean.builder().orderByType(PractitionerSearchBean.OrderByType.ASC).
orderByFieldName(PractitionerSearchBean.FieldName.id).build();
practitionerSearchBean.setServerVersion(1l);
practitioners = practitionerRepository.getAllPractitioners(practitionerSearchBean);
assertNotNull(practitioners);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ public void testGetAllPractitioners() {
expectedPractitioners.add(initTestPractitioner());
when(practitionerRepository.getAllPractitioners(any(PractitionerSearchBean.class))).thenReturn(expectedPractitioners);

PractitionerSearchBean practitionerSearchBean = new PractitionerSearchBean(0L);
PractitionerSearchBean practitionerSearchBean = new PractitionerSearchBean();
List<Practitioner> actualPractitioners = practitionerService.getAllPractitioners(practitionerSearchBean);
verify(practitionerRepository).getAllPractitioners(practitionerSearchBean);
assertEquals(1, actualPractitioners.size());
Expand Down