Author | SHA1 | Message | Date |
---|---|---|---|
|
08b290d074 | maximus char limit | 2 years ago |
|
8ab82b0afb | bank card | 2 years ago |
|
9d910b10f3 | bank card | 2 years ago |
|
9a39b276b0 | removed xml code | 2 years ago |
|
b74d616a58 | added changes | 2 years ago |
|
d24531554d | bank card | 2 years ago |
|
35eaac9a51 | added missing validations | 2 years ago |
|
cfbfd52594 | added code | 2 years ago |
|
019205d375 | added preferenceManager and screen one change | 2 years ago |
|
25355eedb1 | added missing code | 2 years ago |
|
4b1ae0619a | added ckyc api in step two | 2 years ago |
|
f4413ee4b8 |
Merge branch 'HemantBranch' of https://git.nivesh.com:443/hemant.khadase/BajajFDLib into PankajBranch
# Conflicts: # app/src/main/java/com/nivesh/production/bajajfd/adapter/PaymentModeAdapter.kt # app/src/main/java/com/nivesh/production/niveshfd/ui/activity/NiveshFdMainActivity.kt # app/src/main/java/com/nivesh/production/niveshfd/ui/fragment/StepFourNiveshFDFragment.kt # app/src/main/java/com/nivesh/production/niveshfd/ui/fragment/StepOneNiveshFDFragment.kt # app/src/main/java/com/nivesh/production/niveshfd/ui/fragment/StepTwoNiveshFDFragment.kt # app/src/main/java/com/nivesh/production/niveshfd/viewModel/MyObseravble.kt |
2 years ago |
|
599e3d8676 | payment | 2 years ago |
|
8a70c1cdb8 | added missing code | 2 years ago |
|
531589e577 | retry functionality is done | 2 years ago |
|
b2e37aacc2 | added progress dialog handling | 2 years ago |
|
b6c207d9cc | changes done in file names | 2 years ago |
|
dda88b15da | payment option | 2 years ago |
|
b882c1462c | payment list | 2 years ago |
|
00db1a261b | line change | 2 years ago |
|
f882a6d047 | added missing code | 2 years ago |
|
824af7e316 | added prograss dialog | 2 years ago |
|
24046cd911 | modified stepfive | 2 years ago |
|
fae4a919dc |
Merge branch 'HemantBranch' of https://git.nivesh.com:443/hemant.khadase/BajajFDLib into PankajBranch
# Conflicts: # app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt |
2 years ago |
|
6eaae8f1f1 | commit | 2 years ago |
|
e21aceedc2 | added validation msgs | 2 years ago |
|
c767662417 | resolved image permission | 2 years ago |
|
813b5ee626 | added change related to fragment | 2 years ago |
|
499dd1be78 | commit | 2 years ago |
|
ca95b4ced8 | minor changes | 2 years ago |
|
ffef0c1a2f | commit | 2 years ago |
|
6ecfe183dd | commit | 2 years ago |
|
366ab9d3c7 | added code | 2 years ago |
|
d654fbe2f0 |
Merge branch 'HemantBranch' of https://git.nivesh.com:443/hemant.khadase/BajajFDLib into PankajBranch
# Conflicts: # app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt # app/src/main/java/com/nivesh/production/bajajfd/ui/providerfactory/FDModelProviderFactory.kt |
2 years ago |
|
d03ce535b6 | working on gallry | 2 years ago |
|
14ed1bc161 | commit | 2 years ago |
|
b18aecacb2 | commit | 2 years ago |
|
81897ea9c1 | code modification done | 2 years ago |
|
ba183e79e1 | commit | 2 years ago |
|
28aaba6343 | modified code | 2 years ago |
|
52ef29d06d | modified code | 2 years ago |
|
0059b5f9e4 | added modified code | 2 years ago |
|
abe4571a4b | added modification in code | 2 years ago |
|
0d00dc80a8 |
Merge branch 'HemantBranch' of https://git.nivesh.com:443/hemant.khadase/BajajFDLib into PankajBranch
# Conflicts: # app/src/main/java/com/nivesh/production/bajajfd/ui/activity/BajajFdMainActivity.kt # app/src/main/res/values-hi-rIN/strings.xml |
2 years ago |
|
6f6098cffb | assest file | 2 years ago |
|
35e4eab36f | added minor changes | 2 years ago |
|
ee12b51ad9 | unique id handling | 2 years ago |
|
9f7f6a4b40 | added paymentrequery api after trasaction | 2 years ago |
|
b03ab207f4 | api working of eligible bank | 2 years ago |
|
3d9f84f5b2 | added manoj code | 2 years ago |
|
ca798b96a8 | added manoj code | 2 years ago |
@ -1,3 +0,0 @@ | |||||
# Default ignored files | |||||
/shelf/ | |||||
/workspace.xml |
@ -1,6 +0,0 @@ | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<project version="4"> | |||||
<component name="CompilerConfiguration"> | |||||
<bytecodeTargetLevel target="11" /> | |||||
</component> | |||||
</project> |
@ -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> |
@ -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> |
@ -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> |
@ -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> |
@ -1,22 +0,0 @@ | |||||
package com.nivesh.production.bajajfd | |||||
import android.app.Application | |||||
import android.content.Context | |||||
class BajajApplication : Application() { | |||||
private var mInstance: BajajApplication? = null | |||||
// private val mRequestQueue: RequestQueue? = null | |||||
companion object { | |||||
var appContext: Context? = null | |||||
} | |||||
override fun onCreate() { | |||||
super.onCreate() | |||||
mInstance = this | |||||
appContext = applicationContext | |||||
} | |||||
@Synchronized | |||||
fun getInstanceApp(): BajajApplication? { | |||||
return mInstance | |||||
} | |||||
} |
@ -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 | |||||
} | |||||
} |
@ -1,19 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.adapter | |||||
import androidx.fragment.app.Fragment | |||||
import androidx.fragment.app.FragmentManager | |||||
class SectionsPagerAdapter(private val fm: FragmentManager, private val fragments: Array<Fragment>, private val NumberOfTabs: Int) : SmartFragmentStatePagerAdapter(fm) { | |||||
override fun getItem(position: Int): Fragment { | |||||
return fragments[position] | |||||
} | |||||
override fun getPageTitle(position: Int): CharSequence? { | |||||
return null | |||||
} | |||||
override fun getCount(): Int { | |||||
return NumberOfTabs | |||||
} | |||||
} |
@ -1,25 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.adapter | |||||
import android.util.SparseArray | |||||
import android.view.View | |||||
import android.view.ViewGroup | |||||
import androidx.fragment.app.Fragment | |||||
import androidx.fragment.app.FragmentManager | |||||
import androidx.fragment.app.FragmentPagerAdapter | |||||
import androidx.fragment.app.FragmentStatePagerAdapter | |||||
import androidx.viewpager2.adapter.FragmentStateAdapter | |||||
abstract class SmartFragmentStatePagerAdapter(fragmentManager: FragmentManager) : FragmentPagerAdapter(fragmentManager) { | |||||
private val registeredFragments = SparseArray<Fragment>() | |||||
override fun instantiateItem(container: ViewGroup, position: Int): Any { | |||||
val fragment = super.instantiateItem(container, position) as Fragment | |||||
registeredFragments.put(position, fragment) | |||||
return fragment | |||||
} | |||||
// Returns the fragment for the position (if instantiated) | |||||
fun getRegisteredFragment(position: Int): Fragment? { | |||||
return registeredFragments[position] | |||||
} | |||||
} |
@ -1,522 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.activity | |||||
import android.annotation.SuppressLint | |||||
import android.app.Dialog | |||||
import android.graphics.drawable.Drawable | |||||
import android.os.Bundle | |||||
import android.util.Log | |||||
import android.view.WindowManager | |||||
import android.webkit.WebView | |||||
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.Resource | |||||
import com.nivesh.production.bajajfd.viewModel.* | |||||
import java.io.BufferedReader | |||||
import java.io.InputStream | |||||
import java.io.InputStreamReader | |||||
class BajajFdMainActivity : BaseActivity() { | |||||
lateinit var binding: ActivityBajajFdBinding | |||||
private 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() | |||||
private var stepCount: Int = 0 | |||||
private lateinit var sectionsPagerAdapter: SectionsPagerAdapter | |||||
private lateinit var fragments: Array<Fragment> | |||||
var valur:String="" | |||||
override fun onCreate(savedInstanceState: Bundle?) { | |||||
super.onCreate(savedInstanceState) | |||||
init() | |||||
} | |||||
private fun init() { | |||||
binding = ActivityBajajFdBinding.inflate(layoutInflater) | |||||
setContentView(binding.root) | |||||
//start Repository | |||||
viewModel = ViewModelProvider( | |||||
this, | |||||
FDModelProviderFactory(MainRepository(ApiClient.getApiClient)) | |||||
)[BajajFDViewModel::class.java] | |||||
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" | |||||
//hemant client code =8872 /60476 | |||||
viewModel.getStepsCount(fdStepsCount, token, this) | |||||
viewModel.getStepsCountMutableData.observe(this) { response -> | |||||
when (response) { | |||||
is Resource.Success -> { | |||||
Log.e("response", "-->$response") | |||||
val stepsCountResponse: StepsCountResponse = | |||||
Gson().fromJson( | |||||
response.data?.toString(), | |||||
StepsCountResponse::class.java | |||||
) | |||||
stepsCountResponse.Response.StatusCode.let { code -> | |||||
when (code) { | |||||
200 -> { | |||||
stepCount = stepsCountResponse.Response.StepsCount | |||||
getClientDetailsApi(stepsCountResponse.Response.StepsCount) | |||||
} | |||||
650 -> refreshToken(fdStepsCount) | |||||
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 refreshToken(fdStepsCount: FDStepsCountRequest) { | |||||
} | |||||
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" | |||||
//hemant 8872/1038// | |||||
val userRequest = UserRequest() | |||||
userRequest.UID = 0 | |||||
userRequest.IPAddress = "" | |||||
userRequest.Source = getString(R.string.source) | |||||
userRequest.AppOrWeb = getString(R.string.app) | |||||
userRequest.LoggedInRoleId = 5 | |||||
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("getClientDetailRequest", "-->" + Gson().toJson(getClientDetailsRequest)) | |||||
viewModel.getClientDetails(getClientDetailsRequest, token, this) | |||||
viewModel.getClientDetailsMutableData.observe(this) { response -> | |||||
when (response) { | |||||
is Resource.Success -> { | |||||
Log.e("response", "-->$response") | |||||
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 -> { | |||||
} | |||||
is Resource.DataError -> { | |||||
} | |||||
} | |||||
} | |||||
} | |||||
} | |||||
private fun setViewPager(stepsCount: Int) { | |||||
// steps setting | |||||
setBackground(selectedShape(), defaultShape(), defaultShape(), defaultShape()) | |||||
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, stepsCount) | |||||
val viewPager: DisableAdapter = binding.viewPager | |||||
viewPager.setPagingEnabled(false) | |||||
viewPager.adapter = sectionsPagerAdapter | |||||
viewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener { | |||||
override fun onPageScrolled( | |||||
position: Int, | |||||
positionOffset: Float, | |||||
positionOffsetPixels: Int | |||||
) { | |||||
Log.e("onPageScrolled", "-->".plus(position)) | |||||
} | |||||
override fun onPageSelected(position: Int) { | |||||
Log.e("onPageSelected", "-->".plus(position)) | |||||
when (position) { | |||||
0 -> { | |||||
setBackground( | |||||
defaultShape(), | |||||
defaultShape(), | |||||
defaultShape(), | |||||
defaultShape() | |||||
) | |||||
} | |||||
1 -> { | |||||
setBackground( | |||||
selectedShape(), | |||||
defaultShape(), | |||||
defaultShape(), | |||||
defaultShape() | |||||
) | |||||
} | |||||
2 -> { | |||||
setBackground( | |||||
selectedShape(), | |||||
selectedShape(), | |||||
defaultShape(), | |||||
defaultShape() | |||||
) | |||||
} | |||||
3 -> { | |||||
setBackground( | |||||
selectedShape(), | |||||
selectedShape(), | |||||
selectedShape(), | |||||
defaultShape() | |||||
) | |||||
} | |||||
4 -> { | |||||
setBackground( | |||||
selectedShape(), | |||||
selectedShape(), | |||||
selectedShape(), | |||||
selectedShape() | |||||
) | |||||
} | |||||
} | |||||
} | |||||
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") | |||||
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? | |||||
) { | |||||
binding.stepOne.background = drawable | |||||
binding.stepTwo.background = drawable1 | |||||
binding.stepThree.background = drawable2 | |||||
binding.stepFour.background = drawable3 | |||||
} | |||||
// step 1 response | |||||
fun stepOneApi(data: String?) { | |||||
Log.e("stepOneApi", " response ---> $data") | |||||
binding.viewPager.currentItem = 1 | |||||
} | |||||
// step 2 response | |||||
fun stepTwoApi(data: CreateFDApplicationResponse) { | |||||
Log.e("stepTwoApi", " response ---> " + Gson().toJson(data)) | |||||
binding.viewPager.currentItem = 2 | |||||
stepThreeBajajFDFragment.displayReceivedData(data) | |||||
} | |||||
// step 3 response | |||||
fun stepThreeApi(data: CreateFDApplicationResponse) { | |||||
Log.e("stepThreeApi", " response --->" + Gson().toJson(data)) | |||||
// call create fd api | |||||
binding.viewPager.currentItem = 3 | |||||
stepFourBajajFDFragment.displayReceivedData(data) | |||||
} | |||||
// step 4 response | |||||
fun stepFourApi(payUrl: String, value: String) { | |||||
valur=value | |||||
paymentDialog(payUrl, value) | |||||
} | |||||
@SuppressLint("SetJavaScriptEnabled") | |||||
fun paymentDialog(payUrl: String, value: String) { | |||||
Log.e("payUrl", "-->$payUrl") | |||||
Log.e("value", "-->$value") | |||||
val 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.webViewClient = MyWebViewClient() | |||||
wVPay.settings.javaScriptEnabled = true | |||||
wVPay.settings.domStorageEnabled = true | |||||
// val postData = "name=${URLEncoder.encode("msg", "UTF-8")}" + | |||||
// "&value=${URLEncoder.encode(value, "UTF-8")}" | |||||
// wVPay.postUrl(payUrl, postData.toByteArray()) | |||||
// val webView = WebView(this@BajajFdMainActivity) | |||||
// setContentView(webView) | |||||
// val postData = "msg=${URLEncoder.encode(value, "UTF-8")}" | |||||
// | |||||
// Log.e("valueee", "-->$postData") | |||||
// | |||||
// | |||||
// webView.postUrl(payUrl, postData.toByteArray()) | |||||
// | |||||
// | |||||
// | |||||
val iss: InputStream = assets.open("paymentpageform.html") | |||||
val size: Int = iss.available() | |||||
val buffer = ByteArray(size) | |||||
iss.read(buffer) | |||||
var str = String(buffer) | |||||
str = str.replace("cus", value) | |||||
// val br = BufferedReader( | |||||
// InputStreamReader( | |||||
// iss.getInputStream() | |||||
// ) | |||||
// ) | |||||
// | |||||
// while ((str = br.readLine()) != null) { | |||||
// response += line; | |||||
// } | |||||
iss.close() | |||||
wVPay.loadUrl("file:///android_asset/paymentpageform.html") | |||||
// wVPay.setWebViewClient(object : WebViewClient() { | |||||
// override fun onPageStarted(view: WebView, url: String, favicon: Bitmap?) { | |||||
// super.onPageStarted(view, url, favicon) | |||||
// Log.e("onPageStarted", "-->$url") | |||||
// | |||||
// | |||||
// wVPay.loadUrl("file:///android_asset/paymentpageform.html") | |||||
// | |||||
// val link1 = "pp" | |||||
// val link2 = valur | |||||
// view.loadUrl("javascript:(function(){document.body.innerHTML = document.body.innerHTML.replace('$link1', '$link2')})()") | |||||
// | |||||
// | |||||
// | |||||
// if (url.isNotEmpty() && url.contains("CustomerPaymentResponse")) { | |||||
// | |||||
// } | |||||
// } | |||||
// | |||||
// }) | |||||
// wVPay.loadUrl("file:///android_asset/paymentpageform.html") | |||||
// wVPay.loadDataWithBaseURL("file:///android_asset/", str,"text/html", "UTF-8",null); | |||||
// wVPay.loadData(str, "text/html; charset=utf-8", "UTF-8"); | |||||
// dialogWebView.show() | |||||
} | |||||
// class MyWebViewClient : WebViewClient() { | |||||
// override fun onPageStarted(view: WebView, url: String, favicon: Bitmap?) { | |||||
// super.onPageStarted(view, url, favicon) | |||||
// Log.e("onPageStarted", "-->$url") | |||||
// | |||||
// val link1 = "pp" | |||||
// val link2 = valur | |||||
// view.loadUrl("javascript:(function(){document.body.innerHTML = document.body.innerHTML.replace('$link1', '$link2')})()") | |||||
// | |||||
// if (url.isNotEmpty() && url.contains("CustomerPaymentResponse")) { | |||||
// | |||||
// } | |||||
// } | |||||
// | |||||
// override fun onPageFinished(view: WebView, url: String) { | |||||
// super.onPageFinished(view, url) | |||||
// } | |||||
} | |||||
@ -1,36 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.fragment | |||||
import android.content.Context | |||||
import android.os.Bundle | |||||
import androidx.fragment.app.Fragment | |||||
import com.nivesh.production.bajajfd.ui.activity.BaseActivity | |||||
open class BaseFragment : Fragment() { | |||||
protected var mActivity: BaseActivity? = null | |||||
override fun onAttach(context: Context) { | |||||
super.onAttach(context) | |||||
if (context is BaseActivity) { | |||||
mActivity = context | |||||
} else try { | |||||
throw ClassCastException("You need to extend BaseActivity to calling activity.") | |||||
} catch (e: Exception) { | |||||
e.printStackTrace() | |||||
} | |||||
} | |||||
override fun onCreate(savedInstanceState: Bundle?) { | |||||
super.onCreate(savedInstanceState) | |||||
} | |||||
override fun onStart() { | |||||
super.onStart() | |||||
} | |||||
override fun onStop() { | |||||
super.onStop() | |||||
} | |||||
} |
@ -1,53 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.fragment | |||||
import android.os.Bundle | |||||
import android.view.LayoutInflater | |||||
import android.view.View | |||||
import android.view.ViewGroup | |||||
import androidx.fragment.app.Fragment | |||||
import androidx.lifecycle.ViewModelProvider | |||||
import com.nivesh.production.bajajfd.api.ApiClient | |||||
import com.nivesh.production.bajajfd.databinding.FragmentBajajfdStepFiveBinding | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.ui.providerfactory.StepFiveModelProviderFactory | |||||
import com.nivesh.production.bajajfd.viewModel.StepFiveBajajFDViewModel | |||||
class StepFiveBajajFDFragment : Fragment() { | |||||
private lateinit var stepFiveBajajFDViewModel: StepFiveBajajFDViewModel | |||||
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) | |||||
val root = binding.root | |||||
// val textView: TextView = binding.sectionLabel | |||||
// stepFourViewModel.text.observe(viewLifecycleOwner) { | |||||
// textView.text = it | |||||
// } | |||||
// | |||||
// binding.btnClick.setOnClickListener { | |||||
// bajajFDInterface.stepFourApi("stepFourResponse") | |||||
// } | |||||
return root | |||||
} | |||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { | |||||
super.onViewCreated(view, savedInstanceState) | |||||
stepFiveBajajFDViewModel = ViewModelProvider( | |||||
this, | |||||
StepFiveModelProviderFactory(MainRepository(ApiClient.getApiClient)) | |||||
)[StepFiveBajajFDViewModel::class.java] | |||||
} | |||||
override fun onDestroyView() { | |||||
super.onDestroyView() | |||||
_binding = null | |||||
} | |||||
} |
@ -1,15 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.providerfactory | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.ViewModelProvider | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel | |||||
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel | |||||
class FDModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory { | |||||
override fun <T : ViewModel> create(modelClass: Class<T>): T { | |||||
return BajajFDViewModel(mainRepository) as T | |||||
} | |||||
} |
@ -1,15 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.providerfactory | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.ViewModelProvider | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.viewModel.StepFiveBajajFDViewModel | |||||
class StepFiveModelProviderFactory(private val mainRepository: MainRepository) : | |||||
ViewModelProvider.Factory { | |||||
override fun <T : ViewModel> create(modelClass: Class<T>): T { | |||||
return StepFiveBajajFDViewModel(mainRepository) as T | |||||
} | |||||
} |
@ -1,15 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.providerfactory | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.ViewModelProvider | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.viewModel.StepFourBajajFDViewModel | |||||
class StepFourModelProviderFactory(private val mainRepository: MainRepository) : | |||||
ViewModelProvider.Factory { | |||||
override fun <T : ViewModel> create(modelClass: Class<T>): T { | |||||
return StepFourBajajFDViewModel(mainRepository) as T | |||||
} | |||||
} |
@ -1,14 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.providerfactory | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.ViewModelProvider | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel | |||||
class StepOneModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory { | |||||
override fun <T : ViewModel> create(modelClass: Class<T>): T { | |||||
return StepOneBajajFDViewModel(mainRepository) as T | |||||
} | |||||
} |
@ -1,17 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.providerfactory | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.ViewModelProvider | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel | |||||
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel | |||||
import com.nivesh.production.bajajfd.viewModel.StepThreeBajajFDViewModel | |||||
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel | |||||
class StepThreeModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory { | |||||
override fun <T : ViewModel> create(modelClass: Class<T>): T { | |||||
return StepThreeBajajFDViewModel(mainRepository) as T | |||||
} | |||||
} |
@ -1,16 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.ui.providerfactory | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.ViewModelProvider | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.viewModel.BajajFDViewModel | |||||
import com.nivesh.production.bajajfd.viewModel.StepOneBajajFDViewModel | |||||
import com.nivesh.production.bajajfd.viewModel.StepTwoBajajFDViewModel | |||||
class StepTwoModelProviderFactory (private val mainRepository: MainRepository) : ViewModelProvider.Factory { | |||||
override fun <T : ViewModel> create(modelClass: Class<T>): T { | |||||
return StepTwoBajajFDViewModel(mainRepository) as T | |||||
} | |||||
} |
@ -1,26 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.util | |||||
sealed class Resource<T>( | |||||
val data: T? = null, | |||||
var message: String? = null, | |||||
val errorCode: Int? = null, | |||||
var status: Boolean = true | |||||
) { | |||||
class Success<T>(data: T) : Resource<T>(data) | |||||
class Error<T>(message: String, data: T? = null) : Resource<T>(data, message) | |||||
class Loading<T> : Resource<T>() | |||||
class DataError<T>(errorCode: Int, message: String, data: T? = null) : | |||||
Resource<T>(null, message, errorCode) | |||||
override fun toString(): String { | |||||
return when (this) { | |||||
is Success<*> -> "Success[data=$data]" | |||||
is DataError -> "ErrorCode[exception=$errorCode]" | |||||
is Loading<T> -> "Loading" | |||||
is Error -> "Error[exception=${error(Any())}]" | |||||
} | |||||
} | |||||
} |
@ -1,52 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.viewModel | |||||
import android.app.Activity | |||||
import androidx.lifecycle.MutableLiveData | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.viewModelScope | |||||
import com.google.gson.JsonObject | |||||
import com.nivesh.production.bajajfd.model.* | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity | |||||
import com.nivesh.production.bajajfd.util.Common | |||||
import com.nivesh.production.bajajfd.util.Common.Companion.handleError | |||||
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse | |||||
import com.nivesh.production.bajajfd.util.Resource | |||||
import kotlinx.coroutines.launch | |||||
class BajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() { | |||||
val getStepsCountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getStepsCount( | |||||
requestBody: FDStepsCountRequest, | |||||
token: String, | |||||
activity: Activity | |||||
) = viewModelScope.launch(handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getStepsCountMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.getStepsCountResponse(requestBody, token) | |||||
getStepsCountMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getClientDetailsMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getClientDetails(getClientDetailsRequest: getClientDetailsRequest, token: String, activity: Activity) = | |||||
viewModelScope.launch(handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getClientDetailsMutableData.postValue(Resource.Loading()) | |||||
val response = | |||||
mainRepository.getClientDetailsResponse(getClientDetailsRequest, token) | |||||
getClientDetailsMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getFDKYCMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun checkFDKYC(requestBody: CheckFDKYCRequest, token : String, activity: Activity) = viewModelScope.launch(handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getFDKYCMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.checkFDKYCRequest(requestBody, token) | |||||
getFDKYCMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
} |
@ -1,9 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.viewModel | |||||
import androidx.lifecycle.ViewModel | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
class StepFiveBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() { | |||||
} |
@ -1,88 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.viewModel | |||||
import android.app.Activity | |||||
import androidx.lifecycle.MutableLiveData | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.viewModelScope | |||||
import com.google.gson.JsonObject | |||||
import com.nivesh.production.bajajfd.model.GetCodeRequest | |||||
import com.nivesh.production.bajajfd.model.GetFDDetailsRequest | |||||
import com.nivesh.production.bajajfd.model.GetRatesRequest | |||||
import com.nivesh.production.bajajfd.model.SaveFDOtherDataRequest | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.util.Common | |||||
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse | |||||
import com.nivesh.production.bajajfd.util.Resource | |||||
import kotlinx.coroutines.launch | |||||
class StepFourBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() { | |||||
val getPaymentModeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun paymentModeApi(getCodeRequest: GetCodeRequest, token: String, | |||||
activity: Activity | |||||
) = viewModelScope.launch(Common.handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getPaymentModeMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.payModeCheck(getCodeRequest, token) | |||||
getPaymentModeMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getFDDetailsMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getFDDetails(getRatesRequest: GetFDDetailsRequest, token: String, | |||||
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getFDDetailsMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.getFDDetailsResponse(getRatesRequest, token) | |||||
getFDDetailsMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun updateFDPaymentStatus(getRatesRequest: GetRatesRequest, token: String, | |||||
activity: Activity) = | |||||
viewModelScope.launch(Common.handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getRatesMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.updateFDPaymentStatusResponse(getRatesRequest, token) | |||||
getRatesMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
fun finaliseFD(getRatesRequest: GetRatesRequest, token: String, | |||||
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getRatesMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.finaliseFDResponse(getRatesRequest, token) | |||||
getRatesMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
fun finaliseKYC(getRatesRequest: GetRatesRequest, token: String, | |||||
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getRatesMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.finaliseKYCResponse(getRatesRequest, token) | |||||
getRatesMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
fun paymentReQuery(getRatesRequest: GetRatesRequest, token: String, | |||||
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getRatesMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.paymentReQueryResponse(getRatesRequest, token) | |||||
getRatesMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getFDOtherMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun saveFDOtherData(getRatesRequest: SaveFDOtherDataRequest, token: String, | |||||
activity: Activity) = viewModelScope.launch(Common.handleError(activity)) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getFDOtherMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.saveFDOtherDataResponse(getRatesRequest, token) | |||||
getFDOtherMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
} |
@ -1,79 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.viewModel | |||||
import android.app.Activity | |||||
import androidx.lifecycle.MutableLiveData | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.viewModelScope | |||||
import com.google.gson.JsonObject | |||||
import com.nivesh.production.bajajfd.model.GetCodeRequest | |||||
import com.nivesh.production.bajajfd.model.GetMaturityAmountRequest | |||||
import com.nivesh.production.bajajfd.model.GetRatesRequest | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.util.Common | |||||
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse | |||||
import com.nivesh.production.bajajfd.util.Constants.Companion.token | |||||
import com.nivesh.production.bajajfd.util.Resource | |||||
import kotlinx.coroutines.launch | |||||
class StepOneBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() { | |||||
val getCodeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getCode(requestBody: GetCodeRequest, token: String, activity: Activity) = | |||||
viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getCodeMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.getCodesResponse(requestBody, token) | |||||
getCodeMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getRatesMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getRates(getRatesRequest: GetRatesRequest, token: String, activity: Activity) = | |||||
viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getRatesMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.getRatesResponse(getRatesRequest, token) | |||||
getRatesMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getMaturityAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getMaturityAmount(requestBody: GetMaturityAmountRequest, activity: Activity) = | |||||
viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getMaturityAmountMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.createCalculateFDMaturityAmount(requestBody, token) | |||||
getMaturityAmountMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getMinAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getMinAmount(requestBody: GetCodeRequest, token: String, activity: Activity) = | |||||
viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getMinAmountMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.getCodesResponse(requestBody, token) | |||||
getMinAmountMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getMaxAmountMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun getMaxAmount(requestBody: GetCodeRequest, token: String, activity: Activity) = | |||||
viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getMaxAmountMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.getCodesResponse(requestBody, token) | |||||
getMaxAmountMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
} |
@ -1,53 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.viewModel | |||||
import android.app.Activity | |||||
import androidx.lifecycle.MutableLiveData | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.viewModelScope | |||||
import com.google.gson.JsonObject | |||||
import com.nivesh.production.bajajfd.model.CreateFDRequest | |||||
import com.nivesh.production.bajajfd.model.DocumentUpload | |||||
import com.nivesh.production.bajajfd.model.GetCodeRequest | |||||
import com.nivesh.production.bajajfd.model.GetRatesRequest | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.util.Common | |||||
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse | |||||
import com.nivesh.production.bajajfd.util.Resource | |||||
import kotlinx.coroutines.launch | |||||
class StepThreeBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() { | |||||
val getTitleMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun titleApi(getCodeRequest: GetCodeRequest, token: String, activity: Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getTitleMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.titleCheck(getCodeRequest, token) | |||||
getTitleMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getDocumentUploadMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun documentsUpload(documentUpload: DocumentUpload, token: String, activity: Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getDocumentUploadMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.documentsUploadResponse(documentUpload, token) | |||||
getDocumentUploadMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getFDResponseMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun createFDApi(getRatesRequest: CreateFDRequest, token: String, activity: Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getFDResponseMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.createFDKYCResponse(getRatesRequest, token) | |||||
getFDResponseMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
} |
@ -1,190 +0,0 @@ | |||||
package com.nivesh.production.bajajfd.viewModel | |||||
import android.app.Activity | |||||
import androidx.lifecycle.MutableLiveData | |||||
import androidx.lifecycle.ViewModel | |||||
import androidx.lifecycle.viewModelScope | |||||
import com.google.gson.JsonObject | |||||
import com.nivesh.production.bajajfd.model.* | |||||
import com.nivesh.production.bajajfd.repositories.MainRepository | |||||
import com.nivesh.production.bajajfd.util.Common | |||||
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse | |||||
import com.nivesh.production.bajajfd.util.Common.Companion.handleResponse1 | |||||
import com.nivesh.production.bajajfd.util.Constants.Companion.token | |||||
import com.nivesh.production.bajajfd.util.Resource | |||||
import kotlinx.coroutines.launch | |||||
class StepTwoBajajFDViewModel(private val mainRepository: MainRepository) : ViewModel() { | |||||
val getPanCheckMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun panCheck(panCheck: PanCheckRequest, token: String, activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getPanCheckMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.panCheck(panCheck, token) | |||||
getPanCheckMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getTitleMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun titleApi(getCodeRequest: GetCodeRequest, token: String, activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getTitleMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.titleCheck(getCodeRequest, token) | |||||
getTitleMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getGenderMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun genderApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getGenderMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.genderCheck(getCodeRequest, token) | |||||
getGenderMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getAnnualIncomeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun annualIncomeApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getAnnualIncomeMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.annualIncomeCheck(getCodeRequest, token) | |||||
getAnnualIncomeMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getRelationShipMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun relationShipApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getRelationShipMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.relationShipCheck(getCodeRequest, token) | |||||
getRelationShipMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getMaritalStatusMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun maritalStatusApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getMaritalStatusMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.maritalStatusCheck(getCodeRequest, token) | |||||
getMaritalStatusMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getOccupationMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun occupationApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getOccupationMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.occupationCheck(getCodeRequest, token) | |||||
getOccupationMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getStateMasterMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun stateApi(token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getStateMasterMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.stateCheck(token) | |||||
getStateMasterMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getCityListMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun cityListApi(cityRequest: CityRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getCityListMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.cityCheck(cityRequest, token) | |||||
getCityListMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getFDBankListMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun bankListApi( token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getFDBankListMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.bankListCheck(token) | |||||
getFDBankListMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getIfscCodeCheckMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun ifscCodeApi(ifsc : String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getIfscCodeCheckMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.ifscCodeCheck(ifsc) | |||||
getIfscCodeCheckMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getIfscCodeDetailsCheckMutableData: MutableLiveData<Resource<String>> = MutableLiveData() | |||||
fun ifscCodeDetailsApi(ifsc : String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getIfscCodeDetailsCheckMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.ifscCodeBankDetailsCheck(ifsc, token) | |||||
getIfscCodeDetailsCheckMutableData.postValue(handleResponse1(response)) | |||||
} | |||||
} | |||||
val getPaymentModeMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun paymentModeApi(getCodeRequest: GetCodeRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getPaymentModeMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.payModeCheck(getCodeRequest, token) | |||||
getPaymentModeMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val getFDResponseMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun createFDApi(getRatesRequest: CreateFDRequest, token: String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
getFDResponseMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.createFDKYCResponse(getRatesRequest, token) | |||||
getFDResponseMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
val bankValidationApiMutableData: MutableLiveData<Resource<JsonObject>> = MutableLiveData() | |||||
fun bankValidationApi(bankValidationApiRequest : BankValidationApiRequest,token:String,activity : Activity) = viewModelScope.launch( | |||||
Common.handleError(activity) | |||||
) { | |||||
if (Common.isNetworkAvailable(activity)) { | |||||
bankValidationApiMutableData.postValue(Resource.Loading()) | |||||
val response = mainRepository.bankValidationApiRequest(bankValidationApiRequest,token) | |||||
bankValidationApiMutableData.postValue(handleResponse(response)) | |||||
} | |||||
} | |||||
} |
@ -0,0 +1,17 @@ | |||||
package com.nivesh.production.niveshfd | |||||
import android.app.Application | |||||
import android.content.Context | |||||
class NiveshFdApplication : Application() { | |||||
private var mInstance: NiveshFdApplication? = null | |||||
companion object { | |||||
var appContext: Context? = null | |||||
} | |||||
override fun onCreate() { | |||||
super.onCreate() | |||||
mInstance = this | |||||
appContext = applicationContext | |||||
} | |||||
} |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.adapter | |||||
package com.nivesh.production.niveshfd.adapter | |||||
import android.annotation.SuppressLint | import android.annotation.SuppressLint | ||||
import android.content.Context | import android.content.Context |
@ -0,0 +1,99 @@ | |||||
package com.nivesh.production.niveshfd.adapter | |||||
import android.view.LayoutInflater | |||||
import android.view.View | |||||
import android.view.ViewGroup | |||||
import android.widget.ImageView | |||||
import android.widget.TextView | |||||
import androidx.cardview.widget.CardView | |||||
import androidx.recyclerview.widget.RecyclerView | |||||
import com.nivesh.production.niveshfd.R | |||||
import com.nivesh.production.niveshfd.model.GetCodes | |||||
class PaymentModeAdapter( | |||||
private val listOfPayMode: MutableList<GetCodes>, | |||||
private var selectedAmount: String? = null | |||||
) : RecyclerView.Adapter<PaymentModeAdapter.BankListViewHolder>() { | |||||
inner class BankListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { | |||||
val paymentSelector: ImageView = itemView.findViewById(R.id.paymentSelector) | |||||
val paymentMethod: TextView = itemView.findViewById(R.id.paymentMethod) | |||||
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 listOfPayMode = listOfPayMode?.get(position) | |||||
if (listOfPayMode != null) { | |||||
holder.itemView.apply { | |||||
holder.paymentMethod.text = listOfPayMode.Value | |||||
if (listOfPayMode.Value.equals("UPI")) { | |||||
holder.tvUpiMsg.text = context.getString(R.string.upto1LakhOnly) | |||||
} else { | |||||
holder.tvUpiMsg.text = "" | |||||
} | |||||
if (selectedAmount !=null && (checkedPosition == -2)) { | |||||
holder.paymentSelector.setBackgroundResource(R.drawable.ic_select_green) | |||||
checkedPosition = holder.adapterPosition | |||||
} else if (checkedPosition == -1) { | |||||
holder.paymentSelector.setBackgroundResource(R.drawable.ic_select_outline) | |||||
} else if (checkedPosition == holder.adapterPosition) { | |||||
holder.paymentSelector.setBackgroundResource(R.drawable.ic_select_green) | |||||
} else { | |||||
holder.paymentSelector.setBackgroundResource(R.drawable.ic_select_outline) | |||||
} | |||||
holder.itemView.setOnClickListener { | |||||
holder.paymentSelector.setBackgroundResource(R.drawable.ic_select_green) | |||||
if (checkedPosition != holder.adapterPosition) { | |||||
notifyItemChanged(checkedPosition) | |||||
checkedPosition = holder.adapterPosition | |||||
} | |||||
} | |||||
} | |||||
} | |||||
} | |||||
override fun getItemCount(): Int { | |||||
return listOfPayMode?.size!! | |||||
} | |||||
private var onItemClickListener: ((GetCodes) -> Unit)? = null | |||||
fun setOnItemClickListener(listener: (GetCodes) -> Unit) { | |||||
onItemClickListener = listener | |||||
} | |||||
fun getSelected(): GetCodes? { | |||||
return if (checkedPosition != -1) { | |||||
listOfPayMode?.get(checkedPosition) | |||||
} else null | |||||
} | |||||
private fun removeItem(position: Int) { | |||||
listOfPayMode?.removeAt(position) | |||||
notifyItemRemoved(position) | |||||
listOfPayMode?.let { notifyItemRangeChanged(position, it.size) } | |||||
} | |||||
} |
@ -1,12 +1,12 @@ | |||||
package com.nivesh.production.bajajfd.adapter | |||||
package com.nivesh.production.niveshfd.adapter | |||||
import android.view.LayoutInflater | import android.view.LayoutInflater | ||||
import android.view.View | import android.view.View | ||||
import android.view.ViewGroup | import android.view.ViewGroup | ||||
import android.widget.TextView | import android.widget.TextView | ||||
import androidx.recyclerview.widget.RecyclerView | import androidx.recyclerview.widget.RecyclerView | ||||
import com.nivesh.production.bajajfd.R | |||||
import com.nivesh.production.bajajfd.model.Bank | |||||
import com.nivesh.production.niveshfd.R | |||||
import com.nivesh.production.niveshfd.model.Bank | |||||
class RecommendedBankListAdapter( | class RecommendedBankListAdapter( | ||||
private val bankList: List<Bank> | private val bankList: List<Bank> |
@ -0,0 +1,18 @@ | |||||
package com.nivesh.production.niveshfd.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] | |||||
} |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.api | |||||
package com.nivesh.production.niveshfd.api | |||||
import okhttp3.Authenticator | import okhttp3.Authenticator | ||||
import okhttp3.Request | import okhttp3.Request |
@ -0,0 +1,137 @@ | |||||
package com.nivesh.production.niveshfd.db | |||||
import android.content.Context | |||||
import android.content.SharedPreferences | |||||
import com.nivesh.production.niveshfd.interfaces.IPreferenceHelper | |||||
open class PreferenceManager(context: Context) : IPreferenceHelper { | |||||
private val preferenceName = "NiveshFDSDK" | |||||
private var preferences: SharedPreferences = context.getSharedPreferences(preferenceName, Context.MODE_PRIVATE) | |||||
companion object { | |||||
const val KEY_USER_UID = "UserUid" | |||||
const val KEY_LOGIN_ROLE = "LoginRole" | |||||
const val KEY_SUB_BROKER_CODE = "SubBrokerCode" | |||||
const val KEY_LOGIN_PASSWORD = "LOGIN_PASSWORD" | |||||
const val KEY_CLIENT_UMS_ID = "UMS_Id" | |||||
const val KEY_CLIENT_CODE = "ClientCode" | |||||
const val KEY_GET_TOKEN = "GetToken" | |||||
const val CLIENT_LANGUAGE = "LANGUAGE" | |||||
} | |||||
override fun getLoginPasswordHash(): String { | |||||
return preferences[KEY_LOGIN_PASSWORD] ?: "" | |||||
} | |||||
override fun setLoginPasswordHash(appName: String) { | |||||
preferences[KEY_LOGIN_PASSWORD] = appName | |||||
} | |||||
override fun setUserUid(appName: Int) { | |||||
preferences[KEY_USER_UID] = appName | |||||
} | |||||
override fun getUserUid(): Int { | |||||
return preferences[KEY_USER_UID] ?: -1 | |||||
} | |||||
override fun setLoginRole(appName: Int) { | |||||
preferences[KEY_LOGIN_ROLE] = appName | |||||
} | |||||
override fun getLoginRole(): Int { | |||||
return preferences[KEY_LOGIN_ROLE] ?: -1 | |||||
} | |||||
override fun setSubBrokerID(appName: String) { | |||||
preferences[KEY_SUB_BROKER_CODE] = appName | |||||
} | |||||
override fun getSubBrokerID(): String { | |||||
return preferences[KEY_SUB_BROKER_CODE] ?: "" | |||||
} | |||||
override fun setClientUmsID(appName: String) { | |||||
preferences[KEY_CLIENT_UMS_ID] = appName | |||||
} | |||||
override fun getClientUmsID(): String { | |||||
return preferences[KEY_CLIENT_UMS_ID] ?: "" | |||||
} | |||||
override fun setClientCode(appName: String) { | |||||
preferences[KEY_CLIENT_CODE] = appName | |||||
} | |||||
override fun getClientCode(): String { | |||||
return preferences[KEY_CLIENT_CODE] ?: "" | |||||
} | |||||
override fun setToken(appName: String) { | |||||
preferences[KEY_GET_TOKEN] = appName | |||||
} | |||||
override fun getToken(): String { | |||||
return preferences[KEY_GET_TOKEN] ?: "" | |||||
} | |||||
override fun setLanguage(appName: String) { | |||||
preferences[CLIENT_LANGUAGE] = appName | |||||
} | |||||
override fun getLanguage(): String { | |||||
return preferences[CLIENT_LANGUAGE] ?: "" | |||||
} | |||||
override fun clearPrefs() { | |||||
preferences.edit().clear().apply() | |||||
} | |||||
} | |||||
/** | |||||
* SharedPreferences extension function, to listen the edit() and apply() fun calls | |||||
* on every SharedPreferences operation. | |||||
*/ | |||||
private inline fun SharedPreferences.edit(operation: (SharedPreferences.Editor) -> Unit) { | |||||
val editor = this.edit() | |||||
operation(editor) | |||||
editor.apply() | |||||
} | |||||
/** | |||||
* puts a key value pair in shared prefs if doesn't exists, otherwise updates value on given [key] | |||||
*/ | |||||
private operator fun SharedPreferences.set(key: String, value: Any?) { | |||||
when (value) { | |||||
is String? -> edit { it.putString(key, value) } | |||||
is Int -> edit { it.putInt(key, value) } | |||||
is Boolean -> edit { it.putBoolean(key, value) } | |||||
is Float -> edit { it.putFloat(key, value) } | |||||
is Long -> edit { it.putLong(key, value) } | |||||
else -> throw UnsupportedOperationException("Not yet implemented") | |||||
} | |||||
} | |||||
/** | |||||
* finds value on given key. | |||||
* [T] is the type of value | |||||
* @param defaultValue optional default value - will take null for strings, false for bool and -1 for numeric values if [defaultValue] is not specified | |||||
*/ | |||||
private inline operator fun <reified T : Any> SharedPreferences.get( | |||||
key: String, | |||||
defaultValue: T? = null | |||||
): T? { | |||||
return when (T::class) { | |||||
String::class -> getString(key, defaultValue as? String) as T? | |||||
Int::class -> getInt(key, defaultValue as? Int ?: -1) as T? | |||||
Boolean::class -> getBoolean(key, defaultValue as? Boolean ?: false) as T? | |||||
Float::class -> getFloat(key, defaultValue as? Float ?: -1f) as T? | |||||
Long::class -> getLong(key, defaultValue as? Long ?: -1) as T? | |||||
else -> throw UnsupportedOperationException("Not yet implemented") | |||||
} | |||||
} |
@ -0,0 +1,30 @@ | |||||
package com.nivesh.production.niveshfd.interfaces | |||||
interface IPreferenceHelper { | |||||
fun getLoginPasswordHash(): String | |||||
fun setLoginPasswordHash(appName: String) | |||||
fun getUserUid(): Int | |||||
fun setUserUid(appName: Int) | |||||
fun getLoginRole(): Int | |||||
fun setLoginRole(appName: Int) | |||||
fun getSubBrokerID(): String | |||||
fun setSubBrokerID(appName: String) | |||||
fun getClientUmsID(): String | |||||
fun setClientUmsID(appName: String) | |||||
fun getClientCode(): String | |||||
fun setClientCode(appName: String) | |||||
fun setToken(appName: String) | |||||
fun getToken(): String | |||||
fun setLanguage(appName: String) | |||||
fun getLanguage(): String | |||||
fun clearPrefs() | |||||
} |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.interfaces; | |||||
package com.nivesh.production.niveshfd.interfaces; | |||||
public interface OnClickListener { | public interface OnClickListener { | ||||
void onclickCategory(int position); | void onclickCategory(int position); |
@ -1,6 +1,6 @@ | |||||
package com.nivesh.production.bajajfd.interfaces | |||||
package com.nivesh.production.niveshfd.interfaces | |||||
import com.nivesh.production.bajajfd.model.CreateFDApplicationResponse | |||||
import com.nivesh.production.niveshfd.model.CreateFDApplicationResponse | |||||
interface SendData { | interface SendData { | ||||
fun sendDataFragment(message: CreateFDApplicationResponse) | fun sendDataFragment(message: CreateFDApplicationResponse) |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ApplicantDetails( | data class ApplicantDetails( | ||||
var AnnualIncome: String?= null, | var AnnualIncome: String?= null, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ApplicantRelationDetails( | data class ApplicantRelationDetails( | ||||
var ApplicantMotherFirstName: String? = null, | var ApplicantMotherFirstName: String? = null, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class Bank( | data class Bank( | ||||
val BankName: String, | val BankName: String, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
import java.io.Serializable | import java.io.Serializable | ||||
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class BankValidationApiRequest( | data class BankValidationApiRequest( | ||||
var BankAccountNo: String?="", | var BankAccountNo: String?="", |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class BankValidationApiResponse( | data class BankValidationApiResponse( | ||||
val DataObject: Any, | val DataObject: Any, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class CheckFDKYCRequest( | data class CheckFDKYCRequest( | ||||
var DOB: String? ="", | var DOB: String? ="", |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class CityListResponse( | data class CityListResponse( | ||||
val DataObject: List<DataObjectX>, | val DataObject: List<DataObjectX>, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class CityRequest( | data class CityRequest( | ||||
var APIName: String? = "", | var APIName: String? = "", |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ClientBanklist( | data class ClientBanklist( | ||||
var AccountNumber: String?="", | var AccountNumber: String?="", |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ClientDetails( | data class ClientDetails( | ||||
val ARNexpiredFlag: Boolean, | val ARNexpiredFlag: Boolean, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ClientMasterMFD( | data class ClientMasterMFD( | ||||
val CLIENT_ACCNO1: String, | val CLIENT_ACCNO1: String, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class CreateFDApplicationResponse( | data class CreateFDApplicationResponse( | ||||
val Response: ResponseXXXXXXXXXXX | val Response: ResponseXXXXXXXXXXX |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class CreateFDRequest( | data class CreateFDRequest( | ||||
var CreateFDApplicationRequest: CreateFDApplicationRequest? = null | var CreateFDApplicationRequest: CreateFDApplicationRequest? = null |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
import java.io.Serializable | import java.io.Serializable | ||||
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class DataObjectX( | data class DataObjectX( | ||||
val city_id: Int, | val city_id: Int, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class DeviceInfo( | data class DeviceInfo( | ||||
var app_version: String? = "", | var app_version: String? = "", |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class DocumentUpload( | data class DocumentUpload( | ||||
var Description: String? = null, | var Description: String? = null, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class Errors( | data class Errors( | ||||
val ErrorCode: Int, | val ErrorCode: Int, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FDCreationDetailsResponse( | data class FDCreationDetailsResponse( | ||||
val DocumentUploadFlag: Int, | val DocumentUploadFlag: Int, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FDDataResponse( | data class FDDataResponse( | ||||
val FDAmount: Double, | val FDAmount: Double, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FDStepsCountRequest( | data class FDStepsCountRequest( | ||||
var FDProvider: String? = "", | var FDProvider: String? = "", |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FdBankDetails( | data class FdBankDetails( | ||||
var AccountNumber: String?= null, | var AccountNumber: String?= null, |
@ -0,0 +1,7 @@ | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FinaliseFD( | |||||
var FDProvider: String? = "", | |||||
var NiveshClientCode: String? = "", | |||||
var UniqueId: String? = "" | |||||
) |
@ -0,0 +1,5 @@ | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FinalizeFDRequest( | |||||
var FinaliseFD: FinaliseFD? = null | |||||
) |
@ -0,0 +1,5 @@ | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FinalizeFDResponse( | |||||
val Response: ResponseXXXXXXXXXXXXXXXX | |||||
) |
@ -0,0 +1,7 @@ | |||||
package com.nivesh.production.niveshfd.model | |||||
data class FinalizeKYCRequest( | |||||
var FDProvider: String? = "", | |||||
var NiveshClientCode: String? = "", | |||||
var UniqueId: String? = "" | |||||
) |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetCalculateMaturityAmountResponse( | data class GetCalculateMaturityAmountResponse( | ||||
val Response: ResponseXX | val Response: ResponseXX |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetCodeRequest( | data class GetCodeRequest( | ||||
var Category: String ? = null, | var Category: String ? = null, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetCodeResponse( | data class GetCodeResponse( | ||||
val Response: ResponseX | val Response: ResponseX |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetCodes( | data class GetCodes( | ||||
val Label: String, | val Label: String, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetFDBankListResponse( | data class GetFDBankListResponse( | ||||
val Response: ResponseXXXXXXXX | val Response: ResponseXXXXXXXX |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetFDDetailsRequest( | data class GetFDDetailsRequest( | ||||
var FDProvider: String? = "", | var FDProvider: String? = "", |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetFDDetailsResponse( | data class GetFDDetailsResponse( | ||||
val Response: ResponseXXXXXXXXXXXX | val Response: ResponseXXXXXXXXXXXX |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetIFSCCodeListResponse( | data class GetIFSCCodeListResponse( | ||||
val IFSCCodes: MutableList<String>, | val IFSCCodes: MutableList<String>, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetIFSCCodeResponse( | data class GetIFSCCodeResponse( | ||||
val IFSCCODEServiceResult: List<IFSCCODEServiceResult> | val IFSCCODEServiceResult: List<IFSCCODEServiceResult> |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class GetMaturityAmountRequest( | data class GetMaturityAmountRequest( | ||||
var FDAmount: Int? = 0, | var FDAmount: Int? = 0, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
import com.google.gson.annotations.SerializedName | import com.google.gson.annotations.SerializedName | ||||
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class IFSCCODEServiceResult( | data class IFSCCODEServiceResult( | ||||
val BankBranch: String, | val BankBranch: String, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class Nominee( | data class Nominee( | ||||
val NomineeApplicablePercent: Double, | val NomineeApplicablePercent: Double, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class NomineeDetails( | data class NomineeDetails( | ||||
var NomineeAddress1: String?= null, | var NomineeAddress1: String?= null, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class NomineeGuardianDetails( | data class NomineeGuardianDetails( | ||||
var GuardianAddress1: String?= null, | var GuardianAddress1: String?= null, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ObjectResponse( | data class ObjectResponse( | ||||
val TransactionCount: Int, | val TransactionCount: Int, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
import com.google.gson.annotations.SerializedName | import com.google.gson.annotations.SerializedName | ||||
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class PanCheckResponse( | data class PanCheckResponse( | ||||
val response: ResponseXXX | val response: ResponseXXX |
@ -0,0 +1,6 @@ | |||||
package com.nivesh.production.niveshfd.model | |||||
data class PaymentReQueryRequest( | |||||
var NiveshClientCode: String? = "", | |||||
var UniqueId: String? = "" | |||||
) |
@ -0,0 +1,5 @@ | |||||
package com.nivesh.production.niveshfd.model | |||||
data class PaymentReQueryResponse( | |||||
val Response: ResponseXXXXXXXXXXXXXXX | |||||
) |
@ -1,4 +1,4 @@ | |||||
import com.nivesh.production.bajajfd.model.Errors | |||||
import com.nivesh.production.niveshfd.model.Errors | |||||
data class Response( | data class Response( | ||||
val Errors: List<Errors>, | val Errors: List<Errors>, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ResponseX( | data class ResponseX( | ||||
val Errors: List<Errors>, | val Errors: List<Errors>, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ResponseXX( | data class ResponseXX( | ||||
val Errors: List<Errors>, | val Errors: List<Errors>, |
@ -1,4 +1,4 @@ | |||||
package com.nivesh.production.bajajfd.model | |||||
package com.nivesh.production.niveshfd.model | |||||
data class ResponseXXX( | data class ResponseXXX( | ||||
val message: String, | val message: String, |
Powered by TurnKey Linux.