diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 00000000..e3c7b55e
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,50 @@
+name: develop-comores
+
+on:
+ push:
+ branches: [ "develop-comores" ]
+ pull_request:
+ branches: [ "develop-comores" ]
+
+jobs:
+ build:
+ name: Build APK
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v3
+
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
+ with:
+ distribution: 'temurin'
+ java-version: 17
+
+ - name: Decode keystore
+ run: |
+ echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 --decode > policies_comores.jks
+
+ - name: Set up Gradle
+ uses: gradle/gradle-build-action@v2
+ with:
+ cache-disabled: true
+
+ - name: Build release APK
+ run: ./gradlew assembleComoresDevDebug
+ env:
+ KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
+ KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
+ KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
+
+ - name: Rename APK
+ run: mv app/build/outputs/apk/comoresDev/debug/app-comoresDev-debug.apk policies-comores-test.apk
+
+ - name: List APK files
+ run: ls -l policies-comores-test.apk
+
+ - name: Upload APK
+ uses: actions/upload-artifact@v4
+ with:
+ name: policies-comores-test.apk
+ path: policies-comores-test.apk
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index c73fdaf8..2fde40a3 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -3,7 +3,7 @@ name: CI
on:
push:
branches:
- - '*'
+ - 'develop-comores'
# tags:
# - '!v*'
@@ -27,26 +27,26 @@ jobs:
- name: build
run: |
- ./gradlew assembleDebug --stacktrace
+ ./gradlew assemblecomoresDevDebug --stacktrace
- name: Environment info
run: |
gradle --version
- - uses: actions/upload-artifact@v2
+ - uses: actions/upload-artifact@v4
with:
- name: openimis-policies-apk-${{github.run_number}}-${{github.sha}}
+ name: policies-comores-apk-${{github.run_number}}.apk
path: ./app/build/outputs/**/*.apk
- name: build
run: |
- ./gradlew bundleDebug --stacktrace
+ ./gradlew bundlecomoresDevDebug --stacktrace
- name: Environment info
run: |
gradle --version
- - uses: actions/upload-artifact@v2
+ - uses: actions/upload-artifact@v4
with:
- name: openimis-policies-aab-${{github.run_number}}-${{github.sha}}
+ name: policies-comores-aab-${{github.run_number}}.aab
path: ./app/build/outputs/**/*.aab
diff --git a/.github/workflows/manual.yml b/.github/workflows/manual.yml
index afb900a3..1bb4af90 100644
--- a/.github/workflows/manual.yml
+++ b/.github/workflows/manual.yml
@@ -6,27 +6,7 @@ on:
api_base_url:
description: URL of the REST API
required: true
- default: https://release.openimis.org/rest/
- app_name:
- description: Display name of the application
- required: false
- default: Policies Manual
- app_dir:
- description: Name of the folder in Documents, default IMIS-CLI
- required: false
- application_id:
- description: Fully qualified name of the app
- required: true
- default: org.openimis.imispolicies.cli
- cli_java_dir:
- description: java source folder for custom functions. Only works with application_id_suffix .cli
- required: false
- cli_res_dir:
- description: Resources folder for icons. Only works with application_id_suffix .cli
- required: false
- cli_assets_dir:
- description: Asserts folder for images, json files.... Only works with .cli
- required: false
+ default: https://test.amg.km/rest/
# Branch is chosen by default in github manual actions
jobs:
@@ -34,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v4
- name: Setup JDK 17
uses: actions/setup-java@v2
@@ -43,14 +23,14 @@ jobs:
java-version: '17'
cache: 'gradle'
- - uses: actions/cache@v2
+ - uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-${{ github.event.inputs.application_id }}-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}-${{ hashFiles('**/buildSrc/**/*.kt') }}
- - uses: actions/cache@v2
+ - uses: actions/cache@v4
with:
path: |
~/.android
@@ -62,31 +42,19 @@ jobs:
echo url ${{ github.event.inputs.api_base_url }}
echo app name ${{ github.event.inputs.app_name }}
- echo app dir ${{ github.event.inputs.app_dir }}
- echo CLI_JAVA_DIR "${{ github.event.inputs.cli_java_dir }}"
- echo CLI_RES_DIR "${{ github.event.inputs.cli_res_dir }}"
- echo CLI_ASSETS_DIR "${{ github.event.inputs.cli_assets_dir }}"
- echo APPLICATION_ID "${{ github.event.inputs.application_id }}"
-
- name: build
run: |
- ./gradlew assembleCliDebug --stacktrace
+ ./gradlew assembleComoresDevDebug --stacktrace
env:
API_BASE_URL: "${{ github.event.inputs.api_base_url }}"
- CLI_APP_NAME: "${{ github.event.inputs.app_name }}"
- CLI_APP_DIR: "${{ github.event.inputs.app_dir }}"
- CLI_JAVA_DIR: "${{ github.event.inputs.cli_java_dir }}"
- CLI_RES_DIR: "${{ github.event.inputs.cli_res_dir }}"
- CLI_ASSETS_DIR: "${{ github.event.inputs.cli_assets_dir }}"
- APPLICATION_ID: "${{ github.event.inputs.application_id }}"
- name: Environment info
run: |
gradle --version
- - uses: actions/upload-artifact@v2
+ - uses: actions/upload-artifact@v4
with:
- name: openimis-policies-apk-${{github.run_number}}-${{github.sha}}
+ name: policies-comores-apk-${{github.run_number}}.apk
path: ./app/build/outputs/**/*.apk
# - name: build
diff --git a/.gitignore b/.gitignore
index f9061fb5..8cb4b228 100644
--- a/.gitignore
+++ b/.gitignore
@@ -60,7 +60,7 @@ fastlane/test_output
fastlane/readme.md
app/release/output.json
-**/.DS_Store
+.DS_Store
# Custom product flavours
diff --git a/LICENSE.md b/LICENSE.md
index 85f8c871..9cfaf249 100644
--- a/LICENSE.md
+++ b/LICENSE.md
@@ -11,3 +11,4 @@ Limitation of Liability
In no event unless required by applicable law or agreed to in writing will any copyright holder, or any other party who modifies and/or conveys the program as permitted above, be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if such holder or other party has been advised of the possibility of such damages.
In case of dispute arising out or in relation to the use of the program, it is subject to the public law of Switzerland. The place of jurisdiction is Berne.
+
diff --git a/README.md b/README.md
index 884f6271..cc418862 100644
--- a/README.md
+++ b/README.md
@@ -17,8 +17,6 @@ In order to use and develop the openIMIS IMIS Android Application
on your local machine, you first need to install:
* [Android Studio with Android SDK](https://developer.android.com/studio)
-* [openIMIS Web Services](https://github.com/openimis/web_service_vb)
-
### Installation
diff --git a/app/build.gradle b/app/build.gradle
index b19ba210..be89e679 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -38,7 +38,7 @@ android {
minSdkVersion 21
targetSdkVersion 33
versionCode gitVersionCode
- versionName gitVersionName
+ versionName "1.3.5"
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
vectorDrawables {
useSupportLibrary = true
@@ -92,6 +92,13 @@ android {
resValue "string", "app_name_policies", "Policies Release"
dimension = 'std'
}
+ comoresDev {
+ applicationId "org.openimis.imispolicies.comoresDev"
+ buildConfigField "String", "API_BASE_URL", '"https://dev.amg.km/"'
+ resValue "string", "app_name_policies", "Policies Comores Dev"
+ dimension = 'std'
+ resValue "string", "release_tag", "comores-dev"
+ }
chfDev {
applicationId "org.openimis.imispolicies.chfdev"
buildConfigField "String", "API_BASE_URL", '"http://chf-dev.swisstph-mis.ch/"'
@@ -152,6 +159,9 @@ android {
}
}
sourceSets {
+ comoresDev.java.srcDir 'src/master/java'
+ comoresDev.res.srcDirs = ['src/master/res', 'src/localeMv/res']
+
chfDev.java.srcDir 'src/chf/java'
chfDev.res.srcDirs = ['src/chf/res', 'src/localeChf/res']
@@ -244,5 +254,4 @@ dependencies {
androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0', {
exclude group: 'com.android.support', module: 'support-annotations'
})
- testImplementation 'junit:junit:4.13.2'
}
diff --git a/app/csuDev/release/policies-vih.aab b/app/csuDev/release/policies-vih.aab
new file mode 100644
index 00000000..44a9d994
Binary files /dev/null and b/app/csuDev/release/policies-vih.aab differ
diff --git a/app/src/localeMv/res/values-en/strings.xml b/app/src/localeMv/res/values-en/strings.xml
index 9d113651..de5759e5 100644
--- a/app/src/localeMv/res/values-en/strings.xml
+++ b/app/src/localeMv/res/values-en/strings.xml
@@ -207,6 +207,7 @@
Release DateTotal FamiliesTotal Insurees
+ Total AttachmentsTotal PoliciesTotal ContributionsUpload Enrolments
@@ -477,4 +478,16 @@
Current resource language: %1$sCurrent system language is not supported. The app will use the default language.Supported languages:\n%1$s
+ Payment day
+ Periodicity
+ Check for updates
+
+
+ Select disability
+ Select disease
+ Select coverage
+ Select housing
+
+ Members of the monogamous household
+ Heads of polygamous sub-households
diff --git a/app/src/localeMv/res/values-fr/strings.xml b/app/src/localeMv/res/values-fr/strings.xml
index e0675292..4d010979 100644
--- a/app/src/localeMv/res/values-fr/strings.xml
+++ b/app/src/localeMv/res/values-fr/strings.xml
@@ -14,21 +14,21 @@
SynchroniserA proposQuitter
- Région
- District
- Section
- Village/GO
- Situation de pauvreté
+ Îles
+ District sanitaire
+ Commune
+ Localité
+ DémuniType de confirmationNo. de confirmation
- Type de groupe
+ Statut du chef de ménageEthnicité
- Adresse permanente
+ Détails de l\'adresseSuivantChoisir une RégionChoisir un districtChoisir une section
- Choisir un village/GO
+ Choisir une localitéOuiNonSélectionner le statut de pauvreté
@@ -44,8 +44,8 @@
État matrimonialCarte de bénéficiaireDistrict actuel
- Municipalité actuelle
- Village actuel
+ Commune actuelle
+ Localité actuelAdresse actuelleProfessionÉducation
@@ -63,8 +63,9 @@
Sélectionner l\'état civilMariéCélibataire
- Divorcé
- Veuf
+ Divorcé(e)
+ Veuf/Veuve
+ Famille polygameNon spécifiéSélectionner la carte de bénéficiaireChoisir un métier
@@ -76,7 +77,7 @@
HôpitalChoisir une FOSASauvegarder
- Relation
+ Relation du chef de ménageSélectionner une relationFamille enregistrée avec succèsUne erreur s\'est produite lors du traitement des données.
@@ -95,19 +96,19 @@
Date d\'expirationAgentStatut du contrat :
- Valeur du contrat :
+ Valeur du contrat d\'assurance :Solde :
- Contribution :
+ Cotisation : RecherchePayeurDate de paiement
- Catégorie de contribution
+ Catégorie de cotisationNuméro du reçu
- Contribution payée
+ Cotisation payéeType de paiementSélectionnez PayeurSélectionner le niveau
- Contribution et autres
+ Cotisation et autresFrais de photoSélectionnez le type de paiementArgent liquide
@@ -119,14 +120,16 @@
En attenteSuspenduLe numéro de reçu doit être unique.
- Le contrat a une contribution. Veuillez d\'abord supprimer les contributions
+ Le contrat a une cotisation. Veuillez d\'abord supprimer les cotisationsContrat avec succès
- Contribution supprimée avec succès
+ Cotisation supprimée avec succèsAssuré supprimé avec succèsVous ne pouvez pas supprimer le chef de famille.La famille a un contrat, veuillez d\'abord supprimer le contrat.Assuré non suppriméFamille supprimée
+ Sous-famille supprimée
+ Sous-famille détachéeScannerNom de l\'assuréLa carte SD est en mode lecture seule. Veuillez régler le mode de lecture/écriture et redémarrer l\'application.
@@ -207,8 +210,9 @@
Date de sortieTotal de familles :Total des assurés :
+ Total des pièces jointes :Total des contrats :
- Total des contributions :
+ Total des cotisations :Téléverser les adhésionsCréer un XML d\'adhésionsTéléverser les renouvellements
@@ -222,8 +226,8 @@
Famille et contratsAjouter/Modifier assuréAjouter/Modifier le contrat
- Contributions
- Ajouter/Modifier la contribution
+ Cotisations
+ Ajouter/Modifier la cotisationVoulez-vous quitter openIMIS ?Téléverser le rapportOK
@@ -262,13 +266,13 @@
Familles éditéesAssurés éditésContrats révisés
- Contributions éditées
+ Cotisations éditéesNuméro d\'assurance introuvableNuméro d\'assurance requisSuppression...Une connexion Internet est nécessaire pour supprimer des données en ligne.Veuillez d\'abord vous connecter pour supprimer les données en ligne.
- La suppression d\'un contrat supprimera également les contributions qui s\'y trouvent.
+ La suppression d\'un contrat supprimera également les cotisations qui s\'y trouvent.La suppression de la famille supprimera également tous les assurés, les polices et les cotisations de cette famille.ConfirmerDéconnexion
@@ -283,14 +287,14 @@
Échec de la création de XMLAucune donnée n\'a été crééeS\'il vous plaît entrer le numéro d\'assuré
- sans contrat/contribution
+ sans contrat/cotisationsans photoÉchec du téléversementSupprimé avec succèsEmail invalide !Échec sur le serveur, la mise à jour des données a échouée !
- Le prix du contrat est couvert. Voulez-vous toujours ajouter une contribution ?
- La contribution dépasse le prix du contrat.
+ Le prix du contrat est couvert. Voulez-vous toujours ajouter une cotisation ?
+ La cotisation dépasse le prix du contrat.Le prix du contrat n\'est pas encore couvert, veuillez sélectionner l\'action à effectuer.Rapports
@@ -304,7 +308,7 @@
Nombre de contrats renouvelésNombre de contrats expirésNombre de familles avec contrats suspendus
- Montant de la contribution collectée
+ Montant de la cotisation collectéeStatistiques actuellesCréer le XML des retoursCréer des renouvellements XML
@@ -340,7 +344,7 @@
EffacerDemandéNombre de polices trouvé
- Montant de la contribution
+ Montant de la cotisationProcessus CompletVeuillez sélectionner un policeSuccès
@@ -380,7 +384,7 @@
Demande pour polices non enregistréesNuméro de téléphone non fourniLes produits d\'assurance des polices sélectionnées ne sont pas uniques
- Montant de la contribution
+ Montant de la cotisationChoisir la dateObtenirDate du
@@ -456,25 +460,82 @@
WaitSuspendEnforce
- without a policy
- without a premium
+ sans contrat
+ sans cotisationHTTP response: %1$d — %2$sNo policies registered.This cheque number already usedThis cheque number was abortedCould not download cheque numbers data
- Policy Status: Covered
- Policy Status: Not Covered
- Policy Status
+ Statut du contrat: Couvert
+ Statut du contrat: Non couvert
+ Statut du contratThis cheque number not exist
- Please add a picture
+ Veuillez ajouter une photoEntry does not exist.Authorization failed.Unknown Error.You are not allowed to take this action.fr
- Language settings
+ LangueCurrent resource language: %1$sCurrent system language is not supported. The app will use the default language.Supported languages:\n%1$s
+ Paiement mobile
+ Prélèvement bancaire
+ Versement compte AMG
+ Choisir une méthode de paiement
+ Méthode de paiement
+ Situation Professionnelle
+ Autre Ménage
+ Choisir le niveau de revenu
+ Niveau de revenu
+ Choisir l\'environnement de residence
+ Environnement de residence
+ Famille et sous-familles
+ Ajouter une sous-famille
+ Détacher
+ Erreur lors du détachement de la sous-famille
+ Le détachement de la sous-famille transformera celle-ci en famille simple
+ Le numéro d\'identification doit contenir 7 ou 9 caractères
+ Sél. un régime de cotisation
+ Régime de cotisation
+ Numéro du compte
+ Périodicité
+ Date de signature
+ Pièces jointes
+ Aucun fichier
+ Titre
+ Fichier
+ Aucun fichier ajouté
+ Suppression de la pièce jointe
+ Pièce jointe supprimée avec succès
+ Aucune pièce jointe trouvée. Veuillez ajouter une pièce jointe
+ Famille polygame
+ Jour de paiement
+ Vérification des mises à jour
+ Mise à jour
+ Mise à jour disponible
+ Télécharger
+ Aucune mise à jour disponible
+ Téléchargement démarré
+ Virement Bancaire
+ Aucun
+ Échec de connexion. Veuillez réessayer
+ Pièces jointes famille
+ Pour ce régime de cotisation la périodicité doit être supérieure ou égale à
+ Impossible d\'attribuer une pièce jointe à une famille polygame
+ Inclure le chef de ménage
+ Êtes-vous sûre de vouloir rattacher le chef de ménage à la sous-famille?
+ Le chef de ménage a été attaché avec succès
+ Le chef de ménage est déjà attaché à cette sous-famille
+
+
+ Sélectionner incapacité
+ Sélectionner maladie
+ Sélectionner couverture
+ Sélectionner logement
+
+ Membres de la famille du ménage monogame
+ Les chefs de ménages des sous-foyers polygamiques
diff --git a/app/src/localeMv/res/values/strings.xml b/app/src/localeMv/res/values/strings.xml
index 9d113651..22ea3a00 100644
--- a/app/src/localeMv/res/values/strings.xml
+++ b/app/src/localeMv/res/values/strings.xml
@@ -207,6 +207,7 @@
Release DateTotal FamiliesTotal Insurees
+ Total AttachmentsTotal PoliciesTotal ContributionsUpload Enrolments
@@ -477,4 +478,27 @@
Current resource language: %1$sCurrent system language is not supported. The app will use the default language.Supported languages:\n%1$s
+ Mobile Money
+ Bank debit
+ Unknow pay
+ Select payment method
+ Payment method
+ Professional Situation
+ Other Household
+ Select Income Level
+ Income Level
+ Select Residence Environment
+ Residence Environment
+ Periodicity
+ Signing Date
+ Attachment
+ No File
+ Title
+ File
+ No file added
+ Deleting of Attachment
+ Attachment deleted successfully
+ No attachment added. Please add attachment to continue
+ Polygamous family
+ Check for updates
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5a88ad6d..31e5ab66 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -30,6 +30,7 @@
tools:node="remove" />
+
+
+
+ Add/Edit Attachments
+
+
+
+
+
+
+
+
+
+
+