53 Commits

Author SHA1 Message Date
  Manoj 851ac5be00 changes distributor 2 years ago
  Manoj 0d450f93b5 POB all Changes 2 years ago
  Manoj 430bf4194e code submitted 2 years ago
  Hemant Khadase 5e090421fd updated code 2 years ago
  Manoj 3d2c45adad push changes in GetStartedFragment 2 years ago
  Hemant Khadase 630b233ac7 added modification in code 2 years ago
  Manoj 8dd2952201 POB API 2 years ago
  Manoj ad19100c2b gradle changes 2 years ago
  Hemant Khadase 39ce0a10e0 resolved gradle setting issue 2 years ago
  Hemant Khadase 1f983cc280 cleaned code 2 years ago
  Manoj 9044e7bc10 addded Data 2 years ago
  Manoj 4be70510b6 POB Ui 2 years ago
  Manoj cce8c77ca9 GetStartedFragment ui changes 2 years ago
  Manoj dd4dd560b1 changes in ui 2 years ago
  Manoj 82edee4325 Almost there link 2 years ago
  Hemant Khadase 501152470d added code of HemantBranch 2 years ago
  Manoj a7801321e9 Added Data 2 years ago
  Hemant Khadase 2a2756b9b2 added code for getstarted 2 years ago
  Hemant Khadase 8935fe3e26 added missing code of pankaj 2 years ago
  Manoj a435991093 change signup 2 years ago
  Hemant Khadase 8464196560 added getstarted screen 2 years ago
  Manoj 9feec08f73 ManojBranch 2 years ago
  Hemant Khadase e496b2da92 added flow upto otp 2 years ago
  Manoj 5ea660c7bd ui changes 2 years ago
  Hemant Khadase 307701d89a added indicator code 2 years ago
  Hemant Khadase d34a651242 added code 2 years ago
  Hemant Khadase 1f05731c2e added otp and flow 2 years ago
  Manoj 4a191c8d6f remove dotIndicator 2 years ago
  Manoj bdc78d847d ViewPagerActivity 2 years ago
  Hemant Khadase 4d0ccce126 indicator code added 2 years ago
  Hemant Khadase bd3bc4d07a working on almostthere screen 2 years ago
  Hemant Khadase c3efb29cdf added almost there screen 2 years ago
  Hemant Khadase 1d7d01cb5e working on partner onboarding 2 years ago
  Hemant Khadase 9cdef750b2 added code 2 years ago
  Hemant Khadase f0e6577ece added changes in manifest.xml 2 years ago
  Hemant Khadase eea17eea5a added error handling 2 years ago
  Hemant Khadase b312de797e added updated code in adapter 2 years ago
  Hemant Khadase 171554afe1 added code 2 years ago
  Hemant Khadase e523339797 added missing code 2 years ago
  Hemant Khadase 247f186183 added missing code 2 years ago
  Hemant Khadase 24d2b68e05 added code changes 2 years ago
  Hemant Khadase 935a29dffe minor changes 2 years ago
  Hemant Khadase 9a39b276b0 removed xml code 2 years ago
  Hemant Khadase b74d616a58 added changes 2 years ago
  Hemant Khadase 35eaac9a51 added missing validations 2 years ago
  Hemant Khadase cfbfd52594 added code 2 years ago
  Hemant Khadase 019205d375 added preferenceManager and screen one change 2 years ago
  Hemant Khadase 25355eedb1 added missing code 2 years ago
  Hemant Khadase 4b1ae0619a added ckyc api in step two 2 years ago
  Hemant Khadase 8a70c1cdb8 added missing code 2 years ago
  Hemant Khadase 531589e577 retry functionality is done 2 years ago
  Hemant Khadase b2e37aacc2 added progress dialog handling 2 years ago
  Hemant Khadase b6c207d9cc changes done in file names 2 years ago
279 changed files with 8622 additions and 9976 deletions
Split View
  1. +0
    -3
      .idea/.gitignore
  2. +0
    -6
      .idea/compiler.xml
  3. +0
    -429
      .idea/dbnavigator.xml
  4. +0
    -19
      .idea/gradle.xml
  5. +0
    -17
      .idea/misc.xml
  6. +0
    -6
      .idea/vcs.xml
  7. +14
    -12
      app/build.gradle
  8. +2
    -2
      app/src/androidTest/java/com/nivesh/production/bajajfd/ExampleInstrumentedTest.kt
  9. +25
    -9
      app/src/main/AndroidManifest.xml
  10. +0
    -83
      app/src/main/java/com/nivesh/production/bajajfd/adapter/BankListAdapter.kt
  11. +0
    -47
      app/src/main/java/com/nivesh/production/bajajfd/adapter/CustomerListAdapter.kt
  12. +0
    -124
      app/src/main/java/com/nivesh/production/bajajfd/adapter/HorizontalRecyclerViewAdapter.kt
  13. +0
    -94
      app/src/main/java/com/nivesh/production/bajajfd/adapter/PaymentModeAdapter.kt
  14. +0
    -39
      app/src/main/java/com/nivesh/production/bajajfd/adapter/RecommendedBankListAdapter.kt
  15. +0
    -18
      app/src/main/java/com/nivesh/production/bajajfd/adapter/SectionsPagerAdapter.kt
  16. +0
    -35
      app/src/main/java/com/nivesh/production/bajajfd/api/ApiCallback.kt
  17. +0
    -19
      app/src/main/java/com/nivesh/production/bajajfd/api/TokenAuthenticator.kt
  18. +0
    -175
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/ApiInterface.kt
  19. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/OnClickListener.java
  20. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/interfaces/SendData.kt
  21. +0
    -24
      app/src/main/java/com/nivesh/production/bajajfd/model/ApplicantDetails.kt
  22. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/ApplicantRelationDetails.kt
  23. +0
    -6
      app/src/main/java/com/nivesh/production/bajajfd/model/Bank.kt
  24. +0
    -15
      app/src/main/java/com/nivesh/production/bajajfd/model/BankList.kt
  25. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/BankValidationApiRequest.kt
  26. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/BankValidationApiResponse.kt
  27. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/CheckFDKYCRequest.kt
  28. +0
    -6
      app/src/main/java/com/nivesh/production/bajajfd/model/CityListResponse.kt
  29. +0
    -15
      app/src/main/java/com/nivesh/production/bajajfd/model/CityRequest.kt
  30. +0
    -11
      app/src/main/java/com/nivesh/production/bajajfd/model/ClientBanklist.kt
  31. +0
    -22
      app/src/main/java/com/nivesh/production/bajajfd/model/ClientDetails.kt
  32. +0
    -40
      app/src/main/java/com/nivesh/production/bajajfd/model/ClientMasterMFD.kt
  33. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDApplicationRequest.kt
  34. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDApplicationResponse.kt
  35. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDRequest.kt
  36. +0
    -17
      app/src/main/java/com/nivesh/production/bajajfd/model/DataObject.kt
  37. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/DataObjectX.kt
  38. +0
    -12
      app/src/main/java/com/nivesh/production/bajajfd/model/DeviceInfo.kt
  39. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/DocumentUpload.kt
  40. +0
    -6
      app/src/main/java/com/nivesh/production/bajajfd/model/Errors.kt
  41. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/FDCreationDetailsResponse.kt
  42. +0
    -12
      app/src/main/java/com/nivesh/production/bajajfd/model/FDDataResponse.kt
  43. +0
    -18
      app/src/main/java/com/nivesh/production/bajajfd/model/FDInvestmentDetails.kt
  44. +0
    -6
      app/src/main/java/com/nivesh/production/bajajfd/model/FDStepsCountRequest.kt
  45. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/FdBankDetails.kt
  46. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/FinaliseFD.kt
  47. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/FinalizeFDRequest.kt
  48. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/FinalizeFDResponse.kt
  49. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/FinalizeKYCRequest.kt
  50. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/GetCalculateMaturityAmountResponse.kt
  51. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/GetCodeRequest.kt
  52. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/GetCodeResponse.kt
  53. +0
    -11
      app/src/main/java/com/nivesh/production/bajajfd/model/GetCodes.kt
  54. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/GetFDBankListResponse.kt
  55. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/GetFDDetailsRequest.kt
  56. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/GetFDDetailsResponse.kt
  57. +0
    -6
      app/src/main/java/com/nivesh/production/bajajfd/model/GetIFSCCodeListResponse.kt
  58. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/GetIFSCCodeResponse.kt
  59. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/GetMaturityAmountRequest.kt
  60. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/GetRatesRequest.kt
  61. +0
    -3
      app/src/main/java/com/nivesh/production/bajajfd/model/GetRatesResponse.kt
  62. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/IFSCCODEServiceResult.kt
  63. +0
    -12
      app/src/main/java/com/nivesh/production/bajajfd/model/Nominee.kt
  64. +0
    -18
      app/src/main/java/com/nivesh/production/bajajfd/model/NomineeDetails.kt
  65. +0
    -14
      app/src/main/java/com/nivesh/production/bajajfd/model/NomineeGuardianDetails.kt
  66. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/ObjectResponse.kt
  67. +0
    -14
      app/src/main/java/com/nivesh/production/bajajfd/model/PanCheckRequest.kt
  68. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/PanCheckResponse.kt
  69. +0
    -6
      app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryRequest.kt
  70. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryResponse.kt
  71. +0
    -11
      app/src/main/java/com/nivesh/production/bajajfd/model/ROIDataList.kt
  72. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/Response.kt
  73. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseX.kt
  74. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXX.kt
  75. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXX.kt
  76. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXX.kt
  77. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXX.kt
  78. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXX.kt
  79. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXX.kt
  80. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXX.kt
  81. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXX.kt
  82. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXX.kt
  83. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXX.kt
  84. +0
    -11
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXX.kt
  85. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXX.kt
  86. +0
    -7
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXX.kt
  87. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXXX.kt
  88. +0
    -9
      app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXXXX.kt
  89. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/SaveFDOtherDataRequest.kt
  90. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/SaveFDOtherDataResponse.kt
  91. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/StateListResponse.kt
  92. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/StepsCountResponse.kt
  93. +0
    -5
      app/src/main/java/com/nivesh/production/bajajfd/model/UploadResponse.kt
  94. +0
    -10
      app/src/main/java/com/nivesh/production/bajajfd/model/UserRequest.kt
  95. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/getClientDetailsRequest.kt
  96. +0
    -8
      app/src/main/java/com/nivesh/production/bajajfd/model/getClientDetailsResponse.kt
  97. +0
    -110
      app/src/main/java/com/nivesh/production/bajajfd/repositories/MainRepository.kt
  98. +0
    -489
      app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt
  99. +0
    -173
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFiveBajajFDFragment.kt
  100. +0
    -303
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt

+ 0
- 3
.idea/.gitignore View File

@ -1,3 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml

+ 0
- 6
.idea/compiler.xml View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="11" />
</component>
</project>

+ 0
- 429
.idea/dbnavigator.xml View File

