pankaj 2 years ago
parent
commit
6eaae8f1f1
2 changed files with 44 additions and 92 deletions
  1. +43
    -92
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt
  2. +1
    -0
      app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepTwoBajajFDFragment.kt

+ 43
- 92
app/src/main/java/com/nivesh/production/bajajfd/ui/fragment/StepThreeBajajFDFragment.kt View File

@ -2,14 +2,12 @@ package com.nivesh.production.bajajfd.ui.fragment
import android.Manifest
import android.annotation.SuppressLint
import android.app.Activity
import android.content.DialogInterface
import android.content.pm.PackageManager
import android.database.Cursor
import android.graphics.Bitmap
import android.graphics.BitmapFactory
import android.net.Uri
import android.os.Build
import android.os.Bundle
import android.provider.OpenableColumns
import android.util.Base64
@ -21,7 +19,6 @@ import android.widget.*
import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.contract.ActivityResultContracts
import androidx.appcompat.app.AlertDialog
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import androidx.core.content.FileProvider
import androidx.fragment.app.Fragment
@ -39,10 +36,8 @@ import com.nivesh.production.bajajfd.util.ImageUtil
import com.nivesh.production.bajajfd.util.Resource
import java.io.*
class StepThreeBajajFDFragment : Fragment() {
private var _binding: FragmentBajajfdStepThreeBinding? = null
private val binding get() = _binding!!
@ -53,6 +48,7 @@ class StepThreeBajajFDFragment : Fragment() {
private val mapImage: HashMap<String, String> = HashMap()
private lateinit var listOfDocType: List<GetCodes>
private var check: Array<String>? = null
private var panString: String = ""
private var photoString: String = ""
@ -69,49 +65,17 @@ class StepThreeBajajFDFragment : Fragment() {
private val secondDocUpload: Int = 4
private var actionType: Int = -1
private val permissions = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
arrayOf(
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_MEDIA_IMAGES
)
} else {
arrayOf(
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE
)
}
private val askPermissions = mutableListOf<String>()
private val requestCameraPermission = registerForActivityResult(
private val requestPermission = registerForActivityResult(
ActivityResultContracts.RequestPermission()
) { isGranted: Boolean ->
if (isGranted) {
Log.e("Permission: ", "Granted")
Log.e("permission:", "Granted")
} else {
Log.e("Permission: ", "Denied")
Log.e("permission:", "Denied")
}
}
private val requestGalleryPermission = registerForActivityResult(
ActivityResultContracts.RequestMultiplePermissions()
) { permission ->
if (!permission.containsValue(false)){
selectImageIntent?.launch("image/*")
}else{
// for (permissionObj in permissions) {
// if (ContextCompat.checkSelfPermission(activity as BajajFdMainActivity, permissionObj) != PackageManager.PERMISSION_GRANTED) {
// askPermissions.add(permissionObj)
// }
// }
// if (askPermissions.isNotEmpty()){
// requestGalleryPermission.launch(askPermissions)
// }
}
}
override fun onCreateView(
@ -126,6 +90,12 @@ class StepThreeBajajFDFragment : Fragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
check = arrayOf(
getString(R.string.takePhoto),
getString(R.string.chooseFromGallery),
getString(R.string.cancel)
)
selectImageIntent = registerForActivityResult(ActivityResultContracts.GetContent())
{ uri: Uri? ->
if (uri != null) {
@ -243,76 +213,57 @@ class StepThreeBajajFDFragment : Fragment() {
getString(R.string.chooseFromGallery),
getString(R.string.cancel)
)
) { dialog: DialogInterface, pos ->
when (pos) {
)
{ dialog: DialogInterface, pos ->
when(pos)
{
0 -> {
if (hasPermissions(
activity as BajajFdMainActivity,
Manifest.permission.CAMERA
)
) {
val permission = ContextCompat.checkSelfPermission(
activity as BajajFdMainActivity,
Manifest.permission.CAMERA
)
if (permission == PackageManager.PERMISSION_GRANTED) {
takeImage()
} else {
onClickRequestPermission()
requestPermission.launch(
Manifest.permission.CAMERA
)
}
dialog.dismiss()
}
1 -> {
if (hasPermissions(activity as BajajFdMainActivity, *permissions)) {
1->
{
val permission = ContextCompat.checkSelfPermission(
activity as BajajFdMainActivity,
Manifest.permission.READ_EXTERNAL_STORAGE
)
if (permission == PackageManager.PERMISSION_GRANTED) {
selectImageIntent?.launch("image/*")
} else {
requestGalleryPermission.launch(permissions)
requestPermission.launch(
Manifest.permission.READ_EXTERNAL_STORAGE
)
}
dialog.dismiss()
}
else -> {
else->
{
dialog.dismiss()
}
}
}
builder.show()
}
private fun hasPermissions(activity: Activity, vararg permissions: String?): Boolean {
for (permission in permissions) {
if (ActivityCompat.checkSelfPermission(
activity,
permission!!
) != PackageManager.PERMISSION_GRANTED
) {
return false
}
}
return true
}
fun onClickRequestPermission() {
when {
ContextCompat.checkSelfPermission(
activity as BajajFdMainActivity,
Manifest.permission.CAMERA
) == PackageManager.PERMISSION_GRANTED -> {
}
ActivityCompat.shouldShowRequestPermissionRationale(
activity as BajajFdMainActivity,
Manifest.permission.CAMERA
) -> {
requestCameraPermission.launch(
Manifest.permission.CAMERA
)
}
}
else -> {
requestCameraPermission.launch(
Manifest.permission.CAMERA
)
}
}
builder.show()
}
private fun setOtherUploadLayout(itemName: String?) {
binding.tvAadhaarFront.text = itemName.plus(" Front *")
if (binding.tvAadhaarBack.visibility == View.VISIBLE) binding.tvAadhaarBack.visibility =


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

@ -69,6 +69,7 @@ class StepTwoBajajFDFragment : Fragment() {
private lateinit var rbBank: RadioButton
private lateinit var rbPaymentMode: RadioButton
private var cal = Calendar.getInstance()
override fun onCreateView(


Loading…
Cancel
Save

Powered by TurnKey Linux.