|
|
@ -8,13 +8,10 @@ import android.content.Intent |
|
|
|
import android.content.pm.PackageManager |
|
|
|
import android.database.Cursor |
|
|
|
import android.graphics.Bitmap |
|
|
|
import android.graphics.BitmapRegionDecoder |
|
|
|
import android.graphics.ImageDecoder |
|
|
|
import android.graphics.Rect |
|
|
|
import android.graphics.BitmapFactory |
|
|
|
import android.net.Uri |
|
|
|
import android.os.Build |
|
|
|
import android.os.Bundle |
|
|
|
import android.provider.MediaStore |
|
|
|
import android.provider.OpenableColumns |
|
|
|
import android.util.Base64 |
|
|
|
import android.util.Log |
|
|
@ -40,16 +37,15 @@ import com.nivesh.production.bajajfd.ui.activity.BajajFdMainActivity |
|
|
|
import com.nivesh.production.bajajfd.ui.providerfactory.StepThreeModelProviderFactory |
|
|
|
import com.nivesh.production.bajajfd.util.Common |
|
|
|
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.viewModel.StepThreeBajajFDViewModel |
|
|
|
import java.io.File |
|
|
|
import java.io.FileInputStream |
|
|
|
import java.io.IOException |
|
|
|
import java.io.InputStream |
|
|
|
import java.io.* |
|
|
|
|
|
|
|
|
|
|
|
class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
|
|
|
|
var bitmap: Bitmap? = null |
|
|
|
private var latestTmpUri: Uri? = null |
|
|
|
private var _binding: FragmentBajajfdStepThreeBinding? = null |
|
|
|
private val binding get() = _binding!! |
|
|
@ -116,14 +112,8 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
selectImageIntent = registerForActivityResult(ActivityResultContracts.GetContent()) |
|
|
|
{ uri: Uri? -> |
|
|
|
if (uri != null) { |
|
|
|
val source = ImageDecoder.createSource(requireActivity().contentResolver, uri) |
|
|
|
val bitmap = ImageDecoder.decodeBitmap(source) |
|
|
|
|
|
|
|
// External sdcard location |
|
|
|
// val mediaStorageDir = File( |
|
|
|
// requireActivity().cacheDir, |
|
|
|
// ) |
|
|
|
// uploadDocument(uri) |
|
|
|
bitmap = uriToBitmap(uri) |
|
|
|
uploadDocument(uri,"g") |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@ -131,7 +121,7 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
registerForActivityResult(ActivityResultContracts.TakePicture()) { isSuccess -> |
|
|
|
if (isSuccess) { |
|
|
|
latestTmpUri?.let { uri -> |
|
|
|
uploadDocument(uri) |
|
|
|
uploadDocument(uri,"c") |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -291,14 +281,15 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
binding.btnAadhaarFrontUpload.visibility = View.VISIBLE |
|
|
|
} |
|
|
|
|
|
|
|
private fun uploadDocument(uri: Uri) { |
|
|
|
private fun uploadDocument(uri: Uri,type: String) { |
|
|
|
when (actionType) { |
|
|
|
MAIN_PAN_UPLOAD -> { |
|
|
|
binding.ivPan.visibility = View.VISIBLE |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
panFileExt = fileExtension.extension |
|
|
|
encodedPANBase64(fileExtension) |
|
|
|
if(type == "c") encodedPANBase64(fileExtension) |
|
|
|
else panString = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
} |
|
|
|
MAIN_PHOTO_UPLOAD -> { |
|
|
|
binding.ivPhotograph.visibility = View.VISIBLE |
|
|
@ -306,21 +297,25 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
photoFileExt = fileExtension.extension |
|
|
|
encodedPhotoBase64(fileExtension) |
|
|
|
if(type == "c") encodedPhotoBase64(fileExtension) |
|
|
|
else photoString = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
|
|
|
|
} |
|
|
|
FIRST_UPLOAD -> { |
|
|
|
binding.ivAadharFront.visibility = View.VISIBLE |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
doc1FileExt = fileExtension.extension |
|
|
|
encodedUpload1Base64(fileExtension) |
|
|
|
if(type == "c") encodedUpload1Base64(fileExtension) |
|
|
|
else docString = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
} |
|
|
|
else -> { |
|
|
|
binding.ivAadharBack.visibility = View.VISIBLE |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
doc2fileExt = fileExtension.extension |
|
|
|
encodedFileToBase64(fileExtension) |
|
|
|
if(type == "c") encodedFileToBase64(fileExtension) |
|
|
|
else docString2 = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -642,4 +637,17 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
fun displayReceivedData(createFDApplicationResponse: CreateFDApplicationResponse) { |
|
|
|
uniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId |
|
|
|
} |
|
|
|
|
|
|
|
private fun uriToBitmap(selectedFileUri: Uri): Bitmap? { |
|
|
|
try { |
|
|
|
val parcelFileDescriptor = requireActivity().contentResolver.openFileDescriptor(selectedFileUri, "r") |
|
|
|
val fileDescriptor: FileDescriptor = parcelFileDescriptor!!.fileDescriptor |
|
|
|
val image = BitmapFactory.decodeFileDescriptor(fileDescriptor) |
|
|
|
parcelFileDescriptor.close() |
|
|
|
return image |
|
|
|
} catch (e: IOException) { |
|
|
|
e.printStackTrace() |
|
|
|
} |
|
|
|
return null |
|
|
|
} |
|
|
|
} |