@ -1,429 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DBNavigator.Project.DataEditorManager">
<record-view-column-sorting-type value="BY_INDEX" />
<value-preview-text-wrapping value="false" />
<value-preview-pinned value="false" />
</component>
<component name="DBNavigator.Project.DatabaseBrowserManager">
<autoscroll-to-editor value="false" />
<autoscroll-from-editor value="true" />
<show-object-properties value="true" />
<loaded-nodes />
</component>
<component name="DBNavigator.Project.DatabaseEditorStateManager">
<last-used-providers />
</component>
<component name="DBNavigator.Project.DatabaseFileManager">
<open-files />
</component>
<component name="DBNavigator.Project.EditorStateManager">
<last-used-providers />
</component>
<component name="DBNavigator.Project.ExecutionManager">
<retain-sticky-names value="false" />
</component>
<component name="DBNavigator.Project.ParserDiagnosticsManager">
<diagnostics-history />
</component>
<component name="DBNavigator.Project.Settings">
<connections />
<browser-settings>
<general>
<display-mode value="TABBED" />
<navigation-history-size value="100" />
<show-object-details value="false" />
</general>
<filters>
<object-type-filter>
<object-type name="SCHEMA" enabled="true" />
<object-type name="USER" enabled="true" />
<object-type name="ROLE" enabled="true" />
<object-type name="PRIVILEGE" enabled="true" />
<object-type name="CHARSET" enabled="true" />
<object-type name="TABLE" enabled="true" />
<object-type name="VIEW" enabled="true" />
<object-type name="MATERIALIZED_VIEW" enabled="true" />
<object-type name="NESTED_TABLE" enabled="true" />
<object-type name="COLUMN" enabled="true" />
<object-type name="INDEX" enabled="true" />
<object-type name="CONSTRAINT" enabled="true" />
<object-type name="DATASET_TRIGGER" enabled="true" />
<object-type name="DATABASE_TRIGGER" enabled="true" />
<object-type name="SYNONYM" enabled="true" />
<object-type name="SEQUENCE" enabled="true" />
<object-type name="PROCEDURE" enabled="true" />
<object-type name="FUNCTION" enabled="true" />
<object-type name="PACKAGE" enabled="true" />
<object-type name="TYPE" enabled="true" />
<object-type name="TYPE_ATTRIBUTE" enabled="true" />
<object-type name="ARGUMENT" enabled="true" />
<object-type name="DIMENSION" enabled="true" />
<object-type name="CLUSTER" enabled="true" />
<object-type name="DBLINK" enabled="true" />
</object-type-filter>
</filters>
<sorting>
<object-type name="COLUMN" sorting-type="NAME" />
<object-type name="FUNCTION" sorting-type="NAME" />
<object-type name="PROCEDURE" sorting-type="NAME" />
<object-type name="ARGUMENT" sorting-type="POSITION" />
<object-type name="TYPE ATTRIBUTE" sorting-type="POSITION" />
</sorting>
<default-editors>
<object-type name="VIEW" editor-type="SELECTION" />
<object-type name="PACKAGE" editor-type="SELECTION" />
<object-type name="TYPE" editor-type="SELECTION" />
</default-editors>
</browser-settings>
<navigation-settings>
<lookup-filters>
<lookup-objects>
<object-type name="SCHEMA" enabled="true" />
<object-type name="USER" enabled="false" />
<object-type name="ROLE" enabled="false" />
<object-type name="PRIVILEGE" enabled="false" />
<object-type name="CHARSET" enabled="false" />
<object-type name="TABLE" enabled="true" />
<object-type name="VIEW" enabled="true" />
<object-type name="MATERIALIZED VIEW" enabled="true" />
<object-type name="INDEX" enabled="true" />
<object-type name="CONSTRAINT" enabled="true" />
<object-type name="DATASET TRIGGER" enabled="true" />
<object-type name="DATABASE TRIGGER" enabled="true" />
<object-type name="SYNONYM" enabled="false" />
<object-type name="SEQUENCE" enabled="true" />
<object-type name="PROCEDURE" enabled="true" />
<object-type name="FUNCTION" enabled="true" />
<object-type name="PACKAGE" enabled="true" />
<object-type name="TYPE" enabled="true" />
<object-type name="DIMENSION" enabled="false" />
<object-type name="CLUSTER" enabled="false" />
<object-type name="DBLINK" enabled="true" />
</lookup-objects>
<force-database-load value="false" />
<prompt-connection-selection value="true" />
<prompt-schema-selection value="true" />
</lookup-filters>
</navigation-settings>
<dataset-grid-settings>
<general>
<enable-zooming value="true" />
<enable-column-tooltip value="true" />
</general>
<sorting>
<nulls-first value="true" />
<max-sorting-columns value="4" />
</sorting>
<audit-columns>
<column-names value="" />
<visible value="true" />
<editable value="false" />
</audit-columns>
</dataset-grid-settings>
<dataset-editor-settings>
<text-editor-popup>
<active value="false" />
<active-if-empty value="false" />
<data-length-threshold value="100" />
<popup-delay value="1000" />
</text-editor-popup>
<values-actions-popup>
<show-popup-button value="true" />
<element-count-threshold value="1000" />
<data-length-threshold value="250" />
</values-actions-popup>
<general>
<fetch-block-size value="100" />
<fetch-timeout value="30" />
<trim-whitespaces value="true" />
<convert-empty-strings-to-null value="true" />
<select-content-on-cell-edit value="true" />
<large-value-preview-active value="true" />
</general>
<filters>
<prompt-filter-dialog value="true" />
<default-filter-type value="BASIC" />
</filters>
<qualified-text-editor text-length-threshold="300">
<content-types>
<content-type name="Text" enabled="true" />
<content-type name="Properties" enabled="true" />
<content-type name="XML" enabled="true" />
<content-type name="DTD" enabled="true" />
<content-type name="HTML" enabled="true" />
<content-type name="XHTML" enabled="true" />
<content-type name="Java" enabled="true" />
<content-type name="SQL" enabled="true" />
<content-type name="PL/SQL" enabled="true" />
<content-type name="JSON" enabled="true" />
<content-type name="JSON5" enabled="true" />
<content-type name="Groovy" enabled="true" />
<content-type name="AIDL" enabled="true" />
<content-type name="YAML" enabled="true" />
<content-type name="Manifest" enabled="true" />
</content-types>
</qualified-text-editor>
<record-navigation>
<navigation-target value="VIEWER" />
</record-navigation>
</dataset-editor-settings>
<code-editor-settings>
<general>
<show-object-navigation-gutter value="false" />
<show-spec-declaration-navigation-gutter value="true" />
<enable-spellchecking value="true" />
<enable-reference-spellchecking value="false" />
</general>
<confirmations>
<save-changes value="false" />
<revert-changes value="true" />
</confirmations>
</code-editor-settings>
<code-completion-settings>
<filters>
<basic-filter>
<filter-element type="RESERVED_WORD" id="keyword" selected="true" />
<filter-element type="RESERVED_WORD" id="function" selected="true" />
<filter-element type="RESERVED_WORD" id="parameter" selected="true" />
<filter-element type="RESERVED_WORD" id="datatype" selected="true" />
<filter-element type="RESERVED_WORD" id="exception" selected="true" />
<filter-element type="OBJECT" id="schema" selected="true" />
<filter-element type="OBJECT" id="role" selected="true" />
<filter-element type="OBJECT" id="user" selected="true" />
<filter-element type="OBJECT" id="privilege" selected="true" />
<user-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="false" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</user-schema>
<public-schema>
<filter-element type="OBJECT" id="table" selected="false" />
<filter-element type="OBJECT" id="view" selected="false" />
<filter-element type="OBJECT" id="materialized view" selected="false" />
<filter-element type="OBJECT" id="index" selected="false" />
<filter-element type="OBJECT" id="constraint" selected="false" />
<filter-element type="OBJECT" id="trigger" selected="false" />
<filter-element type="OBJECT" id="synonym" selected="false" />
<filter-element type="OBJECT" id="sequence" selected="false" />
<filter-element type="OBJECT" id="procedure" selected="false" />
<filter-element type="OBJECT" id="function" selected="false" />
<filter-element type="OBJECT" id="package" selected="false" />
<filter-element type="OBJECT" id="type" selected="false" />
<filter-element type="OBJECT" id="dimension" selected="false" />
<filter-element type="OBJECT" id="cluster" selected="false" />
<filter-element type="OBJECT" id="dblink" selected="false" />
</public-schema>
<any-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</any-schema>
</basic-filter>
<extended-filter>
<filter-element type="RESERVED_WORD" id="keyword" selected="true" />
<filter-element type="RESERVED_WORD" id="function" selected="true" />
<filter-element type="RESERVED_WORD" id="parameter" selected="true" />
<filter-element type="RESERVED_WORD" id="datatype" selected="true" />
<filter-element type="RESERVED_WORD" id="exception" selected="true" />
<filter-element type="OBJECT" id="schema" selected="true" />
<filter-element type="OBJECT" id="user" selected="true" />
<filter-element type="OBJECT" id="role" selected="true" />
<filter-element type="OBJECT" id="privilege" selected="true" />
<user-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</user-schema>
<public-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</public-schema>
<any-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</any-schema>
</extended-filter>
</filters>
<sorting enabled="true">
<sorting-element type="RESERVED_WORD" id="keyword" />
<sorting-element type="RESERVED_WORD" id="datatype" />
<sorting-element type="OBJECT" id="column" />
<sorting-element type="OBJECT" id="table" />
<sorting-element type="OBJECT" id="view" />
<sorting-element type="OBJECT" id="materialized view" />
<sorting-element type="OBJECT" id="index" />
<sorting-element type="OBJECT" id="constraint" />
<sorting-element type="OBJECT" id="trigger" />
<sorting-element type="OBJECT" id="synonym" />
<sorting-element type="OBJECT" id="sequence" />
<sorting-element type="OBJECT" id="procedure" />
<sorting-element type="OBJECT" id="function" />
<sorting-element type="OBJECT" id="package" />
<sorting-element type="OBJECT" id="type" />
<sorting-element type="OBJECT" id="dimension" />
<sorting-element type="OBJECT" id="cluster" />
<sorting-element type="OBJECT" id="dblink" />
<sorting-element type="OBJECT" id="schema" />
<sorting-element type="OBJECT" id="role" />
<sorting-element type="OBJECT" id="user" />
<sorting-element type="RESERVED_WORD" id="function" />
<sorting-element type="RESERVED_WORD" id="parameter" />
</sorting>
<format>
<enforce-code-style-case value="true" />
</format>
</code-completion-settings>
<execution-engine-settings>
<statement-execution>
<fetch-block-size value="100" />
<execution-timeout value="20" />
<debug-execution-timeout value="600" />
<focus-result value="false" />
<prompt-execution value="false" />
</statement-execution>
<script-execution>
<command-line-interfaces />
<execution-timeout value="300" />
</script-execution>
<method-execution>
<execution-timeout value="30" />
<debug-execution-timeout value="600" />
<parameter-history-size value="10" />
</method-execution>
</execution-engine-settings>
<operation-settings>
<transactions>
<uncommitted-changes>
<on-project-close value="ASK" />
<on-disconnect value="ASK" />
<on-autocommit-toggle value="ASK" />
</uncommitted-changes>
<multiple-uncommitted-changes>
<on-commit value="ASK" />
<on-rollback value="ASK" />
</multiple-uncommitted-changes>
</transactions>
<session-browser>
<disconnect-session value="ASK" />
<kill-session value="ASK" />
<reload-on-filter-change value="false" />
</session-browser>
<compiler>
<compile-type value="KEEP" />
<compile-dependencies value="ASK" />
<always-show-controls value="false" />
</compiler>
<debugger>
<debugger-type value="ASK" />
<use-generic-runners value="true" />
</debugger>
</operation-settings>
<ddl-file-settings>
<extensions>
<mapping file-type-id="VIEW" extensions="vw" />
<mapping file-type-id="TRIGGER" extensions="trg" />
<mapping file-type-id="PROCEDURE" extensions="prc" />
<mapping file-type-id="FUNCTION" extensions="fnc" />
<mapping file-type-id="PACKAGE" extensions="pkg" />
<mapping file-type-id="PACKAGE_SPEC" extensions="pks" />
<mapping file-type-id="PACKAGE_BODY" extensions="pkb" />
<mapping file-type-id="TYPE" extensions="tpe" />
<mapping file-type-id="TYPE_SPEC" extensions="tps" />
<mapping file-type-id="TYPE_BODY" extensions="tpb" />
</extensions>
<general>
<lookup-ddl-files value="true" />
<create-ddl-files value="false" />
<synchronize-ddl-files value="true" />
<use-qualified-names value="false" />
<make-scripts-rerunnable value="true" />
</general>
</ddl-file-settings>
<general-settings>
<regional-settings>
<date-format value="MEDIUM" />
<number-format value="UNGROUPED" />
<locale value="SYSTEM_DEFAULT" />
<use-custom-formats value="false" />
</regional-settings>
<environment>
<environment-types>
<environment-type id="development" name="Development" description="Development environment" color="-2430209/-12296320" readonly-code="false" readonly-data="false" />
<environment-type id="integration" name="Integration" description="Integration environment" color="-2621494/-12163514" readonly-code="true" readonly-data="false" />
<environment-type id="production" name="Production" description="Productive environment" color="-11574/-10271420" readonly-code="true" readonly-data="true" />
<environment-type id="other" name="Other" description="" color="-1576/-10724543" readonly-code="false" readonly-data="false" />
</environment-types>
<visibility-settings>
<connection-tabs value="true" />
<dialog-headers value="true" />
<object-editor-tabs value="true" />
<script-editor-tabs value="false" />
<execution-result-tabs value="true" />
</visibility-settings>
</environment>
</general-settings>
</component>
</project>

