├── dummy ├── .nvmrc ├── message_rule.patch ├── .java-version ├── infra └── rpm │ ├── service │ ├── openchs.log │ ├── openchs.pid │ └── start.sh │ ├── scripts │ ├── preUninstall.sh │ ├── postUninstall.sh │ └── preInstall.sh │ └── config │ └── openchs.conf ├── avni-rule-server ├── src │ └── main │ │ ├── js │ │ ├── .nvmrc │ │ ├── utils.js │ │ ├── main.js │ │ └── ruleInvoker.js │ │ └── java │ │ └── org │ │ └── avni │ │ └── ruleServer │ │ └── domain │ │ └── Imports.java └── package-lock.json ├── avni-server-api ├── log │ └── access_log.2022-09-14.log └── src │ ├── main │ ├── resources │ │ ├── public │ │ │ └── .gitkeep │ │ ├── rules │ │ │ └── .gitkeep │ │ ├── db │ │ │ └── migration │ │ │ │ ├── V1_277__RemoveUserReviewMatrix.sql │ │ │ │ ├── V0_20__UniqueConstraintOnGender.sql │ │ │ │ ├── V1_42__DropColumnVersionFromUsers.sql │ │ │ │ ├── V0_17__UniqueConstraintOnConceptName.sql │ │ │ │ ├── V0_2__AdditionalUserColumns.sql │ │ │ │ ├── V1_136__addKeyValuesToConcept.sql │ │ │ │ ├── V1_21__RemoveConceptIdFromProgram.sql │ │ │ │ ├── V1_331__AddEditFormRule.sql │ │ │ │ ├── V1_43__DropColumnAuditIdFromUsers.sql │ │ │ │ ├── V0_11__DropColumnProfileFromIndividual.sql │ │ │ │ ├── V0_33__AddUnitToConcept.sql │ │ │ │ ├── V1_135__Openchs_impl__userCanCreateRoles.sql │ │ │ │ ├── V0_31__CreateBaseDate.sql │ │ │ │ ├── V0_35__DropCatchmentFromIndividual.sql │ │ │ │ ├── V0_37__AddColumnColourToProgram.sql │ │ │ │ ├── V1_118__AddUniqueUUIDConstraintToVideo.sql │ │ │ │ ├── V1_150__DropFormNameNotNullConstraint.sql │ │ │ │ ├── V1_160__AddTypeToSubjectType.sql │ │ │ │ ├── V1_73__SetAdminUserRoles.sql │ │ │ │ ├── V1_92__AddSettingsColumnToUsersTable.sql │ │ │ │ ├── V0_25__AddNameToProgramEncounter.sql │ │ │ │ ├── V0_47__AddingFormElementType.sql │ │ │ │ ├── V1_101__EnableRLS_OnAddressLevelType.sql │ │ │ │ ├── V1_146__DropFormIdNotNullConstraint.sql │ │ │ │ ├── V1_155__AddRuleColumnToFormElementGroup.sql │ │ │ │ ├── V1_158__DropLevelColumnFromAddressLevel.sql │ │ │ │ ├── V1_189__AddSyncSourceToSyncTelemetry.sql │ │ │ │ ├── V0_40__AddingAddressLevelAttributes.sql │ │ │ │ ├── V1_07__DropIsGeneratedColumnInFormElement.sql │ │ │ │ ├── V1_09__MigrateConceptDataType.sql │ │ │ │ ├── V1_126__AddLanguageToTranslationTable.sql │ │ │ │ ├── V1_172__AddIconColumnToReportCardTable.sql │ │ │ │ ├── V1_188__AddIconColumnToSubjectType.sql │ │ │ │ ├── V1_237__AddTaskTypeToTask.sql │ │ │ │ ├── V1_281__AddNameToDashboardFilter.sql │ │ │ │ ├── V1_291__DropHasAnalyticsDbInOrgGroup.sql │ │ │ │ ├── V1_292__AddSuccessColumnToScheduledJobRun.sql │ │ │ │ ├── V1_324__DropUUIDFromRuleFailureTelemetry.sql │ │ │ │ ├── V1_347__IdentifierAssignmentDeviceId.sql │ │ │ │ ├── V1_353_2__AddAppInfoToSyncTelemetry.sql │ │ │ │ ├── V1_356__AlterArchivalConfigTable.sql │ │ │ │ ├── V1_362_1__RenameArchivalConfigTable.sql │ │ │ │ ├── V1_64__MigrateLevelToADouble.sql │ │ │ │ ├── V1_86__AddLocationFieldsToEncounter.sql │ │ │ │ ├── V0_26__AddMaxDateForProgramEncounter.sql │ │ │ │ ├── V0_52__AddressLevelOnIndividualIsMandatory.sql │ │ │ │ ├── V1_167__AddDeviceInfoColumnToSyncTelemetry.sql │ │ │ │ ├── V1_201__AddDeclarativeRuleToFormElement.sql │ │ │ │ ├── V1_223__AddNameHelpTextToSubjectType.sql │ │ │ │ ├── V1_242__AddNotNullToTaskScheduleOn.sql │ │ │ │ ├── V1_245__DropNotNullForAssignedToInTask.sql │ │ │ │ ├── V1_341__RegionForPhoneNumber.sql │ │ │ │ ├── V1_93__DropUserSettingsTable.sql │ │ │ │ ├── V0_22__AddObservationsTypeEntityId.sql │ │ │ │ ├── V0_28__RenameSpellingMistakeInTableName.sql │ │ │ │ ├── V0_36__AddColumnDisplayToFormElementGroup.sql │ │ │ │ ├── V0_43__AddAbnormalToConceptAnswer.sql │ │ │ │ ├── V0_50__AddingTypeToCatchments.sql │ │ │ │ ├── V1_02__AddVoidedToEncounters.sql │ │ │ │ ├── V1_04__AddVoidedToIndividual.sql │ │ │ │ ├── V1_06__DropIsUsedInSummaryColumnInFormElement.sql │ │ │ │ ├── V1_13__AddSoloFieldToConceptAnswer.sql │ │ │ │ ├── V1_212__AddSchemaNameToOrganisationGroup.sql │ │ │ │ ├── V1_46__DroppingNotNullConstraintOnRules.sql │ │ │ │ ├── V1_51__AddVoidingToChecklistItem.sql │ │ │ │ ├── V1_83__AddRegistrationLocationToIndividual.sql │ │ │ │ ├── V0_9__RenameColumnUsedInSummary.sql │ │ │ │ ├── V1_117__AddUsernameSuffixToOrganisationTable.sql │ │ │ │ ├── V1_127__AddLanguageToPlatformTranslationTable.sql │ │ │ │ ├── V1_203__AddDeclarativeRuleToFormElementGroup.sql │ │ │ │ ├── V1_206__AddGroupInFormElement.sql │ │ │ │ ├── V1_254__AddImmutableColumnInEncounter.sql │ │ │ │ ├── V1_264__OnlyOneOrgConfigPerOrganisation.sql │ │ │ │ ├── V1_305__EntityTypeOfNewsToBeMessaging.sql │ │ │ │ ├── V1_339_2__OrganisationStatus.sql │ │ │ │ ├── V1_348__AllowVoidingOfETLColumns.sql │ │ │ │ ├── V1_40__RenamingOpenCHSUserToAdmin.sql │ │ │ │ ├── V1_48__AddingVoidingCapabilityToRules.sql │ │ │ │ ├── V1_52__AnswerOrderInConceptAnswerIsDouble.sql │ │ │ │ ├── V0_23__RenameProgramEncounterDateTime.sql │ │ │ │ ├── V1_163__CreateSubjectSummaryRuleColumnInSubjectType.sql │ │ │ │ ├── V1_18__DisableRowLevelSecurityForCatchmentAddressMapping.sql │ │ │ │ ├── V1_200__SetErrorMessageFieldToText.sql │ │ │ │ ├── V1_29__RemoveRLSFromUsers.sql │ │ │ │ ├── V1_311__isVoidedOnOrgGroup.sql │ │ │ │ ├── V1_334__DropChecklistTempTables.sql │ │ │ │ ├── V1_336__SecondaryDashboard.sql │ │ │ │ ├── V1_338__OrganisationCategory.sql │ │ │ │ ├── V1_50__AddVoidingToProgramEnrolment.sql │ │ │ │ ├── V0_12__AddDisplayOrderToFormElementGroup.sql │ │ │ │ ├── V0_24__AddRegistrationDateToIndividual.sql │ │ │ │ ├── V1_141__CreateWorkupdationRuleColumnInOrgConfig.sql │ │ │ │ ├── V1_267__AddReceiverTypeToMessageRule.sql │ │ │ │ ├── V1_270__AllowActiveProgramEnrolments.sql │ │ │ │ ├── V1_286__AddLastNameOptionalToSubjectType.sql │ │ │ │ ├── V1_349__AddShowGrowthChartToProgram.sql │ │ │ │ ├── V1_221__AddParentConceptUuidToColumnMetadata.sql │ │ │ │ ├── V1_339_7__AddIgnoreSyncSettingsInDEAToUser.sql │ │ │ │ ├── V1_345__ReportCardNameIsUnique.sql │ │ │ │ ├── V1_352__AddIndexesInScheduledJobRun.sql │ │ │ │ ├── V1_363__AddMemberAdditionRuleToSubjectType.sql │ │ │ │ ├── V1_54__EnableRLSOnNewTables.sql │ │ │ │ ├── V1_90__EnableRowLevelSecurityOnProgramOrganisationConfig.sql │ │ │ │ ├── V0_8__RenameDateOfBirthEstimatedToVerified.sql │ │ │ │ ├── V1_166__RenameCardToReportCard.sql │ │ │ │ ├── V1_180__AddUniqueNameColumnToSubjectType.sql │ │ │ │ ├── V1_266__AddUniqueContraintToMessageReceiver.sql │ │ │ │ ├── V1_271__AddNextTriggerDetailsToManualBroadcastMessage.sql │ │ │ │ ├── V1_290__UUIDToOrgGroup.sql │ │ │ │ ├── V1_340__StandardReportCardInput.sql │ │ │ │ ├── V1_82__AddMinDaysFromStartDateToChecklistItemDetail.sql │ │ │ │ ├── V0_51__AddingTypeToAddressLevel.sql │ │ │ │ ├── V1_109__AddProgramSubjectLabelColumnToOperationalProgram.sql │ │ │ │ ├── V1_130__CreateTablesForRulesFromUI.sql │ │ │ │ ├── V1_321__FixUsersUUIDIndex.sql │ │ │ │ ├── V1_328__UserNameIsMandatory.sql │ │ │ │ ├── V1_348_1__AddUserLastActivatedDateTime.sql │ │ │ │ ├── V1_358__AddSyncDisabledColumnToUserSubjectAssignment.sql │ │ │ │ ├── V1_74__AddingChecklistItemInterdependency.sql │ │ │ │ ├── V0_54__AddCancelToProgramEncounter.sql │ │ │ │ ├── V1_112__AddParentIdColumnToAddressLevelType.sql │ │ │ │ ├── V1_297__AddQuestionGroupUUIDToTableMetadata.sql │ │ │ │ ├── V1_309__UniqueConstraintOnSubjectAndUserForAssignment.sql │ │ │ │ ├── V1_350__SetDefaultShowGrowthChartToTrueForChildProgram.sql │ │ │ │ ├── V1_68__MakeUserColumnsNotNullable.sql │ │ │ │ ├── V0_15__ChangeDataTypeOfRelatedEntity.sql │ │ │ │ ├── V0_27__HealthMetaDataVersion.sql │ │ │ │ ├── V1_359__AddSyncDisabledColumnToSubjectProgramEligibility.sql │ │ │ │ ├── V1_89__UpdateUniqueConstraintAs_Title_Level_OrgId_On_AddressLevel.sql │ │ │ │ ├── V1_140__DropChecklistRuleColumnFromProgramAddToForm.sql │ │ │ │ ├── V1_187__ReplaceRLSForGroupDashboard.sql │ │ │ │ ├── V1_310__LastmodifieddatetimeIndexOnSyncTele.sql │ │ │ │ ├── V1_69__UserFacilityMappingNotNullColumns.sql │ │ │ │ ├── V1_79__AddUniqueConstraintOn_AddressLevel_title_and_level.sql │ │ │ │ ├── V1_190__AddUniqueConstraintForUuidAndOrganisationid.sql │ │ │ │ ├── V1_326__EntityIdIndividualIdCheckForEAS.sql │ │ │ │ ├── V1_333__DropProgramOrganisationConfig.sql │ │ │ │ ├── V1_345_1__VoidedReportCardNameChange.sql │ │ │ │ ├── V1_100__AddColumnsToChecklistItemDetail.sql │ │ │ │ ├── V1_105__DropSchedulingConstraintOnProgramEncounter.sql │ │ │ │ ├── V1_251__AlterMenuItemLinkToLinkFunction.sql │ │ │ │ ├── V1_116__AddNameParentUniqueConstraintToLocation.sql │ │ │ │ ├── V1_306__VoidUserGroupsForVoidedGroups.sql │ │ │ │ ├── V1_75__UpdateAuditWhenLastModifiedDateTimeIsInFuture.sql │ │ │ │ ├── V1_143__DropOrganisationNotNullConstraintFromUser.sql │ │ │ │ ├── V1_235__ChangeSubjectUserAssignmentApproach.sql │ │ │ │ ├── V1_364__UpdateVoidedGroupNamesWithProperSuffix.sql │ │ │ │ ├── V1_80__AddScheduleOnExpiryOfDependencyToChecklistItemDetail.sql │ │ │ │ ├── V0_16__ChangeSortOrderDataTypeAndAddUniqueConstraint.sql │ │ │ │ ├── V1_132__AddColulmsForRulesFromUI.sql │ │ │ │ ├── V1_177__AddGPSCordinatesAndLocationPropertiesToAddressLevel.sql │ │ │ │ ├── V1_185__ReplaceRLSForOrganisationConfig.sql │ │ │ │ ├── V1_233__AddColourColumnsToFormElementGroup.sql │ │ │ │ ├── V1_353_1__GrantAccessForPostEtlSyncStatus.sql │ │ │ │ ├── V0_32__RenameObservationColumns.sql │ │ │ │ ├── V0_53__AddUniqueConstraintToOrganisation.sql │ │ │ │ ├── V1_104__AddColumnsToIdntifierSourceTable.sql │ │ │ │ ├── V1_327__FilledBy.sql │ │ │ │ ├── V1_45__DefaultingExecutionOrderToMax.sql │ │ │ │ ├── V1_95__AddEmailAndPhoneToUser.sql │ │ │ │ ├── V1_232__MoveIsTimedFromFormToFormElementGroup.sql │ │ │ │ ├── V1_275__RemoveApprovalStatusFromOrgSettings.sql │ │ │ │ ├── V1_56__ModifyingChecklistItemSchema.sql │ │ │ │ ├── V1_59.1__UpdateConceptUniqueKeyConstraintToIncludeOrg.sql │ │ │ │ ├── V1_84__AddLocationFieldsToProgramEnrolment.sql │ │ │ │ ├── V1_85__AddLocationFieldsToProgramEncounter.sql │ │ │ │ ├── V1_149__AddColumnIsHouseholdInSubjectType.sql │ │ │ │ ├── V1_261__AddVersionColumnToMessageReceiverAndRequestQueue.sql │ │ │ │ ├── V1_295__TableMetadataModificationsForGroupSubject.sql │ │ │ │ ├── V1_01__AddVoidingToConcepts.sql │ │ │ │ ├── V1_202__AddIndicesOnSyncTelemetry.sql │ │ │ │ ├── V1_28__UpdateLastModifiedDateTimeForNumericConcepts.sql │ │ │ │ ├── V1_332__DropProgramOutcome.sql │ │ │ │ ├── V1_67__AddUserColumns.sql │ │ │ │ ├── V1_97__AddColumnsToSyncTelemetryTable.sql │ │ │ │ ├── V1_05__DisplayOrderToFloat.sql │ │ │ │ ├── V1_226__AddProfilePictureInfoToTables.sql │ │ │ │ ├── V1_161__AlterIndividualRelationshipIdType.sql │ │ │ │ ├── V1_211__DropDefaultOnSyncAttributeUsablity.sql │ │ │ │ ├── V1_24__AddVoidedToEncounterTypesAndFormMapping.sql │ │ │ │ ├── V1_319__AddColumnsIsClosedAndClosedDateTimeToRuleFailureLog.sql │ │ │ │ ├── V1_339_5__AddVersions.sql │ │ │ │ ├── V1_343__User1ShouldHaveNoOrganisationId.sql │ │ │ │ ├── V1_154__UpdateRolesAndPrivilegeTables.sql │ │ │ │ ├── V1_20__AddVoidedToFormElementAndFormElementGroup.sql │ │ │ │ ├── V0_48__SplitScheduledDateIntoMinAndMaxDates.sql │ │ │ │ ├── V1_169__AddSchemaNameToOrganisation.sql │ │ │ │ ├── V1_179__AllowRegistrationWithoutLocation.sql │ │ │ │ ├── V1_204__AddDeclarativeRuleForEligibility.sql │ │ │ │ ├── V1_316__FormMappingDuplicationCheckChanges1.sql │ │ │ │ ├── V1_47__AddNameToOperationProgramsAndEncounterTypes.sql │ │ │ │ ├── V1_81__AddMediaDirectoryToOrganisation.sql │ │ │ │ ├── V1_263__RenameMessageRequestQueueTimeColumns.sql │ │ │ │ ├── V1_293__AddPrivilegeTypeEnum.sql │ │ │ │ ├── V1_330__AddColumnsNestedAndInitCountToReportCard.sql │ │ │ │ ├── V1_354__AddMediaFieldsToConcept.sql │ │ │ │ ├── V1_93_1__AddOrganisationIdToGenderTable.sql │ │ │ │ ├── V0_46__ReplaceNameWithFirstAndLastNames.sql │ │ │ │ ├── V1_151__AddLegacyId.sql │ │ │ │ ├── V1_205__AddDeclarativeRuleInForm.sql │ │ │ │ ├── V1_240__DropNotNullForSubjectInTask.sql │ │ │ │ ├── V1_98__RenameUsernameAndAddNameInUserTable.sql │ │ │ │ ├── V1_198__MoveAuditColumnsToSubjectMigrationTable.sql │ │ │ │ ├── V1_224__AddLegacyIdToAddressLevel.sql │ │ │ │ ├── V1_260__AlterMessageReceiverAndMessageRequestQueueDropNotNullOnExternalIdAndDeliveredTime.sql │ │ │ │ ├── V1_263.1__AddressIdNullOnOtherTxnTables.sql │ │ │ │ ├── V0_38__DropMetaColumnsFromCatchmentAddressMapping.sql │ │ │ │ ├── V1_08__NonApplicableOrganisationEntityMapping.sql │ │ │ │ ├── V1_111__AddLevelColumnToAddressLevelType.sql │ │ │ │ ├── V1_16__DeletingOrgIDFromCatchmentAddressMapping.sql │ │ │ │ ├── V1_227__AddSchemaColumnToEntitySyncStatus.sql │ │ │ │ ├── V1_55__ModifyingChecklistItemSchema.sql │ │ │ │ ├── V1_137__UpdateUniqueConstraintOnChecklistItemDetailTable.sql │ │ │ │ ├── V1_152__AddLegacyIdToProgramEnrolment.sql │ │ │ │ ├── V1_182__AddCommentStandardReportCardType.sql │ │ │ │ ├── V1_230__MergeDocumentationAndDocumentationNodeTables.sql │ │ │ │ ├── V1_231__AddTimedQuestionRelatedColumns.sql │ │ │ │ ├── V1_265__AlterMessageReceiverAndMessageRequestQueue.sql │ │ │ │ ├── V1_181__AddNameRegExColumnsToSubjectType.sql │ │ │ │ ├── V1_217__AddSchemaNameToTableMetadata.sql │ │ │ │ ├── V1_220__AddIndexMetadataTable.sql │ │ │ │ ├── V1_284__FixDashboardFilterDefinition.sql │ │ │ │ ├── V1_248__ChangeRLSAndAddObservationsInSubjectProgramEligibility.sql │ │ │ │ ├── V1_303__AddAssignSubjectPrivilege.sql │ │ │ │ ├── V1_322__UpdateModifiedTimeForUserSubAssgnsAndGroupSubs.sql │ │ │ │ ├── V1_337__IdentifierAssignmentUsed.sql │ │ │ │ ├── V1_247__ProgramEligibiltyColumnNameChanges.sql │ │ │ │ ├── V1_278__RenameManualBroadcastMessageToManualMessage.sql │ │ │ │ ├── V1_335__AddSettingsColumnToSubjectType.sql │ │ │ │ ├── V1_344__OverwriteFEGNameWithDisplayName.sql │ │ │ │ ├── V1_175__VoidRejectPrivileges.sql │ │ │ │ ├── V1_262__AlterMessageRuleReceiverEntityIdToInt.sql │ │ │ │ ├── V1_71__AddOperatingIndividualScopeToUsers.sql │ │ │ │ ├── V1_213__AddAnalyticsDBFeatureToggle.sql │ │ │ │ ├── V1_285__AddDueChecklistInDefaultDashboard.sql │ │ │ │ ├── V1_346__RenameVoidedAddressLevelTypes.sql │ │ │ │ ├── V1_250__AlterMenuItem.sql │ │ │ │ ├── V1_88__IndividualToPointToSubjectType.sql │ │ │ │ ├── V1_44__AddingOrganisationLevelUniqueConstraintToRuleNames.sql │ │ │ │ ├── V1_120__AddSchedulingRelatedColumnsToEncounterTable.sql │ │ │ │ ├── V1_234__AddMiddleNameRelatedColumns.sql │ │ │ │ ├── V1_241__SubjectTypeOptionalInFormMapping.sql │ │ │ │ ├── V1_215__AddIndexToEntityApprovalStatus.sql │ │ │ │ ├── V1_04.5__AddHierarchyToOrganisations.sql │ │ │ │ ├── V1_304__AddMessagingPrivilege.sql │ │ │ │ ├── V1_186__RemovePrintSettingsFromOrgConfig.sql │ │ │ │ ├── V1_227.5__AddLegacyIdIndexes.sql │ │ │ │ ├── V1_312__UseMinioSettingIsBoolean.sql │ │ │ │ ├── V0_21__RemoveFollowupTypeAndUseEncounterType.sql │ │ │ │ ├── V1_294__PrivilegeModifications.sql │ │ │ │ ├── V1_72__CatchmentIsMandatoryConditionally.sql │ │ │ │ ├── V1_70__ProgramOrganisationConfigConcept.sql │ │ │ │ ├── V1_157__AddActiveFlag.sql │ │ │ │ ├── V1_03__AddGinIndexForObservations.sql │ │ │ │ ├── V1_41__AddAuditColumnsToUser.sql │ │ │ │ ├── V1_63__RemoveInvalidFormElementTypes.sql │ │ │ │ ├── V1_123__AddAuditToOrganisationConfigTable.sql │ │ │ │ ├── V1_191__UpdateLastModifiedMillisecondToThreeDigits.sql │ │ │ │ ├── V1_73_1__ChangeTypeTimestampToTimestampTZForAuditCreatedDateTimeAndLastModifiedDateTime.sql │ │ │ │ ├── V0_49__AddValidFormatRegexAndMessageKeyToFormElement.sql │ │ │ │ ├── V1_269__AlterTablesToAccommodateManualBroadcastMessageId.sql │ │ │ │ ├── V1_93_3__Create_openchs_impl.sql │ │ │ │ ├── V1_133__UpdateOpenchsImplUserCreateScript.sql │ │ │ │ ├── V1_173__AddStatusDateTimeColumnToEntityApprovalStatus.sql │ │ │ │ ├── V1_171__DecisionConcept.sql │ │ │ │ ├── V1_238__AddRLSToTaskAndAddStandardReportCard.sql │ │ │ │ ├── V0_14__UniqueConstraints.sql │ │ │ │ ├── V1_131__AddColulmsForRulesFromUI.sql │ │ │ │ ├── V1_329__MultiTxEntityTypeUpdate.sql │ │ │ │ ├── V1_288__ETLAddScheduleJobRunTable.sql │ │ │ │ ├── V1_299__AddMorePrivileges.sql │ │ │ │ ├── V1_128__AddOrganisationIdToPlatformTranslationTable.sql │ │ │ │ ├── V1_351__DefineIndexOnBatchJobParamsTable.sql │ │ │ │ ├── V1_313__IndicesOnSubjectMigration.sql │ │ │ │ ├── V1_122__CreateOrganisationConfigTable.sql │ │ │ │ ├── V1_153__AddLegacyIdToEncounterTables.sql │ │ │ │ ├── V1_219__AddNotNullConstraintToAddressIdIndividualId.sql │ │ │ │ ├── V1_301__InsertModifyPrivileges.sql │ │ │ │ ├── V1_361__AddSyncDisabledConstraintOnEncounter.sql │ │ │ │ ├── V1_199__CreateYearReviewTable.sql │ │ │ │ └── V0_3__CreateOpenCHSUser.sql │ │ ├── application-live.properties │ │ ├── favicon.ico │ │ ├── external │ │ │ └── glific │ │ │ │ ├── getContactGroupCount.json │ │ │ │ ├── getContactGroup.json │ │ │ │ ├── getContactGroupContactCount.json │ │ │ │ ├── deleteContactGroup.json │ │ │ │ ├── optinContact.json │ │ │ │ ├── startFlowForContact.json │ │ │ │ ├── sendHsmMessage.json │ │ │ │ ├── getContactGroups.json │ │ │ │ ├── messageTemplateRequest.json │ │ │ │ ├── addContactGroup.json │ │ │ │ ├── sendHsmMessageToGroup.json │ │ │ │ ├── updateContactGroup.json │ │ │ │ ├── getContact.json │ │ │ │ └── getContactGroupContacts.json │ │ ├── database │ │ │ └── pre_migrate_checklists.sql │ │ └── pivot │ │ │ └── conceptMap.sql │ └── java │ │ └── org │ │ └── avni │ │ ├── server │ │ ├── config │ │ │ ├── AvniServiceType.java │ │ │ ├── IdpType.java │ │ │ └── InvalidConfigurationException.java │ │ ├── web │ │ │ ├── request │ │ │ │ ├── IntervalUnit.java │ │ │ │ ├── webapp │ │ │ │ │ ├── search │ │ │ │ │ │ ├── SortOrder.java │ │ │ │ │ │ ├── DateRange.java │ │ │ │ │ │ └── IntegerRange.java │ │ │ │ │ └── CatchmentsExport.java │ │ │ │ ├── ReportType.java │ │ │ │ ├── rules │ │ │ │ │ ├── RulesContractWrapper │ │ │ │ │ │ └── RuleServerEntityContract.java │ │ │ │ │ ├── response │ │ │ │ │ │ └── MessageRuleResponseEntity.java │ │ │ │ │ └── constructWrappers │ │ │ │ │ │ └── RuleServiceContractMapper.java │ │ │ │ ├── ExportRequest.java │ │ │ │ ├── RelationsRequest.java │ │ │ │ ├── ChangePasswordRequest.java │ │ │ │ ├── DashboardSectionCardMappingContract.java │ │ │ │ ├── CatchmentsContract.java │ │ │ │ ├── auth │ │ │ │ │ ├── EnableUserRequest.java │ │ │ │ │ └── GenerateTokenResult.java │ │ │ │ ├── PointRequest.java │ │ │ │ ├── api │ │ │ │ │ └── DeleteSubjectCriteria.java │ │ │ │ ├── reports │ │ │ │ │ └── ReportCardWebRequest.java │ │ │ │ └── GenderContract.java │ │ │ ├── response │ │ │ │ └── ImportSampleCheckResponse.java │ │ │ ├── external │ │ │ │ └── request │ │ │ │ │ └── export │ │ │ │ │ └── ReportType.java │ │ │ ├── api │ │ │ │ ├── CommonFieldNames.java │ │ │ │ └── ApiErrorUtil.java │ │ │ ├── SampleController.java │ │ │ └── util │ │ │ │ └── ReportingSystem.java │ │ ├── exporter │ │ │ ├── ItemReaderCleaner.java │ │ │ └── LongitudinalExportTasklet.java │ │ ├── adapter │ │ │ └── contract │ │ │ │ ├── ObservationRuleResponse.java │ │ │ │ ├── ProgramRuleInput.java │ │ │ │ └── encounter │ │ │ │ └── EncounterTypeRuleInput.java │ │ ├── domain │ │ │ ├── metabase │ │ │ │ ├── MetabaseResource.java │ │ │ │ └── DeactivateMetabaseUserResponse.java │ │ │ ├── batch │ │ │ │ └── BatchJobStatus.java │ │ │ └── RuleExecutionException.java │ │ ├── importer │ │ │ └── batch │ │ │ │ ├── csv │ │ │ │ ├── writer │ │ │ │ │ └── header │ │ │ │ │ │ ├── DefaultFieldDescriptor.java │ │ │ │ │ │ ├── EncounterHeaderStrategy.java │ │ │ │ │ │ ├── TextFieldDescriptor.java │ │ │ │ │ │ ├── PhoneNumberDescriptor.java │ │ │ │ │ │ └── DateFieldDescriptor.java │ │ │ │ └── LocationImportService.java │ │ │ │ └── metabase │ │ │ │ └── CannedAnalyticsLastCompletionStatus.java │ │ ├── builder │ │ │ ├── FormBuilderException.java │ │ │ └── OrganisationBuilder.java │ │ ├── service │ │ │ ├── NonScopeAwareService.java │ │ │ ├── DeviceAwareService.java │ │ │ ├── IDPException.java │ │ │ ├── IAMAuthService.java │ │ │ ├── SampleFileExport.java │ │ │ └── exception │ │ │ │ └── GroupNotFoundException.java │ │ ├── util │ │ │ ├── BooleanUtil.java │ │ │ ├── ExceptionUtil.java │ │ │ └── BadRequestError.java │ │ ├── dao │ │ │ ├── ExportJobParametersRepository.java │ │ │ ├── UserSubjectRepository.java │ │ │ ├── ImplReferenceDataRepository.java │ │ │ ├── CustomQueryRepository.java │ │ │ └── search │ │ │ │ └── SearchBuilder.java │ │ ├── framework │ │ │ └── rest │ │ │ │ └── RestControllerErrorResponse.java │ │ ├── common │ │ │ ├── BulkItemSaveException.java │ │ │ └── Messageable.java │ │ └── identifier │ │ │ └── IdentifierGenerator.java │ │ └── messaging │ │ ├── contract │ │ └── glific │ │ │ ├── GlificMessageResponse.java │ │ │ ├── GlificStartFlowForContactResponse.java │ │ │ └── GlificAuthRequest.java │ │ ├── repository │ │ └── ManualMessageRepository.java │ │ └── service │ │ └── PhoneNumberNotAvailableOrIncorrectException.java │ └── test │ ├── resources │ ├── sample-files │ │ ├── text.csv │ │ ├── text.txt │ │ ├── text.txt.csv │ │ ├── javascript.js │ │ ├── json.json │ │ ├── csv.csv │ │ ├── csv.txt │ │ ├── compressed.zip │ │ ├── document.pdf │ │ ├── spreadsheet.xlsx │ │ ├── angled.xml │ │ ├── spreadsheet.numbers │ │ └── phpfile.php │ ├── Test Import.xlsx │ ├── Import MetaData.xlsx │ ├── TransactionData.xlsx │ ├── ref │ │ ├── program.json │ │ ├── concepts │ │ │ ├── voidableConcept.json │ │ │ ├── voidedConcept.json │ │ │ └── conceptAnswerAdditionViaSeparateFile.json │ │ ├── encounterTypes │ │ │ ├── encounterTypes.json │ │ │ ├── voidableEncounterType.json │ │ │ ├── encounterTypesWithRequiredEncoding.json │ │ │ └── voidedEncounterType.json │ │ ├── enrolment │ │ │ ├── newProgEnrol.json │ │ │ └── NonEmptyObsProgEnrolment.json │ │ ├── glific │ │ │ └── badMessageTemplateRequest.json │ │ ├── formMappings │ │ │ ├── formMappings.json │ │ │ ├── voidableFormMapping.json │ │ │ └── voidedFormMapping.json │ │ ├── individual │ │ │ ├── newIndividual.json │ │ │ ├── voidedIndividual.json │ │ │ └── NonEmptyObsIndividual.json │ │ ├── encounters │ │ │ ├── scheduled.json │ │ │ ├── voidedConceptAnswer.json │ │ │ ├── invalidMultiSelectAnswers.json │ │ │ ├── invalidSingleSelectAnswer.json │ │ │ ├── newEncounter.json │ │ │ └── voidedEncounter.json │ │ ├── operationalModules.json │ │ ├── forms │ │ │ └── formWithANonApplicableElement.json │ │ └── programEncounters │ │ │ └── newProgramEncounter.json │ └── js │ │ └── test.js │ └── java │ └── org │ └── avni │ └── server │ ├── application │ └── FormTypeTest.java │ ├── util │ └── ValidationUtilTest.java │ └── domain │ └── ExportJobParametersBuilder.java ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── perf └── gatling │ └── user-files │ └── resources │ └── search.csv ├── makefiles ├── gradle.mk ├── metabase.sh ├── util.mk ├── rule-server.mk ├── lfe.mk └── pgDumpParams.txt ├── dev-commands.txt ├── avni-server-data └── src │ └── main │ └── java │ └── org │ └── avni │ ├── server │ ├── domain │ │ ├── Status.java │ │ ├── jsRuleSupport │ │ │ ├── JsModelConcept.java │ │ │ └── JsModelObservation.java │ │ ├── metadata │ │ │ ├── FileEntryChangeReport.java │ │ │ ├── ChangeType.java │ │ │ └── MetaData.java │ │ ├── task │ │ │ └── TaskTypeName.java │ │ ├── RuleEntityType.java │ │ ├── enums │ │ │ └── ruleFailure │ │ │ │ ├── AppType.java │ │ │ │ ├── EntityType.java │ │ │ │ └── SourceType.java │ │ ├── NamedEntity.java │ │ ├── OperatingIndividualScope.java │ │ ├── extenalSystem │ │ │ └── SystemName.java │ │ ├── framework │ │ │ ├── IdHolder.java │ │ │ └── BaseJsonObject.java │ │ ├── reporting │ │ │ └── Names.java │ │ ├── ValidationException.java │ │ ├── identifier │ │ │ └── IdentifierGeneratorType.java │ │ ├── util │ │ │ └── EntityUtil.java │ │ ├── MessageableEntity.java │ │ ├── sync │ │ │ └── SubjectLinkedSyncEntity.java │ │ ├── metabase │ │ │ ├── DashboardName.java │ │ │ ├── DatasetColumn.java │ │ │ ├── CollectionResponse.java │ │ │ ├── MetabaseTargetType.java │ │ │ ├── TableName.java │ │ │ ├── Tabs.java │ │ │ ├── ConditionType.java │ │ │ ├── CardType.java │ │ │ ├── QueryAttribute.java │ │ │ ├── AggregationType.java │ │ │ ├── VisualizationAttributes.java │ │ │ └── QueryType.java │ │ ├── accessControl │ │ │ └── AvniNoUserSessionException.java │ │ ├── RuleData.java │ │ └── organisation │ │ │ └── OrganisationStatus.java │ ├── application │ │ ├── Platform.java │ │ ├── FormElementType.java │ │ ├── Subject.java │ │ ├── menu │ │ │ ├── MenuItemType.java │ │ │ └── MenuItemGroup.java │ │ ├── RuleEntity.java │ │ ├── SubjectTypeSettingKey.java │ │ ├── projections │ │ │ ├── BaseProjection.java │ │ │ ├── ReportingViewProjection.java │ │ │ ├── DocumentationProjection.java │ │ │ ├── CatchmentAddressProjection.java │ │ │ └── LocationProjection.java │ │ ├── ValueType.java │ │ ├── RuleType.java │ │ ├── KeyType.java │ │ └── OrganisationConfigSettingKey.java │ ├── dao │ │ ├── SubjectTreeItemRepository.java │ │ ├── SyncableRepository.java │ │ └── exception │ │ │ └── ConstraintViolationExceptionAcrossOrganisations.java │ ├── util │ │ └── S3FileType.java │ ├── framework │ │ └── hibernate │ │ │ ├── RuleDataUserType.java │ │ │ ├── JSONObjectUserType.java │ │ │ ├── KeyValuesUserType.java │ │ │ ├── RuledEntityUserType.java │ │ │ ├── KeyValuePairsHibernateObject.java │ │ │ ├── DeclarativeRuleUserType.java │ │ │ ├── ChecklistItemUserType.java │ │ │ ├── NextTriggerDetailsUserType.java │ │ │ └── ObservationCollectionUserType.java │ └── projection │ │ ├── IdentifierSourceProjection.java │ │ ├── CodedConceptProjection.java │ │ ├── ConceptWebProjection.java │ │ └── IdentifierAssignmentProjection.java │ └── messaging │ └── domain │ ├── ReceiverType.java │ ├── Constants.java │ ├── MessageDeliveryStatus.java │ └── exception │ ├── GlificException.java │ ├── GlificContactNotFoundError.java │ ├── GlificNotConfiguredException.java │ └── GlificConnectException.java ├── Dockerfile ├── settings.gradle ├── docker ├── .dockerignore ├── docker-compose.yml └── Dockerfile ├── .github └── ISSUE_TEMPLATE │ ├── bug_snag_issue.md │ └── story.md ├── README.md └── postman └── localhost.postman_environment.json /dummy: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 20 2 | -------------------------------------------------------------------------------- /message_rule.patch: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.java-version: -------------------------------------------------------------------------------- 1 | 21.0 2 | -------------------------------------------------------------------------------- /infra/rpm/service/openchs.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /infra/rpm/service/openchs.pid: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /avni-rule-server/src/main/js/.nvmrc: -------------------------------------------------------------------------------- 1 | 20 2 | -------------------------------------------------------------------------------- /avni-server-api/log/access_log.2022-09-14.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/public/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/rules/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /infra/rpm/scripts/preUninstall.sh: -------------------------------------------------------------------------------- 1 | service openchs stop || true -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/text.csv: -------------------------------------------------------------------------------- 1 | This is a text file -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/text.txt: -------------------------------------------------------------------------------- 1 | This is a text file -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/text.txt.csv: -------------------------------------------------------------------------------- 1 | This is a text file -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/javascript.js: -------------------------------------------------------------------------------- 1 | console.log('hello world'); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/json.json: -------------------------------------------------------------------------------- 1 | { 2 | "key": "value" 3 | } 4 | -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/csv.csv: -------------------------------------------------------------------------------- 1 | this,is,a,csv,file 2 | this,is,a,csv,file -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/csv.txt: -------------------------------------------------------------------------------- 1 | this,is,a,csv,file 2 | this,is,a,csv,file -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_277__RemoveUserReviewMatrix.sql: -------------------------------------------------------------------------------- 1 | drop table user_review_matrix; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_20__UniqueConstraintOnGender.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE gender ADD UNIQUE (uuid); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_42__DropColumnVersionFromUsers.sql: -------------------------------------------------------------------------------- 1 | alter table users drop column version; -------------------------------------------------------------------------------- /avni-rule-server/src/main/js/utils.js: -------------------------------------------------------------------------------- 1 | export function greet(name) { 2 | return `Hello, ${name} from JavaScript!`; 3 | } 4 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_17__UniqueConstraintOnConceptName.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE concept ADD UNIQUE (name); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_2__AdditionalUserColumns.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE users ADD COLUMN name VARCHAR(255); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_136__addKeyValuesToConcept.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE concept ADD COLUMN key_values jsonb -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_21__RemoveConceptIdFromProgram.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program DROP COLUMN concept_id; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_331__AddEditFormRule.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form ADD COLUMN edit_form_rule text; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_43__DropColumnAuditIdFromUsers.sql: -------------------------------------------------------------------------------- 1 | alter table users drop column audit_id; -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_11__DropColumnProfileFromIndividual.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE individual DROP COLUMN profile; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_33__AddUnitToConcept.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE concept ADD COLUMN unit VARCHAR (50) NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_135__Openchs_impl__userCanCreateRoles.sql: -------------------------------------------------------------------------------- 1 | alter role openchs_impl createrole; 2 | -------------------------------------------------------------------------------- /perf/gatling/user-files/resources/search.csv: -------------------------------------------------------------------------------- 1 | searchCriterion,searchComputerName 2 | Macbook,MacBook Pro 3 | eee,ASUS Eee PC 1005PE -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_31__CreateBaseDate.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE checklist ADD COLUMN base_date TIMESTAMP NOT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_35__DropCatchmentFromIndividual.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE individual DROP COLUMN catchment_id; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_37__AddColumnColourToProgram.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program ADD COLUMN colour VARCHAR(20) NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_118__AddUniqueUUIDConstraintToVideo.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE video 2 | ADD UNIQUE (uuid); 3 | -------------------------------------------------------------------------------- /infra/rpm/scripts/postUninstall.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | rm -rf /opt/openchs /etc/init.d/openchs /var/run/openchs /var/log/openchs 2>>dev/null -------------------------------------------------------------------------------- /infra/rpm/scripts/preInstall.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | rm -rf /opt/openchs /etc/init.d/openchs /var/run/openchs /var/log/openchs 2>>dev/null -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/application-live.properties: -------------------------------------------------------------------------------- 1 | logging.path=/var/log/openchs/ 2 | logging.file=${logging.path}openchs.log 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_150__DropFormNameNotNullConstraint.sql: -------------------------------------------------------------------------------- 1 | alter table form alter column name drop not null; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_160__AddTypeToSubjectType.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE subject_type ADD COLUMN type varchar(255); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_73__SetAdminUserRoles.sql: -------------------------------------------------------------------------------- 1 | update users set is_admin = true where id = 1 and name = 'admin'; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_92__AddSettingsColumnToUsersTable.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE users 2 | ADD COLUMN settings JSONB; -------------------------------------------------------------------------------- /makefiles/gradle.mk: -------------------------------------------------------------------------------- 1 | dependency-tree-compile-classpath: 2 | cd avni-server-api && ../gradlew dependencies --configuration compileClasspath 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_25__AddNameToProgramEncounter.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program_encounter ADD COLUMN name VARCHAR(50) NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_47__AddingFormElementType.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element ADD COLUMN type VARCHAR(1024) DEFAULT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_101__EnableRLS_OnAddressLevelType.sql: -------------------------------------------------------------------------------- 1 | select enable_rls_on_ref_table('address_level_type'); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_146__DropFormIdNotNullConstraint.sql: -------------------------------------------------------------------------------- 1 | alter table form_mapping alter column form_id drop not null; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_155__AddRuleColumnToFormElementGroup.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element_group ADD COLUMN rule text; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_158__DropLevelColumnFromAddressLevel.sql: -------------------------------------------------------------------------------- 1 | alter table address_level 2 | drop column level; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_189__AddSyncSourceToSyncTelemetry.sql: -------------------------------------------------------------------------------- 1 | alter table sync_telemetry add column sync_source text; 2 | -------------------------------------------------------------------------------- /dev-commands.txt: -------------------------------------------------------------------------------- 1 | make test_server_with_remote_db DBUSER=postgres DBSERVER=192.168.33.11 2 | OPENCHS_USER=vivek@test make start_server_remote_db 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_40__AddingAddressLevelAttributes.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE address_level 2 | ADD COLUMN attributes JSONB NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_07__DropIsGeneratedColumnInFormElement.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element 2 | DROP COLUMN is_generated; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_09__MigrateConceptDataType.sql: -------------------------------------------------------------------------------- 1 | UPDATE concept 2 | SET data_type = 'NA' 3 | WHERE data_type = 'N/A'; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_126__AddLanguageToTranslationTable.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE translation ADD COLUMN language varchar(255); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_172__AddIconColumnToReportCardTable.sql: -------------------------------------------------------------------------------- 1 | alter table report_card add column icon_file_s3_key text; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_188__AddIconColumnToSubjectType.sql: -------------------------------------------------------------------------------- 1 | alter table subject_type add column icon_file_s3_key text; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_237__AddTaskTypeToTask.sql: -------------------------------------------------------------------------------- 1 | alter table task add column task_type_id int references task_type(id); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_281__AddNameToDashboardFilter.sql: -------------------------------------------------------------------------------- 1 | ALTER table dashboard_filter 2 | ADD COLUMN name VARCHAR(255) NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_291__DropHasAnalyticsDbInOrgGroup.sql: -------------------------------------------------------------------------------- 1 | alter table organisation_group drop column has_analytics_db; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_292__AddSuccessColumnToScheduledJobRun.sql: -------------------------------------------------------------------------------- 1 | alter table scheduled_job_run add column success bool; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_324__DropUUIDFromRuleFailureTelemetry.sql: -------------------------------------------------------------------------------- 1 | alter table rule_failure_telemetry drop column uuid; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_347__IdentifierAssignmentDeviceId.sql: -------------------------------------------------------------------------------- 1 | alter table identifier_assignment add column device_id varchar; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_353_2__AddAppInfoToSyncTelemetry.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE sync_telemetry ADD COLUMN app_info jsonb NULL; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_356__AlterArchivalConfigTable.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE archival_config ALTER COLUMN realm_query DROP NOT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_362_1__RenameArchivalConfigTable.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE archival_config RENAME TO storage_management_config; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_64__MigrateLevelToADouble.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE address_level 2 | ALTER COLUMN level TYPE DOUBLE PRECISION; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_86__AddLocationFieldsToEncounter.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE encounter 2 | ADD COLUMN encounter_location POINT; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/main/resources/favicon.ico -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_26__AddMaxDateForProgramEncounter.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program_encounter ADD COLUMN max_date_time TIMESTAMP NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_52__AddressLevelOnIndividualIsMandatory.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE individual ALTER COLUMN address_id SET NOT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_167__AddDeviceInfoColumnToSyncTelemetry.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE sync_telemetry add column device_info jsonb; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_201__AddDeclarativeRuleToFormElement.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element ADD COLUMN declarative_rule jsonb; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_223__AddNameHelpTextToSubjectType.sql: -------------------------------------------------------------------------------- 1 | alter table subject_type 2 | add column name_help_text text; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_242__AddNotNullToTaskScheduleOn.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE task 2 | ALTER COLUMN scheduled_on SET NOT NULL; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_245__DropNotNullForAssignedToInTask.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE task ALTER COLUMN assigned_user_id DROP NOT NULL; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_341__RegionForPhoneNumber.sql: -------------------------------------------------------------------------------- 1 | alter table account add column region varchar(255) not null default 'IN'; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_93__DropUserSettingsTable.sql: -------------------------------------------------------------------------------- 1 | drop policy user_settings_orgs on user_settings; 2 | drop table user_settings; -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/Status.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain; 2 | 3 | public enum Status { 4 | open, closed 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_22__AddObservationsTypeEntityId.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_mapping ADD COLUMN observations_type_entity_id INT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_28__RenameSpellingMistakeInTableName.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE health_metatadata_version RENAME TO health_metadata_version; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_36__AddColumnDisplayToFormElementGroup.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element_group ADD COLUMN display VARCHAR(100) NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_43__AddAbnormalToConceptAnswer.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE concept_answer ADD COLUMN abnormal boolean NOT NULL DEFAULT false; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_50__AddingTypeToCatchments.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE catchment ADD COLUMN type VARCHAR(1024) NOT NULL DEFAULT 'Villages'; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_02__AddVoidedToEncounters.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE encounter 2 | ADD COLUMN is_voided BOOLEAN NOT NULL DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_04__AddVoidedToIndividual.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE individual 2 | ADD COLUMN is_voided BOOLEAN NOT NULL DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_06__DropIsUsedInSummaryColumnInFormElement.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element 2 | DROP COLUMN is_used_in_summary; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_13__AddSoloFieldToConceptAnswer.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE concept_answer ADD COLUMN uniq boolean NOT NULL DEFAULT false; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_212__AddSchemaNameToOrganisationGroup.sql: -------------------------------------------------------------------------------- 1 | alter table organisation_group 2 | add column schema_name text; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_46__DroppingNotNullConstraintOnRules.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE rule 2 | ALTER COLUMN rule_dependency_id DROP NOT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_51__AddVoidingToChecklistItem.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE checklist_item ADD COLUMN is_voided BOOLEAN NOT NULL DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_83__AddRegistrationLocationToIndividual.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE individual 2 | ADD COLUMN registration_location POINT; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/Test Import.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/test/resources/Test Import.xlsx -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/config/AvniServiceType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.config; 2 | 3 | public enum AvniServiceType { 4 | ETL 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_9__RenameColumnUsedInSummary.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element 2 | RENAME COLUMN used_in_summary TO is_used_in_summary; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_117__AddUsernameSuffixToOrganisationTable.sql: -------------------------------------------------------------------------------- 1 | 2 | alter table organisation 3 | add column username_suffix text ; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_127__AddLanguageToPlatformTranslationTable.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE platform_translation ADD COLUMN language varchar(255); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_203__AddDeclarativeRuleToFormElementGroup.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element_group ADD COLUMN declarative_rule jsonb; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_206__AddGroupInFormElement.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element add column group_id integer references form_element (id); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_254__AddImmutableColumnInEncounter.sql: -------------------------------------------------------------------------------- 1 | alter table encounter_type add column is_immutable boolean default false; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_264__OnlyOneOrgConfigPerOrganisation.sql: -------------------------------------------------------------------------------- 1 | alter table organisation_config add unique (organisation_id, is_voided); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_305__EntityTypeOfNewsToBeMessaging.sql: -------------------------------------------------------------------------------- 1 | update privilege set entity_type = 'Messaging' where type = 'EditNews'; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_339_2__OrganisationStatus.sql: -------------------------------------------------------------------------------- 1 | alter table organisation add column status varchar(255) not null default 'Live'; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_348__AllowVoidingOfETLColumns.sql: -------------------------------------------------------------------------------- 1 | alter table column_metadata add column concept_voided boolean default false; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_40__RenamingOpenCHSUserToAdmin.sql: -------------------------------------------------------------------------------- 1 | update users set name = 'admin' where name = 'openchs' and organisation_id = 1; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_48__AddingVoidingCapabilityToRules.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE rule 2 | ADD COLUMN is_voided BOOLEAN NOT NULL DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_52__AnswerOrderInConceptAnswerIsDouble.sql: -------------------------------------------------------------------------------- 1 | alter table concept_answer alter column answer_order type double precision; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_23__RenameProgramEncounterDateTime.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program_encounter RENAME COLUMN actual_date_time TO encounter_date_time; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_163__CreateSubjectSummaryRuleColumnInSubjectType.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE subject_type ADD COLUMN subject_summary_rule text ; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_18__DisableRowLevelSecurityForCatchmentAddressMapping.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE catchment_address_mapping DISABLE ROW LEVEL SECURITY; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_200__SetErrorMessageFieldToText.sql: -------------------------------------------------------------------------------- 1 | alter table rule_failure_telemetry alter column error_message set data type text; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_29__RemoveRLSFromUsers.sql: -------------------------------------------------------------------------------- 1 | DROP POLICY IF EXISTS users_user ON users; 2 | ALTER TABLE users DISABLE ROW LEVEL SECURITY; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_311__isVoidedOnOrgGroup.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE organisation_group 2 | ADD COLUMN is_voided BOOLEAN NOT NULL DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_334__DropChecklistTempTables.sql: -------------------------------------------------------------------------------- 1 | drop table if exists checklist_item_temp; 2 | drop table if exists checklist_temp; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_336__SecondaryDashboard.sql: -------------------------------------------------------------------------------- 1 | alter table group_dashboard add column is_secondary_dashboard bool not null default false; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_338__OrganisationCategory.sql: -------------------------------------------------------------------------------- 1 | alter table organisation add column category varchar(255) not null default 'Production'; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_50__AddVoidingToProgramEnrolment.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program_enrolment ADD COLUMN is_voided BOOLEAN NOT NULL DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/Import MetaData.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/test/resources/Import MetaData.xlsx -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/TransactionData.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/test/resources/TransactionData.xlsx -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_12__AddDisplayOrderToFormElementGroup.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element_group ADD COLUMN display_order SMALLINT NOT NULL DEFAULT -1; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_24__AddRegistrationDateToIndividual.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE individual ADD COLUMN registration_date DATE NOT NULL DEFAULT '2017-01-01'; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_141__CreateWorkupdationRuleColumnInOrgConfig.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE organisation_config ADD COLUMN worklist_updation_rule text ; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_267__AddReceiverTypeToMessageRule.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE message_rule ADD column receiver_type text not null DEFAULT 'Subject'; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_270__AllowActiveProgramEnrolments.sql: -------------------------------------------------------------------------------- 1 | alter table program add column allow_multiple_enrolments bool not null default false; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_286__AddLastNameOptionalToSubjectType.sql: -------------------------------------------------------------------------------- 1 | alter table subject_type 2 | add column last_name_optional boolean default false; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_349__AddShowGrowthChartToProgram.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program 2 | ADD COLUMN show_growth_chart BOOLEAN DEFAULT FALSE NOT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/web/request/IntervalUnit.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.web.request; 2 | 3 | public enum IntervalUnit { 4 | YEARS, MONTHS 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_221__AddParentConceptUuidToColumnMetadata.sql: -------------------------------------------------------------------------------- 1 | alter table column_metadata add column parent_concept_uuid CHARACTER VARYING(255); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_339_7__AddIgnoreSyncSettingsInDEAToUser.sql: -------------------------------------------------------------------------------- 1 | alter table users add column ignore_sync_settings_in_DEA boolean not null default false; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_345__ReportCardNameIsUnique.sql: -------------------------------------------------------------------------------- 1 | alter table report_card add constraint report_card_name_unique unique (name, organisation_id); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_352__AddIndexesInScheduledJobRun.sql: -------------------------------------------------------------------------------- 1 | CREATE INDEX IF NOT EXISTS idx_scheduled_job_run_job_name ON scheduled_job_run(job_name); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_363__AddMemberAdditionRuleToSubjectType.sql: -------------------------------------------------------------------------------- 1 | alter table subject_type add column member_addition_eligibility_check_rule text null; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_54__EnableRLSOnNewTables.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE rule_dependency ENABLE ROW LEVEL SECURITY; 2 | ALTER TABLE rule ENABLE ROW LEVEL SECURITY; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_90__EnableRowLevelSecurityOnProgramOrganisationConfig.sql: -------------------------------------------------------------------------------- 1 | alter table program_organisation_config 2 | enable row level security; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/compressed.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/test/resources/sample-files/compressed.zip -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/document.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/test/resources/sample-files/document.pdf -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/application/Platform.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.application; 2 | 3 | public enum Platform { 4 | Android, 5 | Web 6 | } 7 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/jsRuleSupport/JsModelConcept.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.jsRuleSupport; 2 | 3 | public class JsModelConcept { 4 | } 5 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_8__RenameDateOfBirthEstimatedToVerified.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE Individual 2 | RENAME COLUMN date_of_birth_estimated TO date_of_birth_verified; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_166__RenameCardToReportCard.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE card RENAME TO report_card; 2 | ALTER TABLE card_id_seq RENAME TO report_card_id_seq; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_180__AddUniqueNameColumnToSubjectType.sql: -------------------------------------------------------------------------------- 1 | alter table subject_type 2 | add column unique_name boolean not null default false; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_266__AddUniqueContraintToMessageReceiver.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE message_receiver ADD UNIQUE (receiver_id, receiver_type, organisation_id); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_271__AddNextTriggerDetailsToManualBroadcastMessage.sql: -------------------------------------------------------------------------------- 1 | alter table manual_broadcast_message add column next_trigger_details json; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_290__UUIDToOrgGroup.sql: -------------------------------------------------------------------------------- 1 | alter table organisation_group add column uuid CHARACTER VARYING(255) not null default uuid_generate_v4(); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_340__StandardReportCardInput.sql: -------------------------------------------------------------------------------- 1 | alter table report_card add column standard_report_card_input jsonb not null default '{}'::jsonb; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_82__AddMinDaysFromStartDateToChecklistItemDetail.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE checklist_item_detail 2 | ADD COLUMN min_days_from_start_date SMALLINT; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/spreadsheet.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/test/resources/sample-files/spreadsheet.xlsx -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/metadata/FileEntryChangeReport.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.metadata; 2 | 3 | public class FileEntryChangeReport { 4 | } 5 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/task/TaskTypeName.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.task; 2 | 3 | public enum TaskTypeName { 4 | Call, OpenSubject 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/exporter/ItemReaderCleaner.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.exporter; 2 | 3 | public interface ItemReaderCleaner { 4 | void clean(); 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_51__AddingTypeToAddressLevel.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE address_level DROP COLUMN attributes; 2 | ALTER TABLE address_level ADD COLUMN type VARCHAR(1024); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_109__AddProgramSubjectLabelColumnToOperationalProgram.sql: -------------------------------------------------------------------------------- 1 | alter table operational_program 2 | add column program_subject_label text; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_130__CreateTablesForRulesFromUI.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_element ADD COLUMN rule text; 2 | -- ALTER TABLE form ADD COLUMN visit_schedule_rule text; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_321__FixUsersUUIDIndex.sql: -------------------------------------------------------------------------------- 1 | alter table users drop constraint if exists users_uuid_org_id_key; 2 | alter table users add unique (uuid); 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_328__UserNameIsMandatory.sql: -------------------------------------------------------------------------------- 1 | update users set name = username where name is null; 2 | alter table users alter column name set not null; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_348_1__AddUserLastActivatedDateTime.sql: -------------------------------------------------------------------------------- 1 | alter table users 2 | add column last_activated_date_time timestamp(3) with time zone default null; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_358__AddSyncDisabledColumnToUserSubjectAssignment.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE user_subject_assignment ADD COLUMN sync_disabled boolean DEFAULT FALSE; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_74__AddingChecklistItemInterdependency.sql: -------------------------------------------------------------------------------- 1 | alter table checklist_item_detail add column dependent_on int references checklist_item_detail (id); -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/ref/program.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Adolescent", 4 | "uuid": "215f4795-7d46-4617-95dd-52343f945a0f", 5 | "colour": "blueviolet" 6 | } 7 | ] -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/angled.xml: -------------------------------------------------------------------------------- 1 | 2 |
3 | -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/sample-files/spreadsheet.numbers: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/avniproject/avni-server/HEAD/avni-server-api/src/test/resources/sample-files/spreadsheet.numbers -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/RuleEntityType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain; 2 | 3 | public enum RuleEntityType { 4 | EncounterType, 5 | Program 6 | } 7 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/enums/ruleFailure/AppType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.enums.ruleFailure; 2 | 3 | public enum AppType { 4 | Android, Web 5 | } -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/adapter/contract/ObservationRuleResponse.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.adapter.contract; 2 | 3 | public class ObservationRuleResponse { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_54__AddCancelToProgramEncounter.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program_encounter ADD COLUMN cancel_date_time TIMESTAMP, 2 | ADD COLUMN cancel_observations JSONB; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_112__AddParentIdColumnToAddressLevelType.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE address_level_type 2 | ADD COLUMN parent_id INTEGER REFERENCES address_level_type (id); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_297__AddQuestionGroupUUIDToTableMetadata.sql: -------------------------------------------------------------------------------- 1 | alter table table_metadata add column repeatable_question_group_concept_uuid varchar(255) null; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_309__UniqueConstraintOnSubjectAndUserForAssignment.sql: -------------------------------------------------------------------------------- 1 | alter table user_subject_assignment add unique(subject_id, user_id, organisation_id); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_350__SetDefaultShowGrowthChartToTrueForChildProgram.sql: -------------------------------------------------------------------------------- 1 | UPDATE program 2 | SET show_growth_chart= TRUE 3 | WHERE name ILIKE 'child'; 4 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_68__MakeUserColumnsNotNullable.sql: -------------------------------------------------------------------------------- 1 | alter table users 2 | alter column is_org_admin set not null, 3 | alter column organisation_id set not null; -------------------------------------------------------------------------------- /infra/rpm/service/start.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | nohup java $OPENCHS_SERVER_OPTS -jar /opt/openchs/bin/avni-server.jar >> /var/log/openchs/openchs.log 2>&1 & 3 | echo $! > /var/run/openchs/openchs.pid 4 | -------------------------------------------------------------------------------- /makefiles/metabase.sh: -------------------------------------------------------------------------------- 1 | export MB_DB_TYPE=postgres 2 | export MB_DB_CONNECTION_URI="jdbc:postgresql://localhost:5432/reportingdb?user=reporting_user&password=password" 3 | java -jar metabase.jar 4 | -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/config/IdpType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.config; 2 | 3 | public enum IdpType { 4 | none, 5 | keycloak, 6 | cognito, 7 | both; 8 | } 9 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_15__ChangeDataTypeOfRelatedEntity.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE form_mapping DROP COLUMN related_entity; 2 | ALTER TABLE form_mapping ADD COLUMN entity_id BIGINT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_27__HealthMetaDataVersion.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE health_metatadata_version ( 2 | id SERIAL PRIMARY KEY, 3 | name VARCHAR(50) UNIQUE NOT NULL 4 | ); 5 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_359__AddSyncDisabledColumnToSubjectProgramEligibility.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE subject_program_eligibility ADD COLUMN sync_disabled boolean DEFAULT FALSE; 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_89__UpdateUniqueConstraintAs_Title_Level_OrgId_On_AddressLevel.sql: -------------------------------------------------------------------------------- 1 | 2 | alter table address_level drop constraint address_level_unique_titel_level; 3 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/messaging/domain/ReceiverType.java: -------------------------------------------------------------------------------- 1 | package org.avni.messaging.domain; 2 | 3 | public enum ReceiverType { 4 | User, 5 | Subject, 6 | Group 7 | } 8 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/application/FormElementType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.application; 2 | 3 | public enum FormElementType { 4 | SingleSelect, MultiSelect 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/application/Subject.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.application; 2 | 3 | public enum Subject { 4 | Group, Household, Individual, Person, User 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/application/menu/MenuItemType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.application.menu; 2 | 3 | public enum MenuItemType { 4 | Link, 5 | Document 6 | } 7 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/NamedEntity.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain; 2 | 3 | public interface NamedEntity { 4 | String getName(); 5 | Long getId(); 6 | } 7 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM amazoncorretto:21 2 | COPY avni-server-api/build/libs/avni-server-0.0.1-SNAPSHOT.jar /opt/openchs/avni-server.jar 3 | CMD java $OPENCHS_SERVER_OPTS $DEBUG_OPTS -jar /opt/openchs/avni-server.jar -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/web/request/webapp/search/SortOrder.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.web.request.webapp.search; 2 | 3 | public enum SortOrder { 4 | asc, 5 | desc; 6 | } 7 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_140__DropChecklistRuleColumnFromProgramAddToForm.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program DROP COLUMN checklists_rule; 2 | ALTER TABLE form ADD COLUMN checklists_rule text; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_187__ReplaceRLSForGroupDashboard.sql: -------------------------------------------------------------------------------- 1 | DROP POLICY IF EXISTS group_dashboard_orgs ON group_dashboard; 2 | select enable_rls_on_tx_table('group_dashboard'); 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_310__LastmodifieddatetimeIndexOnSyncTele.sql: -------------------------------------------------------------------------------- 1 | create index if not exists sync_telemetry_last_modified_time_idx ON sync_telemetry(last_modified_date_time); 2 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_69__UserFacilityMappingNotNullColumns.sql: -------------------------------------------------------------------------------- 1 | alter table user_facility_mapping 2 | alter column uuid set not null, 3 | alter column version set not null; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_79__AddUniqueConstraintOn_AddressLevel_title_and_level.sql: -------------------------------------------------------------------------------- 1 | alter table address_level add constraint address_level_unique_titel_level unique (title, level); -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/OperatingIndividualScope.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain; 2 | 3 | public enum OperatingIndividualScope { 4 | ByCatchment, 5 | None 6 | } 7 | -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/web/request/ReportType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.web.request; 2 | 3 | public enum ReportType { 4 | Registration, Enrolment, Encounter, GroupSubject 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_190__AddUniqueConstraintForUuidAndOrganisationid.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE group_role 2 | ADD CONSTRAINT group_role_uuid_org_id_key UNIQUE (uuid, organisation_id); 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_326__EntityIdIndividualIdCheckForEAS.sql: -------------------------------------------------------------------------------- 1 | alter table entity_approval_status 2 | add check ( (entity_type <> 'Subject') or (entity_id = individual_id) ); 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_333__DropProgramOrganisationConfig.sql: -------------------------------------------------------------------------------- 1 | drop table if exists program_organisation_config_at_risk_concept; 2 | drop table if exists program_organisation_config; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_345_1__VoidedReportCardNameChange.sql: -------------------------------------------------------------------------------- 1 | update report_card 2 | set name = concat(name, ' (voided~', id, ')') 3 | where is_voided 4 | and name not ilike '%voided%'; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/ref/concepts/voidableConcept.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Voidable concept", 4 | "uuid": "23b26d8f-a864-4b8c-9b9d-2eec498136e6", 5 | "dataType": "Numeric" 6 | } 7 | ] -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/extenalSystem/SystemName.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.extenalSystem; 2 | 3 | 4 | public enum SystemName { 5 | Exotel, 6 | Glific 7 | } 8 | -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/domain/metabase/MetabaseResource.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.metabase; 2 | 3 | public enum MetabaseResource { 4 | UserGroup, Collection, Database 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_100__AddColumnsToChecklistItemDetail.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE checklist_item_detail 2 | ADD COLUMN min_days_from_dependent INTEGER, 3 | ADD COLUMN expires_after INTEGER; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_105__DropSchedulingConstraintOnProgramEncounter.sql: -------------------------------------------------------------------------------- 1 | alter table program_encounter 2 | drop constraint if exists program_encounter_ensure_scheduling_is_complete; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_251__AlterMenuItemLinkToLinkFunction.sql: -------------------------------------------------------------------------------- 1 | alter table menu_item drop column link; 2 | alter table menu_item add column link_function character varying(10000) null; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/ref/encounterTypes/encounterTypes.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "NA EncounterType", 4 | "uuid": "c11c579e-eadf-448c-831c-c73c205aaaca", 5 | "immutable": false 6 | } 7 | ] -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/application/menu/MenuItemGroup.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.application.menu; 2 | 3 | public enum MenuItemGroup { 4 | Functionality, Sync, User, Support 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/framework/IdHolder.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.framework; 2 | 3 | public interface IdHolder { 4 | Long getId(); 5 | String getUuid(); 6 | } 7 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/metadata/ChangeType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.metadata; 2 | 3 | public enum ChangeType { 4 | Added, Missing, Modified, NoChange, Voided 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/metadata/MetaData.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.metadata; 2 | 3 | public interface MetaData { 4 | void accept(MetaDataVisitor metaDataVisitor); 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/web/response/ImportSampleCheckResponse.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.web.response; 2 | 3 | public record ImportSampleCheckResponse(boolean success, String message) { 4 | } 5 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_116__AddNameParentUniqueConstraintToLocation.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE address_level 2 | ADD CONSTRAINT unique_name_per_level UNIQUE(title, type_id, parent_id, organisation_id); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_306__VoidUserGroupsForVoidedGroups.sql: -------------------------------------------------------------------------------- 1 | update user_group ug set is_voided = true from groups g 2 | where ug.group_id = g.id and g.is_voided = true and ug.is_voided = false; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_75__UpdateAuditWhenLastModifiedDateTimeIsInFuture.sql: -------------------------------------------------------------------------------- 1 | UPDATE audit SET last_modified_date_time = current_timestamp 2 | WHERE last_modified_date_time > current_timestamp; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_143__DropOrganisationNotNullConstraintFromUser.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE users ALTER COLUMN organisation_id DROP NOT NULL; 2 | ALTER TABLE users ALTER COLUMN organisation_id DROP DEFAULT; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_235__ChangeSubjectUserAssignmentApproach.sql: -------------------------------------------------------------------------------- 1 | alter table individual add column assigned_user_id int null references users(id); 2 | 3 | drop table user_subject_assignment; 4 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_364__UpdateVoidedGroupNamesWithProperSuffix.sql: -------------------------------------------------------------------------------- 1 | UPDATE groups 2 | SET name = name || ' (voided~' || id || ')' 3 | WHERE is_voided = true 4 | AND name NOT LIKE '%(voided~%)'; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_80__AddScheduleOnExpiryOfDependencyToChecklistItemDetail.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE checklist_item_detail 2 | ADD COLUMN schedule_on_expiry_of_dependency BOOLEAN NOT NULL DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/ref/encounterTypes/voidableEncounterType.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Voidable EncounterType", 4 | "uuid": "50e822a4-2f05-4789-b834-834ab13ea398", 5 | "immutable": false 6 | } 7 | ] -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/application/RuleEntity.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.application; 2 | 3 | public enum RuleEntity { 4 | ProgramEncounter, ProgramEnrolment, Encounter, IndividualProfile 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_16__ChangeSortOrderDataTypeAndAddUniqueConstraint.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE concept_answer DROP COLUMN sort_weight; 2 | ALTER TABLE concept_answer ADD COLUMN answer_order SMALLINT NOT NULL; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_132__AddColulmsForRulesFromUI.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE encounter DROP COLUMN encounter_eligibility_check_rule; 2 | ALTER TABLE encounter_type ADD COLUMN encounter_eligibility_check_rule text; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_177__AddGPSCordinatesAndLocationPropertiesToAddressLevel.sql: -------------------------------------------------------------------------------- 1 | alter table address_level 2 | add column gps_coordinates point, 3 | add column location_properties jsonb; 4 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_185__ReplaceRLSForOrganisationConfig.sql: -------------------------------------------------------------------------------- 1 | DROP POLICY IF EXISTS organisation_config_orgs ON organisation_config; 2 | 3 | select enable_rls_on_ref_table('organisation_config'); 4 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_233__AddColourColumnsToFormElementGroup.sql: -------------------------------------------------------------------------------- 1 | alter table form_element_group 2 | add column text_colour varchar(20), 3 | add column background_colour varchar(20); 4 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_353_1__GrantAccessForPostEtlSyncStatus.sql: -------------------------------------------------------------------------------- 1 | SELECT grant_all_on_table(a.rolname, 'post_etl_sync_status') 2 | FROM pg_roles a 3 | WHERE pg_has_role('openchs', a.oid, 'member'); 4 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'avni-server' 2 | include ':avni-server-api' 3 | project(':avni-server-api').projectDir = "$rootDir/avni-server-api" as File 4 | include 'avni-server-data' 5 | include 'avni-rule-server' 6 | 7 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_32__RenameObservationColumns.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE individual RENAME COLUMN custom_profile TO observations; 2 | ALTER TABLE program_enrolment RENAME COLUMN enrolment_profile TO observations; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V0_53__AddUniqueConstraintToOrganisation.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE organisation ADD UNIQUE (uuid); 2 | ALTER TABLE organisation ADD UNIQUE (name); 3 | ALTER TABLE organisation ADD UNIQUE (db_user); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_104__AddColumnsToIdntifierSourceTable.sql: -------------------------------------------------------------------------------- 1 | alter table identifier_source 2 | add column min_length integer not null default 0, 3 | add column max_length integer not null default 0; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_327__FilledBy.sql: -------------------------------------------------------------------------------- 1 | alter table encounter add column filled_by_id int null references users(id); 2 | alter table program_encounter add column filled_by_id int null references users(id); 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_45__DefaultingExecutionOrderToMax.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE rule 2 | DROP COLUMN execution_order; 3 | ALTER TABLE rule 4 | ADD COLUMN execution_order DOUBLE PRECISION NOT NULL DEFAULT 10000.0; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_95__AddEmailAndPhoneToUser.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE users 2 | ADD COLUMN email VARCHAR(320), 3 | ADD COLUMN phone_number VARCHAR(32), 4 | ADD COLUMN disabled_in_cognito BOOLEAN DEFAULT FALSE; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/ref/concepts/voidedConcept.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "Voidable concept", 4 | "uuid": "23b26d8f-a864-4b8c-9b9d-2eec498136e6", 5 | "dataType": "Numeric", 6 | "voided": true 7 | } 8 | ] -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/application/SubjectTypeSettingKey.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.application; 2 | 3 | public enum SubjectTypeSettingKey { 4 | displayRegistrationDetails, displayPlannedEncounters 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-data/src/main/java/org/avni/server/domain/reporting/Names.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.domain.reporting; 2 | 3 | public class Names { 4 | public static final String DecisionConceptMapName = "concepts_decisions"; 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/web/external/request/export/ReportType.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.web.external.request.export; 2 | 3 | public enum ReportType { 4 | Registration, Enrolment, Encounter, GroupSubject 5 | } 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/java/org/avni/server/web/request/rules/RulesContractWrapper/RuleServerEntityContract.java: -------------------------------------------------------------------------------- 1 | package org.avni.server.web.request.rules.RulesContractWrapper; 2 | 3 | public interface RuleServerEntityContract { 4 | } 5 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_232__MoveIsTimedFromFormToFormElementGroup.sql: -------------------------------------------------------------------------------- 1 | alter table form 2 | drop column is_timed; 3 | 4 | alter table form_element_group 5 | add column is_timed boolean default false; 6 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_275__RemoveApprovalStatusFromOrgSettings.sql: -------------------------------------------------------------------------------- 1 | update organisation_config set settings = settings - 'enableApprovalWorkflow' 2 | where settings->>'enableApprovalWorkflow' is not null; 3 | -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_56__ModifyingChecklistItemSchema.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE checklist_item 2 | ADD COLUMN form_id BIGINT REFERENCES form (id); 3 | 4 | ALTER TABLE checklist_item 5 | ADD COLUMN observations JSONB; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_59.1__UpdateConceptUniqueKeyConstraintToIncludeOrg.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE concept 2 | DROP CONSTRAINT concept_name_key, 3 | ADD CONSTRAINT concept_name_orgid UNIQUE(name,organisation_id); -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_84__AddLocationFieldsToProgramEnrolment.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program_enrolment 2 | ADD COLUMN enrolment_location POINT; 3 | 4 | ALTER TABLE program_enrolment 5 | ADD COLUMN exit_location POINT; -------------------------------------------------------------------------------- /avni-server-api/src/main/resources/db/migration/V1_85__AddLocationFieldsToProgramEncounter.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE program_encounter 2 | ADD COLUMN encounter_location POINT; 3 | 4 | ALTER TABLE program_encounter 5 | ADD COLUMN cancel_location POINT; -------------------------------------------------------------------------------- /avni-server-api/src/test/resources/ref/encounterTypes/encounterTypesWithRequiredEncoding.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "