From 7614a95489264e782b936015eb18f30fc643d767 Mon Sep 17 00:00:00 2001 From: Mathieu Sanchez Date: Wed, 15 Apr 2020 18:57:28 +0200 Subject: [PATCH] Update Kotlin Version Remove Room library Adding QRUtils and PdfUtils --- app/build.gradle | 9 ++- app/src/main/assets/attestation.pdf | Bin 0 -> 137668 bytes .../attestationsCovid19/MainActivity.kt | 12 ++++ .../data/db/entity/Attestation.kt | 11 +--- .../data/db/entity/Profile.kt | 11 +--- .../data/repository/AttestationRepository.kt | 6 ++ .../attestationsCovid19/ui/add/AddFragment.kt | 2 +- .../ui/add/AddViewModel.kt | 26 ++++++++ .../attestationsCovid19/utilities/PdfUtils.kt | 59 ++++++++++++++++++ .../utilities/QRCodeUtils.kt | 17 +++++ .../res/layout/fragment_add_attestation.xml | 6 +- build.gradle | 2 +- 12 files changed, 137 insertions(+), 24 deletions(-) create mode 100644 app/src/main/assets/attestation.pdf create mode 100644 app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/PdfUtils.kt create mode 100644 app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/QRCodeUtils.kt diff --git a/app/build.gradle b/app/build.gradle index 7426c18..ee40606 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -64,11 +64,11 @@ dependencies { implementation 'androidx.navigation:navigation-ui-ktx:2.2.1' // Room - implementation 'androidx.room:room-runtime:2.2.5' +// implementation 'androidx.room:room-runtime:2.2.5' implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0' - kapt 'androidx.room:room-compiler:2.2.5' +// kapt 'androidx.room:room-compiler:2.2.5' // PDF implementation 'com.tom_roush:pdfbox-android:1.8.10.1' @@ -76,6 +76,11 @@ dependencies { // Gson implementation 'com.google.code.gson:gson:2.8.6' + // QRCode + implementation 'com.google.zxing:core:3.4.0' + //noinspection GradleDependency + implementation 'com.journeyapps:zxing-android-embedded:3.6.0' + testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' diff --git a/app/src/main/assets/attestation.pdf b/app/src/main/assets/attestation.pdf new file mode 100644 index 0000000000000000000000000000000000000000..22e0e02e25a8367368ba055831b5ee94006b7fc5 GIT binary patch literal 137668 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 z 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 IKZ*1I4;jnk6aWAK literal 0 HcmV?d00001 diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/MainActivity.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/MainActivity.kt index bb20fda..1f8bb58 100644 --- a/app/src/main/java/fr/sanchezm/attestationsCovid19/MainActivity.kt +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/MainActivity.kt @@ -5,6 +5,9 @@ import androidx.appcompat.app.AppCompatActivity import androidx.navigation.findNavController import androidx.navigation.ui.setupWithNavController import com.google.android.material.bottomnavigation.BottomNavigationView +import com.tom_roush.pdfbox.util.PDFBoxResourceLoader +import fr.sanchezm.attestationsCovid19.utilities.PdfUtils +import java.io.File class MainActivity : AppCompatActivity() { @@ -16,8 +19,17 @@ class MainActivity : AppCompatActivity() { val navController = findNavController(R.id.nav_host_fragment) + PDFBoxResourceLoader.init(applicationContext) + PdfUtils.getInstance(assets, getMyFilesDir()) actionBar?.hide() navView.setupWithNavController(navController) navView.setBackgroundColor(resources.getColor(R.color.itemBackground, theme)) } + + private fun getMyFilesDir(): File? { + val path = getExternalFilesDir(null) + + path ?: filesDir + return path + } } \ No newline at end of file diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Attestation.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Attestation.kt index f1037e1..a83435d 100644 --- a/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Attestation.kt +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Attestation.kt @@ -1,22 +1,15 @@ package fr.sanchezm.attestationsCovid19.data.db.entity -import androidx.room.Entity -import androidx.room.PrimaryKey import java.lang.StringBuilder -const val CURRENT_ATTESTATION_ID = 0 - -@Entity(tableName = "attestation") +//@Entity(tableName = "attestation") data class Attestation( val profile: Profile, val exitDate: String, val exitHour: String, - val createAt: String, + val createAt: Long, val reasons: List ) { - @PrimaryKey - var id: Int = CURRENT_ATTESTATION_ID - override fun toString(): String { val motifs = StringBuilder() diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Profile.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Profile.kt index 310c9da..23a8d36 100644 --- a/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Profile.kt +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/data/db/entity/Profile.kt @@ -1,11 +1,6 @@ package fr.sanchezm.attestationsCovid19.data.db.entity -import androidx.room.Entity -import androidx.room.PrimaryKey - -const val CURRENT_PROFILE_ID = 0 - -@Entity(tableName = "profile") +//@Entity(tableName = "profile") data class Profile( val firstName: String, val lastName: String, @@ -15,8 +10,8 @@ data class Profile( val city: String, val postalCode: String ) { - @PrimaryKey - var id: Int = CURRENT_PROFILE_ID +// @PrimaryKey +// var id: Int = CURRENT_PROFILE_ID override fun toString(): String { return "Nom: $firstName; Prenom: $lastName; Naissance: $birthday a $birthPlace; Adresse: $address $postalCode $city" diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/data/repository/AttestationRepository.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/data/repository/AttestationRepository.kt index caaf8d6..85665a9 100644 --- a/app/src/main/java/fr/sanchezm/attestationsCovid19/data/repository/AttestationRepository.kt +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/data/repository/AttestationRepository.kt @@ -1,9 +1,15 @@ package fr.sanchezm.attestationsCovid19.data.repository import fr.sanchezm.attestationsCovid19.data.db.dao.AttestationDao +import fr.sanchezm.attestationsCovid19.data.db.entity.Attestation +import fr.sanchezm.attestationsCovid19.utilities.PdfUtils class AttestationRepository private constructor(private val attestationDao: AttestationDao) { + fun generateAttestation(attestation: Attestation) { + PdfUtils.getInstance()?.fillForm(attestation) + } + companion object { @Volatile private var instance: AttestationRepository? = null diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddFragment.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddFragment.kt index e2bfd50..220b735 100644 --- a/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddFragment.kt +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddFragment.kt @@ -33,7 +33,7 @@ class AddFragment : Fragment() { this.viewModel = addViewModel } - bindMessage(binding.context) + bindMessage(binding.constraintContext) return binding.root } diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddViewModel.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddViewModel.kt index d4bcb14..8aa17c1 100644 --- a/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddViewModel.kt +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/ui/add/AddViewModel.kt @@ -7,6 +7,7 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import fr.sanchezm.attestationsCovid19.R +import fr.sanchezm.attestationsCovid19.data.db.entity.Attestation import fr.sanchezm.attestationsCovid19.data.db.entity.Profile import fr.sanchezm.attestationsCovid19.data.repository.AttestationRepository import fr.sanchezm.attestationsCovid19.data.repository.ProfileRepository @@ -51,6 +52,7 @@ class AddViewModel( fun onGenerateAttestationClick() { if (checkAllValue()) { profileRepository.insertProfile(getProfileFromView()) + attestationRepository.generateAttestation(getAttestation()) } else { _errorMessage.value = Event(R.string.error_cannot_create_attestation) Log.e("onGenerateAttestationClick", "Cannot generate Attestation") @@ -99,6 +101,30 @@ class AddViewModel( ) } + private fun getAttestation(): Attestation { + return Attestation( + getProfileFromView(), + exitDate.value.toString(), + exitHour.value.toString(), + Date().time, + getReasons() + ) + } + + private fun getReasons(): List { + val reasons = ArrayList() + + if (reason1.value!!) reasons.add(1) + if (reason2.value!!) reasons.add(2) + if (reason3.value!!) reasons.add(3) + if (reason4.value!!) reasons.add(4) + if (reason5.value!!) reasons.add(5) + if (reason6.value!!) reasons.add(6) + if (reason7.value!!) reasons.add(7) + + return reasons + } + private fun checkAllValue(): Boolean { return !firstName.value.isNullOrEmpty() && !lastName.value.isNullOrEmpty() diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/PdfUtils.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/PdfUtils.kt new file mode 100644 index 0000000..b04c51d --- /dev/null +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/PdfUtils.kt @@ -0,0 +1,59 @@ +package fr.sanchezm.attestationsCovid19.utilities + +import android.content.res.AssetManager +import com.tom_roush.pdfbox.pdmodel.PDDocument +import com.tom_roush.pdfbox.pdmodel.interactive.form.* +import fr.sanchezm.attestationsCovid19.data.db.entity.Attestation +import java.io.File +import java.io.IOException + +class PdfUtils private constructor(private val assetManager: AssetManager, private val path: File?) { + + private val folderPath = "/attestations/" + + fun fillForm (attestation: Attestation) { + try { + // Load the document and get the AcroForm + val document: PDDocument = PDDocument.load(assetManager.open("attestation.pdf")) + val docCatalog = document.documentCatalog + val acroForm = docCatalog.acroForm + + // Fill the text field + val field = acroForm.getField("TextField") as PDTextField + field.value = "Filled Text Field" + // Optional: don't allow this field to be edited + field.isReadOnly = true + val checkbox = acroForm.getField("Checkbox") + (checkbox as PDCheckbox).check() +// val radio = acroForm.getField("Radio") +// (radio as PDRadioButton).value = "Second" +// val listbox = acroForm.getField("ListBox") +// val listValues: MutableList = ArrayList() +// listValues.add(1) +// listValues.add(2) +// (listbox as PDListBox).selectedOptionsIndex = listValues +// val dropdown = acroForm.getField("Dropdown") +// (dropdown as PDComboBox).setValue("Hello") + val path = "" +// val path: String = root.getAbsolutePath().toString() + "/Download/FilledForm.pdf" +// tv.setText("Saved filled form to $path") + document.save(path) + document.close() + } catch (e: IOException) { + e.printStackTrace() + } + } + + companion object { + @Volatile + private var instance: PdfUtils? = null + private val LOCK = Any() + + fun getInstance() = instance + + fun getInstance(assetManager: AssetManager, path: File?) = instance ?: synchronized(LOCK) { + instance ?: PdfUtils(assetManager, path).also { instance = it } + } + } + +} \ No newline at end of file diff --git a/app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/QRCodeUtils.kt b/app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/QRCodeUtils.kt new file mode 100644 index 0000000..fab1679 --- /dev/null +++ b/app/src/main/java/fr/sanchezm/attestationsCovid19/utilities/QRCodeUtils.kt @@ -0,0 +1,17 @@ +package fr.sanchezm.attestationsCovid19.utilities + +import android.graphics.Bitmap +import com.google.zxing.BarcodeFormat +import com.google.zxing.MultiFormatWriter +import com.journeyapps.barcodescanner.BarcodeEncoder +import fr.sanchezm.attestationsCovid19.data.db.entity.Attestation + + +class QRCodeUtils { + + fun getQrCode(attestation: Attestation): Bitmap = + BarcodeEncoder().createBitmap(getMultiFormatWriter(attestation)) + + private fun getMultiFormatWriter(attestation: Attestation) = + MultiFormatWriter().encode(attestation.toString(), BarcodeFormat.QR_CODE, 150, 150) +} \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_add_attestation.xml b/app/src/main/res/layout/fragment_add_attestation.xml index d97a72f..258b519 100644 --- a/app/src/main/res/layout/fragment_add_attestation.xml +++ b/app/src/main/res/layout/fragment_add_attestation.xml @@ -1,7 +1,8 @@ + xmlns:app="http://schemas.android.com/apk/res-auto" + tools:context=".ui.add.AddFragment"> @@ -13,8 +14,7 @@ + android:id="@+id/constraintContext">