Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement ANC enrollment #1267

Merged
merged 2 commits into from
May 6, 2022
Merged

Conversation

ellykits
Copy link
Collaborator

@ellykits ellykits commented May 6, 2022

IMPORTANT: Where possible all PRs must be linked to a Github issue

Fixes #[issue number]

Checklist

  • I have written Unit tests for any new feature(s) and edge cases for bug fixes
  • I have added any strings visible on UI components to the strings.xml file
  • I have updated the CHANGELOG.md file for any notable changes to the codebase
  • I have run ./gradlew spotlessApply and ./gradlew spotlessCheck to check my code follows the project's style guide
  • I have built and run the fhircore app to verify my change fixes the issue and/or does not break the app

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>
Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>
@ellykits ellykits merged commit 9e7f248 into implement-generic-app-register May 6, 2022
@ellykits ellykits deleted the record-as-anc branch May 6, 2022 12:56
AbdulWahabMemon added a commit that referenced this pull request May 9, 2022
…attributes_impl_generic_app

* implement-generic-app-register:
  Implement task form action (#1268)
  Fix app crash
  Implement action for launching task form (#1266)
  Implement ANC enrollment (#1267)
  Fix app crash on login
  Task completion feature
  Fix careplan not found bug
  Filter tasks with status-READY only
  Enable loading new config by re-opening the app (#1261)
  Task plan worker fix | Missing Careplan handiling
  Fix loading task form
  Implement family edit button (#1259)
  refactor remove family and member (#1263)
  Fix task color code; refresh data when activity in foreground (#1262)
  Refactor p2p implementation (#1243)
pld pushed a commit that referenced this pull request May 17, 2022
* Migrate to targetSDK 31
- Bump up dependency versions
- Update manifest configs
- Remove kotlin-extension plugin; use view binding instead

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement generic register
- Refactor navigation
- Use compose navigation for screens
- Refactor main register to use compose views
- Harmonize register data model
- Activate app features via configuration

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Move navigation screens to NavigationScreen class

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register pagination and filter
- Harmonized the two operations into a common register

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix outlined text design
- Also ignore case when filtering register data by name

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement FHIRPath data extractor

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Display last sync time on side menu

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Add language switcher action

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement FhirTaskGenerator

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register client action

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement generic app profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename data providers to data access objects
- This is done so to allow other operations like save and update on
the DAOs not just data retrieval
- Also renamed DomainMapper to DataMapper

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Careplan and task generation via StructureMap (#1174)

* Careplan generation from StrcutureMap

* Scheduler for task updates

* Test and add sample call

* ECBIS SAA config added

* Change invalid log message

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename UI data models

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Move relevant UI packages to quest app module (#1178)

* Migrate ui package to quest app module

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Use sealed class on RegisterData domain model

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register client implementation

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Load saved binary resource questionnaire configs (#1177)

* Questionnire config from config registry

* Update formConfigurationOf method defaults

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Open profile on list item click

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix loading data to member profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Show progress dialog when loading configs

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename components package

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename components package

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Start family profile implementation

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Format PersonalData UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename PatientProfileData to ProfileData

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement family member view component

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename event

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement FamilyDao (#1190)

* Add filters

* Add filters

* Family Register and Profile DAO

* Fix compile issue with Date class

* Refactor Family DAO

* Update family profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement AncDao (#1193)

* ANC DAO | structure map condition | auto load config on login

* Remove extra todo

* Implement default profile DAO (#1194)

* ANC DAO | structure map condition | auto load config on login

* Remove extra todo

* Default Register DAO | search subject resource refactor

* Add questionnaire and responses to default dao

* Update family register row UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor family and anc models

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Update individual profile views

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement add member action

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix ANC register UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Populate extra personal data information

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement family profile bottomsheet

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement action for opening family member task form

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Resolve force app crash when wrong sync config provided

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement app flavors (#1217)

* Implement app flavors

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Correct g6pd flavor versionNameSuffix config

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix pin login logo

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor household representation (#1216)

* Refactor family to Group

* Rename patientId to resourceId

The mentioned Id could be a patientId or groupId,
hence it's renamed to resourceId.

* Use official identifier

* Use constant FAMILY_CARE_PLAN

* Fix sync

* Fix filtering

* Use suffix from strings.xml

* Update CHANGELOG.md

* Move family name translation to view mapper

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove redundant filter

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix households display
- Filter only households with names. Implemented a workaround
for counting family groups

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Add family member task (#1221)

* Add family member task

* Change to subject

* Refactor generic function for launching questionnaires

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement change family head action (#1228)

* Implement action for change family head

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor overflow menu to use id.xml resources

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Move SideMenuOptionFactory to quest app module

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Activate device to device sync feature (#1229)

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register data access objects (#1223)

* refactor register data access classes

refactor anc and family register data access classes

* clean up register data access classes

update Official Identifier to use enum, update FamilyRegisterDao to use load and fetch methods provided in defaultRepository

* Resolve missing references

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix loading register data (#1230)

* Migrate measure report UI implementation to quest

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Clean up measure report UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix loading family/anc register data

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove unnecessary null check

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix app crash on API versions below 8

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Make login screen scrollable

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Add member and household head to household (#1240)

* ✨ Updated the Questionnaire View Model to add patients and related persons to the group resource

* 🎨 Reformat code

* 📝 Updated the Change log

* ♻️ Rename the method names

* 🎨 Spotless code reformat

* Add member and household head to household (#1241)

* ✨ Updated the Questionnaire View Model to add patients and related persons to the group resource

* 🎨 Reformat code

* 📝 Updated the Change log

* ♻️ Rename the method names

* 🎨 Spotless code reformat

* ✨ Added the family ID as part of the variables on the ad family member profile

* ♻️ update the variable naming

* Migrate measure reporting to quest app (#1242)

* Migrate measure report UI implementation to quest

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Clean up measure report UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Migrate measure reporting to quest app module

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* 1082 (P2P) implement sending receiving data (#1226)

* Trigger CI

* Integrate p2p

* Add P2P sender and receiver dao implementations

* Implement fetching of data to be sent via P2P

* Add p2p lib as a project

* Initialize P2P library

* Init P2P lib options with sender and receiver transfer daos

* Update p2p receiver transfer dao with constructor

* Fix filter by lastupdated
Fix getting data types for sender and receiver transfer DAOs

* Sort records by last updated ascending
return resources as json data

* Fix JSON encoding resources for p2p transfer

* Resolve merge conflicts

* Add generically fetching each resource type for p2p transfer

* Save records on receiver device

* Filter records by greater than last updated at

* Add P2P menu icon on bottom navigation

* Fix resources search query for p2p (#1222)

* Add generically fetching each resource type for p2p transfer

* Fix resources search query for p2p

* Update engine to 0.1.0-alpha06-preview-p2p-SNAPSHOT

* Handle array index out of bounds when returned records is empty

* Use generic methoad to load various resources

* Make resource type dynamic

* Make resource type dynamic

* Use correct resorce type when parsing resources

Co-authored-by: Richard Kareko <rkareko@ona.io>

* Move data P2P retrieval and saving logic to base transfer DAO

* Hook up opening of P2P screen

* Set large heapsize setting to true

* Log ids of transferred resources to terminal

* Add group to list of resources for sync

* Update Resource.meta.lastUpdated date for inserts and updates

* Handle retrieval of Group class type

* Update p2p-lib directory

* Use published p2p lib snapshot

* Bump up p2p lib version

Co-authored-by: Ephraim Kigamba <ekigamba@ona.io>
Co-authored-by: Ephraim Kigamba <31766075+ekigamba@users.noreply.github.com>

* Implement family questionnaire (#1232)

* WIP Moving FamilyQuestionnaireActivity along with dependencies

* Restored FamilyQuestionnaireActivity on Anc for all old references

* Restored FamilyQuestionnaireActivity on Anc for all old references

* ran spotless script for code styling

* Fixed save button texts on config file, moved constants to companion object in Family Questionnaire

* Fixed using familyId when opening Add Member Questionnaire

* Implement change family head functionality

* Fix app crash

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Activate in app reporting via config

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Add quick fix for showing register action for specific register

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* ✨ Propagating the family name

* Update count on sync complete

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove deprecated environment variables

* Automation of Product Flavor releases via CI/CD

- Add support for releasing APKs from Flavors via CI/CD
- Add configuration to simulate flavors in build.gradle

* Disable CI configurations for deprecated modules

* Fix build 💚

* Close drawer on click report

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* React to sync state on sync complete (#1248)

* React to sync state on sync complete

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Delete unused class

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix holding composable reference in viewmodel

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement remove family and family member  (#1236)

* remove family by group

* add deactivate family members toggle config

* refactor remove family package

* resolve family provile merge conflict

* update family profile event

* correct parameters for OverflowMenuClick event

* 1205 Remove family member (#1235)

* Add overflow and remove button

* Refactor RemoveFamilyQuestionnaireActivity

* spotlessApply

* Move RemoveProfile to other package

* Create MemberQuestionnaireActivity

* delete family member. ongoing

* Filter only active family members

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Fikri Milano <fikrimilano1@gmail.com>
Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* 🎨 Update the task genration

* Refactor p2p implementation (#1243)

* Trigger CI

* Integrate p2p

* Add P2P sender and receiver dao implementations

* Implement fetching of data to be sent via P2P

* Add p2p lib as a project

* Initialize P2P library

* Init P2P lib options with sender and receiver transfer daos

* Update p2p receiver transfer dao with constructor

* Fix filter by lastupdated
Fix getting data types for sender and receiver transfer DAOs

* Sort records by last updated ascending
return resources as json data

* Fix JSON encoding resources for p2p transfer

* Resolve merge conflicts

* Add generically fetching each resource type for p2p transfer

* Save records on receiver device

* Filter records by greater than last updated at

* Add P2P menu icon on bottom navigation

* Fix resources search query for p2p (#1222)

* Add generically fetching each resource type for p2p transfer

* Fix resources search query for p2p

* Update engine to 0.1.0-alpha06-preview-p2p-SNAPSHOT

* Handle array index out of bounds when returned records is empty

* Use generic methoad to load various resources

* Make resource type dynamic

* Make resource type dynamic

* Use correct resorce type when parsing resources

Co-authored-by: Richard Kareko <rkareko@ona.io>

* Move data P2P retrieval and saving logic to base transfer DAO

* Hook up opening of P2P screen

* Set large heapsize setting to true

* Log ids of transferred resources to terminal

* Add group to list of resources for sync

* Update Resource.meta.lastUpdated date for inserts and updates

* Handle retrieval of Group class type

* Update p2p-lib directory

* Use published p2p lib snapshot

* Bump up p2p lib version

* Refactor p2p implementation
- Permoved some code cleanups on QuestApplication class

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Run spotlessApply

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Code clean up

* Remove unused import

* Run spotless apply

Co-authored-by: Richard Kareko <rkareko@ona.io>
Co-authored-by: Ephraim Kigamba <ekigamba@ona.io>
Co-authored-by: Ephraim Kigamba <31766075+ekigamba@users.noreply.github.com>

* Fix task color code; refresh data when activity in foreground (#1262)

* Fix tasks color codes

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refresh composable screens when the activity is resumed

Implemented a workaround based on the following recommendation (compose UI by default is not refreshed
when lifecycle is updated)
https://stackoverflow.com/questions/66546962/jetpack-compose-how-do-i-refresh-a-screen-when-app-returns-to-foreground

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* refactor remove family and member (#1263)

add condition to remove managing entity if member is head

move remove functionality to FamilyRegisterDao

* Implement family edit button (#1259)

* implement edit family details

load register family questionnaire with type as edit

* implement view/edit family-member/patient details

load register family member questionnaire with type as edit

* handle family profile null checks

* rename bundleEntry variable

* Fix loading task form

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Task plan worker fix | Missing Careplan handiling

* Enable loading new config by re-opening the app (#1261)

* Enable loading new config by re-opening the app

* Load AppMainActivity if user is not logged out

* Address review comments

* Filter tasks with status-READY only

* Fix careplan not found bug

* Task completion feature

* Fix app crash on login

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement ANC enrollment (#1267)

* Launch anc enrollment questionnaire

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix refreshing register count

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement action for launching task form (#1266)

* Task plan worker fix | Missing Careplan handiling

* Filter tasks with status-READY only

* Task completion feature

* Task completes for Profile button

* Fix app crash

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement task form action (#1268)

* Task plan worker fix | Missing Careplan handiling

* Filter tasks with status-READY only

* Task completion feature

* Task completes for Profile button

* Fix task color coding on patient profile(#1270)

* Implement family edit functionality (#1272)

* fix family edit questionnaire not populating data

* implement view family overflow menu item

* spotlessApply

* resolve conflicts

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refresh profile data

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Configure action icon and color

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Apply background color on patient profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Update ecbis version to v0.0.6

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* reference configs for afyayangu app

* Fix failing tests; Ignore failing to be deleted test

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove unnecessary class TaskStatus

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove unnecessary code

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: maimoonak <4829880+maimoonak@users.noreply.github.com>
Co-authored-by: Fikri Milano <fikrimilano1@gmail.com>
Co-authored-by: roywanyaga <84201465+roywanyaga@users.noreply.github.com>
Co-authored-by: Benjamin Mwalimu <dubdabasoduba@gmail.com>
Co-authored-by: Rkareko <47570855+Rkareko@users.noreply.github.com>
Co-authored-by: Ephraim Kigamba <ekigamba@ona.io>
Co-authored-by: Ephraim Kigamba <31766075+ekigamba@users.noreply.github.com>
Co-authored-by: aurangzaibumer <35099184+aurangzaibumer@users.noreply.github.com>
Co-authored-by: Raazia Tariq <89384079+RaaziaTarique@users.noreply.github.com>
Co-authored-by: Martin Ndegwa <ndegwamartin@gmail.com>
Co-authored-by: Richard Kareko <rkareko@ona.io>
Co-authored-by: maimoonak <maimoonak.mk@gmail.com>
AbdulWahabMemon added a commit that referenced this pull request May 25, 2022
* Migrate to targetSDK 31
- Bump up dependency versions
- Update manifest configs
- Remove kotlin-extension plugin; use view binding instead

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement generic register
- Refactor navigation
- Use compose navigation for screens
- Refactor main register to use compose views
- Harmonize register data model
- Activate app features via configuration

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Move navigation screens to NavigationScreen class

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register pagination and filter
- Harmonized the two operations into a common register

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix outlined text design
- Also ignore case when filtering register data by name

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement FHIRPath data extractor

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Display last sync time on side menu

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Add language switcher action

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement FhirTaskGenerator

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register client action

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement generic app profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename data providers to data access objects
- This is done so to allow other operations like save and update on
the DAOs not just data retrieval
- Also renamed DomainMapper to DataMapper

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Careplan and task generation via StructureMap (#1174)

* Careplan generation from StrcutureMap

* Scheduler for task updates

* Test and add sample call

* ECBIS SAA config added

* Change invalid log message

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename UI data models

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Move relevant UI packages to quest app module (#1178)

* Migrate ui package to quest app module

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Use sealed class on RegisterData domain model

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register client implementation

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Load saved binary resource questionnaire configs (#1177)

* Questionnire config from config registry

* Update formConfigurationOf method defaults

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Open profile on list item click

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix loading data to member profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Show progress dialog when loading configs

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename components package

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename components package

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Start family profile implementation

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Format PersonalData UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename PatientProfileData to ProfileData

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement family member view component

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Rename event

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement FamilyDao (#1190)

* Add filters

* Add filters

* Family Register and Profile DAO

* Fix compile issue with Date class

* Refactor Family DAO

* Update family profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement AncDao (#1193)

* ANC DAO | structure map condition | auto load config on login

* Remove extra todo

* Implement default profile DAO (#1194)

* ANC DAO | structure map condition | auto load config on login

* Remove extra todo

* Default Register DAO | search subject resource refactor

* Add questionnaire and responses to default dao

* Update family register row UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor family and anc models

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Update individual profile views

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement add member action

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix ANC register UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Populate extra personal data information

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement family profile bottomsheet

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement action for opening family member task form

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Resolve force app crash when wrong sync config provided

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement app flavors (#1217)

* Implement app flavors

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Correct g6pd flavor versionNameSuffix config

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix pin login logo

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor household representation (#1216)

* Refactor family to Group

* Rename patientId to resourceId

The mentioned Id could be a patientId or groupId,
hence it's renamed to resourceId.

* Use official identifier

* Use constant FAMILY_CARE_PLAN

* Fix sync

* Fix filtering

* Use suffix from strings.xml

* Update CHANGELOG.md

* Move family name translation to view mapper

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove redundant filter

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix households display
- Filter only households with names. Implemented a workaround
for counting family groups

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Add family member task (#1221)

* Add family member task

* Change to subject

* Refactor generic function for launching questionnaires

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement change family head action (#1228)

* Implement action for change family head

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor overflow menu to use id.xml resources

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Move SideMenuOptionFactory to quest app module

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Activate device to device sync feature (#1229)

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refactor register data access objects (#1223)

* refactor register data access classes

refactor anc and family register data access classes

* clean up register data access classes

update Official Identifier to use enum, update FamilyRegisterDao to use load and fetch methods provided in defaultRepository

* Resolve missing references

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix loading register data (#1230)

* Migrate measure report UI implementation to quest

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Clean up measure report UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix loading family/anc register data

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove unnecessary null check

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix app crash on API versions below 8

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Make login screen scrollable

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* 1219 - Quest - Patient attributes and Address attributes

* update quest patient item telecom as list of string

* Add member and household head to household (#1240)

* ✨ Updated the Questionnaire View Model to add patients and related persons to the group resource

* 🎨 Reformat code

* 📝 Updated the Change log

* ♻️ Rename the method names

* 🎨 Spotless code reformat

* Add member and household head to household (#1241)

* ✨ Updated the Questionnaire View Model to add patients and related persons to the group resource

* 🎨 Reformat code

* 📝 Updated the Change log

* ♻️ Rename the method names

* 🎨 Spotless code reformat

* ✨ Added the family ID as part of the variables on the ad family member profile

* ♻️ update the variable naming

* Migrate measure reporting to quest app (#1242)

* Migrate measure report UI implementation to quest

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Clean up measure report UI

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Migrate measure reporting to quest app module

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* 1082 (P2P) implement sending receiving data (#1226)

* Trigger CI

* Integrate p2p

* Add P2P sender and receiver dao implementations

* Implement fetching of data to be sent via P2P

* Add p2p lib as a project

* Initialize P2P library

* Init P2P lib options with sender and receiver transfer daos

* Update p2p receiver transfer dao with constructor

* Fix filter by lastupdated
Fix getting data types for sender and receiver transfer DAOs

* Sort records by last updated ascending
return resources as json data

* Fix JSON encoding resources for p2p transfer

* Resolve merge conflicts

* Add generically fetching each resource type for p2p transfer

* Save records on receiver device

* Filter records by greater than last updated at

* Add P2P menu icon on bottom navigation

* Fix resources search query for p2p (#1222)

* Add generically fetching each resource type for p2p transfer

* Fix resources search query for p2p

* Update engine to 0.1.0-alpha06-preview-p2p-SNAPSHOT

* Handle array index out of bounds when returned records is empty

* Use generic methoad to load various resources

* Make resource type dynamic

* Make resource type dynamic

* Use correct resorce type when parsing resources

Co-authored-by: Richard Kareko <rkareko@ona.io>

* Move data P2P retrieval and saving logic to base transfer DAO

* Hook up opening of P2P screen

* Set large heapsize setting to true

* Log ids of transferred resources to terminal

* Add group to list of resources for sync

* Update Resource.meta.lastUpdated date for inserts and updates

* Handle retrieval of Group class type

* Update p2p-lib directory

* Use published p2p lib snapshot

* Bump up p2p lib version

Co-authored-by: Ephraim Kigamba <ekigamba@ona.io>
Co-authored-by: Ephraim Kigamba <31766075+ekigamba@users.noreply.github.com>

* Implement family questionnaire (#1232)

* WIP Moving FamilyQuestionnaireActivity along with dependencies

* Restored FamilyQuestionnaireActivity on Anc for all old references

* Restored FamilyQuestionnaireActivity on Anc for all old references

* ran spotless script for code styling

* Fixed save button texts on config file, moved constants to companion object in Family Questionnaire

* Fixed using familyId when opening Add Member Questionnaire

* Implement change family head functionality

* Fix app crash

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Activate in app reporting via config

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Add quick fix for showing register action for specific register

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* ✨ Propagating the family name

* Update count on sync complete

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove deprecated environment variables

* Automation of Product Flavor releases via CI/CD

- Add support for releasing APKs from Flavors via CI/CD
- Add configuration to simulate flavors in build.gradle

* Disable CI configurations for deprecated modules

* Fix build 💚

* Close drawer on click report

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* React to sync state on sync complete (#1248)

* React to sync state on sync complete

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Delete unused class

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix holding composable reference in viewmodel

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement remove family and family member  (#1236)

* remove family by group

* add deactivate family members toggle config

* refactor remove family package

* resolve family provile merge conflict

* update family profile event

* correct parameters for OverflowMenuClick event

* 1205 Remove family member (#1235)

* Add overflow and remove button

* Refactor RemoveFamilyQuestionnaireActivity

* spotlessApply

* Move RemoveProfile to other package

* Create MemberQuestionnaireActivity

* delete family member. ongoing

* Filter only active family members

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

Co-authored-by: Fikri Milano <fikrimilano1@gmail.com>
Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* 🎨 Update the task genration

* Refactor p2p implementation (#1243)

* Trigger CI

* Integrate p2p

* Add P2P sender and receiver dao implementations

* Implement fetching of data to be sent via P2P

* Add p2p lib as a project

* Initialize P2P library

* Init P2P lib options with sender and receiver transfer daos

* Update p2p receiver transfer dao with constructor

* Fix filter by lastupdated
Fix getting data types for sender and receiver transfer DAOs

* Sort records by last updated ascending
return resources as json data

* Fix JSON encoding resources for p2p transfer

* Resolve merge conflicts

* Add generically fetching each resource type for p2p transfer

* Save records on receiver device

* Filter records by greater than last updated at

* Add P2P menu icon on bottom navigation

* Fix resources search query for p2p (#1222)

* Add generically fetching each resource type for p2p transfer

* Fix resources search query for p2p

* Update engine to 0.1.0-alpha06-preview-p2p-SNAPSHOT

* Handle array index out of bounds when returned records is empty

* Use generic methoad to load various resources

* Make resource type dynamic

* Make resource type dynamic

* Use correct resorce type when parsing resources

Co-authored-by: Richard Kareko <rkareko@ona.io>

* Move data P2P retrieval and saving logic to base transfer DAO

* Hook up opening of P2P screen

* Set large heapsize setting to true

* Log ids of transferred resources to terminal

* Add group to list of resources for sync

* Update Resource.meta.lastUpdated date for inserts and updates

* Handle retrieval of Group class type

* Update p2p-lib directory

* Use published p2p lib snapshot

* Bump up p2p lib version

* Refactor p2p implementation
- Permoved some code cleanups on QuestApplication class

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Run spotlessApply

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Code clean up

* Remove unused import

* Run spotless apply

Co-authored-by: Richard Kareko <rkareko@ona.io>
Co-authored-by: Ephraim Kigamba <ekigamba@ona.io>
Co-authored-by: Ephraim Kigamba <31766075+ekigamba@users.noreply.github.com>

* Fix task color code; refresh data when activity in foreground (#1262)

* Fix tasks color codes

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refresh composable screens when the activity is resumed

Implemented a workaround based on the following recommendation (compose UI by default is not refreshed
when lifecycle is updated)
https://stackoverflow.com/questions/66546962/jetpack-compose-how-do-i-refresh-a-screen-when-app-returns-to-foreground

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* refactor remove family and member (#1263)

add condition to remove managing entity if member is head

move remove functionality to FamilyRegisterDao

* Implement family edit button (#1259)

* implement edit family details

load register family questionnaire with type as edit

* implement view/edit family-member/patient details

load register family member questionnaire with type as edit

* handle family profile null checks

* rename bundleEntry variable

* Fix loading task form

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Task plan worker fix | Missing Careplan handiling

* Enable loading new config by re-opening the app (#1261)

* Enable loading new config by re-opening the app

* Load AppMainActivity if user is not logged out

* Address review comments

* Filter tasks with status-READY only

* Fix careplan not found bug

* Task completion feature

* Fix app crash on login

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement ANC enrollment (#1267)

* Launch anc enrollment questionnaire

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Fix refreshing register count

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement action for launching task form (#1266)

* Task plan worker fix | Missing Careplan handiling

* Filter tasks with status-READY only

* Task completion feature

* Task completes for Profile button

* Fix app crash

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Implement task form action (#1268)

* Task plan worker fix | Missing Careplan handiling

* Filter tasks with status-READY only

* Task completion feature

* Task completes for Profile button

* Fix task color coding on patient profile(#1270)

* Implement family edit functionality (#1272)

* fix family edit questionnaire not populating data

* implement view family overflow menu item

* spotlessApply

* resolve conflicts

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Refresh profile data

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Configure action icon and color

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Apply background color on patient profile

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Update ecbis version to v0.0.6

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* update as per reviewer comment

* add update binaries and composition for mwcore

* reference configs for afyayangu app

* mwcore - healthModule, registerData, profileData

* Fix failing tests; Ignore failing to be deleted test

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* Remove unnecessary class TaskStatus

Signed-off-by: Elly Kitoto <junkmailstoelly@gmail.com>

* remove commented code

* discussed changes

* add unit tests for ProfileViewData

* add unit test engine for ProfileData

* add engine RegisterData unit tests

* add unit tests RegisterDao

* spotlessApply

* add unit test for AppFeature class

* add unit test for HealthModule class

* add update unit test for HivRegisterDao

* add update unit tests for Hiv and Tracing RegisterDao

* update as per reviewer comments

* fix as per reviewer comments

* as per reviewer comments Renaming TracingAndAppointment to Appointment

* remove extra AppFeatures added

* add extension for extractWithFhirPath as per reviewer comments

* updates as per reviewer comments

Co-authored-by: Elly Kitoto <junkmailstoelly@gmail.com>
Co-authored-by: maimoonak <4829880+maimoonak@users.noreply.github.com>
Co-authored-by: Fikri Milano <fikrimilano1@gmail.com>
Co-authored-by: roywanyaga <84201465+roywanyaga@users.noreply.github.com>
Co-authored-by: Benjamin Mwalimu <dubdabasoduba@gmail.com>
Co-authored-by: Rkareko <47570855+Rkareko@users.noreply.github.com>
Co-authored-by: Ephraim Kigamba <ekigamba@ona.io>
Co-authored-by: Ephraim Kigamba <31766075+ekigamba@users.noreply.github.com>
Co-authored-by: aurangzaibumer <35099184+aurangzaibumer@users.noreply.github.com>
Co-authored-by: Raazia Tariq <89384079+RaaziaTarique@users.noreply.github.com>
Co-authored-by: Martin Ndegwa <ndegwamartin@gmail.com>
Co-authored-by: Richard Kareko <rkareko@ona.io>
Co-authored-by: maimoonak <maimoonak.mk@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant