|
@ -22,7 +22,9 @@ import com.gmeremit.online.gmeremittance_native.utils.Utils; |
|
|
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponseV2; |
|
|
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponseV2; |
|
|
import com.gmeremit.online.gmeremittance_native.utils.https.GenericResponseDataModel; |
|
|
import com.gmeremit.online.gmeremittance_native.utils.https.GenericResponseDataModel; |
|
|
import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils; |
|
|
import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils; |
|
|
|
|
|
import com.google.gson.reflect.TypeToken; |
|
|
|
|
|
|
|
|
|
|
|
import java.lang.reflect.Type; |
|
|
import java.util.List; |
|
|
import java.util.List; |
|
|
|
|
|
|
|
|
import io.reactivex.android.schedulers.AndroidSchedulers; |
|
|
import io.reactivex.android.schedulers.AndroidSchedulers; |
|
@ -48,15 +50,15 @@ public class DomesticRemitPresenterImpl extends BasePresenter implements Domesti |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public void getDomesticRemitRelatedInfo() { |
|
|
public void getDomesticRemitRelatedInfo() { |
|
|
// compositeDisposable.add( |
|
|
|
|
|
// this.gateway.getDomesticRelatedData(gateway.getAuth(), gateway.getUserID()) |
|
|
|
|
|
// .doOnSubscribe(disposable -> view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text))) |
|
|
|
|
|
// .subscribeOn(Schedulers.io()) |
|
|
|
|
|
// .observeOn(AndroidSchedulers.mainThread()) |
|
|
|
|
|
// .doFinally(() -> view.showProgressBar(false, "")) |
|
|
|
|
|
// .subscribeWith(new DomesticRelatedDataObserver()) |
|
|
|
|
|
// ); |
|
|
|
|
|
mockDomesticRemitRelatedData(); |
|
|
|
|
|
|
|
|
compositeDisposable.add( |
|
|
|
|
|
this.gateway.getDomesticRelatedData(gateway.getAuth(), gateway.getUserIDNumber()) |
|
|
|
|
|
.doOnSubscribe(disposable -> view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text))) |
|
|
|
|
|
.subscribeOn(Schedulers.io()) |
|
|
|
|
|
.observeOn(AndroidSchedulers.mainThread()) |
|
|
|
|
|
.doFinally(() -> view.showProgressBar(false, "")) |
|
|
|
|
|
.subscribeWith(new DomesticRelatedDataObserver()) |
|
|
|
|
|
); |
|
|
|
|
|
// mockDomesticRemitRelatedData(); |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -181,15 +183,15 @@ public class DomesticRemitPresenterImpl extends BasePresenter implements Domesti |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public void getRecipientDetailOnAccountNoValidated() { |
|
|
public void getRecipientDetailOnAccountNoValidated() { |
|
|
// compositeDisposable.add( |
|
|
|
|
|
// this.gateway.verifyKFTCBank(gateway.getAuth(), gateway.getUserID(),domesticRemitDataValidator.selectedRecipientBank.getBankCode(),domesticRemitDataValidator.bankAcNo) |
|
|
|
|
|
// .doOnSubscribe(disposable -> view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text))) |
|
|
|
|
|
// .subscribeOn(Schedulers.io()) |
|
|
|
|
|
// .observeOn(AndroidSchedulers.mainThread()) |
|
|
|
|
|
// .doFinally(() -> view.showProgressBar(false, "")) |
|
|
|
|
|
// .subscribeWith(new VerifyKFTCAccountObserver()) |
|
|
|
|
|
// ); |
|
|
|
|
|
mockAccountValidationSuccess(); |
|
|
|
|
|
|
|
|
compositeDisposable.add( |
|
|
|
|
|
this.gateway.verifyKFTCBank(gateway.getAuth(), gateway.getUserIDNumber(),domesticRemitDataValidator.selectedRecipientBank.getBankCode(),domesticRemitDataValidator.bankAcNo) |
|
|
|
|
|
.doOnSubscribe(disposable -> view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text))) |
|
|
|
|
|
.subscribeOn(Schedulers.io()) |
|
|
|
|
|
.observeOn(AndroidSchedulers.mainThread()) |
|
|
|
|
|
.doFinally(() -> view.showProgressBar(false, "")) |
|
|
|
|
|
.subscribeWith(new VerifyKFTCAccountObserver()) |
|
|
|
|
|
); |
|
|
|
|
|
// mockAccountValidationSuccess(); |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -197,10 +199,10 @@ public class DomesticRemitPresenterImpl extends BasePresenter implements Domesti |
|
|
DomesticReicipientInfoDTO data = gateway.getMockedDomesticRecipientInfo(view.getContext()); |
|
|
DomesticReicipientInfoDTO data = gateway.getMockedDomesticRecipientInfo(view.getContext()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String message = "Do you want to send money to xxx?"; |
|
|
|
|
|
String formattedMessage = message.replace("xxx", data.getRecipientName()); |
|
|
|
|
|
|
|
|
String message = "The provided account number is associated with name \"ooo\". Do you want to continue?"; |
|
|
|
|
|
String formattedMessage = message.replace("ooo", data.getRecipientName()); |
|
|
|
|
|
|
|
|
view.promptToConfirmRecipientName(formattedMessage, new GenericPromptDialog.GenericDialogPromptListener() { |
|
|
|
|
|
|
|
|
view.promptToConfirmRecipientName(getStringfromStringId(R.string.important_text),formattedMessage, new GenericPromptDialog.GenericDialogPromptListener() { |
|
|
@Override |
|
|
@Override |
|
|
public void onNegativeBtnPressed() { |
|
|
public void onNegativeBtnPressed() { |
|
|
|
|
|
|
|
@ -426,7 +428,7 @@ public class DomesticRemitPresenterImpl extends BasePresenter implements Domesti |
|
|
//Business requirement, not checking lower bound as it will be handled by server |
|
|
//Business requirement, not checking lower bound as it will be handled by server |
|
|
// else if (formattedCurrentBalance <=formattedServiceCharge || netSendingAmount > formattedCurrentBalance) |
|
|
// else if (formattedCurrentBalance <=formattedServiceCharge || netSendingAmount > formattedCurrentBalance) |
|
|
else if (netSendingAmount > formattedCurrentBalance) { |
|
|
else if (netSendingAmount > formattedCurrentBalance) { |
|
|
view.setErrorOnWidgetAmount("You don't have sufficient amount to do the transaciton"); |
|
|
|
|
|
|
|
|
view.setErrorOnWidgetAmount("You don't have sufficient amount to do the transaction"); |
|
|
isValidSendAmount = false; |
|
|
isValidSendAmount = false; |
|
|
} else { |
|
|
} else { |
|
|
//User sending Amount is valid |
|
|
//User sending Amount is valid |
|
@ -466,15 +468,27 @@ public class DomesticRemitPresenterImpl extends BasePresenter implements Domesti |
|
|
|
|
|
|
|
|
public class DomesticRelatedDataObserver extends GenericApiObserverResponseV2<DomesticRemitRelatedInfoDTO> { |
|
|
public class DomesticRelatedDataObserver extends GenericApiObserverResponseV2<DomesticRemitRelatedInfoDTO> { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
protected Type getDataType() { |
|
|
|
|
|
return TypeToken.getParameterized(DomesticRemitRelatedInfoDTO.class).getType(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
protected void onSuccess(GenericResponseDataModel<DomesticRemitRelatedInfoDTO> t) { |
|
|
protected void onSuccess(GenericResponseDataModel<DomesticRemitRelatedInfoDTO> t) { |
|
|
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { |
|
|
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { |
|
|
String serviceCharge = gateway.getMockedDomesticRelatedData(view.getContext()).getServiceFee(); |
|
|
|
|
|
|
|
|
String serviceCharge = t.getData().getServiceFee(); |
|
|
|
|
|
|
|
|
domesticRemitDataValidator.setServiceCharge(serviceCharge); |
|
|
domesticRemitDataValidator.setServiceCharge(serviceCharge); |
|
|
|
|
|
|
|
|
String messageServiceCharge = "Service charge: " + Utils.formatCurrencyWithoutTruncatingDecimal(serviceCharge) + " KRW"; |
|
|
|
|
|
|
|
|
String messageServiceCharge = "Service charge: " + Utils.formatCurrencyWithoutTruncatingDecimal(serviceCharge) + " " + Constants.KRW_STRING; |
|
|
view.updateServiceCharge(messageServiceCharge); |
|
|
view.updateServiceCharge(messageServiceCharge); |
|
|
|
|
|
|
|
|
|
|
|
if(t.getData().getAccountList()==null||t.getData().getAccountList().size()<1) |
|
|
|
|
|
{ |
|
|
|
|
|
String message="Please register an auto-debit account inorder to use this service."; |
|
|
|
|
|
view.showPopUpMessage(message, CustomAlertDialog.AlertType.ALERT, alertType -> view.exitView()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
} else { |
|
|
} else { |
|
|
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView()); |
|
|
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView()); |
|
|
} |
|
|
} |
|
@ -505,10 +519,10 @@ public class DomesticRemitPresenterImpl extends BasePresenter implements Domesti |
|
|
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { |
|
|
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { |
|
|
DomesticReicipientInfoDTO data = t.getData(); |
|
|
DomesticReicipientInfoDTO data = t.getData(); |
|
|
|
|
|
|
|
|
String message = "Do you want to send money to xxx?"; |
|
|
|
|
|
String formattedMessage = message.replace("xxx", data.getRecipientName()); |
|
|
|
|
|
|
|
|
String message = "The provided account number is associated with name \"ooo\". Do you want to continue?"; |
|
|
|
|
|
String formattedMessage = message.replace("ooo", data.getRecipientName()); |
|
|
|
|
|
|
|
|
view.promptToConfirmRecipientName(formattedMessage, new GenericPromptDialog.GenericDialogPromptListener() { |
|
|
|
|
|
|
|
|
view.promptToConfirmRecipientName(getStringfromStringId(R.string.important_text),formattedMessage, new GenericPromptDialog.GenericDialogPromptListener() { |
|
|
@Override |
|
|
@Override |
|
|
public void onNegativeBtnPressed() { |
|
|
public void onNegativeBtnPressed() { |
|
|
|
|
|
|
|
@ -546,6 +560,11 @@ public class DomesticRemitPresenterImpl extends BasePresenter implements Domesti |
|
|
|
|
|
|
|
|
public class KFTCAccountBalanceObserver extends GenericApiObserverResponseV2<KFTCBalanceCheckDTO> { |
|
|
public class KFTCAccountBalanceObserver extends GenericApiObserverResponseV2<KFTCBalanceCheckDTO> { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
protected Type getDataType() { |
|
|
|
|
|
return TypeToken.getParameterized(KFTCBalanceCheckDTO.class).getType(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
protected void onSuccess(GenericResponseDataModel<KFTCBalanceCheckDTO> t) { |
|
|
protected void onSuccess(GenericResponseDataModel<KFTCBalanceCheckDTO> t) { |
|
|
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { |
|
|
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { |
|
|