|
@ -24,6 +24,7 @@ import androidx.core.content.FileProvider |
|
|
import androidx.lifecycle.ViewModelProvider |
|
|
import androidx.lifecycle.ViewModelProvider |
|
|
import androidx.lifecycle.lifecycleScope |
|
|
import androidx.lifecycle.lifecycleScope |
|
|
import com.google.gson.Gson |
|
|
import com.google.gson.Gson |
|
|
|
|
|
import com.google.gson.JsonObject |
|
|
import com.nivesh.production.bajajfd.BuildConfig |
|
|
import com.nivesh.production.bajajfd.BuildConfig |
|
|
import com.nivesh.production.bajajfd.R |
|
|
import com.nivesh.production.bajajfd.R |
|
|
import com.nivesh.production.bajajfd.api.ApiClient |
|
|
import com.nivesh.production.bajajfd.api.ApiClient |
|
@ -32,12 +33,26 @@ import com.nivesh.production.bajajfd.model.* |
|
|
import com.nivesh.production.bajajfd.repositories.MainRepository |
|
|
import com.nivesh.production.bajajfd.repositories.MainRepository |
|
|
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity |
|
|
import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity |
|
|
import com.nivesh.production.bajajfd.ui.providerfactory.StepThreeModelProviderFactory |
|
|
import com.nivesh.production.bajajfd.ui.providerfactory.StepThreeModelProviderFactory |
|
|
import com.nivesh.production.bajajfd.util.Common |
|
|
|
|
|
|
|
|
import com.nivesh.production.bajajfd.util.* |
|
|
import com.nivesh.production.bajajfd.util.Common.Companion.getFileExtension |
|
|
import com.nivesh.production.bajajfd.util.Common.Companion.getFileExtension |
|
|
import com.nivesh.production.bajajfd.util.Constants |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.ImageUtil |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Resource |
|
|
|
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Constants.Companion.GetFreshToken_V2_Encrypt |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Constants.Companion.KEY_LOGINTYPE |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Constants.Companion.KEY_LOGINUSER_CODE |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Constants.Companion.KEY_LOGIN_EMAIL |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Constants.Companion.KEY_LOGIN_PASSWORD |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Constants.Companion.KEY_LOGIN_SOCIALID |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.SharedPrefrenceDataMethods.Companion.getLoginPassword |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Utility.Companion.convert_sha256 |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Utility.Companion.convert_sha256_2X |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Utility.Companion.getDeviceInfo |
|
|
|
|
|
import com.nivesh.production.bajajfd.util.Utils_Functions.Companion.getCurrentDateStamp |
|
|
import com.nivesh.production.bajajfd.viewModel.StepThreeBajajFDViewModel |
|
|
import com.nivesh.production.bajajfd.viewModel.StepThreeBajajFDViewModel |
|
|
|
|
|
import okhttp3.MediaType |
|
|
|
|
|
import okhttp3.MediaType.Companion.toMediaType |
|
|
|
|
|
import okhttp3.MediaType.Companion.toMediaTypeOrNull |
|
|
|
|
|
import okhttp3.RequestBody |
|
|
|
|
|
import okhttp3.RequestBody.Companion.toRequestBody |
|
|
|
|
|
import org.json.JSONObject |
|
|
import java.io.* |
|
|
import java.io.* |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -72,6 +87,11 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
|
|
|
|
|
private val check = arrayOf<CharSequence>("Take Photo", "Choose from Gallery", "Cancel") |
|
|
private val check = arrayOf<CharSequence>("Take Photo", "Choose from Gallery", "Cancel") |
|
|
|
|
|
|
|
|
|
|
|
private var strToken: String? = null |
|
|
|
|
|
private var strTimeStamp: String? = null |
|
|
|
|
|
private var str2Hash: String? = null |
|
|
|
|
|
private var strDeviceID: String? = null |
|
|
|
|
|
|
|
|
private val requestPermission = registerForActivityResult( |
|
|
private val requestPermission = registerForActivityResult( |
|
|
ActivityResultContracts.RequestPermission() |
|
|
ActivityResultContracts.RequestPermission() |
|
|
) { isGranted: Boolean -> |
|
|
) { isGranted: Boolean -> |
|
@ -135,6 +155,7 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
} |
|
|
} |
|
|
var uploadPosition = 0 |
|
|
var uploadPosition = 0 |
|
|
for (entry in mapImage.iterator()) { |
|
|
for (entry in mapImage.iterator()) { |
|
|
|
|
|
ProgressUtil.showLoading(activity as BajajFdMainActivity) |
|
|
uploadPosition++ |
|
|
uploadPosition++ |
|
|
uploadDocApi(entry.key, entry.value, uploadPosition) |
|
|
uploadDocApi(entry.key, entry.value, uploadPosition) |
|
|
} |
|
|
} |
|
@ -403,6 +424,7 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
activity as BajajFdMainActivity |
|
|
activity as BajajFdMainActivity |
|
|
) |
|
|
) |
|
|
stepThreeBajajFDViewModel.getDocumentUploadMutableData.observe(viewLifecycleOwner) { response -> |
|
|
stepThreeBajajFDViewModel.getDocumentUploadMutableData.observe(viewLifecycleOwner) { response -> |
|
|
|
|
|
ProgressUtil.hideLoading() |
|
|
when (response) { |
|
|
when (response) { |
|
|
is Resource.Success -> { |
|
|
is Resource.Success -> { |
|
|
Log.e("UploadImage", "Response-->" + response.data.toString()) |
|
|
Log.e("UploadImage", "Response-->" + response.data.toString()) |
|
@ -421,7 +443,7 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
createFDApi((activity as BajajFdMainActivity).createFDRequest) |
|
|
createFDApi((activity as BajajFdMainActivity).createFDRequest) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
// 650 -> refreshToken() |
|
|
|
|
|
|
|
|
650 -> refreshToken() |
|
|
else -> { |
|
|
else -> { |
|
|
Common.showDialogValidation( |
|
|
Common.showDialogValidation( |
|
|
activity as BajajFdMainActivity, |
|
|
activity as BajajFdMainActivity, |
|
@ -438,7 +460,7 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
is Resource.Loading -> { |
|
|
is Resource.Loading -> { |
|
|
|
|
|
|
|
|
|
|
|
ProgressUtil.hideLoading() |
|
|
} |
|
|
} |
|
|
is Resource.DataError -> { |
|
|
is Resource.DataError -> { |
|
|
|
|
|
|
|
@ -447,6 +469,109 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private fun refreshToken() { |
|
|
|
|
|
if (Common.isNetworkAvailable(activity as BajajFdMainActivity)) { |
|
|
|
|
|
var jsonObject: JSONObject? = null |
|
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
jsonObject = JSONObject() |
|
|
|
|
|
|
|
|
|
|
|
jsonObject.put( |
|
|
|
|
|
"Email_Mob", |
|
|
|
|
|
SharedPrefrenceDataMethods.getLoginEmail(KEY_LOGIN_EMAIL, activity) |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
jsonObject.put( |
|
|
|
|
|
"Uid", |
|
|
|
|
|
SharedPrefrenceDataMethods.getLoginUserCode(KEY_LOGINUSER_CODE, activity) |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
jsonObject.put( |
|
|
|
|
|
"Soc_Id", |
|
|
|
|
|
SharedPrefrenceDataMethods.getLoginSOCIALID(KEY_LOGIN_SOCIALID, activity) |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
val ed = EncryptionDecryption() |
|
|
|
|
|
val decryptString = ed.decrypt( |
|
|
|
|
|
getLoginPassword( |
|
|
|
|
|
KEY_LOGIN_PASSWORD, |
|
|
|
|
|
activity |
|
|
|
|
|
) |
|
|
|
|
|
) |
|
|
|
|
|
val strsha256hex_password: String? = decryptString?.let { convert_sha256(it) } |
|
|
|
|
|
Log.e( |
|
|
|
|
|
"Scheme", |
|
|
|
|
|
"LoginEmail -> " + SharedPrefrenceDataMethods.getLoginEmail( |
|
|
|
|
|
KEY_LOGIN_EMAIL, |
|
|
|
|
|
activity |
|
|
|
|
|
).toString() + ", convert_sha256-> " + strsha256hex_password |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
strTimeStamp = getCurrentDateStamp() |
|
|
|
|
|
Log.e("Scheme_strTimeStamp", "-> $strTimeStamp") |
|
|
|
|
|
|
|
|
|
|
|
if (SharedPrefrenceDataMethods.getLogin_Type(KEY_LOGINTYPE, activity) |
|
|
|
|
|
.equals("EMAIL", ignoreCase = true) |
|
|
|
|
|
) { |
|
|
|
|
|
str2Hash = convert_sha256_2X(strsha256hex_password + strTimeStamp) |
|
|
|
|
|
Log.e("Scheme_Convert_str2Hash", "-> $str2Hash") |
|
|
|
|
|
} else { |
|
|
|
|
|
str2Hash = "" |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
val deviceInfo: DeviceInfo = getDeviceInfo(activity as BajajFdMainActivity) |
|
|
|
|
|
strDeviceID = java.lang.String.valueOf(deviceInfo.device_id) |
|
|
|
|
|
Log.e("Scheme_strDeviceID", "-> $strDeviceID") |
|
|
|
|
|
|
|
|
|
|
|
jsonObject.put("DeviceId", strDeviceID) |
|
|
|
|
|
|
|
|
|
|
|
Log.e( |
|
|
|
|
|
"FreshToken_Request", |
|
|
|
|
|
"URL_API -> " + GetFreshToken_V2_Encrypt.toString() + " JsonData-> " + jsonObject.toString() + ", Header-> " + "time_stamp :" + strTimeStamp.toString() + ", Password :" + str2Hash |
|
|
|
|
|
) |
|
|
|
|
|
} catch (e: Exception) { |
|
|
|
|
|
e.printStackTrace() |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
val json = "" |
|
|
|
|
|
val JSON : MediaType = "application/json; charset=utf-8".toMediaType() |
|
|
|
|
|
val jsonBody: RequestBody = json.toRequestBody(JSON) |
|
|
|
|
|
|
|
|
|
|
|
stepThreeBajajFDViewModel.getFreshToken( |
|
|
|
|
|
jsonBody, |
|
|
|
|
|
Constants.token, |
|
|
|
|
|
activity as BajajFdMainActivity |
|
|
|
|
|
) |
|
|
|
|
|
stepThreeBajajFDViewModel.getFreshTokenMutableData.observe(viewLifecycleOwner) { response -> |
|
|
|
|
|
when (response) { |
|
|
|
|
|
is Resource.Success -> { |
|
|
|
|
|
var jsonObject1: JsonObject = response.data!! |
|
|
|
|
|
if (jsonObject1.has("Token")) { |
|
|
|
|
|
strToken = jsonObject1.get("Token").toString() |
|
|
|
|
|
strToken = jsonObject1.get("Token").toString() |
|
|
|
|
|
Log.e("Scheme", "Token-> $strToken") |
|
|
|
|
|
SharedPrefrenceDataMethods.setToken(activity, strToken) |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
is Resource.Error -> { |
|
|
|
|
|
response.message?.let { message -> |
|
|
|
|
|
Common.showDialogValidation(activity as BajajFdMainActivity, message) |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
is Resource.Loading -> { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
is Resource.DataError -> { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
private fun createFDApi(data: CreateFDRequest) { |
|
|
private fun createFDApi(data: CreateFDRequest) { |
|
|
stepThreeBajajFDViewModel.createFDApi( |
|
|
stepThreeBajajFDViewModel.createFDApi( |
|
|
data, |
|
|
data, |
|
|