From 326cfd005afbe0748be6c0cba3146871dee2f2f0 Mon Sep 17 00:00:00 2001
From: Laxya Pahuja <31318248+laxyapahuja@users.noreply.github.com>
Date: Sat, 28 Dec 2019 03:01:03 +0530
Subject: [PATCH] fix: maker checker condition handling (#1216)
Added a test to check if the client created is actually
active or not. The app then shows the message accordingly.
---
.../createnewclient/CreateNewClientFragment.java | 6 ++++++
.../online/createnewclient/CreateNewClientMvpView.java | 2 ++
.../createnewclient/CreateNewClientPresenter.java | 10 ++++++++--
.../datatablelistfragment/DataTableListFragment.java | 6 ++++++
.../datatablelistfragment/DataTableListMvpView.java | 2 ++
.../datatablelistfragment/DataTableListPresenter.java | 8 +++++++-
mifosng-android/src/main/res/values/strings.xml | 1 +
7 files changed, 32 insertions(+), 3 deletions(-)
diff --git a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientFragment.java b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientFragment.java
index 394baf86252..c495b6b3acd 100755
--- a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientFragment.java
+++ b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientFragment.java
@@ -355,6 +355,12 @@ public void showClientCreatedSuccessfully(int message) {
getActivity().getSupportFragmentManager().popBackStack();
}
+ @Override
+ public void showWaitingForCheckerApproval(int message) {
+ Toaster.show(rootView, message);
+ getActivity().getSupportFragmentManager().popBackStack();
+ }
+
@Override
public void showMessage(int message) {
Toaster.show(rootView, message);
diff --git a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientMvpView.java b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientMvpView.java
index 71ab046749c..7056ea57bce 100644
--- a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientMvpView.java
+++ b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientMvpView.java
@@ -22,6 +22,8 @@ public interface CreateNewClientMvpView extends MvpView {
void showClientCreatedSuccessfully(int s);
+ void showWaitingForCheckerApproval(int s);
+
void showMessage(int message);
void showMessage(String message);
diff --git a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientPresenter.java b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientPresenter.java
index eb1cc63b37a..cb91f4ab9c9 100644
--- a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientPresenter.java
+++ b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/createnewclient/CreateNewClientPresenter.java
@@ -164,8 +164,14 @@ public void onError(Throwable e) {
@Override
public void onNext(Client client) {
getMvpView().showProgressbar(false);
- getMvpView().showClientCreatedSuccessfully(
- R.string.client_created_successfully);
+ if (client.getClientId() != null) {
+ getMvpView().showClientCreatedSuccessfully(
+ R.string.client_created_successfully);
+ } else {
+ getMvpView().showWaitingForCheckerApproval(
+ R.string.waiting_for_checker_approval
+ );
+ }
}
}));
}
diff --git a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListFragment.java b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListFragment.java
index f3e530ee227..80f00119b5b 100644
--- a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListFragment.java
+++ b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListFragment.java
@@ -322,6 +322,12 @@ public void showClientCreatedSuccessfully(Client client) {
}
}
+ @Override
+ public void showWaitingForCheckerApproval(int message) {
+ getActivity().getSupportFragmentManager().popBackStack();
+ Toaster.show(rootView, message, Toast.LENGTH_SHORT);
+ }
+
@Override
public void showProgressbar(boolean b) {
if (b) {
diff --git a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListMvpView.java b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListMvpView.java
index 26f6ee4828c..00552599b8f 100644
--- a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListMvpView.java
+++ b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListMvpView.java
@@ -10,4 +10,6 @@ public interface DataTableListMvpView extends MvpView {
void showMessage(String message);
void showClientCreatedSuccessfully(Client client);
+
+ void showWaitingForCheckerApproval(int message);
}
diff --git a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListPresenter.java b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListPresenter.java
index 3839d889649..6b3fd7c6e94 100644
--- a/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListPresenter.java
+++ b/mifosng-android/src/main/java/com/mifos/mifosxdroid/online/datatablelistfragment/DataTableListPresenter.java
@@ -121,7 +121,13 @@ public void onError(Throwable e) {
@Override
public void onNext(Client client) {
getMvpView().showProgressbar(false);
- getMvpView().showClientCreatedSuccessfully(client);
+ if (client.getClientId() != null) {
+ getMvpView().showClientCreatedSuccessfully(
+ client);
+ } else {
+ getMvpView().showWaitingForCheckerApproval(
+ R.string.waiting_for_checker_approval);
+ }
}
}));
}
diff --git a/mifosng-android/src/main/res/values/strings.xml b/mifosng-android/src/main/res/values/strings.xml
index 8fb8975351b..4f110154f96 100755
--- a/mifosng-android/src/main/res/values/strings.xml
+++ b/mifosng-android/src/main/res/values/strings.xml
@@ -164,6 +164,7 @@
No results found for entered query
No Search Query Entered!
Client Created Successfully
+ Waiting for Checker\'s Approval
No Staff associated with this Office
Adding Client Address
Updating Client Address