+ 0
- 19
.idea/gradle.xml View File

@ -1,19 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="testRunner" value="GRADLE" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/app" />
</set>
</option>
</GradleProjectSettings>
</option>
</component>
</project>

+ 0
- 17
.idea/misc.xml View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="Android Studio default JDK" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
<component name="VisualizationToolProject">
<option name="state">
<ProjectState>
<option name="scale" value="0.18162393162393162" />
</ProjectState>
</option>
</component>
</project>

+ 0
- 6
.idea/vcs.xml View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

+ 14
- 12
app/build.gradle View File

@ -4,11 +4,11 @@ plugins {
}
android {
namespace 'com.nivesh.production.bajajfd'
namespace 'com.nivesh.production.partnerOnBoarding'
compileSdk 33
defaultConfig {
applicationId "com.nivesh.production.bajajfd"
applicationId "com.nivesh.production.partnerOnBoarding"
minSdk 21
targetSdk 33
versionCode 1
@ -39,38 +39,40 @@ android {
ext{
roomVersion="2.4.3"
glideVersion="4.11.0"
composeVersion="1.6.4"
}
dependencies {
implementation 'androidx.core:core-ktx:1.9.0'
implementation 'androidx.appcompat:appcompat:1.5.1'
implementation 'com.google.android.material:material:1.7.0'
implementation 'androidx.core:core-ktx:1.10.0'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.8.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.5.1'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.6.1'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
// Architectural Components
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1"
// Coroutines
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4'
// Coroutine Lifecycle Scopes
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1"
implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.5.1"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1"
implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.6.1"
// Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation "com.squareup.okhttp3:logging-interceptor:4.7.2"
implementation "com.squareup.okhttp3:logging-interceptor:4.10.0"
// Navigation Components
implementation "androidx.navigation:navigation-fragment-ktx:2.5.3"
implementation "androidx.navigation:navigation-ui-ktx:2.5.3"
implementation 'com.squareup.picasso:picasso:2.71828'
}

+ 2
- 2
app/src/androidTest/java/com/nivesh/production/bajajfd/ExampleInstrumentedTest.kt View File

@ -1,4 +1,4 @@
package com.nivesh.production.bajajfd
package com.nivesh.production.partnerOnBoarding
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4
@ -19,6 +19,6 @@ class ExampleInstrumentedTest {
fun useAppContext() {
// Context of the app under test.
val appContext = InstrumentationRegistry.getInstrumentation().targetContext
assertEquals("com.nivesh.production.bajajfd", appContext.packageName)
assertEquals("com.nivesh.production.partnerOnBoarding", appContext.packageName)
}
}

+ 25
- 9
app/src/main/AndroidManifest.xml View File

@ -4,15 +4,15 @@
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="ANDROID.PERMISSION.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-feature
android:name="android.hardware.camera"
android:required="false" />
android:required="true" />
<uses-feature
android:name="android.hardware.camera.autofocus"
android:required="false" />
@ -28,24 +28,40 @@
android:label="@string/appName"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:requestLegacyExternalStorage="true"
android:theme="@style/Theme.NiveshFDSDK"
android:usesCleartextTraffic="true"
tools:targetApi="31">
<activity
android:name=".ui.activity.BajajFdMainActivity"
android:exported="true"
android:name="com.nivesh.production.partnerOnBoarding.ui.activities.LoginActivity"
android:exported="true"
android:windowSoftInputMode="adjustPan">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.app.lib_name"
android:value="" />
</activity>
<activity
android:name="com.nivesh.production.partnerOnBoarding.ui.activities.RegisterActivity"
android:exported="true"
android:theme="@style/Theme.NiveshFDSDK"
android:windowSoftInputMode="adjustPan"/>
<activity
android:name="com.nivesh.production.partnerOnBoarding.ui.activities.ViewPagerActivity"
android:exported="true"
android:theme="@style/Theme.NiveshFDSDK"
android:windowSoftInputMode="adjustPan"/>
<activity
android:name="com.nivesh.production.partnerOnBoarding.ui.activities.SignUpActivity"
android:exported="true"
android:theme="@style/Theme.NiveshFDSDK"
android:windowSoftInputMode="adjustPan"/>
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider"


+ 0
- 83
app/src/main/java/com/nivesh/production/bajajfd/adapter/BankListAdapter.kt View File

@ -1,83 +0,0 @@
package com.nivesh.production.bajajfd.adapter
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.model.ClientBanklist
class BankListAdapter(
private val bankList: List<ClientBanklist>?,
private val selectedAccount: String? = null,
private val width: Double?
) : RecyclerView.Adapter<BankListAdapter.BankListViewHolder>() {
inner class BankListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val bankSelector: ImageView = itemView.findViewById(R.id.bankSelector)
val tvBankName: TextView = itemView.findViewById(R.id.tvBankName)
val tvBankAccountNumber: TextView = itemView.findViewById(R.id.tvBankAccountNumber)
val tvBankIFSC: TextView = itemView.findViewById(R.id.tvBankIFSC)
}
private var checkedPosition: Int = -2
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
): BankListViewHolder {
val view = LayoutInflater.from(parent.context)
.inflate(R.layout.item_bank_list_preview, parent, false);
view.layoutParams = width?.div(1.35)
?.let { ViewGroup.LayoutParams(it.toInt(), ViewGroup.LayoutParams.WRAP_CONTENT) }
return BankListViewHolder(view)
}
override fun onBindViewHolder(holder: BankListViewHolder, position: Int) {
val bankList = bankList?.get(position)
if (bankList != null) {
holder.itemView.apply {
holder.tvBankName.text = bankList.BankName
holder.tvBankIFSC.text = bankList.IFSCCode
holder.tvBankAccountNumber.text = bankList.AccountNumber
if (selectedAccount == bankList.AccountNumber && (checkedPosition == -2)) {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_green)
checkedPosition = holder.adapterPosition
} else if (checkedPosition == -1) {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_outline)
} else if (checkedPosition == holder.adapterPosition) {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_green)
} else {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_outline)
}
holder.itemView.setOnClickListener {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_green)
if (checkedPosition != holder.adapterPosition) {
notifyItemChanged(checkedPosition)
checkedPosition = holder.adapterPosition
}
}
}
}
}
override fun getItemCount(): Int {
return bankList?.size!!
}
private var onItemClickListener: ((ClientBanklist) -> Unit)? = null
fun setOnItemClickListener(listener: (ClientBanklist) -> Unit) {
onItemClickListener = listener
}
fun getSelected(): ClientBanklist? {
return if (checkedPosition != -1) {
bankList?.get(checkedPosition)
} else null
}
}

+ 0
- 47
app/src/main/java/com/nivesh/production/bajajfd/adapter/CustomerListAdapter.kt View File

@ -1,47 +0,0 @@
package com.nivesh.production.bajajfd.adapter
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.switchmaterial.SwitchMaterial
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.model.GetCodes
class CustomerListAdapter(
private val customerList: MutableList<GetCodes>?
) : RecyclerView.Adapter<CustomerListAdapter.BankListViewHolder>() {
inner class BankListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val tvCustomerName: SwitchMaterial = itemView.findViewById(R.id.tvCustomerName)
val txtLabel: TextView = itemView.findViewById(R.id.txtLabel)
}
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
): BankListViewHolder {
return BankListViewHolder(
LayoutInflater.from(parent.context).inflate(
R.layout.item_customer_list_preview,
parent,
false
)
)
}
override fun onBindViewHolder(holder: BankListViewHolder, position: Int) {
val cList = customerList?.get(position)
if (cList != null) {
holder.txtLabel.text = cList.Label
holder.tvCustomerName.setOnCheckedChangeListener { _, isChecked ->
cList.isSelected = isChecked
}
}
}
override fun getItemCount(): Int {
return customerList?.size!!
}
}

+ 0
- 124
app/src/main/java/com/nivesh/production/bajajfd/adapter/HorizontalRecyclerViewAdapter.kt View File

@ -1,124 +0,0 @@
package com.nivesh.production.bajajfd.adapter
import ROIDataList
import android.annotation.SuppressLint
import android.app.Activity
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.LinearLayout
import android.widget.TextView
import androidx.core.content.ContextCompat
import androidx.core.content.res.ResourcesCompat
import androidx.recyclerview.widget.RecyclerView
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.HorizontalRecyclerViewAdapter.HistoryAdapterViewHolder2
import com.nivesh.production.bajajfd.interfaces.OnClickListener
class HorizontalRecyclerViewAdapter(
private val activity: Activity,
dropdownList: MutableList<ROIDataList>,
onClickListener: OnClickListener
) : RecyclerView.Adapter<HistoryAdapterViewHolder2>() {
private var dropdownList: MutableList<ROIDataList>
private var rowIndex = -1
private var onClickListener: OnClickListener
inner class HistoryAdapterViewHolder2(view: View?) : RecyclerView.ViewHolder(
view!!
) {
var txtYear: TextView = itemView.findViewById(R.id.txtYear)
var txtInterestRate: TextView = itemView.findViewById(R.id.txtInterestRate)
var rlParent: LinearLayout = itemView.findViewById(R.id.rlParent)
}
init {
this.dropdownList = dropdownList
this.onClickListener = onClickListener
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): HistoryAdapterViewHolder2 {
val itemView =
LayoutInflater.from(parent.context).inflate(R.layout.row_dropdown, parent, false)
return HistoryAdapterViewHolder2(itemView)
}
override fun onBindViewHolder(
holder: HistoryAdapterViewHolder2,
@SuppressLint("RecyclerView") position: Int
) {
if (dropdownList.isNotEmpty()) {
val roiDataList: ROIDataList = dropdownList[position]
getYear(holder.txtYear, roiDataList, holder)
holder.txtInterestRate.text = roiDataList.ROI.toString().plus(" % ")
holder.rlParent.setOnClickListener {
rowIndex = position
notifyDataSetChanged()
}
if (rowIndex == position) {
onClickListener.onclickCategory(position)
holder.txtYear.background =
ResourcesCompat.getDrawable(
activity.resources,
R.drawable.rounded_corner_green_fill,
null
)
holder.txtYear.setTextColor(ContextCompat.getColor(activity, R.color.white))
} else {
holder.txtYear.background =
ResourcesCompat.getDrawable(
activity.resources,
R.drawable.rounded_corner_with_line,
null
)
holder.txtYear.setTextColor(
ContextCompat.getColor(activity, R.color.black)
)
}
}
}
private fun getYear(txtYear: TextView, option: ROIDataList, holder: HistoryAdapterViewHolder2) {
when (option.Tenure) {
"12" -> {
holder.rlParent.visibility = View.VISIBLE
txtYear.text = activity.getString(R.string.OneYear)
}
"24" -> {
holder.rlParent.visibility = View.VISIBLE
txtYear.text = activity.getString(R.string.TwoYears)
}
"36" -> {
holder.rlParent.visibility = View.VISIBLE
txtYear.text = activity.getString(R.string.ThreeYears)
}
"48" -> {
holder.rlParent.visibility = View.VISIBLE
txtYear.text = activity.getString(R.string.FourYears)
}
"60" -> {
holder.rlParent.visibility = View.VISIBLE
txtYear.text = activity.getString(R.string.FiveYears)
}
else -> {
holder.rlParent.visibility = View.GONE
}
}
}
override fun getItemCount(): Int {
return dropdownList.size
}
override fun getItemViewType(position: Int): Int {
return position
}
fun refresh() {
rowIndex = -1
notifyDataSetChanged()
}
}

