Skip to content

Commit 403b446

Browse files
authored
Merge pull request #42 from mngoe/feature-32476
print feedback when healthfacility not have pricelist
2 parents 8f5bbfc + 5901823 commit 403b446

6 files changed

Lines changed: 40 additions & 24 deletions

File tree

claimManagement/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ android {
2727
minSdkVersion 23
2828
targetSdkVersion 32
2929
versionCode 4
30-
versionName "1.1.7"
30+
versionName "1.1.8"
3131
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
3232
}
3333
buildTypes {

claimManagement/src/main/java/org/openimis/imisclaims/ClaimActivity.java

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import android.content.ContentValues;
88
import android.content.Context;
99
import android.content.Intent;
10+
import android.database.Cursor;
1011
import android.os.Bundle;
1112
import android.view.Menu;
1213
import android.view.MenuInflater;
@@ -318,13 +319,23 @@ public boolean onOptionsItemSelected(MenuItem item) {
318319
private void addItem() {
319320
Intent addItemsIntent = new Intent(ClaimActivity.this, AddItems.class);
320321
addItemsIntent.putExtra(EXTRA_READONLY, isIntentReadonly());
321-
ClaimActivity.this.startActivity(addItemsIntent);
322+
Cursor c = sqlHandler.getMapping("I");
323+
if(c != null && c.getCount() == 0){
324+
showDialog(getResources().getString(R.string.NoItemsPricelist));
325+
}else {
326+
ClaimActivity.this.startActivity(addItemsIntent);
327+
}
322328
}
323329

324330
private void addService() {
325331
Intent addServicesIntent = new Intent(this, AddServices.class);
326332
addServicesIntent.putExtra(EXTRA_READONLY, isIntentReadonly());
327-
ClaimActivity.this.startActivity(addServicesIntent);
333+
Cursor c = sqlHandler.getMapping("S");
334+
if(c != null && c.getCount() == 0){
335+
showDialog(getResources().getString(R.string.NoServicesPricelist));
336+
}else {
337+
ClaimActivity.this.startActivity(addServicesIntent);
338+
}
328339
}
329340

330341
@Override

claimManagement/src/main/java/org/openimis/imisclaims/MainActivity.java

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -553,8 +553,9 @@ public void validateClaimAdminCode(final String claimAdminCode) {
553553
AdminName.setText(global.getOfficeName());
554554
}
555555
Cursor c = sqlHandler.getMapping("I");
556-
if (c != null) {
557-
if (c.getCount() == 0) {
556+
Cursor c1 = sqlHandler.getMapping("S");
557+
if (c != null && c1 != null) {
558+
if (c.getCount() == 0 && c1.getCount() == 0) {
558559
try {
559560
progressDialog.dismiss();
560561
doLoggedIn(() -> CheckHealthFacility(claimAdminCode, HealthFacilityName));
@@ -710,23 +711,24 @@ private void DownLoadServicesItemsPriceList(@NonNull final String claimAdministr
710711
public void run() {
711712
try {
712713
PaymentList paymentList = new FetchPaymentList().execute(claimAdministratorCode);
713-
String servicesPricelistUuid = paymentList.getServicesPricelistUuid();
714714
Date date = Calendar.getInstance().getTime();
715-
List<Service> services = new FetchServices().execute(servicesPricelistUuid, date);
716-
String itemsPriceListUuid = paymentList.getItemsPricelistUuid();
717-
List<Medication> medications = new FetchMedications().execute(itemsPriceListUuid, date);
718715
sqlHandler.ClearMapping("S");
719716
sqlHandler.ClearMapping("I");
720717

721-
//Insert Services
722-
for (Service service : services) {
723-
sqlHandler.InsertMapping(service.getCode(), service.getName(), "S");
718+
if(paymentList.getServicesPricelistUuid() != null && !paymentList.getServicesPricelistUuid().isEmpty()){
719+
List<Service> services = new FetchServices().execute(paymentList.getServicesPricelistUuid(), date);
720+
for (Service service : services) {
721+
sqlHandler.InsertMapping(service.getCode(), service.getName(), "S");
722+
}
724723
}
725724

726-
//Insert Items
727-
for (Medication medication : medications) {
728-
sqlHandler.InsertMapping(medication.getCode(), medication.getName(), "I");
725+
if(paymentList.getItemsPricelistUuid() != null && !paymentList.getItemsPricelistUuid().isEmpty()){
726+
List<Medication> medications = new FetchMedications().execute(paymentList.getItemsPricelistUuid(), date);
727+
for (Medication medication : medications) {
728+
sqlHandler.InsertMapping(medication.getCode(), medication.getName(), "I");
729+
}
729730
}
731+
730732
runOnUiThread(() -> {
731733
progressDialog.dismiss();
732734
Toast.makeText(MainActivity.this, getResources().getString(R.string.MapSuccessful), Toast.LENGTH_LONG).show();

claimManagement/src/main/java/org/openimis/imisclaims/usecase/FetchDiagnosesServicesItems.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@
1818
import org.openimis.imisclaims.network.util.PaginatedResponseUtils;
1919
import org.openimis.imisclaims.util.DateUtils;
2020

21+
import java.util.ArrayList;
2122
import java.util.Date;
23+
import java.util.List;
2224

2325
public class FetchDiagnosesServicesItems {
2426

@@ -53,17 +55,13 @@ public DiagnosesServicesMedications execute() throws Exception {
5355
// previous code was passing sometimes a `last_updated_date` but it was either empty or
5456
// `new Date(0)`. I'm still returning the last updated date in case it's one day used
5557
// again.¯\_(ツ)_/¯
58+
List<Service> services = new ArrayList<>();
59+
List<Medication> medications = new ArrayList<>();
5660
return new DiagnosesServicesMedications(
5761
/* lastUpdated = */ DateUtils.toDateString(new Date()),
5862
/* diagnoses = */ Mapper.map(getDiagnosesRequest.get(), this::toDiagnosis),
59-
/* services = */ PaginatedResponseUtils.downloadAll(
60-
getActivityDefinitionsRequest::get,
61-
this::toService
62-
),
63-
/* medications = */ PaginatedResponseUtils.downloadAll(
64-
getMedicationsRequest::get,
65-
this::toMedication
66-
)
63+
/* services = */ services,
64+
/* medications = */ medications
6765
);
6866
}
6967

claimManagement/src/main/res/values-fr/strings.xml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@
160160
<string name="reports">Rapports</string>
161161
<string name="map_items">Lier des prod. méd.</string>
162162
<string name="map_services">Lier des soins</string>
163-
<string name="quit">Arrêter de fumer</string>
163+
<string name="quit">Quitter</string>
164164
<string name="about">À propos de</string>
165165
<string name="home">Accueil</string>
166166
<string name="Enter_Credentials">Veuillez entrer votre nom d\'utilisateur et votre mot de passe</string>
@@ -210,4 +210,7 @@
210210
<string name="updateAvailable">Mise à jour disponible</string>
211211
<string name="haveLastVersion">Vous avez la dernière version </string>
212212
<string name="newVersion">Nouvelle version </string>
213+
<string name="NoServicesPricelist">La formation sanitaire n\'a pas de liste de prix pour les services </string>
214+
<string name="NoItemsPricelist">La formation sanitaire n\'a pas de liste de prix pour les produits </string>
215+
<string name="entered">Entrée</string>
213216
</resources>

claimManagement/src/main/res/values/strings.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -256,4 +256,6 @@
256256
<string name="updateAvailable">Update available</string>
257257
<string name="haveLastVersion">You have the last version </string>
258258
<string name="newVersion">New version </string>
259+
<string name="NoServicesPricelist">This healthfacility don\'t have services pricelist</string>
260+
<string name="NoItemsPricelist">This healthfacility don\'t have items pricelist</string>
259261
</resources>

0 commit comments

Comments
 (0)