|
|
@ -39,7 +39,6 @@ import com.nivesh.production.bajajfd.util.ImageUtil |
|
|
|
import com.nivesh.production.bajajfd.util.Resource |
|
|
|
import com.nivesh.production.bajajfd.viewModel.StepThreeBajajFDViewModel |
|
|
|
import java.io.* |
|
|
|
import kotlin.system.exitProcess |
|
|
|
|
|
|
|
|
|
|
|
class StepThreeBajajFDFragment : BaseFragment() { |
|
|
@ -48,9 +47,6 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
private var latestTmpUri: Uri? = null |
|
|
|
private var _binding: FragmentBajajfdStepThreeBinding? = null |
|
|
|
private val binding get() = _binding!! |
|
|
|
private lateinit var listOfDocType: List<GetCodes> |
|
|
|
private var docValue: String = "" |
|
|
|
|
|
|
|
|
|
|
|
private lateinit var stepThreeBajajFDViewModel: StepThreeBajajFDViewModel |
|
|
|
private lateinit var dialog: Dialog |
|
|
@ -66,13 +62,15 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
private var doc1FileExt: String? = "" |
|
|
|
private var doc2fileExt: String? = "" |
|
|
|
private var uniqueId: String? = "" |
|
|
|
private val MAIN_PAN_UPLOAD: Int = 1 |
|
|
|
private val MAIN_PHOTO_UPLOAD: Int = 2 |
|
|
|
private val FIRST_UPLOAD: Int = 3 |
|
|
|
private val SECOND_UPLOAD: Int = 4 |
|
|
|
private var docValue: String = "" |
|
|
|
private val mainPANUpload: Int = 1 |
|
|
|
private val mainPhotoUpload: Int = 2 |
|
|
|
private val firstDocUpload: Int = 3 |
|
|
|
private val secondDocUpload: Int = 4 |
|
|
|
private var actionType: Int = -1 |
|
|
|
|
|
|
|
private val mapImage: HashMap<String, String> = HashMap() |
|
|
|
private lateinit var listOfDocType: List<GetCodes> |
|
|
|
|
|
|
|
private val requestPermission = registerForActivityResult( |
|
|
|
ActivityResultContracts.RequestPermission() |
|
|
@ -104,7 +102,7 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
{ uri: Uri? -> |
|
|
|
if (uri != null) { |
|
|
|
bitmap = uriToBitmap(uri) |
|
|
|
uploadDocument(uri,"g") |
|
|
|
uploadDocument(uri, "g") |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@ -112,47 +110,34 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
registerForActivityResult(ActivityResultContracts.TakePicture()) { isSuccess -> |
|
|
|
if (isSuccess) { |
|
|
|
latestTmpUri?.let { uri -> |
|
|
|
uploadDocument(uri,"c") |
|
|
|
uploadDocument(uri, "c") |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
binding.btnNext.setOnClickListener { |
|
|
|
if (validate()) { |
|
|
|
|
|
|
|
// private var panString: String = "" |
|
|
|
// private var photoString: String = "" |
|
|
|
// private var docString: String = "" |
|
|
|
// private var docString2: String = "" |
|
|
|
|
|
|
|
if(panString.isNotEmpty()){ |
|
|
|
if (panString.isNotEmpty()) { |
|
|
|
mapImage["PAN"] = "data:image/".plus(panFileExt) |
|
|
|
.plus(";base64, ").plus(panString) |
|
|
|
} |
|
|
|
if(photoString.isNotEmpty()){ |
|
|
|
if (photoString.isNotEmpty()) { |
|
|
|
mapImage["Photograph"] = "data:image/".plus(photoFileExt) |
|
|
|
.plus(";base64, ").plus(photoString) |
|
|
|
} |
|
|
|
if(docString.isNotEmpty()){ |
|
|
|
if (docString.isNotEmpty()) { |
|
|
|
mapImage["docValue"] = "data:image/".plus(doc1FileExt) |
|
|
|
.plus(";base64, ").plus(docString) |
|
|
|
} |
|
|
|
if(docString2.isNotEmpty()){ |
|
|
|
if (docString2.isNotEmpty()) { |
|
|
|
mapImage["Aadhar"] = "data:image/".plus(doc2fileExt) |
|
|
|
.plus(";base64, ").plus(docString2) |
|
|
|
} |
|
|
|
|
|
|
|
var uploadPosition = 0 |
|
|
|
for (entry in mapImage.iterator()) { |
|
|
|
uploadPosition++ |
|
|
|
uploadDocApi(entry.key, entry.value, uploadPosition) |
|
|
|
} |
|
|
|
|
|
|
|
// uploadDocApi( |
|
|
|
// "PAN", |
|
|
|
// "data:image/".plus(panFileExt).plus(";base64, ").plus(panString), |
|
|
|
// 1 |
|
|
|
// ) |
|
|
|
} |
|
|
|
} |
|
|
|
binding.btnBack.setOnClickListener { |
|
|
@ -160,28 +145,28 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
} |
|
|
|
|
|
|
|
binding.btnPANUpload.setOnClickListener { |
|
|
|
actionType = MAIN_PAN_UPLOAD |
|
|
|
actionType = mainPANUpload |
|
|
|
selectImage() |
|
|
|
} |
|
|
|
|
|
|
|
binding.btnPhotoUpload.setOnClickListener { |
|
|
|
actionType = MAIN_PHOTO_UPLOAD |
|
|
|
actionType = mainPhotoUpload |
|
|
|
selectImage() |
|
|
|
} |
|
|
|
|
|
|
|
binding.btnAadhaarFrontUpload.setOnClickListener { |
|
|
|
actionType = FIRST_UPLOAD |
|
|
|
actionType = firstDocUpload |
|
|
|
selectImage() |
|
|
|
} |
|
|
|
|
|
|
|
binding.btnAadhaarBackUpload.setOnClickListener { |
|
|
|
actionType = SECOND_UPLOAD |
|
|
|
actionType = secondDocUpload |
|
|
|
selectImage() |
|
|
|
} |
|
|
|
|
|
|
|
binding.spDocType.onItemClickListener = |
|
|
|
AdapterView.OnItemClickListener { parent, _, position, _ -> |
|
|
|
val getCodes : GetCodes = parent.getItemAtPosition(position) as GetCodes |
|
|
|
val getCodes: GetCodes = parent.getItemAtPosition(position) as GetCodes |
|
|
|
docValue = getCodes.Value |
|
|
|
docString = "" |
|
|
|
docString2 = "" |
|
|
@ -283,47 +268,47 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
binding.btnAadhaarFrontUpload.visibility = View.VISIBLE |
|
|
|
} |
|
|
|
|
|
|
|
private fun uploadDocument(uri: Uri,type: String) { |
|
|
|
private fun uploadDocument(uri: Uri, type: String) { |
|
|
|
when (actionType) { |
|
|
|
MAIN_PAN_UPLOAD -> { |
|
|
|
mainPANUpload -> { |
|
|
|
binding.ivPan.visibility = View.VISIBLE |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
panFileExt = getFileExtension(getFileName(uri)) |
|
|
|
val size : Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
if (size < 5){ |
|
|
|
if(type == "c") encodedPANBase64(fileExtension) |
|
|
|
val size: Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
if (size < 5) { |
|
|
|
if (type == "c") encodedPANBase64(fileExtension) |
|
|
|
else panString = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
} else{ |
|
|
|
} else { |
|
|
|
panString = "" |
|
|
|
panFileExt = "" |
|
|
|
} |
|
|
|
} |
|
|
|
MAIN_PHOTO_UPLOAD -> { |
|
|
|
mainPhotoUpload -> { |
|
|
|
binding.ivPhotograph.visibility = View.VISIBLE |
|
|
|
binding.ivPan.visibility = View.VISIBLE |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
photoFileExt = getFileExtension(getFileName(uri)) |
|
|
|
val size : Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
val size: Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
if (size < 5) { |
|
|
|
if (type == "c") encodedPhotoBase64(fileExtension) |
|
|
|
else photoString = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
photoString = "" |
|
|
|
photoFileExt = "" |
|
|
|
} |
|
|
|
} |
|
|
|
FIRST_UPLOAD -> { |
|
|
|
firstDocUpload -> { |
|
|
|
binding.ivAadharFront.visibility = View.VISIBLE |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
doc1FileExt = getFileExtension(getFileName(uri)) |
|
|
|
val size : Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
val size: Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
if (size < 5) { |
|
|
|
if (type == "c") encodedUpload1Base64(fileExtension) |
|
|
|
else docString = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
docString = "" |
|
|
|
doc1FileExt = "" |
|
|
|
} |
|
|
@ -333,11 +318,11 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
val fileDir: File = requireActivity().cacheDir |
|
|
|
val fileExtension = File(fileDir.toString().plus("/").plus(getFileName(uri))) |
|
|
|
doc2fileExt = getFileExtension(getFileName(uri)) |
|
|
|
val size : Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
val size: Double = Common.getFileSizeInMB(fileExtension.length()) |
|
|
|
if (size < 5) { |
|
|
|
if (type == "c") encodedFileToBase64(fileExtension) |
|
|
|
else docString2 = bitmap?.let { ImageUtil.convert(it) }.toString() |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
docString2 = "" |
|
|
|
doc2fileExt = "" |
|
|
|
} |
|
|
@ -345,12 +330,11 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private fun encodedPANBase64(fileName: File) { |
|
|
|
panString = try { |
|
|
|
val bytes: ByteArray = loadFile(fileName) |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "").replace("\\s+", "") |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "") |
|
|
|
.replace("\\s+", "") |
|
|
|
} catch (e: Exception) { |
|
|
|
e.printStackTrace() |
|
|
|
"" |
|
|
@ -360,7 +344,8 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
private fun encodedPhotoBase64(fileName: File) { |
|
|
|
photoString = try { |
|
|
|
val bytes: ByteArray = loadFile(fileName) |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "").replace("\\s+", "") |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "") |
|
|
|
.replace("\\s+", "") |
|
|
|
} catch (e: Exception) { |
|
|
|
e.printStackTrace() |
|
|
|
"" |
|
|
@ -370,7 +355,8 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
private fun encodedUpload1Base64(fileName: File) { |
|
|
|
docString = try { |
|
|
|
val bytes: ByteArray = loadFile(fileName) |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "").replace("\\s+", "") |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "") |
|
|
|
.replace("\\s+", "") |
|
|
|
} catch (e: Exception) { |
|
|
|
e.printStackTrace() |
|
|
|
"" |
|
|
@ -380,7 +366,8 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
private fun encodedFileToBase64(fileName: File) { |
|
|
|
docString2 = try { |
|
|
|
val bytes: ByteArray = loadFile(fileName) |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "").replace("\\s+", "") |
|
|
|
Base64.encodeToString(bytes, Base64.DEFAULT).trim().replace("\n", "") |
|
|
|
.replace("\\s+", "") |
|
|
|
} catch (e: Exception) { |
|
|
|
e.printStackTrace() |
|
|
|
"" |
|
|
@ -430,43 +417,15 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
when (code) { |
|
|
|
200 -> { |
|
|
|
Log.e("check_upload_res", response.message.toString()) |
|
|
|
if(uploadPosition == mapImage.size){ |
|
|
|
// Common.showDialogValidation( |
|
|
|
// activity as BajajFdMainActivity, |
|
|
|
// "Documents Uploaded Successfully") |
|
|
|
Toast.makeText(requireActivity(),"Documents Uploaded Successfully",Toast.LENGTH_SHORT).show() |
|
|
|
if (uploadPosition == mapImage.size) { |
|
|
|
Toast.makeText( |
|
|
|
requireActivity(), |
|
|
|
"Documents Uploaded Successfully", |
|
|
|
Toast.LENGTH_SHORT |
|
|
|
).show() |
|
|
|
createFDApi((activity as BajajFdMainActivity).createFDRequest) |
|
|
|
} |
|
|
|
// if (uploadPosition == 1) { |
|
|
|
// uploadDocApi( |
|
|
|
// "Photograph", |
|
|
|
// "data:image/".plus(photoFileExt).plus(";base64, ") |
|
|
|
// .plus(photoString), |
|
|
|
// 2 |
|
|
|
// ) |
|
|
|
// } else if (uploadPosition == 2) { |
|
|
|
// uploadDocApi( |
|
|
|
// docValue, |
|
|
|
// "data:image/".plus(doc1FileExt).plus(";base64, ") |
|
|
|
// .plus(docString), |
|
|
|
// 3 |
|
|
|
// ) |
|
|
|
// } else if (uploadPosition == 3) { |
|
|
|
// if (docValue == "Aadhar") { |
|
|
|
// uploadDocApi( |
|
|
|
// docValue, |
|
|
|
// "data:image/".plus(doc2fileExt).plus(";base64, ") |
|
|
|
// .plus(docString2), |
|
|
|
// 4 |
|
|
|
// ) |
|
|
|
// } else { |
|
|
|
// createFDApi((activity as BajajFdMainActivity).createFDRequest) |
|
|
|
// } |
|
|
|
// } else if (uploadPosition == 4) { |
|
|
|
// createFDApi((activity as BajajFdMainActivity).createFDRequest) |
|
|
|
// } |
|
|
|
} |
|
|
|
|
|
|
|
// 650 -> refreshToken() |
|
|
|
else -> { |
|
|
|
Common.showDialogValidation( |
|
|
@ -541,9 +500,7 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private fun docTypeApi() { |
|
|
|
|
|
|
|
val getCodeRequest = GetCodeRequest() |
|
|
|
getCodeRequest.ProductName = getString(R.string.bajajFD) |
|
|
|
getCodeRequest.Category = getString(R.string.docType) |
|
|
@ -607,7 +564,6 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private fun validate(): Boolean { |
|
|
|
if (panString.isEmpty()) { |
|
|
|
Common.showDialogValidation( |
|
|
@ -660,19 +616,14 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
) |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
override fun onDestroyView() { |
|
|
|
super.onDestroyView() |
|
|
|
_binding = null |
|
|
|
} |
|
|
|
|
|
|
|
fun displayReceivedData(createFDApplicationResponse: CreateFDApplicationResponse) { |
|
|
|
uniqueId = createFDApplicationResponse.Response.FDCreationDetailsResponse.UniqueId |
|
|
|
} |
|
|
|
|
|
|
|
private fun uriToBitmap(selectedFileUri: Uri): Bitmap? { |
|
|
|
try { |
|
|
|
val parcelFileDescriptor = requireActivity().contentResolver.openFileDescriptor(selectedFileUri, "r") |
|
|
|
val parcelFileDescriptor = |
|
|
|
requireActivity().contentResolver.openFileDescriptor(selectedFileUri, "r") |
|
|
|
val fileDescriptor: FileDescriptor = parcelFileDescriptor!!.fileDescriptor |
|
|
|
val image = BitmapFactory.decodeFileDescriptor(fileDescriptor) |
|
|
|
parcelFileDescriptor.close() |
|
|
@ -682,4 +633,9 @@ class StepThreeBajajFDFragment : BaseFragment() { |
|
|
|
} |
|
|
|
return null |
|
|
|
} |
|
|
|
|
|
|
|
override fun onDestroyView() { |
|
|
|
super.onDestroyView() |
|
|
|
_binding = null |
|
|
|
} |
|
|
|
} |