+ 0
- 94
app/src/main/java/com/nivesh/production/bajajfd/adapter/PaymentModeAdapter.kt View File

@ -1,94 +0,0 @@
package com.nivesh.production.bajajfd.adapter
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.model.GetCodes
class PaymentModeAdapter(
private val bankList: List<GetCodes>?,
private val selectedAccount: String? = null
) : RecyclerView.Adapter<PaymentModeAdapter.BankListViewHolder>() {
inner class BankListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val bankSelector: ImageView = itemView.findViewById(R.id.bankSelector)
val tvBankName: TextView = itemView.findViewById(R.id.tvBankName)
val tvUpiMsg: TextView = itemView.findViewById(R.id.tvUpiMsg)
}
private var checkedPosition: Int = -2
override fun onCreateViewHolder(
parent: ViewGroup,
viewType: Int
): BankListViewHolder {
return BankListViewHolder(
LayoutInflater.from(parent.context).inflate(
R.layout.item_payment_list_preview,
parent,
false
)
)
}
override fun onBindViewHolder(holder: BankListViewHolder, position: Int) {
val bankList = bankList?.get(position)
if (bankList != null) {
holder.itemView.apply {
holder.tvBankName.text = bankList.Value
if (bankList.Value.equals("UPI")){
holder.tvUpiMsg.text = context.getString(R.string.upto1LakhOnly)
}else{
holder.tvUpiMsg.text = ""
}
if (selectedAccount == bankList.Value && checkedPosition == -2
) {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_green)
checkedPosition = holder.adapterPosition
} else if (checkedPosition == -1) {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_outline)
} else if (checkedPosition == holder.adapterPosition) {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_green)
} else {
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_outline)
}
setOnClickListener {
onItemClickListener?.let {
it(bankList)
holder.bankSelector.setBackgroundResource(R.drawable.ic_select_green)
if (checkedPosition != holder.adapterPosition) {
notifyItemChanged(checkedPosition)
checkedPosition = holder.adapterPosition
}
}
}
}
}
}
override fun getItemCount(): Int {
return bankList?.size!!
}
private var onItemClickListener: ((GetCodes) -> Unit)? = null
fun setOnItemClickListener(listener: (GetCodes) -> Unit) {
onItemClickListener = listener
}
fun getSelected(): GetCodes? {
return if (checkedPosition != -1) {
bankList?.get(checkedPosition)
} else null
}
}

+ 0
- 39
app/src/main/java/com/nivesh/production/bajajfd/adapter/RecommendedBankListAdapter.kt View File

@ -1,39 +0,0 @@
package com.nivesh.production.bajajfd.adapter
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.model.Bank
class RecommendedBankListAdapter(
private val bankList: List<Bank>
) : RecyclerView.Adapter<RecommendedBankListAdapter.MyViewHolder>() {
class MyViewHolder(view: View) : RecyclerView.ViewHolder(view) {
val txtYear: TextView
init {
txtYear = view.findViewById(R.id.txtYear)
}
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyViewHolder {
val itemView: View = LayoutInflater.from(parent.context)
.inflate(R.layout.row_bank_list, parent, false)
return MyViewHolder(itemView)
}
override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
val bank: Bank = bankList[position]
holder.txtYear.text = bank.BankName
}
override fun getItemCount(): Int {
return bankList.size
}
}

+ 0
- 18
app/src/main/java/com/nivesh/production/bajajfd/adapter/SectionsPagerAdapter.kt View File

@ -1,18 +0,0 @@
package com.nivesh.production.bajajfd.adapter
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentPagerAdapter
class SectionsPagerAdapter(manager: FragmentManager,private val fragments: Array<Fragment>) : FragmentPagerAdapter(manager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
private val titles = ArrayList<String>()
override fun getItem(position: Int): Fragment = fragments[position]
override fun getCount(): Int = fragments.size
override fun getPageTitle(position: Int): CharSequence = titles[position]
}

+ 0
- 35
app/src/main/java/com/nivesh/production/bajajfd/api/ApiCallback.kt View File

@ -1,35 +0,0 @@
package com.nivesh.production.bajajfd.api
import com.nivesh.production.bajajfd.util.Resource
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
abstract class ApiCallback<T : Any> : Callback<Resource<T>> {
abstract fun onSuccess(response: Resource<T>)
abstract fun onFailure(response: Resource<T>)
override fun onResponse(call: Call<Resource<T>>, response: Response<Resource<T>>) {
if (response.isSuccessful && response.body() != null && response.code() == 200) {
onSuccess(response.body()!!)
} else {
// handle 4xx & 5xx error codes here
// val resp = Resource<T>()
// resp.status = false
// resp.message = response.message()
// onFailure(resp)
}
}
override fun onFailure(call: Call<Resource<T>>, t: Throwable) {
// val response = Resource<T>()
// response.status = false
// response.message = t.message.toString()
// onFailure(response)
}
}

+ 0
- 19
app/src/main/java/com/nivesh/production/bajajfd/api/TokenAuthenticator.kt View File

@ -1,19 +0,0 @@
package com.nivesh.production.bajajfd.api
import okhttp3.Authenticator
import okhttp3.Request
import okhttp3.Response
import okhttp3.Route
class TokenAuthenticator {
// override fun authenticate(route: Route?, response: Response): Request? {
//// newAccessToken = service.refreshToken();
////
//// // Add new header to rejected request and retry it
//// return response.request().newBuilder()
//// .header(AUTHORIZATION, newAccessToken)
//// .build();
//
//
// }
}

+ 0
- 175
app/src/main/java/com/nivesh/production/bajajfd/interfaces/ApiInterface.kt View File

