You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fineract.apache.org by ra...@apache.org on 2018/06/03 04:57:19 UTC
[fineract-cn-mobile] 02/02: feat : integrated fake database layer
This is an automated email from the ASF dual-hosted git repository.
rajanmaurya154 pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/fineract-cn-mobile.git
commit 5b5ad3a60f3f5dd135f8447509f3f54c9fcd18d8
Author: Mohak <mo...@gmail.com>
AuthorDate: Sat May 19 17:00:27 2018 +0530
feat : integrated fake database layer
---
.../java/org/apache/fineract/FakeJsonName.java | 11 +++-
.../org/apache/fineract/FakeRemoteDataSource.java | 64 ++++++++++++++++++++++
.../fineract/data/datamanager/DataManagerAuth.java | 13 ++++-
.../data/datamanager/DataManagerCustomer.java | 55 +++++++++++++++++--
.../data/datamanager/DataManagerDeposit.java | 27 ++++++++-
.../datamanager/DataManagerIndividualLending.java | 15 ++++-
.../data/datamanager/DataManagerLoans.java | 23 +++++++-
.../data/datamanager/DataManagerRoles.java | 13 ++++-
app/src/main/resources/authentication.json | 7 +++
app/src/main/resources/command.json | 8 +++
app/src/main/resources/customer.json | 45 ++++++++++++++-
app/src/main/resources/customerPage.json | 52 ++++++++++++++++++
app/src/main/resources/depositAccount.json | 13 +++++
app/src/main/resources/identification.json | 16 ++++++
app/src/main/resources/loanAccount.json | 55 +++++++++++++++++++
app/src/main/resources/loanAccountPage.json | 60 ++++++++++++++++++++
app/src/main/resources/plannedPaymentPage.json | 23 ++++++++
app/src/main/resources/role.json | 28 ++++++++++
app/src/main/resources/scanCard.json | 6 ++
19 files changed, 520 insertions(+), 14 deletions(-)
diff --git a/app/src/commonTest/java/org/apache/fineract/FakeJsonName.java b/app/src/commonTest/java/org/apache/fineract/FakeJsonName.java
index 3b13ebe..441ae48 100644
--- a/app/src/commonTest/java/org/apache/fineract/FakeJsonName.java
+++ b/app/src/commonTest/java/org/apache/fineract/FakeJsonName.java
@@ -7,5 +7,14 @@ package org.apache.fineract;
public class FakeJsonName {
public static final String CUSTOMER = "customer.json";
-
+ public static final String AUTHENTICATION = "authentication.json";
+ public static final String CUSTOMER_PAGE = "customerPage.json";
+ public static final String LOAN_ACCOUNT_PAGE = "loanAccountPage.json";
+ public static final String DEPOSIT_ACCOUNTS = "depositAccount.json";
+ public static final String IDENTIFICATIONS = "identification.json";
+ public static final String SCAN_CARDS = "scanCard.json";
+ public static final String CUSTOMER_COMMANDS = "command.json";
+ public static final String LOAN_ACCOUNT = "loanAccount.json";
+ public static final String PLANNED_PAYMENT_PAGE = "plannedPaymentPage.json";
+ public static final String ROLES = "role.json";
}
diff --git a/app/src/commonTest/java/org/apache/fineract/FakeRemoteDataSource.java b/app/src/commonTest/java/org/apache/fineract/FakeRemoteDataSource.java
index 87c3451..01f6bb3 100644
--- a/app/src/commonTest/java/org/apache/fineract/FakeRemoteDataSource.java
+++ b/app/src/commonTest/java/org/apache/fineract/FakeRemoteDataSource.java
@@ -1,6 +1,20 @@
package org.apache.fineract;
+import com.google.gson.reflect.TypeToken;
+
+import org.apache.fineract.data.models.Authentication;
+import org.apache.fineract.data.models.customer.Command;
import org.apache.fineract.data.models.customer.Customer;
+import org.apache.fineract.data.models.customer.CustomerPage;
+import org.apache.fineract.data.models.customer.identification.Identification;
+import org.apache.fineract.data.models.customer.identification.ScanCard;
+import org.apache.fineract.data.models.deposit.DepositAccount;
+import org.apache.fineract.data.models.loan.LoanAccount;
+import org.apache.fineract.data.models.loan.LoanAccountPage;
+import org.apache.fineract.data.models.payment.PlannedPaymentPage;
+import org.apache.fineract.data.models.rolesandpermission.Role;
+
+import java.util.List;
/**
* FakeRemoteDataSource is reading the local json files into the java object using gson.
@@ -14,4 +28,54 @@ public class FakeRemoteDataSource {
return testDataFactory.getObjectTypePojo(Customer.class,
FakeJsonName.CUSTOMER);
}
+
+ public static Authentication getAuth() {
+ return testDataFactory.getObjectTypePojo(Authentication.class,
+ FakeJsonName.AUTHENTICATION);
+ }
+
+ public static CustomerPage getCustomerPage() {
+ return testDataFactory.getObjectTypePojo(CustomerPage.class,
+ FakeJsonName.CUSTOMER_PAGE);
+ }
+
+ public static List<Role> getRoles() {
+ return testDataFactory.getListTypePojo(new TypeToken<List<Role>>() {
+ }, FakeJsonName.ROLES);
+ }
+
+ public static LoanAccountPage getloanAccountPage() {
+ return testDataFactory.getObjectTypePojo(LoanAccountPage.class,
+ FakeJsonName.LOAN_ACCOUNT_PAGE);
+ }
+
+ public static List<DepositAccount> getCustomerDepositAccounts() {
+ return testDataFactory.getListTypePojo(new TypeToken<List<DepositAccount>>() {
+ }, FakeJsonName.DEPOSIT_ACCOUNTS);
+ }
+
+ public static List<Identification> getIdentifications() {
+ return testDataFactory.getListTypePojo(new TypeToken<List<Identification>>() {
+ }, FakeJsonName.IDENTIFICATIONS);
+ }
+
+ public static List<ScanCard> getScanCards() {
+ return testDataFactory.getListTypePojo(new TypeToken<List<ScanCard>>() {
+ }, FakeJsonName.SCAN_CARDS);
+ }
+
+ public static List<Command> getCustomerCommands() {
+ return testDataFactory.getListTypePojo(new TypeToken<List<Command>>() {
+ }, FakeJsonName.CUSTOMER_COMMANDS);
+ }
+
+ public static LoanAccount getloanAccount() {
+ return testDataFactory.getObjectTypePojo(LoanAccount.class,
+ FakeJsonName.LOAN_ACCOUNT);
+ }
+
+ public static PlannedPaymentPage getPlannedPaymentPage() {
+ return testDataFactory.getObjectTypePojo(PlannedPaymentPage.class,
+ FakeJsonName.PLANNED_PAYMENT_PAGE);
+ }
}
diff --git a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerAuth.java b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerAuth.java
index ddfbb88..68e43a0 100644
--- a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerAuth.java
+++ b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerAuth.java
@@ -2,6 +2,7 @@ package org.apache.fineract.data.datamanager;
import android.util.Base64;
+import org.apache.fineract.FakeRemoteDataSource;
import org.apache.fineract.data.local.PreferencesHelper;
import org.apache.fineract.data.models.Authentication;
import org.apache.fineract.data.remote.BaseApiManager;
@@ -12,6 +13,8 @@ import javax.inject.Inject;
import javax.inject.Singleton;
import io.reactivex.Observable;
+import io.reactivex.ObservableSource;
+import io.reactivex.functions.Function;
/**
* @author Rajan Maurya On 16/03/17.
@@ -34,7 +37,15 @@ public class DataManagerAuth {
public Observable<Authentication> login(String username, String password) {
return baseApiManager.getAuthApi().login(username,
- Base64.encodeToString(password.getBytes(Charset.forName("UTF-8")), Base64.NO_WRAP));
+ Base64.encodeToString(password.getBytes(Charset.forName("UTF-8")), Base64.NO_WRAP))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<Authentication>>() {
+ @Override
+ public ObservableSource<Authentication> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource.getAuth());
+ }
+ });
}
public Observable<Authentication> refreshToken() {
diff --git a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerCustomer.java b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerCustomer.java
index a6ce417..c2357a2 100644
--- a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerCustomer.java
+++ b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerCustomer.java
@@ -1,5 +1,6 @@
package org.apache.fineract.data.datamanager;
+import org.apache.fineract.FakeRemoteDataSource;
import org.apache.fineract.data.local.PreferencesHelper;
import org.apache.fineract.data.models.customer.Command;
import org.apache.fineract.data.models.customer.Customer;
@@ -15,6 +16,8 @@ import javax.inject.Singleton;
import io.reactivex.Completable;
import io.reactivex.Observable;
+import io.reactivex.ObservableSource;
+import io.reactivex.functions.Function;
import okhttp3.MultipartBody;
/**
@@ -37,12 +40,28 @@ public class DataManagerCustomer extends FineractBaseDataManager {
public Observable<CustomerPage> fetchCustomers(Integer pageIndex, Integer size) {
return authenticatedObservableApi(baseApiManager.getCustomerApi()
- .fetchCustomers(pageIndex, size));
+ .fetchCustomers(pageIndex, size))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<CustomerPage>>() {
+ @Override
+ public ObservableSource<CustomerPage> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource.getCustomerPage());
+ }
+ });
}
public Observable<Customer> fetchCustomer(String identifier) {
return authenticatedObservableApi(baseApiManager.getCustomerApi()
- .fetchCustomer(identifier));
+ .fetchCustomer(identifier))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<Customer>>() {
+ @Override
+ public ObservableSource<Customer> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource.getCustomer());
+ }
+ });
}
public Completable updateCustomer(String customerIdentifier, Customer customer) {
@@ -67,12 +86,30 @@ public class DataManagerCustomer extends FineractBaseDataManager {
public Observable<List<Command>> fetchCustomerCommands(String customerIdentifier) {
return authenticatedObservableApi(baseApiManager.getCustomerApi()
- .fetchCustomerCommands(customerIdentifier));
+ .fetchCustomerCommands(customerIdentifier))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<List<Command>>>() {
+ @Override
+ public ObservableSource<List<Command>> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource.getCustomerCommands());
+ }
+ });
}
public Observable<List<Identification>> fetchIdentifications(String customerIdentifier) {
return authenticatedObservableApi(baseApiManager.getCustomerApi()
- .fetchIdentification(customerIdentifier));
+ .fetchIdentification(customerIdentifier))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<List<Identification>>>
+ () {
+ @Override
+ public ObservableSource<List<Identification>> apply(
+ Throwable throwable)
+ throws Exception {
+ return Observable.just(FakeRemoteDataSource.getIdentifications());
+ }
+ });
}
public Completable createIdentificationCard(String identifier, Identification identification) {
@@ -89,7 +126,15 @@ public class DataManagerCustomer extends FineractBaseDataManager {
public Observable<List<ScanCard>> fetchIdentificationScanCards(String customerIdentifier,
String identificationNumber) {
return authenticatedObservableApi(baseApiManager.getCustomerApi()
- .fetchIdentificationScanCards(customerIdentifier, identificationNumber));
+ .fetchIdentificationScanCards(customerIdentifier, identificationNumber))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<List<ScanCard>>>() {
+ @Override
+ public ObservableSource<List<ScanCard>> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource.getScanCards());
+ }
+ });
}
public Completable uploadIdentificationCardScan(String customerIdentifier,
diff --git a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerDeposit.java b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerDeposit.java
index dcbb4cd..8e13597 100644
--- a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerDeposit.java
+++ b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerDeposit.java
@@ -1,5 +1,6 @@
package org.apache.fineract.data.datamanager;
+import org.apache.fineract.FakeRemoteDataSource;
import org.apache.fineract.data.local.PreferencesHelper;
import org.apache.fineract.data.models.deposit.DepositAccount;
import org.apache.fineract.data.models.deposit.ProductDefinition;
@@ -12,6 +13,8 @@ import javax.inject.Singleton;
import io.reactivex.Completable;
import io.reactivex.Observable;
+import io.reactivex.ObservableSource;
+import io.reactivex.functions.Function;
/**
* @author Rajan Maurya
@@ -34,13 +37,33 @@ public class DataManagerDeposit extends FineractBaseDataManager {
public Observable<List<DepositAccount>> getCustomerDepositAccounts(
String customerIdentifier) {
return authenticatedObservableApi(baseApiManager.getDepositApi()
- .fetchCustomersDeposits(customerIdentifier));
+ .fetchCustomersDeposits(customerIdentifier))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<List<DepositAccount>>>
+ () {
+ @Override
+ public ObservableSource<List<DepositAccount>> apply(
+ Throwable throwable)
+ throws Exception {
+ return Observable.just(FakeRemoteDataSource
+ .getCustomerDepositAccounts());
+ }
+ });
}
public Observable<DepositAccount> getCustomerDepositAccountDetails(
String accountIdentifier) {
return authenticatedObservableApi(baseApiManager.getDepositApi()
- .fetchCustomerDepositDetails(accountIdentifier));
+ .fetchCustomerDepositDetails(accountIdentifier))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<DepositAccount>>() {
+ @Override
+ public ObservableSource<DepositAccount> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource
+ .getCustomerDepositAccounts().get(0));
+ }
+ });
}
public Observable<List<ProductDefinition>> fetchProductDefinitions() {
diff --git a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerIndividualLending.java b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerIndividualLending.java
index 882b2bd..a3ba78e 100644
--- a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerIndividualLending.java
+++ b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerIndividualLending.java
@@ -1,5 +1,6 @@
package org.apache.fineract.data.datamanager;
+import org.apache.fineract.FakeRemoteDataSource;
import org.apache.fineract.data.local.PreferencesHelper;
import org.apache.fineract.data.models.payment.PlannedPaymentPage;
import org.apache.fineract.data.remote.BaseApiManager;
@@ -8,6 +9,8 @@ import javax.inject.Inject;
import javax.inject.Singleton;
import io.reactivex.Observable;
+import io.reactivex.ObservableSource;
+import io.reactivex.functions.Function;
/**
* @author Rajan Maurya
@@ -31,6 +34,16 @@ public class DataManagerIndividualLending extends FineractBaseDataManager {
String caseIdentifier, Integer pageIndex, Integer size, String initialDisbursalDate) {
return authenticatedObservableApi(baseApiManager
.getIndividualLendingService().getPaymentScheduleForCase(
- productIdentifier, caseIdentifier, pageIndex, size, initialDisbursalDate));
+ productIdentifier, caseIdentifier, pageIndex, size, initialDisbursalDate))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<PlannedPaymentPage>>() {
+ @Override
+ public ObservableSource<PlannedPaymentPage> apply(
+ Throwable throwable)
+ throws Exception {
+ return Observable.just(
+ FakeRemoteDataSource.getPlannedPaymentPage());
+ }
+ });
}
}
diff --git a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerLoans.java b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerLoans.java
index c699e11..e315d80 100644
--- a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerLoans.java
+++ b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerLoans.java
@@ -1,5 +1,6 @@
package org.apache.fineract.data.datamanager;
+import org.apache.fineract.FakeRemoteDataSource;
import org.apache.fineract.data.local.PreferencesHelper;
import org.apache.fineract.data.models.loan.LoanAccount;
import org.apache.fineract.data.models.loan.LoanAccountPage;
@@ -11,6 +12,8 @@ import javax.inject.Singleton;
import io.reactivex.Completable;
import io.reactivex.Observable;
+import io.reactivex.ObservableSource;
+import io.reactivex.functions.Function;
/**
* @author Rajan Maurya
@@ -33,13 +36,29 @@ public class DataManagerLoans extends FineractBaseDataManager {
public Observable<LoanAccountPage> fetchCustomerLoanAccounts(
String customeridentifier, Integer pageIndex, Integer size) {
return authenticatedObservableApi(baseApiManager.getLoanApi()
- .fetchCustomerLoanAccounts(customeridentifier, pageIndex, size));
+ .fetchCustomerLoanAccounts(customeridentifier, pageIndex, size))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<LoanAccountPage>>() {
+ @Override
+ public ObservableSource<LoanAccountPage> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource.getloanAccountPage());
+ }
+ });
}
public Observable<LoanAccount> fetchCustomerLoanDetails(
String productIdentifier, String caseIdentifier) {
return authenticatedObservableApi(baseApiManager.getLoanApi()
- .fetchCustomerLoanDetails(productIdentifier, caseIdentifier));
+ .fetchCustomerLoanDetails(productIdentifier, caseIdentifier))
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<LoanAccount>>() {
+ @Override
+ public ObservableSource<LoanAccount> apply(
+ Throwable throwable) throws Exception {
+ return Observable.just(FakeRemoteDataSource.getloanAccount());
+ }
+ });
}
public Observable<ProductPage> getProducts(Integer pageIndex, Integer size) {
diff --git a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerRoles.java b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerRoles.java
index 8de52aa..60df5c0 100644
--- a/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerRoles.java
+++ b/app/src/main/java/org/apache/fineract/data/datamanager/DataManagerRoles.java
@@ -1,5 +1,6 @@
package org.apache.fineract.data.datamanager;
+import org.apache.fineract.FakeRemoteDataSource;
import org.apache.fineract.data.local.PreferencesHelper;
import org.apache.fineract.data.models.rolesandpermission.Role;
import org.apache.fineract.data.remote.BaseApiManager;
@@ -10,6 +11,8 @@ import javax.inject.Inject;
import javax.inject.Singleton;
import io.reactivex.Observable;
+import io.reactivex.ObservableSource;
+import io.reactivex.functions.Function;
/**
* @author Rajan Maurya
@@ -31,6 +34,14 @@ public class DataManagerRoles extends FineractBaseDataManager {
public Observable<List<Role>> getRoles() {
return authenticatedObservableApi(
- baseApiManager.getRolesAndPermissionsService().getRoles());
+ baseApiManager.getRolesAndPermissionsService().getRoles())
+ .onErrorResumeNext(
+ new Function<Throwable, ObservableSource<List<Role>>>() {
+ @Override
+ public ObservableSource<List<Role>> apply(Throwable throwable)
+ throws Exception {
+ return Observable.just(FakeRemoteDataSource.getRoles());
+ }
+ });
}
}
diff --git a/app/src/main/resources/authentication.json b/app/src/main/resources/authentication.json
new file mode 100644
index 0000000..9a26afb
--- /dev/null
+++ b/app/src/main/resources/authentication.json
@@ -0,0 +1,7 @@
+{
+ "tokenType": "tokenType",
+ "accessToken": "accessToken",
+ "accessTokenExpiration": "accessTokenExpiration",
+ "refreshTokenExpiration": "refreshTokenExpiration",
+ "passwordExpiration": "passwordExpiration"
+}
\ No newline at end of file
diff --git a/app/src/main/resources/command.json b/app/src/main/resources/command.json
new file mode 100644
index 0000000..079a8ad
--- /dev/null
+++ b/app/src/main/resources/command.json
@@ -0,0 +1,8 @@
+[
+ {
+ "action": "ACTIVATE",
+ "comment": "comment",
+ "createdOn": "createdOn",
+ "createdBy": "createdBy"
+ }
+]
\ No newline at end of file
diff --git a/app/src/main/resources/customer.json b/app/src/main/resources/customer.json
index 0e0dcd2..837a272 100644
--- a/app/src/main/resources/customer.json
+++ b/app/src/main/resources/customer.json
@@ -1,3 +1,46 @@
{
-
+ "identifier": "identifier",
+ "type": "type",
+ "givenName": "givenName",
+ "middleName": "middleName",
+ "surname": "surname",
+ "dateOfBirth": {
+ "year": 1985,
+ "month": 11,
+ "day": 27
+ },
+ "member": false,
+ "accountBeneficiary": "accountBeneficiary",
+ "referenceCustomer": "referenceCustomer",
+ "assignedOffice": "assignedOffice",
+ "assignedEmployee": "assignedEmployee",
+ "address": {
+ "street": "street",
+ "city": "city",
+ "region": "region",
+ "postalCode": "postalCode",
+ "countryCode": "countryCode",
+ "country": "country"
+ },
+ "contactDetails": [
+ {
+ "type": "EMAIL",
+ "group": "BUSINESS",
+ "value": "value",
+ "preferenceLevel": 1,
+ "validated": false
+ },
+ {
+ "type": "EMAIL",
+ "group": "BUSINESS",
+ "value": "value",
+ "preferenceLevel": 1,
+ "validated": false
+ }
+ ],
+ "currentState": "ACTIVE",
+ "createdBy": "createdBy",
+ "createdOn": "createdOn",
+ "lastModifiedBy": "lastModifiedBy",
+ "lastModifiedOn": "lastModifiedOn"
}
\ No newline at end of file
diff --git a/app/src/main/resources/customerPage.json b/app/src/main/resources/customerPage.json
new file mode 100644
index 0000000..ec149ea
--- /dev/null
+++ b/app/src/main/resources/customerPage.json
@@ -0,0 +1,52 @@
+{
+ "customers": [
+ {
+ "identifier": "identifier",
+ "type": "type",
+ "givenName": "givenName",
+ "middleName": "middleName",
+ "surname": "surname",
+ "dateOfBirth": {
+ "year": 1985,
+ "month": 11,
+ "day": 27
+ },
+ "member": false,
+ "accountBeneficiary": "accountBeneficiary",
+ "referenceCustomer": "referenceCustomer",
+ "assignedOffice": "assignedOffice",
+ "assignedEmployee": "assignedEmployee",
+ "address": {
+ "street": "street",
+ "city": "city",
+ "region": "region",
+ "postalCode": "postalCode",
+ "countryCode": "countryCode",
+ "country": "country"
+ },
+ "contactDetails": [
+ {
+ "type": "EMAIL",
+ "group": "BUSINESS",
+ "value": "value",
+ "preferenceLevel": 1,
+ "validated": false
+ },
+ {
+ "type": "EMAIL",
+ "group": "BUSINESS",
+ "value": "value",
+ "preferenceLevel": 1,
+ "validated": false
+ }
+ ],
+ "currentState": "ACTIVE",
+ "createdBy": "createdBy",
+ "createdOn": "createdOn",
+ "lastModifiedBy": "lastModifiedBy",
+ "lastModifiedOn": "lastModifiedOn"
+ }
+ ],
+ "totalPages": 1,
+ "totalElements": 1
+}
\ No newline at end of file
diff --git a/app/src/main/resources/depositAccount.json b/app/src/main/resources/depositAccount.json
new file mode 100644
index 0000000..ed7eff5
--- /dev/null
+++ b/app/src/main/resources/depositAccount.json
@@ -0,0 +1,13 @@
+[
+ {
+ "customerIdentifier": "customerIdentifier",
+ "productIdentifier": "productIdentifier",
+ "accountIdentifier": "accountIdentifier",
+ "beneficiaries": [
+ "beneficiaries:1",
+ "beneficiaries:2"
+ ],
+ "state": "CREATED",
+ "balance": 245.50
+ }
+]
\ No newline at end of file
diff --git a/app/src/main/resources/identification.json b/app/src/main/resources/identification.json
new file mode 100644
index 0000000..25f163d
--- /dev/null
+++ b/app/src/main/resources/identification.json
@@ -0,0 +1,16 @@
+[
+ {
+ "type": "type",
+ "number": "number",
+ "expirationDate": {
+ "year": 1985,
+ "month": 11,
+ "day": 27
+ },
+ "issuer": "issuer",
+ "createdBy": "createdBy",
+ "createdOn": "createdOn",
+ "lastModifiedBy": "lastModifiedBy",
+ "lastModifiedOn": "lastModifiedOn"
+ }
+]
\ No newline at end of file
diff --git a/app/src/main/resources/loanAccount.json b/app/src/main/resources/loanAccount.json
new file mode 100644
index 0000000..c619478
--- /dev/null
+++ b/app/src/main/resources/loanAccount.json
@@ -0,0 +1,55 @@
+{
+ "identifier": "identifier",
+ "productIdentifier": "productIdentifier",
+ "parameters": "{\"customerIdentifier\":\"customerIdentifier\",\"maximumBalance\": 343.45,\"termRange\": {\"temporalUnit\": \"WEEKS\", \"maximum\": 45.45 }, \"paymentCycle\": {\"temporalUnit\": \"WEEKS\",\"period\": 1,\"alignmentDay\": 1,\"alignmentWeek\": 1,\"alignmentMonth\": 1},\"creditWorthinessSnapshots\":[{\"forCustomer\":\"forCustomer\"}]}",
+ "accountAssignments": [
+ {
+ "designator": "designator",
+ "accountIdentifier": "accountIdentifier",
+ "ledgerIdentifier": "ledgerIdentifier"
+ }
+ ],
+ "currentState": "CREATED",
+ "createdOn": "createdOn",
+ "createdBy": "createdBy",
+ "lastModifiedOn": "lastModifiedOn",
+ "lastModifiedBy": "lastModifiedBy",
+ "loanParameters": {
+ "customerIdentifier": "customerIdentifier",
+ "creditWorthinessSnapshots": [
+ {
+ "forCustomer": "forCustomer",
+ "incomeSources": [
+ {
+ "description": "description",
+ "amount": 45.45
+ }
+ ],
+ "assets": [
+ {
+ "description": "description",
+ "amount": 45.45
+ }
+ ],
+ "debts": [
+ {
+ "description": "description",
+ "amount": 45.45
+ }
+ ]
+ }
+ ],
+ "maximumBalance": 4500.50,
+ "termRange": {
+ "temporalUnit": "WEEKS",
+ "maximum": 45
+ },
+ "paymentCycle": {
+ "temporalUnit": "WEEKS",
+ "period": 1,
+ "alignmentDay": 1,
+ "alignmentWeek": 1,
+ "alignmentMonth": 1
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/resources/loanAccountPage.json b/app/src/main/resources/loanAccountPage.json
new file mode 100644
index 0000000..ba5d4b2
--- /dev/null
+++ b/app/src/main/resources/loanAccountPage.json
@@ -0,0 +1,60 @@
+{
+ "elements": [
+ {
+ "identifier": "identifier",
+ "productIdentifier": "productIdentifier",
+ "parameters" : "{}",
+ "accountAssignments": [
+ {
+ "designator": "designator",
+ "accountIdentifier": "accountIdentifier",
+ "ledgerIdentifier": "ledgerIdentifier"
+ }
+ ],
+ "currentState": "CREATED",
+ "createdOn": "createdOn",
+ "createdBy": "createdBy",
+ "lastModifiedOn": "lastModifiedOn",
+ "lastModifiedBy": "lastModifiedBy",
+ "loanParameters": {
+ "customerIdentifier": "customerIdentifier",
+ "creditWorthinessSnapshots": [
+ {
+ "forCustomer": "forCustomer",
+ "incomeSources": [
+ {
+ "description": "description",
+ "amount": 45.45
+ }
+ ],
+ "assets": [
+ {
+ "description": "description",
+ "amount": 45.45
+ }
+ ],
+ "debts": [
+ {
+ "description": "description",
+ "amount": 45.45
+ }
+ ]
+ }
+ ],
+ "maximumBalance": 4500.50,
+ "termRange": {
+ "temporalUnit": "WEEKS",
+ "maximum": 45
+ },
+ "paymentCycle": {
+ "temporalUnit": "WEEKS",
+ "period": 1,
+ "alignmentDay": 1,
+ "alignmentWeek": 1,
+ "alignmentMonth": 1
+ }
+ }
+ }
+ ],
+ "totalElements": 1
+}
\ No newline at end of file
diff --git a/app/src/main/resources/plannedPaymentPage.json b/app/src/main/resources/plannedPaymentPage.json
new file mode 100644
index 0000000..5ee08da
--- /dev/null
+++ b/app/src/main/resources/plannedPaymentPage.json
@@ -0,0 +1,23 @@
+{
+ "chargeNames": [
+ {
+ "identifier": "identifier",
+ "name": "name"
+ }
+ ],
+ "elements": [
+ {
+ "interestRate": 5.10,
+ "costComponents": [
+ {
+ "chargeIdentifier": "chargeIdentifier",
+ "amount": 4500.75
+ }
+ ],
+ "remainingPrincipal": 3400,
+ "data": "date"
+ }
+ ],
+ "totalPages": 1,
+ "totalElements": 1
+}
\ No newline at end of file
diff --git a/app/src/main/resources/role.json b/app/src/main/resources/role.json
new file mode 100644
index 0000000..8ac814f
--- /dev/null
+++ b/app/src/main/resources/role.json
@@ -0,0 +1,28 @@
+[
+ {
+ "identifier": "identifier1",
+ "permissions": [
+ {
+ "permittableEndpointGroupIdentifier": "permittableEndpointGroupIdentifier",
+ "allowedOperations": ["READ", "DELETE"]
+ },
+ {
+ "permittableEndpointGroupIdentifier": "permittableEndpointGroupIdentifier",
+ "allowedOperations": ["READ", "DELETE"]
+ }
+ ]
+ },
+ {
+ "identifier": "identifier2",
+ "permissions": [
+ {
+ "permittableEndpointGroupIdentifier": "permittableEndpointGroupIdentifier",
+ "allowedOperations": ["READ", "DELETE"]
+ },
+ {
+ "permittableEndpointGroupIdentifier": "permittableEndpointGroupIdentifier",
+ "allowedOperations": ["READ", "DELETE"]
+ }
+ ]
+ }
+]
\ No newline at end of file
diff --git a/app/src/main/resources/scanCard.json b/app/src/main/resources/scanCard.json
new file mode 100644
index 0000000..c4eab82
--- /dev/null
+++ b/app/src/main/resources/scanCard.json
@@ -0,0 +1,6 @@
+[
+ {
+ "description": "description",
+ "identifier": "identifier"
+ }
+]
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
rajanmaurya154@apache.org.