@ -1,175 +0,0 @@
package com.nivesh.production.bajajfd.interfaces
import com.google.gson.JsonObject
import com.nivesh.production.bajajfd.model.*
import okhttp3.RequestBody
import retrofit2.Response
import retrofit2.http.*
interface ApiInterface {
@POST("GetRates")
suspend fun getRates(
@Body getRatesRequest: GetRatesRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("CheckFDCKYC")
suspend fun checkFDKYC(
@Body checkFDKYCRequest: CheckFDKYCRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("CreateFDApplication")
suspend fun createFDApp(
@Body createFDRequest: CreateFDRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("DocumentsUpload")
suspend fun documentsUpload(
@Body requestBody: DocumentUpload,
@Header("token") token: String
): Response<JsonObject>
@POST("SaveFDOtherData")
suspend fun saveFDOtherData(
@Body requestBody: SaveFDOtherDataRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetFDDetails")
suspend fun getFDDetails(
@Body requestBody: GetFDDetailsRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("UpdateFDPaymentStatus")
suspend fun updateFDPaymentStatus(
@Body requestBody: RequestBody,
@Header("token") token: String
): Response<JsonObject>
@POST("FinaliseFD")
suspend fun finaliseFD(
@Body requestBody: FinalizeFDRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("FinaliseKYC")
suspend fun finaliseKYC(
@Body requestBody: FinalizeKYCRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("PaymentRequery")
suspend fun paymentReQuery(
@Body requestBody: PaymentReQueryRequest,
@Header("token") token: String
): Response<JsonObject>
// @FormUrlEncoded
@POST("GetCodes")
suspend fun getCodes(
@Body requestBody: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("CalculateFDMaturityAmount")
suspend fun getCalculateFDMaturityAmount(
@Body requestBody: GetMaturityAmountRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("PanCheck_S")
suspend fun panCheckApi(
@Body panCheck: PanCheckRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("getFDStepsCount")
suspend fun getFDStepsCount(
@Body fdStepsCountRequest: FDStepsCountRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetClientDetailV2_S")
suspend fun getClientDetails(
@Body getClientDetailsRequest: getClientDetailsRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetCodes")
suspend fun titleApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetCodes")
suspend fun genderApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetCodes")
suspend fun annualIncomeApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetCodes")
suspend fun relationShipApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetCodes")
suspend fun maritalStatusApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetCodes")
suspend fun occupationApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetStateMaster")
suspend fun stateApi(@Header("token") token: String): Response<JsonObject>
@POST("GetCity")
suspend fun cityApi(
@Body cityRequest: CityRequest,
@Header("token") token: String
): Response<JsonObject>
@GET("GetFDBankList?FDProvider=Bajaj")
suspend fun bankListApi(@Header("token") token: String, @Query("Language") language : String): Response<JsonObject>
@GET("GetIFSC_Autofill?")
suspend fun getIFSCApi(@Query("prefix") ifsc : String): Response<JsonObject>
@GET("GetbankNames")
suspend fun getIFSCBankDetailsApi(@Query( "bankname") ifsc : String, @Header("token") token: String): Response<String>
@POST("GetCodes")
suspend fun payModeApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("GetCodes")
suspend fun customerListApi(
@Body getCodeRequest: GetCodeRequest,
@Header("token") token: String
): Response<JsonObject>
@POST("BankValidationAPI_S")
suspend fun bankValidationApi(
@Body bankValidationApiRequest: BankValidationApiRequest,
@Header("token") token: String
): Response<JsonObject>
}

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/interfaces/OnClickListener.java View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.interfaces;
public interface OnClickListener {
void onclickCategory(int position);
}

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/interfaces/SendData.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.interfaces
import com.nivesh.production.bajajfd.model.CreateFDApplicationResponse
interface SendData {
fun sendDataFragment(message: CreateFDApplicationResponse)
fun sendDataFragmentStepFour(message: CreateFDApplicationResponse)
}

+ 0
- 24
app/src/main/java/com/nivesh/production/bajajfd/model/ApplicantDetails.kt View File

@ -1,24 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ApplicantDetails(
var AnnualIncome: String?= null,
var ApplicantAddress1: String?= null,
var ApplicantAddress2: String?= null,
var ApplicantAddress3: String?= null,
var ApplicantCity: String?= null,
var ApplicantCountry: String?= null,
var ApplicantDOB: String?= null,
var ApplicantEmail: String?= null,
var ApplicantFirstName: String?= null,
var ApplicantGender: String?= null,
var ApplicantLastName: String?= null,
var ApplicantMaritalStatus: String?= null,
var ApplicantMiddleName: String?= null,
var ApplicantMobile: String?= null,
var ApplicantOccupation: String?= null,
var ApplicantPAN: String?= null,
var ApplicantPincode: Int?= 0,
var ApplicantQualification: String?= null,
var ApplicantSalutation: String?= null,
var ApplicantState: String?= null
)

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/ApplicantRelationDetails.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ApplicantRelationDetails(
var ApplicantMotherFirstName: String? = null,
var ApplicantMotherLastName: String? = null,
var ApplicantRelation: String? = null,
var ApplicantRelationFirstName: String? = null,
var ApplicantRelationLastName: String? = null,
var ApplicantRelationSalutation: String? = null
)

+ 0
- 6
app/src/main/java/com/nivesh/production/bajajfd/model/Bank.kt View File

@ -1,6 +0,0 @@
package com.nivesh.production.bajajfd.model
data class Bank(
val BankName: String,
val IFSC4Mapping: String
)

+ 0
- 15
app/src/main/java/com/nivesh/production/bajajfd/model/BankList.kt View File

@ -1,15 +0,0 @@
package com.nivesh.production.bajajfd.model
import java.io.Serializable
data class BankList(
val BankName: String?,
val IFSCCode: String?,
val AccountNumber: String?,
val BranchName: String?,
val DefaultBankFlag: String?,
val IsValBank: String?,
val AccountType: String?
): Serializable

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/BankValidationApiRequest.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class BankValidationApiRequest(
var BankAccountNo: String?="",
var BankNo: Int?= 0,
var IFSC: String?= "",
var Name: String? = "",
var PhoneNo: String? = "",
var RoleId: Int? = 0
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/BankValidationApiResponse.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class BankValidationApiResponse(
val DataObject: Any,
val Message: String,
val ObjectResponse: Any,
val response: ResponseXXXXXXXXXXXXXX
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/CheckFDKYCRequest.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class CheckFDKYCRequest(
var DOB: String? ="",
var Mobile: String? = "",
var NiveshClientCode: String? = "",
var PAN: String?= ""
)

+ 0
- 6
app/src/main/java/com/nivesh/production/bajajfd/model/CityListResponse.kt View File

@ -1,6 +0,0 @@
package com.nivesh.production.bajajfd.model
data class CityListResponse(
val DataObject: List<DataObjectX>,
val response: ResponseXXXXXX
)

+ 0
- 15
app/src/main/java/com/nivesh/production/bajajfd/model/CityRequest.kt View File

@ -1,15 +0,0 @@
package com.nivesh.production.bajajfd.model
data class CityRequest(
var APIName: String? = "",
var APP_Web: String?="",
var ClientCode: String?="",
var HOCode: String?="",
var RMCode: String?="",
var RoleID: Int = 0,
var Source: String? = "",
var StateCode: Int? = 0,
var Subbroker_Code: String? = "",
var Type: String?= "",
var UID: Int = 0
)

+ 0
- 11
app/src/main/java/com/nivesh/production/bajajfd/model/ClientBanklist.kt View File

@ -1,11 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ClientBanklist(
var AccountNumber: String?="",
var AccountType: String?="",
var BankName: String?="",
var BranchName: String?="",
val DefaultBankFlag: String?="",
var IFSCCode: String?="",
var IsValBank: Int? = 0
)

+ 0
- 22
app/src/main/java/com/nivesh/production/bajajfd/model/ClientDetails.kt View File

@ -1,22 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ClientDetails(
val ARNexpiredFlag: Boolean,
val EditProfileMessage: String,
val IsPartiallyFilled: Boolean,
val KYCstatus: String,
val ProfileMessage: String,
val ProfileStatus: String,
val UnifiedMessage: String,
val appliaction1_image_name: String,
val city_of_birth: String,
val clientMasterMFD: ClientMasterMFD,
val country_of_birth: String,
val created_by: String,
val created_date: String,
val email: String,
val mobile: String,
val modified_by: String,
val modified_date: String,
val sub_broker_code: String
)

+ 0
- 40
app/src/main/java/com/nivesh/production/bajajfd/model/ClientMasterMFD.kt View File

@ -1,40 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ClientMasterMFD(
val CLIENT_ACCNO1: String,
val CLIENT_ACCTYPE1: String,
val CLIENT_ADD1: String,
val CLIENT_ADD2: String,
val CLIENT_ADD3: String,
val CLIENT_APPNAME1: String,
val CLIENT_CITY: String,
val CLIENT_CODE: String,
val CLIENT_COMMMODE: String,
val CLIENT_COUNTRY: String,
val CLIENT_DIVPAYMODE: String,
val CLIENT_DOB: String,
val CLIENT_EMAIL: String,
val CLIENT_FATHER_HUSBAND_GUARDIAN: String,
val CLIENT_GENDER: String,
val CLIENT_GUARDIANPAN: String,
val CLIENT_HOLDING: String,
val CLIENT_NEFT_IFSCCODE1: String,
val CLIENT_OCCUPATION_CODE: String,
val CLIENT_PAN: String,
val CLIENT_PINCODE: String,
val CLIENT_STATE: String,
val CLIENT_TAXSTATUS: String,
val CLIENT_TYPE: String,
val CM_MOBILE: String,
val Client_Title: String,
val DEFAULT_BLANK_FLAG1: String,
val Filler1: String,
val Filler2: String,
val Filler3: Any,
val NominationAuthMode: String,
val NominationOptFlag: String,
val Nominee_Title: String,
val Nominees: List<Nominee>,
val ParentName: String,
val ums_id: String
)

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDApplicationRequest.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class CreateFDApplicationRequest(
var ApplicantDetails: ApplicantDetails ? = null,
var ApplicantRelationDetails: ApplicantRelationDetails? = null,
var FDInvestmentDetails: FDInvestmentDetails? = null,
var FdBankDetails: FdBankDetails? = null,
var NomineeDetails: NomineeDetails? = null,
var NomineeGuardianDetails: NomineeGuardianDetails ? = null
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDApplicationResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class CreateFDApplicationResponse(
val Response: ResponseXXXXXXXXXXX
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/CreateFDRequest.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class CreateFDRequest(
var CreateFDApplicationRequest: CreateFDApplicationRequest? = null
)

+ 0
- 17
app/src/main/java/com/nivesh/production/bajajfd/model/DataObject.kt View File

@ -1,17 +0,0 @@
package com.nivesh.production.bajajfd.model
import java.io.Serializable
data class DataObject(
var BSE_State_Code: String? = "",
var CAMS_statecode: String? = "",
var Country_Id: Int? = 0,
var State_Code: String?= "",
var State_Id: Int? = 0,
var State_Name: String? = "",
var signzyCode: String? = ""
): Serializable {
override fun toString(): String {
return State_Name.toString()
}
}

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/DataObjectX.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class DataObjectX(
val city_id: Int,
val city_name: String
) {
override fun toString(): String {
return city_name
}
}

+ 0
- 12
app/src/main/java/com/nivesh/production/bajajfd/model/DeviceInfo.kt View File

@ -1,12 +0,0 @@
package com.nivesh.production.bajajfd.model
data class DeviceInfo(
var app_version: String? = "",
var device_id: String? = "",
var device_model: String? = "",
var device_name: String? ="",
var device_os_version: String? = "",
var device_token: String? = "",
var device_type: String? = "",
var device_id_for_UMSId : String? = ""
)

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/DocumentUpload.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class DocumentUpload(
var Description: String? = null,
var DocumentType: String? = null,
var FDProvider: String? = null,
var ImageEncodeToBase64: String? = null,
var NiveshClientCode: String? = null,
var UniqueId: String? = null
)

+ 0
- 6
app/src/main/java/com/nivesh/production/bajajfd/model/Errors.kt View File

@ -1,6 +0,0 @@
package com.nivesh.production.bajajfd.model
data class Errors(
val ErrorCode: Int,
val ErrorMessage: String
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/FDCreationDetailsResponse.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FDCreationDetailsResponse(
val DocumentUploadFlag: Int,
val UniqueId: String,
val kycFlag: Int
)

+ 0
- 12
app/src/main/java/com/nivesh/production/bajajfd/model/FDDataResponse.kt View File

@ -1,12 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FDDataResponse(
val FDAmount: Double,
val Frequency: String,
val ParameterName: String,
val PaymentUrl: String,
val RateOfInterest: Double,
val Tenure: Int,
val UniqueId: String,
val Value: String
)

+ 0
- 18
app/src/main/java/com/nivesh/production/bajajfd/model/FDInvestmentDetails.kt View File

@ -1,18 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FDInvestmentDetails(
var CKYCNumber: String? = null,
var CitizenType: String? = null,
var CustomerType: String? = null,
var Device: String? = null,
var FDAmount: Double? = 0.0,
var Frequency: String? = null,
var IPAddress: String? = null,
var Interest: Double? = 0.0,
var NiveshClientCode: String? = null,
var Provider: String? = null,
var Source: String? = null,
var Tenure: Int? = 0,
var UniqueId: String? = ""
)

+ 0
- 6
app/src/main/java/com/nivesh/production/bajajfd/model/FDStepsCountRequest.kt View File

@ -1,6 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FDStepsCountRequest(
var FDProvider: String? = "",
var NiveshClientCode: String? = ""
)

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/FdBankDetails.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FdBankDetails(
var AccountNumber: String?= null,
var AccountType: String?= null,
var BankBranch: String?= null,
var BankName: String?= null,
var IFSCCode: String?= null,
var PaymentMode: String?= null
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/FinaliseFD.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FinaliseFD(
var FDProvider: String? = "",
var NiveshClientCode: String? = "",
var UniqueId: String? = ""
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/FinalizeFDRequest.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FinalizeFDRequest(
var FinaliseFD: FinaliseFD? = null
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/FinalizeFDResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FinalizeFDResponse(
val Response: ResponseXXXXXXXXXXXXXXXX
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/FinalizeKYCRequest.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class FinalizeKYCRequest(
var FDProvider: String? = "",
var NiveshClientCode: String? = "",
var UniqueId: String? = ""
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/GetCalculateMaturityAmountResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetCalculateMaturityAmountResponse(
val Response: ResponseXX
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/GetCodeRequest.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetCodeRequest(
var Category: String ? = null,
var InputValue: String? = null,
var Language: String ? = null,
var ProductName: String? = null
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/GetCodeResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetCodeResponse(
val Response: ResponseX
)

+ 0
- 11
app/src/main/java/com/nivesh/production/bajajfd/model/GetCodes.kt View File

@ -1,11 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetCodes(
val Label: String,
var Value: String,
var isSelected : Boolean
) {
override fun toString(): String {
return Label
}
}

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/GetFDBankListResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetFDBankListResponse(
val Response: ResponseXXXXXXXX
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/GetFDDetailsRequest.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetFDDetailsRequest(
var FDProvider: String? = "",
var NiveshClientCode: String? = "",
var UniqueId: String? = ""
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/GetFDDetailsResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetFDDetailsResponse(
val Response: ResponseXXXXXXXXXXXX
)

+ 0
- 6
app/src/main/java/com/nivesh/production/bajajfd/model/GetIFSCCodeListResponse.kt View File

@ -1,6 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetIFSCCodeListResponse(
val IFSCCodes: MutableList<String>,
val Response: ResponseXXXXXXXXXX
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/GetIFSCCodeResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetIFSCCodeResponse(
val IFSCCODEServiceResult: List<IFSCCODEServiceResult>
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/GetMaturityAmountRequest.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class GetMaturityAmountRequest(
var FDAmount: Int? = 0,
var FDProvider: String? = "",
var Frequency: String? = "",
var Interest: Double? = 0.0,
var Tenure: Int? = 0
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/GetRatesRequest.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
import com.google.gson.annotations.SerializedName
data class GetRatesRequest(
@SerializedName("FDProvider") var fdProvider: String? = null,
@SerializedName("Frequency") var frequency: String? = null,
@SerializedName("Type") var type: String? = null
)

+ 0
- 3
app/src/main/java/com/nivesh/production/bajajfd/model/GetRatesResponse.kt View File

@ -1,3 +0,0 @@
data class GetRatesResponse(
val Response: Response
)

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/IFSCCODEServiceResult.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class IFSCCODEServiceResult(
val BankBranch: String,
val BnkDescr: String,
val BnkShrtDescr: String,
val Code: String,
val IfscCode: String,
val intCustbnk_pk: String
)

+ 0
- 12
app/src/main/java/com/nivesh/production/bajajfd/model/Nominee.kt View File

@ -1,12 +0,0 @@
package com.nivesh.production.bajajfd.model
data class Nominee(
val NomineeApplicablePercent: Double,
val NomineeDOB: String,
val NomineeGuardian: String,
val NomineeGuardianPAN: String,
val NomineeMinorFlag: String,
val NomineeName: String,
val NomineePAN: String,
val NomineeRelationship: String
)

+ 0
- 18
app/src/main/java/com/nivesh/production/bajajfd/model/NomineeDetails.kt View File

@ -1,18 +0,0 @@
package com.nivesh.production.bajajfd.model
data class NomineeDetails(
var NomineeAddress1: String?= null,
var NomineeAddress2: String?= null,
var NomineeAddress3: String?= null,
var NomineeCity: String?= null,
var NomineeCountry: String?= null,
var NomineeDOB: String?= null,
var NomineeFirstName: String?= null,
var NomineeGender: String?= null,
var NomineeLastName: String?= null,
var NomineeMiddleName: String?= null,
var NomineePincode: Int?= 0,
var NomineeRelation: String?= null,
var NomineeSalutation: String?= null,
var NomineeState: String?= null
)

+ 0
- 14
app/src/main/java/com/nivesh/production/bajajfd/model/NomineeGuardianDetails.kt View File

@ -1,14 +0,0 @@
package com.nivesh.production.bajajfd.model
data class NomineeGuardianDetails(
var GuardianAddress1: String?= null,
var GuardianAddress2: String?= null,
var GuardianAddress3: String?= null,
var GuardianAge: Int?= 0,
var GuardianCity: String?= null,
var GuardianCountry: String?= null,
var GuardianName: String?= null,
var GuardianPincode: Int?= 0,
var GuardianSalutation: String?= null,
var GuardianState: String?= null
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/ObjectResponse.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ObjectResponse(
val TransactionCount: Int,
val clientDetails: ClientDetails,
val languageid: Int,
val membersList: List<Any>,
val ClientBanklist : List<ClientBanklist>
)

+ 0
- 14
app/src/main/java/com/nivesh/production/bajajfd/model/PanCheckRequest.kt View File

@ -1,14 +0,0 @@
package com.nivesh.production.bajajfd.model
import com.google.gson.annotations.SerializedName
data class PanCheckRequest(
@SerializedName("client_code")
var clientCode: String? = null,
@SerializedName("sub_broker_code")
var subBrokerCode: String? = null,
@SerializedName("pan_number")
var panNumber: String? = null,
@SerializedName("mobile_number")
var mobileNumber: String? = null
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/PanCheckResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class PanCheckResponse(
val response: ResponseXXX
)

+ 0
- 6
app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryRequest.kt View File

@ -1,6 +0,0 @@
package com.nivesh.production.bajajfd.model
data class PaymentReQueryRequest(
var NiveshClientCode: String? = "",
var UniqueId: String? = ""
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/PaymentReQueryResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class PaymentReQueryResponse(
val Response: ResponseXXXXXXXXXXXXXXX
)

+ 0
- 11
app/src/main/java/com/nivesh/production/bajajfd/model/ROIDataList.kt View File

@ -1,11 +0,0 @@
data class ROIDataList(
val Frequency: String,
val Provider: String,
val ROI: Double,
val Tenure: String,
val Type: String
) {
override fun toString(): String {
return Tenure.plus(" Months ").plus(" | ").plus(ROI).plus("%")
}
}

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/Response.kt View File

@ -1,9 +0,0 @@
import com.nivesh.production.bajajfd.model.Errors
data class Response(
val Errors: List<Errors>,
val Message: String,
var ROIDatalist: MutableList<ROIDataList>,
val Status: String,
val StatusCode: Int
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseX.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseX(
val Errors: List<Errors>,
val GetCodesList: MutableList<GetCodes>,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXX.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXX(
val Errors: List<Errors>,
val MaturityAmount: Double,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXX.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXX(
val message: String,
val status: String,
val status_code: Int
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXX.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXX(
val Errors: List<Errors>,
val Message: String,
val Status: String,
val StatusCode: Int,
val StepsCount: Int
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXX.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXX(
val message: String,
val status: String,
val status_code: Int
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXX.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXX(
val message: String,
val status: String,
val status_code: Int
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXX.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXX(
val message: String,
val status: String,
val status_code: Int
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXX.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXX(
val BankList: List<Bank>,
val Errors: List<Errors>,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXX.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXX(
val message: String,
val status: String,
val status_code: Int
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXX.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXXX(
val message: String,
val status: String,
val status_code: Int
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXX.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXXXX(
val Errors: List<Errors>,
val FDCreationDetailsResponse: FDCreationDetailsResponse,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 0
- 11
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXX.kt View File

@ -1,11 +0,0 @@
package com.nivesh.production.bajajfd.model
import com.nivesh.production.bajajfd.util.Resource
data class ResponseXXXXXXXXXXXX(
val Errors: List<Errors>,
val FDDataResponse: FDDataResponse,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXX.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXXXXXX(
val Errors: List<Errors>,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 0
- 7
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXX.kt View File

@ -1,7 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXXXXXXX(
val message: String,
val status: String,
val status_code: Int
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXXX.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXXXXXXXX(
val Errors: List<Errors>,
val Message: String,
val Status: String,
val StatusCode: Int
)

+ 0
- 9
app/src/main/java/com/nivesh/production/bajajfd/model/ResponseXXXXXXXXXXXXXXXX.kt View File

@ -1,9 +0,0 @@
package com.nivesh.production.bajajfd.model
data class ResponseXXXXXXXXXXXXXXXX(
val Errors: List<Errors>,
val Message: String,
val Status: String,
val StatusCode: Int,
val UniqueId: String
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/SaveFDOtherDataRequest.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class SaveFDOtherDataRequest(
var FDProvider: String?= "",
var NiveshClientCode: String? = "",
var UniqueId: String? = "",
var Values: String? = ""
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/SaveFDOtherDataResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class SaveFDOtherDataResponse(
val Response: ResponseXXXXXXXXXXXXX
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/StateListResponse.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class StateListResponse(
val DataObject: List<DataObject>,
val Message: Any,
val ObjectResponse: Any,
val response: ResponseXXXXX
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/StepsCountResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class StepsCountResponse(
val Response: ResponseXXXX
)

+ 0
- 5
app/src/main/java/com/nivesh/production/bajajfd/model/UploadResponse.kt View File

@ -1,5 +0,0 @@
package com.nivesh.production.bajajfd.model
data class UploadResponse(
val Response: ResponseXXXXXXXXXXXX
)

+ 0
- 10
app/src/main/java/com/nivesh/production/bajajfd/model/UserRequest.kt View File

@ -1,10 +0,0 @@
package com.nivesh.production.bajajfd.model
data class UserRequest(
var AppOrWeb: String? = "",
var IPAddress: String? = "",
var LoggedInRoleId: Int = 0,
var Source: String? = "",
var UID: Int? = 0,
var deviceInfo: DeviceInfo? = null
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/getClientDetailsRequest.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class getClientDetailsRequest(
var AppOrWeb: String? = "",
var UserRequest: UserRequest? = null,
var client_code: String? = "",
var sub_broker_code: String? = ""
)

+ 0
- 8
app/src/main/java/com/nivesh/production/bajajfd/model/getClientDetailsResponse.kt View File

@ -1,8 +0,0 @@
package com.nivesh.production.bajajfd.model
data class getClientDetailsResponse(
// val DataObject: Any ?,
// val Message: Any,
val ObjectResponse: ObjectResponse? = null,
val response: ResponseXXXXXXX? = null
)

+ 0
- 110
app/src/main/java/com/nivesh/production/bajajfd/repositories/MainRepository.kt View File

@ -1,110 +0,0 @@
package com.nivesh.production.bajajfd.repositories
import com.nivesh.production.bajajfd.interfaces.ApiInterface
import com.nivesh.production.bajajfd.model.*
class MainRepository constructor(private val apiInterface: ApiInterface) {
// MainActivity
suspend fun getStepsCountResponse(requestBody: FDStepsCountRequest, token: String) =
apiInterface.getFDStepsCount(requestBody, token)
suspend fun getClientDetailsResponse(getClientDetails: getClientDetailsRequest, token: String) =
apiInterface.getClientDetails(getClientDetails, token)
// Step One
suspend fun getRatesResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
suspend fun getCodesResponse(requestBody: GetCodeRequest, token: String) =
apiInterface.getCodes(requestBody, token)
suspend fun createCalculateFDMaturityAmount(
requestBody: GetMaturityAmountRequest,
token: String
) =
apiInterface.getCalculateFDMaturityAmount(requestBody, token)
// Step Two
suspend fun createFDKYCResponse(createFDRequest: CreateFDRequest, token: String) =
apiInterface.createFDApp(createFDRequest, token)
suspend fun panCheck(panCheck: PanCheckRequest, token: String) =
apiInterface.panCheckApi(panCheck, token)
suspend fun titleCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.titleApi(getCodeRequest, token)
suspend fun genderCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.genderApi(getCodeRequest, token)
suspend fun annualIncomeCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.annualIncomeApi(getCodeRequest, token)
suspend fun relationShipCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.relationShipApi(getCodeRequest, token)
suspend fun maritalStatusCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.maritalStatusApi(getCodeRequest, token)
suspend fun occupationCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.occupationApi(getCodeRequest, token)
suspend fun stateCheck(token: String) =
apiInterface.stateApi(token)
suspend fun cityCheck(cityRequest: CityRequest, token: String) =
apiInterface.cityApi(cityRequest, token)
suspend fun bankListCheck(token: String, language: String) =
apiInterface.bankListApi(token, language)
suspend fun ifscCodeCheck(str: String) =
apiInterface.getIFSCApi(str)
suspend fun ifscCodeBankDetailsCheck(str: String, token: String) =
apiInterface.getIFSCBankDetailsApi(str, token)
suspend fun payModeCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.payModeApi(getCodeRequest, token)
suspend fun bankValidationApiRequest(bankValidationApiRequest: BankValidationApiRequest, token: String) =
apiInterface.bankValidationApi(bankValidationApiRequest, token)
// Step Three
suspend fun documentsUploadResponse(getRatesRequest: DocumentUpload, token: String) =
apiInterface.documentsUpload(getRatesRequest, token)
suspend fun saveFDOtherDataResponse(getRatesRequest: SaveFDOtherDataRequest, token: String) =
apiInterface.saveFDOtherData(getRatesRequest, token)
suspend fun getFDDetailsResponse(getRatesRequest: GetFDDetailsRequest, token: String) =
apiInterface.getFDDetails(getRatesRequest, token)
suspend fun updateFDPaymentStatusResponse(getRatesRequest: GetRatesRequest, token: String) =
apiInterface.getRates(getRatesRequest, token)
// Step 4
suspend fun customerListCheck(getCodeRequest: GetCodeRequest, token: String) =
apiInterface.customerListApi(getCodeRequest, token)
suspend fun checkFDKYCRequest(checkFDKYCRequest: CheckFDKYCRequest, token: String) =
apiInterface.checkFDKYC(checkFDKYCRequest, token)
// Step 5
suspend fun finaliseFDResponse(getRatesRequest: FinalizeFDRequest, token: String) =
apiInterface.finaliseFD(getRatesRequest, token)
suspend fun finaliseKYCResponse(getRatesRequest: FinalizeKYCRequest, token: String) =
apiInterface.finaliseKYC(getRatesRequest, token)
suspend fun paymentReQueryResponse(getRatesRequest: PaymentReQueryRequest, token: String) =
apiInterface.paymentReQuery(getRatesRequest, token)
}

+ 0
- 489
app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt View File

@ -1,489 +0,0 @@
package com.nivesh.production.bajajfd.ui.activity
import android.annotation.SuppressLint
import android.app.Dialog
import android.graphics.Bitmap
import android.graphics.drawable.Drawable
import android.os.Bundle
import android.util.Log
import android.view.View
import android.view.WindowManager
import android.webkit.WebView
import android.webkit.WebViewClient
import android.widget.TextView
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider
import androidx.viewpager.widget.ViewPager
import com.google.gson.Gson
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.DisableAdapter
import com.nivesh.production.bajajfd.adapter.SectionsPagerAdapter
import com.nivesh.production.bajajfd.api.ApiClient
import com.nivesh.production.bajajfd.databinding.ActivityBajajFdBinding
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.repositories.MainRepository
import com.nivesh.production.bajajfd.ui.fragment.*
import com.nivesh.production.bajajfd.ui.providerfactory.*
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.defaultShape
import com.nivesh.production.bajajfd.util.Common.Companion.getDate
import com.nivesh.production.bajajfd.util.Common.Companion.selectedShape
import com.nivesh.production.bajajfd.util.Common.Companion.showDialogValidation
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.ProgressUtil
import com.nivesh.production.bajajfd.util.ProgressUtil.hideLoading
import com.nivesh.production.bajajfd.util.ProgressUtil.showLoading
import com.nivesh.production.bajajfd.util.Resource
import com.nivesh.production.bajajfd.viewModel.*
class BajajFdMainActivity : BaseActivity() {
lateinit var binding: ActivityBajajFdBinding
lateinit var viewModel: BajajFDViewModel
private val stepOneBajajFDFragment = StepOneBajajFDFragment()
private val stepTwoBajajFDFragment = StepTwoBajajFDFragment()
private val stepThreeBajajFDFragment = StepThreeBajajFDFragment()
private val stepFourBajajFDFragment = StepFourBajajFDFragment()
private val stepFiveBajajFDFragment = StepFiveBajajFDFragment()
var createFDRequest: CreateFDRequest = CreateFDRequest()
var createFDApplicantRequest: CreateFDApplicationRequest = CreateFDApplicationRequest()
var applicantDetails: ApplicantDetails = ApplicantDetails()
var fdInvestmentDetails: FDInvestmentDetails = FDInvestmentDetails()
var applicantRelationDetails: ApplicantRelationDetails = ApplicantRelationDetails()
var fdBankDetails: FdBankDetails = FdBankDetails()
var nomineeDetails: NomineeDetails = NomineeDetails()
var nomineeGuardianDetails: NomineeGuardianDetails = NomineeGuardianDetails()
var getClientDetailsResponse: getClientDetailsResponse = getClientDetailsResponse()
var uniqueId: String = ""
var stepCount: Int = 0
private lateinit var sectionsPagerAdapter: SectionsPagerAdapter
private lateinit var fragments: Array<Fragment>
var dialogWebView: Dialog? = null
var loginRole: Int = 0
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
init()
}
private fun init() {
//start Repository
viewModel = ViewModelProvider(
this@BajajFdMainActivity,
FDModelProviderFactory(MainRepository(ApiClient.getApiClient))
)[BajajFDViewModel::class.java]
binding = ActivityBajajFdBinding.inflate(layoutInflater)
binding.apply {
setContentView(this.root)
}
loginRole = 5
if (Common.isNetworkAvailable(this)) {
getStepsCountApi()
}
binding.imgBack.setOnClickListener {
finish()
}
}
private fun getStepsCountApi() {
if (Common.isNetworkAvailable(this)) {
val fdStepsCount = FDStepsCountRequest()
fdStepsCount.FDProvider = getString(R.string.bajaj)
fdStepsCount.NiveshClientCode = "8872" // 60476
viewModel.getStepsCount(fdStepsCount, token, this)
viewModel.getStepsCountMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->${response.data.toString()}")
val stepsCountResponse: StepsCountResponse =
Gson().fromJson(
response.data?.toString(),
StepsCountResponse::class.java
)
stepsCountResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
stepCount = stepsCountResponse.Response.StepsCount
if (stepCount == 3) {
binding.llStep4.visibility = View.GONE
}
getClientDetailsApi(stepsCountResponse.Response.StepsCount)
}
650 -> ""
else -> {
showDialogValidation(
this@BajajFdMainActivity,
stepsCountResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(this@BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
is Resource.DataError -> {
}
}
}
}
}
private fun getClientDetailsApi(stepsCount: Int) {
if (Common.isNetworkAvailable(this@BajajFdMainActivity)) {
val getClientDetailsRequest = getClientDetailsRequest()
getClientDetailsRequest.client_code = "8872"
getClientDetailsRequest.AppOrWeb = getString(R.string.app)
getClientDetailsRequest.sub_broker_code = "1038"
val userRequest = UserRequest()
userRequest.UID = 0
userRequest.IPAddress = ""
userRequest.Source = getString(R.string.source)
userRequest.AppOrWeb = getString(R.string.app)
userRequest.LoggedInRoleId = loginRole
val deviceInfo = DeviceInfo()
deviceInfo.device_id = ""
deviceInfo.device_id_for_UMSId = ""
deviceInfo.device_type = getString(R.string.app)
deviceInfo.device_model = ""
deviceInfo.device_token = ""
deviceInfo.device_name = ""
deviceInfo.app_version = ""
deviceInfo.device_os_version = ""
userRequest.deviceInfo = deviceInfo
getClientDetailsRequest.UserRequest = userRequest
Log.e("getClientDetail ", " Request -->" + Gson().toJson(getClientDetailsRequest))
showLoading(this@BajajFdMainActivity)
viewModel.getClientDetails(getClientDetailsRequest, token, this)
viewModel.getClientDetailsMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("getClientDetail ", " response -->${response.data.toString()}")
getClientDetailsResponse =
Gson().fromJson(
response.data?.toString(),
getClientDetailsResponse::class.java
)
getClientDetailsResponse.response?.status_code.let { code ->
when (code) {
200 -> {
setViewPager(stepsCount)
checkFDCKYCApi()
}
// 650 -> refreshToken()
else -> {
showDialogValidation(this@BajajFdMainActivity, response.message)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(this@BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
hideLoading()
}
is Resource.DataError -> {
}
}
}
}
}
private fun setViewPager(stepsCount: Int) {
// steps setting
setBackground(selectedShape(), defaultShape(), defaultShape(), defaultShape(), stepsCount)
if (stepCount == 3) {
fragments = arrayOf(
stepOneBajajFDFragment,
stepTwoBajajFDFragment,
stepFourBajajFDFragment,
stepFiveBajajFDFragment
)
} else if (stepCount == 4) {
fragments = arrayOf(
stepOneBajajFDFragment,
stepTwoBajajFDFragment,
stepThreeBajajFDFragment,
stepFourBajajFDFragment,
stepFiveBajajFDFragment
)
}
// set viewPager
sectionsPagerAdapter = SectionsPagerAdapter(supportFragmentManager, fragments)
val viewPager: DisableAdapter = binding.viewPager
viewPager.adapter = sectionsPagerAdapter
viewPager.setPagingEnabled(false)
if (sectionsPagerAdapter.count > 1) {
viewPager.offscreenPageLimit = stepCount
} else {
viewPager.offscreenPageLimit = 1
}
viewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
override fun onPageScrolled(
position: Int,
positionOffset: Float,
positionOffsetPixels: Int
) {
}
override fun onPageSelected(position: Int) {
when (position) {
0 -> {
setBackground(
defaultShape(),
defaultShape(),
defaultShape(),
defaultShape(),
stepsCount
)
}
1 -> {
setBackground(
selectedShape(),
defaultShape(),
defaultShape(),
defaultShape(),
stepsCount
)
}
2 -> {
setBackground(
selectedShape(),
selectedShape(),
defaultShape(),
defaultShape(),
stepsCount
)
}
3 -> {
setBackground(
selectedShape(),
selectedShape(),
selectedShape(),
defaultShape(),
stepsCount
)
}
4 -> {
setBackground(
selectedShape(),
selectedShape(),
selectedShape(),
selectedShape(),
stepsCount
)
}
}
}
override fun onPageScrollStateChanged(state: Int) {
}
})
}
private fun checkFDCKYCApi() {
if (Common.isNetworkAvailable(this@BajajFdMainActivity)) {
if (getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CM_MOBILE?.isNotEmpty()!! && getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_DOB?.isNotEmpty()!! && getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_PAN?.isNotEmpty()!! && getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE?.isNotEmpty()!!) {
val checkFDKYCRequest = CheckFDKYCRequest()
checkFDKYCRequest.Mobile =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CM_MOBILE
checkFDKYCRequest.DOB =
getDate(getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_DOB!!)
checkFDKYCRequest.PAN =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_PAN
checkFDKYCRequest.NiveshClientCode =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE.toString()
viewModel.checkFDKYC(checkFDKYCRequest, token, this)
viewModel.getFDKYCMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("response", "-->${response.data.toString()}")
val getCodeResponse: GetCodeResponse =
Gson().fromJson(
response.data?.toString(),
GetCodeResponse::class.java
)
getCodeResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
fdInvestmentDetails.CustomerType = ""
}
// 650 -> refreshToken()
else -> {
showDialogValidation(
this@BajajFdMainActivity,
getCodeResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(this@BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
is Resource.DataError -> {
}
}
}
}
}
}
// set background for selected/ default step
private fun setBackground(
drawable: Drawable?,
drawable1: Drawable?,
drawable2: Drawable?,
drawable3: Drawable?,
stepsCount: Int
) {
binding.stepOne.background = drawable
binding.stepTwo.background = drawable1
binding.stepThree.background = drawable2
if (stepsCount == 4) {
binding.stepFour.background = drawable3
}
}
// step 1 response
fun stepOneApi() {
binding.viewPager.currentItem = 1
}
// step 2 response
fun stepTwoApi() {
binding.viewPager.currentItem = 2
if (stepCount == 3) {
stepFourBajajFDFragment.displayReceivedData()
}
}
// step 3 response
fun stepThreeApi() {
binding.viewPager.currentItem = 3
stepFourBajajFDFragment.displayReceivedData()
}
// step 4 response
fun stepFourApi(payUrl: String, value: String) {
paymentDialog(payUrl, value)
}
@SuppressLint("SetJavaScriptEnabled")
fun paymentDialog(payUrl: String, value: String) {
Log.e("payUrl", "-->$payUrl")
Log.e("value", "-->$value")
dialogWebView = Dialog(this@BajajFdMainActivity)
dialogWebView!!.setContentView(R.layout.row_fd_pay)
dialogWebView!!.setCancelable(true)
val tvCancel = dialogWebView!!.findViewById<TextView>(R.id.tvCancel)
tvCancel.setOnClickListener {
dialogWebView!!.dismiss()
}
val lp = WindowManager.LayoutParams()
lp.copyFrom(dialogWebView!!.window?.attributes)
lp.width = WindowManager.LayoutParams.MATCH_PARENT
lp.height = WindowManager.LayoutParams.MATCH_PARENT
dialogWebView!!.window?.attributes = lp
val wVPay = dialogWebView!!.findViewById<WebView>(R.id.wVPay)
wVPay.settings.javaScriptEnabled = true
wVPay.settings.domStorageEnabled = true
wVPay.loadData(
"<form name=\"frm\" action=\"$payUrl\" method=\"post\"> \n" + " <input type=\"hidden\" name=\"msg\" value=\"$value\"> \n" + " </form> \n" +
"<script type=\"text/javascript\"> \n" + "document.forms[\"frm\"].submit(); \n" + "</script>",
"text/html",
"UTF-8"
)
wVPay.webViewClient = object : WebViewClient() {
override fun onPageStarted(view: WebView, url: String, favicon: Bitmap?) {
super.onPageStarted(view, url, favicon)
Log.e("onPageStarted", "-->$url")
if (url.isNotEmpty() && url.contains("https://uat.nivesh.com/bajajFD/OrderStatus")) {
if (dialogWebView != null && dialogWebView!!.isShowing) {
dialogWebView!!.dismiss()
paymentReQueryApi()
}
}
}
}
dialogWebView!!.show()
}
fun paymentReQueryApi() {
if (Common.isNetworkAvailable(this)) {
val paymentReQueryRequest = PaymentReQueryRequest()
paymentReQueryRequest.UniqueId = uniqueId
paymentReQueryRequest.NiveshClientCode =
getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
ProgressUtil.showLoading(this@BajajFdMainActivity)
viewModel.getPaymentReQuery(paymentReQueryRequest, token, this)
viewModel.getPaymentReQueryMutableData.observe(this) { response ->
when (response) {
is Resource.Success -> {
Log.e("paymentReQueryApi ", "response -->$response")
val paymentReQueryResponse: PaymentReQueryResponse =
Gson().fromJson(
response.data?.toString(),
PaymentReQueryResponse::class.java
)
paymentReQueryResponse.Response.StatusCode.let { code ->
when (code) {
650 -> ""
else -> {
if (stepCount == 4) {
binding.viewPager.currentItem = 4
} else {
binding.viewPager.currentItem = 3
}
stepFiveBajajFDFragment.getData(paymentReQueryResponse)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(this@BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
hideLoading()
}
is Resource.DataError -> {
}
}
}
}
}
}

+ 0
- 173
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFiveBajajFDFragment.kt View File

@ -1,173 +0,0 @@
package com.nivesh.production.bajajfd.ui.fragment
import android.os.Bundle
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.ContextCompat
import androidx.fragment.app.Fragment
import com.google.gson.Gson
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFiveBinding
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Constants
import com.nivesh.production.bajajfd.util.Resource
class StepFiveBajajFDFragment : Fragment() {
private var _binding: FragmentBajajfdStepFiveBinding? = null
private val binding get() = _binding!!
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View {
_binding = FragmentBajajfdStepFiveBinding.inflate(inflater, container, false)
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
binding.tvCongrats.text = ""
binding.tvSuccessMessage.text = ""
binding.btnViewOrder.setOnClickListener {
}
}
fun getData(paymentReQueryResponse: PaymentReQueryResponse) {
if (paymentReQueryResponse.Response.StatusCode == 200) {
if (paymentReQueryResponse.Response.Message.isNotEmpty()) {
val arrOfStr: List<String> = paymentReQueryResponse.Response.Message.split(" ", limit = 2)
binding.tvCongrats.text = arrOfStr[0]
binding.tvCongrats.setTextColor(
ContextCompat.getColor(
activity as BajajFdMainActivity,
R.color.green
)
)
binding.tvSuccessMessage.text = arrOfStr[1]
}
}else{
if (paymentReQueryResponse.Response.Message.isNotEmpty()) {
val arrOfStr: List<String> = paymentReQueryResponse.Response.Message.split(" ", limit = 2)
binding.tvCongrats.text = arrOfStr[0]
binding.tvCongrats.setTextColor(
ContextCompat.getColor(
activity as BajajFdMainActivity,
R.color.red
)
)
binding.tvSuccessMessage.text = arrOfStr[1]
}
}
finalizeFDApi()
finalizeKYCApi()
}
private fun finalizeFDApi() {
val finalizeFDRequest = FinalizeFDRequest()
val finaliseFD = FinaliseFD()
finaliseFD.FDProvider = getString(R.string.bajaj)
finaliseFD.NiveshClientCode = (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
finaliseFD.UniqueId = (activity as BajajFdMainActivity).uniqueId
finalizeFDRequest.FinaliseFD = finaliseFD
(activity as BajajFdMainActivity).viewModel.finaliseFD(
finalizeFDRequest, Constants.token, activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getFinalizeFDMutableData.observe(viewLifecycleOwner){ response ->
when (response) {
is Resource.Success -> {
Log.e("finalizeKYC ", " response-->${response.data.toString()}")
val finalizeFDResponse: FinalizeFDResponse =
Gson().fromJson(response.data?.toString(), FinalizeFDResponse::class.java)
finalizeFDResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
}
650 -> ""
else -> {
Common.showDialogValidation(
activity as BajajFdMainActivity,
finalizeFDResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
Common.showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
is Resource.DataError -> {
}
}
}
}
private fun finalizeKYCApi() {
val finalizeKYCRequest = FinalizeKYCRequest()
finalizeKYCRequest.FDProvider = getString(R.string.bajaj)
finalizeKYCRequest.NiveshClientCode = (activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
finalizeKYCRequest.UniqueId = (activity as BajajFdMainActivity).uniqueId
(activity as BajajFdMainActivity).viewModel.finaliseKYC(
finalizeKYCRequest, Constants.token, activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getFinalizeKYCMutableData.observe(viewLifecycleOwner){ response ->
when (response) {
is Resource.Success -> {
Log.e("finalizeKYC ", " response-->${response.data.toString()}")
val finalizeFDResponse: FinalizeFDResponse =
Gson().fromJson(response.data?.toString(), FinalizeFDResponse::class.java)
finalizeFDResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
}
650 -> ""
else -> {
Common.showDialogValidation(
activity as BajajFdMainActivity,
finalizeFDResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
Common.showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
is Resource.DataError -> {
}
}
}
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
}

+ 0
- 303
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepFourBajajFDFragment.kt View File

@ -1,303 +0,0 @@
package com.nivesh.production.bajajfd.ui.fragment
import android.os.Bundle
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.res.ResourcesCompat
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.gson.Gson
import com.nivesh.production.bajajfd.R
import com.nivesh.production.bajajfd.adapter.CustomerListAdapter
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFourBinding
import com.nivesh.production.bajajfd.model.*
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity
import com.nivesh.production.bajajfd.util.Common
import com.nivesh.production.bajajfd.util.Common.Companion.showDialogValidation
import com.nivesh.production.bajajfd.util.Constants.Companion.token
import com.nivesh.production.bajajfd.util.ProgressUtil
import com.nivesh.production.bajajfd.util.Resource
class StepFourBajajFDFragment : Fragment() {
private var _binding: FragmentBajajfdStepFourBinding? = null
private val binding get() = _binding!!
private lateinit var listOfCustomer: MutableList<GetCodes>
private var selectedList: String = ""
private var payUrl: String = ""
private var value: String = ""
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View {
_binding = FragmentBajajfdStepFourBinding.inflate(inflater, container, false)
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
if ((activity as BajajFdMainActivity).loginRole == 5) {
binding.btnNext.text = getString(R.string.pay)
binding.btnNext.setBackgroundColor(
ResourcesCompat.getColor(
resources,
R.color.green,
null
)
)
} else {
binding.btnNext.text = getString(R.string.viewOrder)
binding.btnNext.setBackgroundColor(
ResourcesCompat.getColor(
resources,
R.color.red,
null
)
)
}
binding.btnNext.setOnClickListener {
selectedList = ""
for (getCodes in listOfCustomer) {
if (getCodes.isSelected) {
selectedList = if (selectedList.isEmpty()) {
getCodes.Value
} else {
selectedList.plus(",").plus(getCodes.Value)
}
}
}
if (validated()) {
if ((activity as BajajFdMainActivity).loginRole == 5) {
val saveFDOtherDataRequest = SaveFDOtherDataRequest()
saveFDOtherDataRequest.FDProvider = getString(R.string.bajaj)
saveFDOtherDataRequest.UniqueId = (activity as BajajFdMainActivity).uniqueId
saveFDOtherDataRequest.Values = selectedList
saveFDOtherDataRequest.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
saveFDOtherData(saveFDOtherDataRequest, payUrl, value)
} else {
// go to view order
}
}
}
binding.btnBack.setOnClickListener {
if ((activity as BajajFdMainActivity).stepCount == 4) {
(activity as BajajFdMainActivity).binding.viewPager.currentItem = 2
} else {
(activity as BajajFdMainActivity).binding.viewPager.currentItem = 1
}
}
}
private fun validated(): Boolean {
if (selectedList.isEmpty()) {
showDialogValidation(
activity as BajajFdMainActivity,
getString(R.string.validTermsCondition)
)
return false
} else if (!binding.checkBox.isChecked) {
showDialogValidation(
activity as BajajFdMainActivity,
resources.getString(R.string.validTermsConditions)
)
return false
} else {
return true
}
}
private fun saveFDOtherData(data: SaveFDOtherDataRequest, payUrl: String, value: String) {
ProgressUtil.showLoading(activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.saveFDOtherData(
data,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getFDOtherMutableData.observe(viewLifecycleOwner) { response ->
when (response) {
is Resource.Success -> {
Log.e("saveFDOtherData", " response -->${response.data.toString()}")
val saveFDOtherDataResponse: SaveFDOtherDataResponse =
Gson().fromJson(
response.data?.toString(),
SaveFDOtherDataResponse::class.java
)
saveFDOtherDataResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
(activity as BajajFdMainActivity).stepFourApi(payUrl, value)
}
// 650 -> refreshToken()
else -> {
showDialogValidation(
activity as BajajFdMainActivity,
saveFDOtherDataResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
ProgressUtil.hideLoading()
}
is Resource.DataError -> {
}
}
}
}
fun displayReceivedData() {
getFDDetailsApi()
customerListApi()
}
private fun customerListApi() {
val getCodeRequest = GetCodeRequest()
getCodeRequest.ProductName = getString(R.string.bajajFD)
getCodeRequest.Category = getString(R.string.customerCategory)
getCodeRequest.Language = getString(R.string.language)
getCodeRequest.InputValue = ""
(activity as BajajFdMainActivity).viewModel.customerListApi(
getCodeRequest,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.customerListMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) {
is Resource.Success -> {
Log.e("customerListApi", " response -->${response.data.toString()}")
val getCodeResponse: GetCodeResponse =
Gson().fromJson(response.data?.toString(), GetCodeResponse::class.java)
getCodeResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
if (getCodeResponse.Response.GetCodesList.isNotEmpty()) {
listOfCustomer = getCodeResponse.Response.GetCodesList
setUpRecyclerView(listOfCustomer)
}
}
// 650 -> refreshToken()
else -> {
showDialogValidation(
activity as BajajFdMainActivity,
getCodeResponse.Response.Message
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
}
is Resource.DataError -> {
}
}
}
}
private fun setUpRecyclerView(getCustomerList: MutableList<GetCodes>) {
binding.rvTerms.layoutManager =
LinearLayoutManager(activity as BajajFdMainActivity)
val customerListAdapter = CustomerListAdapter(getCustomerList)
binding.rvTerms.adapter = customerListAdapter
}
private fun getFDDetailsApi() {
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) {
val getFDDetailsRequest = GetFDDetailsRequest()
getFDDetailsRequest.FDProvider = getString(R.string.bajaj)
getFDDetailsRequest.NiveshClientCode =
(activity as BajajFdMainActivity).getClientDetailsResponse.ObjectResponse?.clientDetails?.clientMasterMFD?.CLIENT_CODE
getFDDetailsRequest.UniqueId = (activity as BajajFdMainActivity).uniqueId
ProgressUtil.showLoading(activity as BajajFdMainActivity)
(activity as BajajFdMainActivity).viewModel.getFDDetails(
getFDDetailsRequest,
token,
activity as BajajFdMainActivity
)
(activity as BajajFdMainActivity).viewModel.getFDDetailsMutableData.observe(
viewLifecycleOwner
) { response ->
when (response) {
is Resource.Success -> {
Log.e("getFDDetailsApi", " response -->${response.data.toString()}")
val getFDDetailsResponse: GetFDDetailsResponse =
Gson().fromJson(
response.data?.toString(),
GetFDDetailsResponse::class.java
)
getFDDetailsResponse.Response.StatusCode.let { code ->
when (code) {
200 -> {
binding.tvInvestedAmount.text =
getString(R.string.rs).plus(getFDDetailsResponse.Response.FDDataResponse.FDAmount.toString())
binding.tvTenure.text =
getFDDetailsResponse.Response.FDDataResponse.Tenure.toString()
.plus(" Months")
binding.tvInterestPayout.text =
getFDDetailsResponse.Response.FDDataResponse.Frequency
binding.tvRateOfInterest.text =
getFDDetailsResponse.Response.FDDataResponse.RateOfInterest.toString()
.plus(" % p.a.")
payUrl = getFDDetailsResponse.Response.FDDataResponse.PaymentUrl
value = getFDDetailsResponse.Response.FDDataResponse.Value
}
// 650 -> refreshToken()
else -> {
showDialogValidation(
activity as BajajFdMainActivity,
getFDDetailsResponse.Response.Errors[0].ErrorMessage
)
}
}
}
}
is Resource.Error -> {
response.message?.let { message ->
showDialogValidation(activity as BajajFdMainActivity, message)
}
}
is Resource.Loading -> {
ProgressUtil.hideLoading()
}
is Resource.DataError -> {
}
}
}
}
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save

Powered by TurnKey Linux.