-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dev #579
Conversation
HLM-4062: count api changes
* HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names
* hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter
* added downsync dummy api * added downsync dummy api with res * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Dev (#537) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]> * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * rebased project-persister.yml from configs * updated pom.xml: update common model version to 1.0.10 * updated db script, added unique constraint to tag column * updated referral-management.yml * updated db script * project beneficiary voucher tag uniqueness validator and search support * updated PbVoucherTagUniqueValidator.java * Added and updated for unique field voucher tag create and update scenario * project beneficiary bug fix * removed unused import * project beneficiary : voucherTag renamed to tag * Hlm 4062 count api (#547) (#548) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter Co-authored-by: kanishq-egov <[email protected]> * referral management project beneficiary validation fix * deleted persister and indexer file from project module resource folder --------- Co-authored-by: kavi_elrey <[email protected]> Co-authored-by: Vishal <[email protected]>
* adding clientRefId, Models version change, migration file * adding clientRefId for HouseholdMemberSearch as List * updated migration * adding Notnull for clientrefId --------- Co-authored-by: Vishal <[email protected]>
* added downsync dummy api * added downsync dummy api with res * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Dev (#537) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]> * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * Hlm 4062 count api (#547) (#548) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter Co-authored-by: kanishq-egov <[email protected]> * Project beneficiary tag cherrypick (#549) * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * rebased project-persister.yml from configs * updated pom.xml: update common model version to 1.0.10 * updated db script, added unique constraint to tag column * updated referral-management.yml * updated db script * project beneficiary voucher tag uniqueness validator and search support * updated PbVoucherTagUniqueValidator.java * Added and updated for unique field voucher tag create and update scenario * project beneficiary bug fix * removed unused import * project beneficiary : voucherTag renamed to tag * referral management project beneficiary validation fix --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: Vishal <[email protected]> * dummy api with same pagination response * dummy api with same pagination response * dummy api with same pagination response * downsync data test * data integrated till beneficiary * Update CHANGELOG.md * Delete health-services/project/src/main/resources/project-persistor.yml * skip on empty result added * skip on empty result added * beneficary searhc based on individual clientref id added * sideeffetc, ref, task fetch added * tasks earch fix * referral search fix --------- Co-authored-by: kavi_elrey <[email protected]> Co-authored-by: Vishal <[email protected]>
* household model reverse * Update CHANGELOG.md * Added changes for includeDeleted for downsync * not null added --------- Co-authored-by: kavi_elrey <[email protected]> Co-authored-by: kanishq-egov <[email protected]>
* HLM-3069: updated build.config.yml * HLM-3069: updated build-config.yml renamed adrm to referralmanagement * HLM-3372: increased stock version from 1.1.0 to 1.1.1-beta and project version from 1.1.0 to 1.1.1-beta * referralmanagement version 1.0.0-beta, added changelog, localsetup * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * HLM-3069: null project beneficiary validation error fix * HLM-3069: added comments and splitted validation condition * Dev to master (#550) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Hlm 4062 count api (#547) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter --------- Co-authored-by: kavi_elrey@1993 <[email protected]> --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]>
* household model reverse * Update CHANGELOG.md * Added changes for includeDeleted for downsync * not null added --------- Co-authored-by: kanishq-egov <[email protected]>
* HLM-3069: updated build.config.yml * HLM-3069: updated build-config.yml renamed adrm to referralmanagement * HLM-3372: increased stock version from 1.1.0 to 1.1.1-beta and project version from 1.1.0 to 1.1.1-beta * referralmanagement version 1.0.0-beta, added changelog, localsetup * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * HLM-3069: null project beneficiary validation error fix * HLM-3069: added comments and splitted validation condition * Dev to master (#550) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Hlm 4062 count api (#547) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter --------- Co-authored-by: kavi_elrey@1993 <[email protected]> --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]>
* household model reverse * Update CHANGELOG.md * Added changes for includeDeleted for downsync * not null added --------- Co-authored-by: kanishq-egov <[email protected]>
Co-authored-by: kanishq-egov <[email protected]>
* updated the version, and added the changelog * updated ReferralManagement CHANGELOG * Update CHANGELOG.md --------- Co-authored-by: kavi_elrey@1993 <[email protected]>
…n-patch HLM-4062: removed pagination from fields excluding household api call
* HLM-4062: missed in implementation * HLM-4062: default max is set to 1000 for not null limit value and 0 for offset value * project beneficiary tag update failed fix HLM-4444 * HLM-4444: added code review comments * sownsync bug fix for limit --------- Co-authored-by: kavi_elrey <[email protected]>
* HLM-4501: Added changes for HFReferral flow * updated comments for common models * updated comments for common models removed ini file This reverts commit c1e226f. * HLM-4501: updated topics and hfreferal constants * HLM-4501: updated HFReferralService.java * HLM-4501: Added changes in project id validator * HLM-4501: updated HFReferralService.java * HLM-4501: fixed hfreferral changes * HLM-4501: added project facility id validator for hf_referral * HLM-4501: missing link for validator added * HLM-4501: updated HfrProjectFacilityIdValidator for NPE * HLM-4501 : updated hf referral symtoms character length to 256 * HLM-4501: updated additionalFields field value size from 2 to 1
* HLM-3372: added changes required to fix quantity, Sender Receiver enum * HLM-3372: Sender and Receiver id validator * HLM-3372: updated all reference for SenderType and Receiver Type enum * HLM-3372: stock model updated, removed size annotations from referenceidtype enum field * HLM-3372: Min validation added for integer type of quantity * HLM-3372: test cases updated * HLM-5004 Added max value and decimal condition for quantity in stock, added component and order annotation for SSenderIdReceiverIdEqualsValidator * HLM-5004 Custom JsonDeserializer validator IntegerValidator added in health-services-models * hlm-5004 added custom exception and a custom exception handler to handle the integer validator exception * hlm-5004 optimized imports and added code comments * hlm-5004 CustomIntegerSerializer added and unnecessary validators removed * hlm-5004 Registered the CustomIntegerDeserializer with objectMapper for Integer class * hlm-5004 Removed line of code that was removing all the invalid entities from the list in SSenderIdReceiverIdEqualsValidator * hlm-5004 changes in test configurations and optimized imports * hlm-5004 added row version validator for stock delete * hlm-5004 dateOfEntry field was handled in StockRowMapper to return null if no value is present and description was added to stock contact for transactionReason * updated pom.xml for health campaign models * Revert "updated pom.xml for health campaign models" This reverts commit 035c787. --------- Co-authored-by: syed-egov <[email protected]>
* Dev to master : beneficiary tag bug fix, downsync pagination fix (#576) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Hlm 4062 count api (#547) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter * Project beneficiary tag cherrypick (#539) * added downsync dummy api * added downsync dummy api with res * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Dev (#537) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]> * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * rebased project-persister.yml from configs * updated pom.xml: update common model version to 1.0.10 * updated db script, added unique constraint to tag column * updated referral-management.yml * updated db script * project beneficiary voucher tag uniqueness validator and search support * updated PbVoucherTagUniqueValidator.java * Added and updated for unique field voucher tag create and update scenario * project beneficiary bug fix * removed unused import * project beneficiary : voucherTag renamed to tag * Hlm 4062 count api (#547) (#548) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter Co-authored-by: kanishq-egov <[email protected]> * referral management project beneficiary validation fix * deleted persister and indexer file from project module resource folder --------- Co-authored-by: kavi_elrey <[email protected]> Co-authored-by: Vishal <[email protected]> * HH member clientrefid (#551) * adding clientRefId, Models version change, migration file * adding clientRefId for HouseholdMemberSearch as List * updated migration * adding Notnull for clientrefId --------- Co-authored-by: Vishal <[email protected]> * Downsync smc referral module (#556) * added downsync dummy api * added downsync dummy api with res * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Dev (#537) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]> * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * Hlm 4062 count api (#547) (#548) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter Co-authored-by: kanishq-egov <[email protected]> * Project beneficiary tag cherrypick (#549) * Added project beneficiary tag field * renamed project beneficiary tag to voucher tag * rebased project-persister.yml from configs * updated pom.xml: update common model version to 1.0.10 * updated db script, added unique constraint to tag column * updated referral-management.yml * updated db script * project beneficiary voucher tag uniqueness validator and search support * updated PbVoucherTagUniqueValidator.java * Added and updated for unique field voucher tag create and update scenario * project beneficiary bug fix * removed unused import * project beneficiary : voucherTag renamed to tag * referral management project beneficiary validation fix --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: Vishal <[email protected]> * dummy api with same pagination response * dummy api with same pagination response * dummy api with same pagination response * downsync data test * data integrated till beneficiary * Update CHANGELOG.md * Delete health-services/project/src/main/resources/project-persistor.yml * skip on empty result added * skip on empty result added * beneficary searhc based on individual clientref id added * sideeffetc, ref, task fetch added * tasks earch fix * referral search fix --------- Co-authored-by: kavi_elrey <[email protected]> Co-authored-by: Vishal <[email protected]> * Dev downsync fix smc (#561) * household model reverse * Update CHANGELOG.md * Added changes for includeDeleted for downsync * not null added --------- Co-authored-by: kavi_elrey <[email protected]> Co-authored-by: kanishq-egov <[email protected]> * Dev master conflict fix (#562) * HLM-3069: updated build.config.yml * HLM-3069: updated build-config.yml renamed adrm to referralmanagement * HLM-3372: increased stock version from 1.1.0 to 1.1.1-beta and project version from 1.1.0 to 1.1.1-beta * referralmanagement version 1.0.0-beta, added changelog, localsetup * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * HLM-3069: null project beneficiary validation error fix * HLM-3069: added comments and splitted validation condition * Dev to master (#550) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Hlm 4062 count api (#547) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter --------- Co-authored-by: kavi_elrey@1993 <[email protected]> --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]> * Dev downsync fix smc (#563) * household model reverse * Update CHANGELOG.md * Added changes for includeDeleted for downsync * not null added --------- Co-authored-by: kanishq-egov <[email protected]> * Dev master conflict fix (#565) * HLM-3069: updated build.config.yml * HLM-3069: updated build-config.yml renamed adrm to referralmanagement * HLM-3372: increased stock version from 1.1.0 to 1.1.1-beta and project version from 1.1.0 to 1.1.1-beta * referralmanagement version 1.0.0-beta, added changelog, localsetup * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * HLM-3069: null project beneficiary validation error fix * HLM-3069: added comments and splitted validation condition * Dev to master (#550) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-4062: added count api changes for household * HLM-4062: Updated findbyid references * HLM-4062: Updated pom.xml of household * Hlm 3376 reviewcomments (#524) * HLM-3376: review comments commit * HLM-3069: side effect code comments, code refactor * HLM-3376: code review comments and code refactoring * updated the common-models version to 1.0.10, and updated in dependent service * HLM-3376 : Added additional field in side effect, referral. * HLM-3376: missing column fix * HLM-3372: constants type changed * HLM-3376: removed not used validators * code refactor and code comments * hlm-3376: added test cases * hlm-3376: referralmanagement context in test cases * hlm-3376: changed parameters for find by id * HLM-3372: typo fix * hlm-3376: persister changes, removed invalid parameters * hlm-3372: added changes as per code review, removed unused properties * hlm-3376: recipient validator for faciliy not working fix * HLM-3376: throwing exception on invalid recipient type * HLM-3376: added comments as per review comments * HLM-3376 : added changes as per code review comments, each column's name included in query * HLM-3376: query column names * Hlm 4062 count api (#547) * hlm-4062: updated household * HLM-4062: added count api support using cte for household * HLM-4062: updated HouseholdRepository.java * updated householdrowmapper.java * HLM-4062:code refactor, removed useCTE parameter --------- Co-authored-by: kavi_elrey@1993 <[email protected]> --------- Co-authored-by: kanishq-egov <[email protected]> Co-authored-by: kanishq-egov <[email protected]> * Dev downsync fix smc (#566) * household model reverse * Update CHANGELOG.md * Added changes for includeDeleted for downsync * not null added --------- Co-authored-by: kanishq-egov <[email protected]> * Added fix for testcases for householdmember (#570) Co-authored-by: kanishq-egov <[email protected]> * updated the version, and added the changelog (#571) * updated the version, and added the changelog * updated ReferralManagement CHANGELOG * Update CHANGELOG.md --------- Co-authored-by: kavi_elrey@1993 <[email protected]> * HLM-4062: removed pagination from fields excluding household api call * HLM-4062: missed in implementation (#574) * HLM-4062: missed in implementation * HLM-4062: default max is set to 1000 for not null limit value and 0 for offset value * project beneficiary tag update failed fix HLM-4444 * HLM-4444: added code review comments * sownsync bug fix for limit --------- Co-authored-by: kavi_elrey <[email protected]> * HLM-4444: project beneficiary update fix (#575) * Update CHANGELOG.md * updated changelog with dates (#577) * updated stock module changelog (#578) --------- Co-authored-by: kavi_elrey@1993 <[email protected]> Co-authored-by: Vishal <[email protected]> Co-authored-by: bhanu prakash <[email protected]> Co-authored-by: Naveen J <[email protected]> Co-authored-by: talele08 <[email protected]> * Referral and Side effect sequence diagram * HLM-4501: Added changes for HFReferral flow * updated comments for common models * updated comments for common models removed ini file This reverts commit c1e226f. * HLM-4501: updated topics and hfreferal constants * HLM-4501: updated HFReferralService.java * HLM-4501: Added changes in project id validator * HLM-4501: updated HFReferralService.java * HLM-4501: fixed hfreferral changes * HLM-4501: added project facility id validator for hf_referral * HLM-4501: missing link for validator added * HLM-4501: updated HfrProjectFacilityIdValidator for NPE * HLM-4501 : updated hf referral symtoms character length to 256 * HLM-4501: updated additionalFields field value size from 2 to 1 * HLM-4501: added code comments for all hf referral related classes * HLM-4501: hf-referral sequence diagram --------- Co-authored-by: kavi_elrey@1993 <[email protected]> Co-authored-by: Vishal <[email protected]> Co-authored-by: bhanu prakash <[email protected]> Co-authored-by: Naveen J <[email protected]> Co-authored-by: talele08 <[email protected]>
* HLM-4496: Added attendance module in HCM * HLM-4496: updated attendance directory, removed target folder and imi file * buil config added for hlm-4496 in feature branch * HLM-4207: offline enablement in attendance log * HLM-4207: added db migration script * HLM-4207: updated db migration script * HLM-4207: updated incorrect statements * HLM-4207: bulk api support, without redis cache * HLM-4207: updated Attendancelog consumer for bulk api * HLM-4207: consumer fix * HLM-4207: cache support added for attendance log create and update * HLM-4207: added health-individual endpoint * HLM-4207: added radis host * HLM-4207: updated qualified for objectmapper in attendance module * HLM-4496,HLM-4207: updated application.properties for redis config * HLM-4207: updated kafka listener topics * HLM-4207: changed kafka config * HLM-4894 adding hrms related flag to Individual object, adding another ApiOperation * HLM-4894 adding hrms related flag to Individual object, adding another ApiOperation * HLM-4207, HLM-4986, HLM-4987 : bug fix * HLM-4894 adding changes related to linking of HRMS Employee with Individual * HLM-4894 adding changes related to linking of HRMS Employee with Individual * HLM-4207: added clientreferenceid search, null check for document id * HLM-4894 reverting changes related to linking of HRMS Employee with Individual * HLM-4894 reverting changes related to linking of HRMS Employee with Individual from libraries, common-models * HLM-4207: code re-format * HLM-4894 adding changes for managing attendees while enrollment * HLM-4207: updated attendance search, register id or clientreference id are mandatory * hlm-5009 staffId in ProjectStaffSearch changed to list from string * HLM-4894 updating build config * HLM-4207: clientReferenceIds is changed to clientReferenceId for Attendance Log search criteria * HLM-4207: removed staff validation for search without register id * HLM-4894 adding changes for project staff validation * HLM-4894 adding @qualifier annotation for object mapper * HLM-4894 fixing hrms url * HLM-4771: added changes for updating the registers on project date update * HLM-4771: project update changes * HLM-4771: updated the project start date update validation, can not update start date if it is already started * HLM-4771: updated attendance register consumer and service with comments * HLM-4771: updated the tenant id * HLM-4894 updating environment variables. * HLM-4894 updating code changes * HLM-4894 adding code changes * HLM-4894 adding code changes * HLM-4894 adding code changes * HLM-4771: updated the project validators, validation for start and end date of project * HLM-4894 adding useruuid as search param in individual search * HLM-4894 adding useruuid as search param in individual search * HLM-4894 adding useruuid as search param in individual search * HLM-4894 adding changes for registry creation when supervisor enrolls * HLM-4496, HLM-4894: first staff enrollment on attendance register creation is optional * HLM-4894 adding changes attendee enrollment * HLM-4894 adding changes for making staffId as list of staffId in ProjectStaffSearch * HLM-4894 adding changes for making staffId as list of staffId in ProjectStaffSearch * HLM-4894 adding changes for making staffId as list of staffId in ProjectStaffSearch * HLM-4894 removing staff-bulk-create-topic * HLM-4894 removing staff-bulk-create-topic * HLM-4894 removing staff-bulk-create-topic * HLM-4894 removing staff-bulk-create-topic * HLM-4894 changing health-attendance consumer group-id * HLM-4894 adding changes for projectstaff consumer * HLM-4894 adding changes for projectstaff consumer * HLM-4894 adding changes for projectstaff consumer * HLM-4894 adding changes for projectstaff consumer * HLM-4894 adding changes for projectstaff consumer * HLM-5045: added changes, project start date and end date difference should at least be 1 day. * HLM-4894 adding comments * HLM-4894 adding additional Details during attendance register creation * HLM-4894 adding additional Details during attendance register creation * hlm-4496 : bug fix on adding staff on updation of register * HLM-4894 increasing limit to 1000 * Added changelog for individual, health-services-models, project, stock * HLM-4496 : remove attendance module as it is moved to DIGIT-Works repository. * HLM-5076: added changes related to project module * updated individual user uuid search field for hlm-4496, hlm-4207 * changed common models build to 1.0.19-SNAPSHOT --------- Co-authored-by: Priyanka-eGov <[email protected]> Co-authored-by: syed-egov <[email protected]> Co-authored-by: kavi_elrey@1993 <[email protected]>
WalkthroughThis update focuses on enhancing the referral management system within a healthcare context, introducing bulk operations for creating, updating, and deleting referrals, HFReferrals, and side effects. It also improves individual and household services by adding new functionalities and refining existing ones. Notably, the update brings better validation, search capabilities, and model adjustments across various services, ensuring more robust and efficient data handling. Changes
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 18
Configuration used: CodeRabbit UI
Files ignored due to path filters (5)
build/build-config.yml
is excluded by:!**/*.yml
docs/health-api-specs/contracts/stock.yml
is excluded by:!**/*.yml
health-services/libraries/health-services-models/pom.xml
is excluded by:!**/*.xml
health-services/referralmanagement/pom.xml
is excluded by:!**/*.xml
health-services/stock/pom.xml
is excluded by:!**/*.xml
Files selected for processing (85)
- docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/bulk_create.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/bulk_delete.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/bulk_update.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/create.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/delete.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/update.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/referral/bulk_create.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/referral/bulk_delete.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/referral/bulk_update.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/referral/create.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/referral/delete.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/referral/update.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/bulk_create.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/bulk_delete.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/bulk_update.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/create.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/delete.puml (1 hunks)
- docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/update.puml (1 hunks)
- health-services/household/CHANGELOG.md (1 hunks)
- health-services/individual/CHANGELOG.md (1 hunks)
- health-services/individual/src/main/java/org/egov/individual/repository/IndividualRepository.java (1 hunks)
- health-services/individual/src/main/java/org/egov/individual/web/models/IndividualSearch.java (1 hunks)
- health-services/individual/src/test/java/org/egov/individual/helper/IndividualSearchTestBuilder.java (1 hunks)
- health-services/individual/src/test/java/org/egov/individual/repository/IndividualRepositoryTest.java (2 hunks)
- health-services/libraries/health-services-models/CHANGELOG.md (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/core/validator/CustomIntegerDeserializer.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/facility/Field.java (3 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/household/Field.java (3 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/household/HouseholdSearch.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/individual/Field.java (3 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/individual/IndividualSearch.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/product/Field.java (3 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/project/Field.java (3 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/project/ProjectStaffSearch.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferral.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralBulkRequest.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralBulkResponse.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralRequest.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralResponse.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralSearch.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralSearchRequest.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/stock/Field.java (3 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/stock/ReferenceIdType.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/stock/SenderReceiverType.java (1 hunks)
- health-services/libraries/health-services-models/src/main/java/org/egov/common/models/stock/Stock.java (3 hunks)
- health-services/project/CHANGELOG.md (1 hunks)
- health-services/project/src/main/java/org/egov/project/config/ProjectConfiguration.java (1 hunks)
- health-services/project/src/main/java/org/egov/project/service/ProjectStaffService.java (5 hunks)
- health-services/project/src/main/java/org/egov/project/util/MDMSUtils.java (4 hunks)
- health-services/project/src/main/java/org/egov/project/util/ProjectConstants.java (2 hunks)
- health-services/project/src/main/java/org/egov/project/validator/beneficiary/PbVoucherTagUniqueForUpdateValidator.java (3 hunks)
- health-services/project/src/main/java/org/egov/project/validator/project/ProjectValidator.java (10 hunks)
- health-services/project/src/main/java/org/egov/project/web/models/ProjectStaffSearch.java (1 hunks)
- health-services/project/src/main/resources/application.properties (1 hunks)
- health-services/project/src/test/java/org/egov/project/service/ProjectStaffServiceSearchTest.java (1 hunks)
- health-services/referralmanagement/CHANGELOG.md (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/Constants.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/config/ReferralManagementConfiguration.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/consumer/HFReferralConsumer.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/repository/HFReferralRepository.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/repository/rowmapper/HFReferralRowMapper.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/service/DownsyncService.java (10 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/service/HFReferralService.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/service/enrichment/HFReferralEnrichmentService.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrIsDeletedValidator.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrNonExistentEntityValidator.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrNullIdValidator.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrProjectFacilityIdValidator.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrProjectIdValidator.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrRowVersionValidator.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrUniqueEntityValidator.java (1 hunks)
- health-services/referralmanagement/src/main/java/org/egov/referralmanagement/web/controllers/HFReferralApiController.java (1 hunks)
- health-services/referralmanagement/src/main/resources/application.properties (2 hunks)
- health-services/referralmanagement/src/main/resources/db/migration/main/V20231214113400__hf_referral_create_ddl.sql (1 hunks)
- health-services/referralmanagement/src/main/resources/db/migration/main/V20240103142200__hf_referral_project_facility_rename_ddl.sql (1 hunks)
- health-services/stock/CHANGELOG.md (1 hunks)
- health-services/stock/src/main/java/org/egov/stock/config/MainConfiguration.java (2 hunks)
- health-services/stock/src/main/java/org/egov/stock/repository/rowmapper/StockRowMapper.java (3 hunks)
- health-services/stock/src/main/java/org/egov/stock/service/FacilityService.java (2 hunks)
- health-services/stock/src/main/java/org/egov/stock/service/StockService.java (3 hunks)
- health-services/stock/src/main/java/org/egov/stock/util/ValidatorUtil.java (8 hunks)
- health-services/stock/src/main/java/org/egov/stock/validator/stock/SReferenceIdValidator.java (2 hunks)
- health-services/stock/src/main/java/org/egov/stock/validator/stock/SSenderIdReceiverIdEqualsValidator.java (1 hunks)
- health-services/stock/src/test/java/org/egov/stock/TestConfiguration.java (2 hunks)
- health-services/stock/src/test/java/org/egov/stock/helper/StockTestBuilder.java (2 hunks)
Files skipped from review due to trivial changes (2)
- health-services/referralmanagement/CHANGELOG.md
- health-services/referralmanagement/src/main/resources/db/migration/main/V20240103142200__hf_referral_project_facility_rename_ddl.sql
Additional comments: 88
health-services/individual/CHANGELOG.md (1)
- 3-5: The addition of search by UUID functionality for individual search in version 1.1.3 is clearly documented and aligns with the PR objectives. Good job maintaining clarity and adherence to standard CHANGELOG formatting.
health-services/household/CHANGELOG.md (1)
- 3-6: The additions in version 1.1.1, including the total count for households and the new field
clientReferenceId
forHouseholdMember
, are clearly documented and align with the PR objectives to enhance household services. Well done on maintaining clarity and adherence to standard CHANGELOG formatting.health-services/project/CHANGELOG.md (1)
- 3-6: The updates in version 1.1.2, including the addition of validation for project start and end date updates and the addition of a tag in project beneficiaries, are clearly documented and align with the PR objectives for general enhancements. Excellent adherence to standard CHANGELOG formatting.
health-services/stock/CHANGELOG.md (1)
- 3-8: The enhancements to the inventory flow documented in versions 1.1.2 and 1.1.1, including the addition of sender id and receiver id, and the introduction of QR code for last mile delivery, are clearly documented and align with the PR objectives to improve health services models. Excellent job maintaining clarity and adherence to standard CHANGELOG formatting.
health-services/libraries/health-services-models/CHANGELOG.md (1)
- 3-10: The documented changes in versions 1.0.11, 1.0.18, and 1.0.19, including the alteration of search functionality for project staff, the addition of sender and receiver IDs for stock, the inclusion of user UUID in individual search, and the addition of a client reference ID for household members, are clearly documented and align with the PR objectives to enhance various aspects of the health services models. Great adherence to standard CHANGELOG formatting.
health-services/referralmanagement/src/main/java/org/egov/referralmanagement/Constants.java (1)
- 8-9: The addition of
SET_HF_REFERRALS
andGET_HF_REFERRALS
constants aligns with the PR objectives of enhancing referral management and is consistent with the existing pattern of constants in the file. Good job ensuring consistency and alignment with project goals.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralSearchRequest.java (1)
- 1-26: The
HFReferralSearchRequest
class is well-structured and uses appropriate validation annotations, aligning with the PR objectives of enhancing referral management. Good job following Java best practices and ensuring alignment with project goals.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralRequest.java (1)
- 1-27: The
HFReferralRequest
class is well-structured and uses appropriate validation annotations, aligning with the PR objectives of enhancing referral management. Excellent job following Java best practices and ensuring alignment with project goals.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralResponse.java (1)
- 1-27: The
HFReferralResponse
class is well-structured and uses appropriate validation annotations, aligning with the PR objectives of enhancing referral management. Excellent job following Java best practices and ensuring alignment with project goals.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/facility/Field.java (1)
- 33-33: The modification of the
@Size
annotation for thevalue
field to allow a minimum size of 1 enhances data validation flexibility. This change aligns with the PR objectives of enhancing data validation and handling. Good job ensuring adherence to validation best practices.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/project/Field.java (1)
- 33-33: The modification of the
@Size
annotation for thevalue
field to allow a minimum size of 1 enhances data validation flexibility. This change aligns with the PR objectives of enhancing data validation and handling. Good job ensuring adherence to validation best practices.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/stock/ReferenceIdType.java (1)
- 1-32: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [1-33]
The introduction of the
ReferenceIdType
enum with valuesPROJECT
andOTHER
enhances type safety and clarity in the code, aligning with the PR objectives of enhancing data handling and validation. Good job following Java best practices.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/stock/Field.java (1)
- 26-33: The adjustments made to the import statements and the placement of validation annotations for the
key
andvalue
fields in theField
class contribute to the code's readability and maintainability. These changes align with the PR objectives of enhancing data validation and handling. Good job ensuring adherence to best practices.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/product/Field.java (1)
- 33-33: The modification of the
@Size
annotation for thevalue
field to allow a minimum size of 1, along with the reordering of import statements, enhances data validation flexibility and code readability. These changes align with the PR objectives of enhancing data validation and handling. Good job ensuring adherence to validation best practices.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/household/Field.java (1)
- 33-33: The modification of the
@Size
annotation for thevalue
field to allow a minimum size of 1 and a maximum size of 10000, along with the reordering of import statements, enhances data validation flexibility and code readability. These changes align with the PR objectives of enhancing data validation and handling. Good job ensuring adherence to validation best practices.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/individual/Field.java (1)
- 33-33: The modification of the
@Size
constraint for thevalue
field to allow a minimum size of 1 and a maximum size of 10000, along with the reordering of import statements, enhances data validation flexibility and code readability. These changes align with the PR objectives of enhancing data validation and handling. Good job ensuring adherence to validation best practices.health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrNullIdValidator.java (1)
- 1-37: The implementation of
HfrNullIdValidator
uses a utility methodvalidateForNullId
for validating null IDs inHFReferral
entities, which is a good practice for code reuse and maintainability. Ensure that thevalidateForNullId
method is correctly implemented and thoroughly tested to guarantee the validation logic's correctness.health-services/project/src/main/java/org/egov/project/web/models/ProjectStaffSearch.java (1)
- 40-40: Changing
staffId
fromString
toList<String>
inProjectStaffSearch
enhances search capabilities by allowing multiple staff IDs. Ensure all parts of the system that usestaffId
are updated to handle a list of IDs correctly.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/referralmanagement/hfreferral/HFReferralBulkRequest.java (1)
- 1-45: The
HFReferralBulkRequest
class correctly uses annotations for validation and introduces a utility methodaddHFReferralItem
for addingHFReferral
items to the bulk request. This method enhances the class's usability and maintainability by providing a convenient way to build up the request. Ensure that the rest of the system correctly utilizes this method when constructing bulk requests.health-services/stock/src/main/java/org/egov/stock/validator/stock/SSenderIdReceiverIdEqualsValidator.java (2)
- 22-25: The class documentation provides a clear overview of its purpose. It's concise and directly related to the functionality implemented within the class.
- 33-61: The
validate
method correctly iterates through eachStock
entity, checks if senderId and receiverId are equal, and if so, adds an error to theerrorDetailsMap
. The method is logically sound and follows best practices for error handling and logging.health-services/libraries/health-services-models/src/main/java/org/egov/common/models/stock/Stock.java (3)
- 54-55: The addition of
@Min
and@Max
validation constraints on thequantity
field is a good practice to ensure data integrity. It prevents invalid data from being persisted and provides clear error messages for out-of-range values.- 63-65: Changing
referenceIdType
fromString
toReferenceIdType
with additional validation is a significant improvement. It ensures that only valid enum values are accepted, enhancing type safety and data integrity.- 83-85: The addition of validation messages for
senderType
andreceiverType
fields is beneficial for providing more informative error messages. Ensuring these fields are not null and are valid enum values improves data validation and integrity.Also applies to: 93-95
health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrRowVersionValidator.java (2)
- 28-33: The class documentation clearly explains the purpose of the validator, which is to check for row version mismatches in HFReferral entities during bulk processing. This is crucial for maintaining data consistency.
- 53-72: The
validate
method effectively fetches existing HFReferral entities and compares their row versions with those in the request. It properly handles cases where entities have mismatched row versions by adding appropriate errors. This method follows best practices for error handling and logging.health-services/referralmanagement/src/main/java/org/egov/referralmanagement/config/ReferralManagementConfiguration.java (1)
- 64-90: The addition of configuration properties for Kafka topics related to HF referrals and project searches is a positive change. It ensures that the application can correctly publish and consume messages related to these entities, facilitating asynchronous processing and integration.
health-services/stock/src/main/java/org/egov/stock/repository/rowmapper/StockRowMapper.java (2)
- 38-41: The refactored assignment of
dateOfEntry
to explicitly handle null values is a good practice. It ensures thatdateOfEntry
is set to null when the database value is null, avoiding potential issues with primitive types.- 50-56: The updated usage of
referenceIdType
,senderType
, andreceiverType
to use enum conversion methods is a significant improvement. It ensures type safety and data integrity by enforcing the use of valid enum values.docs/health-api-specs/sequence-diagrams/referralmanagement/referral/delete.puml (1)
- 1-124: The sequence diagram for the Referral - Delete operation is well-structured and provides a clear overview of the process. It includes all necessary interactions and conditional flows, making it easy to understand the deletion process.
docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/delete.puml (1)
- 1-123: The sequence diagram for the Side Effect - Delete operation is well-structured and provides a clear overview of the process. It includes all necessary interactions and conditional flows, making it easy to understand the deletion process for side effects.
health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrNonExistentEntityValidator.java (2)
- 31-35: The class documentation clearly explains the purpose of the validator, which is to check for the existence of entities referred in HFReferral entities. This is crucial for maintaining data integrity and consistency.
- 57-78: The
validate
method effectively fetches existing HFReferral entities and checks for non-existent referrals. It properly handles cases where referred entities do not exist by adding appropriate errors. This method follows best practices for error handling and logging.health-services/referralmanagement/src/main/java/org/egov/referralmanagement/repository/rowmapper/HFReferralRowMapper.java (1)
- 36-76: The
HFReferralRowMapper
class is well-implemented, providing a clear mapping from aResultSet
to anHFReferral
object. A few points to consider:
- Error Handling: The catch block for
JsonProcessingException
wraps the exception in aRuntimeException
. While this simplifies error handling, consider logging the error or using a more specific custom exception to provide more context about the failure.- ObjectMapper Usage: The use of
ObjectMapper
for deserializingadditionalFields
is appropriate. Ensure that theObjectMapper
is configured correctly elsewhere in your application to handle any custom deserialization needs forAdditionalFields
.- AuditDetails Mapping: The mapping of
AuditDetails
andclientAuditDetails
is clear and concise. Ensure that all fields required forAuditDetails
are always present in theResultSet
to avoidNullPointerExceptions
.Overall, the class is well-structured and serves its purpose effectively.
health-services/stock/src/main/java/org/egov/stock/config/MainConfiguration.java (1)
- 47-52: The addition of a custom integer deserializer to the
ObjectMapper
configuration in theMainConfiguration
class is a good practice for handling specific deserialization needs, such as parsing integers from JSON that may not conform to the default expectations. A few points to consider:
- Custom Deserializer Registration: The registration of the custom deserializer using a
SimpleModule
is correctly implemented. Ensure that theCustomIntegerDeserializer
is thoroughly tested to handle all expected formats.- ObjectMapper Configuration: The disabling of
DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
is a common practice to allow for more flexible JSON structures. Just ensure that this does not inadvertently ignore important data that should be validated.- Time Zone Configuration: Setting the time zone on the
ObjectMapper
is a thoughtful touch for consistency in date/time parsing. Ensure that this time zone setting aligns with the overall application requirements and any other systems that interact with this service.Overall, the configuration changes are well-implemented and should enhance the application's robustness in handling integer values.
docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/bulk_create.puml (1)
- 1-140: The sequence diagram for HFReferral - Bulk Create is well-structured and covers the entire flow from the client request to the final response. It includes error handling and async operations with Kafka, which is good for performance and scalability. However, ensure that the error handling mechanism (
/error_topic
and/error_table
) is implemented as described, and manual intervention processes are clearly documented for unrecoverable errors. Also, consider adding more details in the notes for clarity on specific operations, especially around cache and database interactions.docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/bulk_create.puml (1)
- 1-141: The sequence diagram for Side Effect - Bulk Create is comprehensive and follows a similar pattern to the HFReferral bulk creation, which is good for consistency. The inclusion of projectTaskId and projectBeneficiaryId validation steps is a good practice for data integrity. Ensure that the error handling for
BAD_REQUEST
andDEPENDENCY_ERROR
is implemented correctly and that there are clear processes for manual intervention in case of unrecoverable errors. Additionally, consider adding explicit notes for cache interactions for better clarity.docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/bulk_delete.puml (1)
- 1-153: The sequence diagram for HFReferral - Bulk Delete accurately depicts the process, including validation checks for null IDs and record existence. The use of cache and database for record existence checks before deletion is a good practice. However, ensure that the error handling for
NULL_ID
,RECORD_NOT_FOUND
, and other errors is implemented as described. Also, the diagram should clarify the async operations with Kafka, especially how errors are handled asynchronously. Adding more detailed notes on specific operations, especially around cache and database interactions, would enhance clarity.docs/health-api-specs/sequence-diagrams/referralmanagement/side-effect/update.puml (1)
- 1-175: The sequence diagram for Side Effect - Update is comprehensive, detailing the update process including validation for null IDs, deletion status, and dependency checks. The inclusion of projectTaskId and projectBeneficiaryId validation steps is crucial for maintaining data integrity. Ensure that the error handling for
NULL_ID
,IS_DELETED_TRUE
,RECORD_NOT_FOUND
,BAD_REQUEST
, andDEPENDENCY_ERROR
is implemented as described. Additionally, consider adding explicit notes for cache interactions and async operations with Kafka for better clarity and understanding of the process.health-services/project/src/test/java/org/egov/project/service/ProjectStaffServiceSearchTest.java (1)
- 53-53: The modification to assign a list of values to the
staffId
field in theProjectStaffSearch
object is a significant change that aligns with the need to support searching by multiple staff IDs. This change enhances the flexibility of the search functionality. Ensure that all relevant tests are updated to reflect this change and consider adding additional tests to cover scenarios involving multiple staff IDs.health-services/referralmanagement/src/main/java/org/egov/referralmanagement/consumer/HFReferralConsumer.java (1)
- 1-110: The HFReferralConsumer class is well-structured and follows best practices for Kafka consumers. It correctly handles bulk create, update, and delete operations for HFReferrals. The use of ObjectMapper to convert Kafka message payloads is appropriate. Ensure that the error handling mechanism, including logging and throwing
CustomException
, is thoroughly tested, especially for scenarios where the Kafka message payload might not be correctly formatted. Additionally, consider adding more detailed logging for successful operations to aid in monitoring and debugging.health-services/project/src/main/java/org/egov/project/config/ProjectConfiguration.java (1)
- 186-188: The addition of the
projectStaffAttendanceTopic
configuration property is correctly implemented and follows the established pattern for configuration properties in this class. Ensure that the corresponding property is defined in the application's properties file and is correctly documented.health-services/referralmanagement/src/main/resources/application.properties (1)
- 122-135: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [100-132]
The updates to the
application.properties
file, including new host URLs, search URLs for project entities, and Kafka topics for HF referrals, are correctly implemented and align with the PR's objectives to enhance referral management and other system functionalities. Ensure that these new configurations are documented and that their values are validated in the corresponding environments.health-services/stock/src/main/java/org/egov/stock/service/FacilityService.java (2)
- 101-101: Using
SenderReceiverType.WAREHOUSE.equals(stock.getSenderType())
enhances type safety and readability by avoiding direct string comparisons. This is a good practice as it leverages the benefits of enums in Java, such as type safety and easier maintenance.- 104-104: Similarly, using
SenderReceiverType.WAREHOUSE.equals(stock.getReceiverType())
for comparison is a good practice for the same reasons mentioned previously. It ensures type safety and improves code readability.health-services/project/src/main/resources/application.properties (1)
- 168-168: The addition of
project.staff.attendance.topic=project-staff-attendance-health-topic
introduces a new Kafka topic configuration for staff attendance in health services. Ensure that this new topic is properly configured in your Kafka setup and that the naming convention aligns with your project's standards.health-services/project/src/main/java/org/egov/project/util/MDMSUtils.java (1)
- 130-143: The method
getAttendanceModuleRequestData
correctly fetches attendance module details from the MDMS service. It's well-implemented, following the pattern established by other similar methods in this class. Ensure that theMASTER_ATTENDANCE_SESSION
andMDMS_HCM_ATTENDANCE_MODULE_NAME
constants are correctly defined and match the MDMS configuration.docs/health-api-specs/sequence-diagrams/referralmanagement/referral/bulk_create.puml (1)
- 1-204: The sequence diagram for Referral - Bulk Create provides a comprehensive overview of the process flow for bulk creating referrals. It correctly outlines the interactions between the client, ReferralManagement, various services (FacilityService, HouseholdService, IndividualService, ProjectService, UserService), RedisCache, Kafka, PersisterService, IndexerService, ErrorService, ElasticSearch, and the Database. Ensure that all the services and steps depicted in the diagram accurately reflect the actual implementation and that the error handling and async processes are correctly managed in your system.
health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrProjectIdValidator.java (1)
- 52-130: The
HfrProjectIdValidator
class is well-implemented, focusing on validating project IDs within HFReferral entities. It correctly groups referrals by tenantId, fetches existing projects from the Project Service, and populates errors for invalid entities. Ensure that the Project Service endpoint used (referralManagementConfiguration.getProjectHost() + referralManagementConfiguration.getProjectSearchUrl()
) is correctly configured and that the error handling aligns with your system's standards. Additionally, verify that thegetErrorForNonExistentEntity
method provides meaningful error messages for better debugging and user feedback.docs/health-api-specs/sequence-diagrams/referralmanagement/referral/update.puml (4)
- 1-3: The title and theme setup are correctly defined, ensuring clarity and visual appeal for the diagram.
- 4-17: All necessary participants for the referral update process are declared, covering a comprehensive range of services involved in the operation.
- 19-44: The initial steps, including request validation and error handling for validation failures, are well-documented. The use of Kafka for error logging and the detailed note explaining the unrecoverable nature of the error enhance understanding.
- 46-234: The main logic for updating a referral, including checks for null IDs, deletion status, record existence, and dependency validations, is clearly outlined. The diagram also covers async operations for data persistence and indexing, concluding with a successful response to the client. However, ensure that the async group's interaction with Kafka, PersisterService, and IndexerService is correctly implemented in the actual system to avoid data races or inconsistencies.
docs/health-api-specs/sequence-diagrams/referralmanagement/hfreferral/bulk_update.puml (4)
- 1-3: The title and theme setup for the bulk update of HFReferrals are correctly defined, ensuring clarity and visual appeal for the diagram.
- 4-17: All necessary participants for the bulk update process of HFReferrals are declared, covering a comprehensive range of services involved in the operation.
- 19-44: The initial steps, including request validation and error handling for validation failures, are well-documented. The use of Kafka for error logging and the detailed note explaining the unrecoverable nature of the error enhance understanding.
- 46-202: The main logic for bulk updating HFReferrals, including checks for null IDs, deletion status, record existence, and dependency validations, is clearly outlined. The diagram also covers async operations for data persistence and indexing, concluding with a successful response to the client. However, ensure that the async group's interaction with Kafka, PersisterService, and IndexerService is correctly implemented in the actual system to avoid data races or inconsistencies.
health-services/referralmanagement/src/main/java/org/egov/referralmanagement/validator/hfreferral/HfrProjectFacilityIdValidator.java (3)
- 1-34: The package and import declarations are appropriate for the class functionality. The class documentation provides a clear overview of its purpose.
- 35-45: The class is correctly annotated with
@Component
and@Order
, ensuring it is recognized as a Spring Bean with a specific load order. The constructor is properly defined to inject dependencies.- 71-74: The helper method
addIgnoreNull
is a good practice for clean code, ensuring null items are not added to the list.health-services/individual/src/test/java/org/egov/individual/repository/IndividualRepositoryTest.java (3)
- 88-94: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [1-90]
The setup for the
IndividualRepositoryTest
class is correctly done, including mock injections and initial setup in thesetUp
method. The test cases are well-organized and named for clarity.
- 91-91: The addition of the
byUserUUID
search parameter in the test case is consistent with the PR objectives to enhance individual and household services. Ensure that the corresponding implementation in the repository supports this new parameter effectively.- 149-149: Similar to the previous comment, the inclusion of
byUserUUID
in this test case aligns with the PR's goal. Verification of the implementation detail is recommended to ensure full support for this new search parameter.docs/health-api-specs/sequence-diagrams/referralmanagement/referral/bulk_update.puml (1)
- 1-245: The sequence diagram for the Referral - Bulk Update process is comprehensive and covers various scenarios, including request validation, record existence checks, and handling of different recipient types. It's important to ensure that all participating components (Client, ReferralManagement, RedisCache, Kafka, Database, FacilityService, HouseholdService, IndividualService, ProjectService, UserService, PersisterService, IndexerService, ErrorService, ElasticSearch) are accurately represented and that the interactions between them are logically consistent. Additionally, consider adding more detailed comments or notes for complex interactions or decisions to enhance understanding for future maintainers.
health-services/project/src/main/java/org/egov/project/validator/beneficiary/PbVoucherTagUniqueForUpdateValidator.java (2)
- 113-117: The addition of
existingProjectBeneficiaryVoucherTagMap
and theisUpdated
method inPbVoucherTagUniqueForUpdateValidator
enhances the efficiency of the validation process by using maps instead of lists. This approach reduces the complexity from O(n^2) to O(n), significantly improving performance for large datasets. Ensure that theisUpdated
method accurately reflects the business logic for determining if a ProjectBeneficiary entity is considered updated.- 145-173: The
isInvalid
andisUpdated
methods provide clear logic for validating the uniqueness of voucher tags and determining if a ProjectBeneficiary entity is updated. However, ensure that the logic inisUpdated
correctly handles all scenarios, especially edge cases where the tag might change fromnull
to a non-null value or vice versa. Adding unit tests for these methods could help verify their correctness across various scenarios.// Suggest adding unit tests to cover various scenarios for isInvalid and isUpdated methods.
health-services/stock/src/main/java/org/egov/stock/service/StockService.java (1)
- 58-64: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [37-73]
The integration of
SSenderIdReceiverIdEqualsValidator
into theStockService
class enhances the validation logic by ensuring sender and receiver IDs are not equal in certain contexts. This addition is correctly applied to both the create and update operations, aligning with the business logic requirements. Ensure that this new validation rule is clearly documented and communicated to the team, as it affects the data integrity checks during stock transactions.health-services/referralmanagement/src/main/java/org/egov/referralmanagement/web/controllers/HFReferralApiController.java (6)
- 89-97: The method
referralBulkV1CreatePost
for bulk creation of HFReferrals is implemented well, with validation and appropriate use of Kafka for asynchronous processing. The HTTP status code202 Accepted
is correctly used here, indicating that the request has been accepted for processing but the processing has not been completed.- 111-123: The search functionality in
referralV1SearchPost
method is implemented correctly, with comprehensive parameter validation and the correct HTTP status code200 OK
for successful searches. It's good to see the use of@NotNull
,@Min
, and@Max
annotations for parameter validation.- 132-142: The method
referralV1UpdatePost
for updating a single HFReferral is implemented correctly. It uses appropriate annotations and validates the request body. The HTTP status code202 Accepted
is suitable here, considering the operation might involve asynchronous processing.- 151-158: The bulk update method
referralV1BulkUpdatePost
is correctly implemented, with validation and appropriate use of Kafka for asynchronous processing. The HTTP status code202 Accepted
is correctly used, indicating that the request has been accepted for processing but the processing has not been completed.- 166-176: The method
referralV1DeletePost
for deleting a single HFReferral uses the correct HTTP status code202 Accepted
, which is suitable for operations that are accepted but might not be immediately completed. The implementation is correct and follows best practices.- 185-192: The bulk delete method
referralV1BulkDeletePost
is correctly implemented, with validation and appropriate use of Kafka for asynchronous processing. The HTTP status code202 Accepted
is correctly used, indicating that the request has been accepted for processing but the processing has not been completed.health-services/project/src/main/java/org/egov/project/service/ProjectStaffService.java (4)
- 9-9: The import of
org.egov.common.producer.Producer
is correctly added to support Kafka messaging within the service. This change aligns with the PR objectives to enhance the system's capabilities.- 66-67: The declaration of the
Producer
instance is correctly added to enable Kafka messaging. This change is necessary for the new functionality introduced in the PR.- 94-103: The modification to the constructor to include
Producer producer
as a parameter and assign it to the class field is correctly implemented. This change is essential for integrating Kafka messaging within the service.- 127-127: The call to
producer.push
within thecreate
method correctly publishes messages to a Kafka topic. This addition aligns with the PR objectives to enhance system capabilities through asynchronous processing. Ensure the topic name (projectConfiguration.getProjectStaffAttendanceTopic()
) is correctly configured and exists in the Kafka cluster.health-services/stock/src/main/java/org/egov/stock/util/ValidatorUtil.java (6)
- 24-24: The import of
org.egov.common.models.stock.SenderReceiverType
is correctly added to support the new validation logic based on sender/receiver types. This change is necessary for the enhanced validation functionality introduced in the PR.- 68-72: The method
validateStockTransferParties
has been updated to includeSenderReceiverType
in its validation logic. The method signature and implementation appear to be correct, ensuring that stock transfer parties are validated against the appropriate entity types (facility or staff).- 94-101: The method
validateAndEnrichInvalidPartyIds
correctly separates the validation of facility and staff IDs based on theSenderReceiverType
. This refactoring improves the clarity and maintainability of the validation logic.- 155-166: The logic within
enrichFaciltyAndStaffIdsFromStock
method has been refactored to useSenderReceiverType
for determining whether the sender/receiver is a warehouse or staff. This change correctly aligns with the PR objectives to enhance validation based on sender/receiver types.- 192-201: The method
enrichErrorMapFromInvalidPartyIds
has been updated to includeSenderReceiverType
in its error enrichment logic. This update ensures that errors are correctly associated with the appropriate sender/receiver type, improving error reporting and handling.- 276-280: The validation logic in
enrichErrorForStock
method now correctly checks theSenderReceiverType
before populating errors for invalid facility IDs. This change ensures that errors are only populated for relevant sender/receiver types, enhancing the accuracy of validation.health-services/individual/src/main/java/org/egov/individual/repository/IndividualRepository.java (1)
- 273-276: The addition of the
userUuid
condition in thegetQueryForIndividual
method enhances the query's filtering capabilities. This change aligns with the PR's objective of improving individual and household services by allowing searches based onuserUuid
. Ensure thatsearchObject.getUserUuid()
always returns sanitized and validated UUIDs to prevent SQL injection vulnerabilities.health-services/project/src/main/java/org/egov/project/validator/project/ProjectValidator.java (4)
- 3-11: Added imports for
java.time
,java.util.stream.Collectors
,com.fasterxml.jackson.databind
, andcom.fasterxml.jackson.databind.ObjectMapper
are appropriate for the new functionalities introduced in this file. These imports are necessary for handling date-time operations, stream operations, and JSON processing which are used in the validation logic.- 28-28: The
@Qualifier("objectMapper")
annotation is correctly used to specify whichObjectMapper
bean should be autowired in case there are multiple beans of the same type. This ensures that the specificObjectMapper
configured for this context is injected, which is crucial for consistent JSON processing across the application.- 197-201: The validation logic added for ensuring that the start date and end date difference should at least be 1 day is a good practice for data integrity. This prevents the creation or update of projects with invalid date ranges. The logic correctly compares the start and end dates and adds an error message if the condition is not met. This is a crucial check for maintaining the consistency and validity of project data.
- 440-496: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [414-491]
The method
validateStartDateAndEndDateAgainstDB
introduces logic for validating start and end dates against the current and next date timestamps. This method is well-structured and includes detailed comments explaining its purpose and logic. The validation ensures that project dates are not set inappropriately in relation to the current time, which is important for maintaining the integrity of project timelines. However, consider the following:
- The logic for comparing dates (lines 458, 460, 477, and 480) is sound, but ensure that the business requirements explicitly require these specific checks. For instance, the requirement that project start dates should be at least 24 hours in advance from the current time might need clarification or confirmation.
- The repeated instantiation of error messages and the checks for empty error messages could be streamlined for clarity and efficiency.
Overall, the validation logic is robust and aligns with best practices for date validation in project management contexts.
log.info("query-------------------------->"); | ||
log.info(query); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The logging of the constructed query can be helpful for debugging purposes. However, logging sensitive information, such as queries that might contain personal identifiers or other PII, can pose security risks. Consider masking sensitive data or using a debug log level to minimize exposure in production environments.
public List<HFReferral> find(HFReferralSearch searchObject, Integer limit, Integer offset, String tenantId, | ||
Long lastChangedSince, Boolean includeDeleted) { | ||
// Initial query to select HFReferral fields from the table. | ||
String query = "SELECT hf.id, hf.clientreferenceid, hf.tenantid, hf.projectid, hf.projectfacilityid, hf.symptom, hf.symptomsurveyid, hf.beneficiaryid, hf.referralcode, hf.nationallevelid, hf.createdby, hf.createdtime, hf.lastmodifiedby, hf.lastmodifiedtime, hf.clientcreatedby, hf.clientcreatedtime, hf.clientlastmodifiedby, hf.clientlastmodifiedtime, hf.rowversion, hf.isdeleted, hf.additionaldetails from hf_referral hf"; | ||
Map<String, Object> paramsMap = new HashMap<>(); | ||
|
||
// Generate WHERE conditions based on non-null fields in the search object. | ||
List<String> whereFields = GenericQueryBuilder.getFieldsWithCondition(searchObject, | ||
QueryFieldChecker.isNotNull, paramsMap); | ||
|
||
// Apply the WHERE conditions to the query. | ||
query = GenericQueryBuilder.generateQuery(query, whereFields).toString(); | ||
query = query.replace("id IN (:id)", "hf.id IN (:id)"); | ||
query = query.replace("clientReferenceId IN (:clientReferenceId)", "hf.clientReferenceId IN (:clientReferenceId)"); | ||
|
||
// Add additional conditions based on tenant ID, includeDeleted, and lastChangedSince. | ||
query = query + " and hf.tenantId=:tenantId "; | ||
if (Boolean.FALSE.equals(includeDeleted)) { | ||
query = query + "and hf.isDeleted=:isDeleted "; | ||
} | ||
|
||
if (lastChangedSince != null) { | ||
query = query + "and hf.lastModifiedTime>=:lastModifiedTime "; | ||
} | ||
|
||
// Add ORDER BY, LIMIT, and OFFSET clauses to the query. | ||
query = query + "ORDER BY hf.id ASC LIMIT :limit OFFSET :offset"; | ||
paramsMap.put("tenantId", tenantId); | ||
paramsMap.put("isDeleted", includeDeleted); | ||
paramsMap.put("lastModifiedTime", lastChangedSince); | ||
paramsMap.put("limit", limit); | ||
paramsMap.put("offset", offset); | ||
|
||
// Execute the query and retrieve the list of HFReferral entities. | ||
List<HFReferral> hfReferralList = this.namedParameterJdbcTemplate.query(query, paramsMap, this.rowMapper); | ||
return hfReferralList; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The find
method in HFReferralRepository
is well-structured and follows good practices for building dynamic queries based on search criteria. However, consider optimizing the query construction process to avoid potential performance issues with large datasets. Specifically, using StringBuilder for query manipulation and preparing the query with conditions before applying pagination (LIMIT and OFFSET) could enhance performance.
// Use StringBuilder for query manipulation for better performance.
StringBuilder queryBuilder = new StringBuilder(query);
// Apply conditions before pagination for clarity and potential performance benefits.
public List<HFReferral> findById(List<String> ids, Boolean includeDeleted, String columnName) { | ||
// Find objects in the cache based on the provided IDs. | ||
List<HFReferral> objFound = findInCache(ids).stream() | ||
.filter(entity -> entity.getIsDeleted().equals(includeDeleted)) | ||
.collect(Collectors.toList()); | ||
|
||
// If objects are found in the cache, check if there are any IDs remaining to be retrieved. | ||
if (!objFound.isEmpty()) { | ||
Method idMethod = getIdMethod(objFound, columnName); | ||
ids.removeAll(objFound.stream() | ||
.map(obj -> (String) ReflectionUtils.invokeMethod(idMethod, obj)) | ||
.collect(Collectors.toList())); | ||
|
||
// If no IDs are remaining, return the objects found in the cache. | ||
if (ids.isEmpty()) { | ||
return objFound; | ||
} | ||
} | ||
|
||
// Generate a SELECT query based on the provided IDs and column name. | ||
String query = String.format("SELECT hf.id, hf.clientreferenceid, hf.tenantid, hf.projectid, hf.projectfacilityid, hf.symptom, hf.symptomsurveyid, hf.beneficiaryid, hf.referralcode, hf.nationallevelid, hf.createdby, hf.createdtime, hf.lastmodifiedby, hf.lastmodifiedtime, hf.clientcreatedby, hf.clientcreatedtime, hf.clientlastmodifiedby, hf.clientlastmodifiedtime, hf.rowversion, hf.isdeleted, hf.additionaldetails from hf_referral hf WHERE hf.%s IN (:ids) ", columnName); | ||
|
||
// Add conditions to exclude deleted records if includeDeleted is false. | ||
if (includeDeleted == null || !includeDeleted) { | ||
query += " AND hf.isDeleted = false "; | ||
} | ||
|
||
// Create parameter map for the query and execute it to retrieve HFReferral entities. | ||
Map<String, Object> paramMap = new HashMap<>(); | ||
paramMap.put("ids", ids); | ||
List<HFReferral> hfReferralList = this.namedParameterJdbcTemplate.query(query, paramMap, this.rowMapper); | ||
|
||
// Add the retrieved entities to the cache. | ||
objFound.addAll(hfReferralList); | ||
putInCache(objFound); | ||
return objFound; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The findById
method efficiently retrieves HFReferral entities based on a list of IDs and handles caching. To further improve the method, consider adding error handling for database operations and cache interactions. This ensures robustness and reliability, especially in scenarios where database access might fail or cache operations encounter issues.
// Add try-catch blocks around database and cache operations for improved error handling.
@@ -129,24 +129,46 @@ private void validateAndPopulateErrors(List<ProjectBeneficiary> validProjectBene | |||
private void populateErrors(List<ProjectBeneficiary> invalidEntities, Map<ProjectBeneficiary, List<Error>> errorDetailsMap) { | |||
// For each invalid entity, create an error and populate error details | |||
invalidEntities.forEach(projectBeneficiary -> { | |||
Error error = getErrorForUniqueEntity(); | |||
Error error = Error.builder().errorMessage("Project Beneficiary Tag Validation Failed").errorCode("INVALID_TAG").type(Error.ErrorType.NON_RECOVERABLE).exception(new CustomException("INVALID_TAG", "Project Beneficiary Tag Validation Failed")).build(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The error creation in populateErrors
method uses a hardcoded error message and code. Consider externalizing these strings to a properties file or constants class. This facilitates easier updates and localization if needed in the future.
// Consider using a constants class or properties file for error messages and codes.
|| validator.getClass().equals(SNullIdValidator.class) | ||
|| validator.getClass().equals(SRowVersionValidator.class); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The inclusion of SSenderIdReceiverIdEqualsValidator
in the delete operation's applicable validators seems unnecessary, as sender and receiver ID equality checks are typically not relevant to deletion scenarios. Review the business logic to confirm if this validator is indeed needed for deletions, and consider removing it from isApplicableForDelete
if it's not applicable.
- || validator.getClass().equals(SSenderIdReceiverIdEqualsValidator.class)
Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.
|| validator.getClass().equals(SNullIdValidator.class) | |
|| validator.getClass().equals(SRowVersionValidator.class); | |
|| validator.getClass().equals(SNullIdValidator.class) | |
|| validator.getClass().equals(SRowVersionValidator.class); |
end | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: REQUEST_VALIDATION_FAILED | ||
end note | ||
end | ||
rm -> rm: Request validation successful | ||
alt record already exists | ||
alt record found in cache | ||
rm -> rc: Check using clientReferenceId/serverGeneratedId | ||
activate rc | ||
rc -> rm: 1 row | ||
deactivate rc | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: RECORD_ALREADY_EXISTS | ||
end note | ||
end | ||
rm -> rc: Check using clientReferenceId/serverGeneratedId | ||
activate rc | ||
rc -> rm: 0 rows | ||
deactivate rc | ||
rm -> db: Check if record already exists | ||
activate db | ||
db -> rm: 1 row | ||
deactivate db | ||
rm -> rc: Put data in cache using clientReferenceId/serverGeneratedId | ||
activate rc | ||
deactivate rc | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: RECORD_ALREADY_EXISTS | ||
end note | ||
end | ||
alt projectTaskId invalid | ||
rm -> ps: Check if projectTaskId exists | ||
activate ps | ||
ps -> db: Check if projectTaskId exists | ||
activate db | ||
db -> ps: 0 rows | ||
deactivate db | ||
ps -> rm: 0 rows | ||
deactivate ps | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: BAD_REQUEST | ||
end note | ||
end | ||
rm -> ps: Check if projectTaskId exists | ||
activate ps | ||
ps -> db: Check if projectTaskId exists | ||
activate db | ||
db -> ps: 1 row | ||
deactivate db | ||
ps -> rm: 1 row | ||
deactivate ps | ||
alt projectBeneficiaryId invalid | ||
rm -> ps: Check if projectBeneficiaryId exists | ||
activate ps | ||
ps -> db: Check if projectBeneficiaryId exists | ||
activate db | ||
db -> ps: 0 rows | ||
deactivate db | ||
ps -> rm: 0 rows | ||
deactivate ps | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: DEPENDENCY_ERROR | ||
end note | ||
end | ||
rm -> ps: Check if projectBeneficiaryId exists | ||
activate ps | ||
ps -> db: Check if projectBeneficiaryId exists | ||
activate db | ||
db -> ps: 1 row | ||
deactivate db | ||
ps -> rm: 1 row | ||
deactivate ps | ||
rm -> k: Side Effect Data /persist_topic | ||
activate k | ||
rm -> rc: Put Side Effect Data against clientReferenceId/serverGeneratedId in cache | ||
activate rc | ||
deactivate rc | ||
group async | ||
prs -> k: Consume Side Effect Data | ||
activate prs | ||
idx -> k: Consume Side Effect Data | ||
activate idx | ||
idx -> el: Store Side Effect Data | ||
activate el | ||
deactivate el | ||
deactivate idx | ||
prs -> db: Persist Side Effect Data | ||
activate db | ||
deactivate db | ||
deactivate prs | ||
end | ||
deactivate k | ||
|
||
rm -> c : HttpStatus: 202 ACCEPTED |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sequence diagram for Side Effect - Create operation is comprehensive and well-structured, covering the essential steps involved in creating a side effect. Suggestions for improvement include:
- Validation and Error Handling: The diagram effectively details the validation process and error handling for various scenarios. Ensure consistency in error handling across all steps for better maintainability.
- Cache and Database Checks: The diagram shows the process of checking both the cache and the database for record existence. Clarifying the precedence of these checks could enhance efficiency, typically by checking the cache first.
- Async Operations: The async operations for consuming Side Effect Data from Kafka and persisting it in ElasticSearch and the database are well-represented. Clarifying the conditions under which these operations are triggered would improve understanding.
- Final Response: The use of
HttpStatus: 202 ACCEPTED
for successful operations is appropriate. Ensure that all potential error scenarios are covered with the correct status codes and messages for comprehensive client-side handling.
Enhancing these areas could make the diagram even more informative and easier to follow.
group async | ||
es -> k: Consume Referral Data | ||
activate es | ||
deactivate k | ||
es -> db: Persist Referral Data /error_table | ||
activate db | ||
deactivate db | ||
deactivate es | ||
end | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: REQUEST_VALIDATION_FAILED | ||
end note | ||
end | ||
rm -> rm: Request validation successful | ||
loop for each referral | ||
alt id is null | ||
rm -> rm: Check if Referral object id is null | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: NULL_ID | ||
end note | ||
end | ||
rm -> rm: Check if Referral id is not null | ||
alt record doesn't exist | ||
rm -> rc: Search record based on clientReferenceId/serverGeneratedId | ||
activate rc | ||
rc -> rm: 0 rows | ||
deactivate rc | ||
rm -> db: Search record based on clientReferenceId/serverGeneratedId | ||
activate db | ||
db -> rm: 0 row | ||
deactivate db | ||
note left | ||
This will be marked as unrecoverable right away | ||
and require manual intervention | ||
end note | ||
rm -> k: Referral Data /error_topic | ||
activate k | ||
group async | ||
es -> k: Consume Referral Data | ||
activate es | ||
deactivate k | ||
es -> db: Persist Referral Data /error_table | ||
activate db | ||
deactivate db | ||
deactivate es | ||
end | ||
s -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: RECORD_NOT_FOUND | ||
end note | ||
end | ||
alt record doesn't exists in cache | ||
rm -> rc: Search record based on clientReferenceId/serverGeneratedId | ||
activate rc | ||
rc -> rm: 0 rows | ||
deactivate rc | ||
rm -> db: Search record based on clientReferenceId/serverGeneratedId | ||
activate db | ||
db -> rm: 1 row | ||
deactivate db | ||
rm -> rc: 1 record | ||
activate rc | ||
deactivate rc | ||
end | ||
rm -> rc: Fetch the existing record | ||
activate rc | ||
rc -> rm: 1 row | ||
deactivate rc | ||
alt Duplicate Entry is present [Unique entity validation failed] | ||
rm -> rm: Check if Side Effect object isDeleted is true | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: IS_DELETED_TRUE | ||
end note | ||
end | ||
rm -> rm: Duplicate Entry is not present [Unique entity validation successful] | ||
rm -> k: Referral Data /persist_topic | ||
activate k | ||
rm -> rc: Put Referral Data against clientReferenceId/serverGeneratedId in cache | ||
activate rc | ||
deactivate rc | ||
group async | ||
prs -> k: Consume Referral Data | ||
activate prs | ||
idx -> k: Consume Referral Data | ||
activate idx | ||
idx -> el: Store Referral Data | ||
activate el | ||
deactivate el | ||
deactivate idx | ||
prs -> db: Persist Referral Data | ||
activate db | ||
deactivate db | ||
deactivate prs | ||
end | ||
deactivate k | ||
end | ||
rm -> c : HttpStatus: 202 ACCEPTED |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sequence diagram for Referral - Bulk Delete operation is comprehensive, covering the key steps involved in the bulk deletion process. A few suggestions for improvement:
- Loop Handling: The loop for handling each referral deletion is a critical part of the diagram. Ensure that the diagram clearly indicates the start and end of the loop for better readability.
- Error Handling: The detailed error handling for request validation and record existence checks is commendable. It's important to ensure that all potential error scenarios are similarly detailed to provide a complete picture of the error handling strategy.
- Cache and Database Interactions: The diagram shows interactions with both the cache and the database. Clarifying the conditions under which the cache is checked and updated, as well as the conditions for database interactions, would enhance understanding.
- Async Operations: The async group for consuming Referral Data from Kafka and persisting it in ElasticSearch and the database is well-represented. Clarifying the triggers for these async operations could further improve the diagram's clarity.
Improving these areas could make the diagram even more informative and easier to follow.
note left | ||
Error Code: REQUEST_VALIDATION_FAILED | ||
end note | ||
end | ||
rm -> rm: Request validation successful | ||
alt id is null | ||
rm -> rm: Check if HFReferral object id is null | ||
rm -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: NULL_ID | ||
end note | ||
end | ||
rm -> rm: Check if HFReferral id is not null | ||
alt record doesn't exist | ||
rm -> rc: Search record based on clientReferenceId/serverGeneratedId | ||
activate rc | ||
rc -> rm: 0 rows | ||
deactivate rc | ||
rm -> db: Search record based on clientReferenceId/serverGeneratedId | ||
activate db | ||
db -> rm: 0 row | ||
deactivate db | ||
note left | ||
This will be marked as unrecoverable right away | ||
and require manual intervention | ||
end note | ||
rm -> k: HFReferral Data /error_topic | ||
activate k | ||
group async | ||
es -> k: Consume HFReferral Data | ||
activate es | ||
deactivate k | ||
es -> db: Persist HFReferral Data /error_table | ||
activate db | ||
deactivate db | ||
deactivate es | ||
end | ||
s -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: RECORD_NOT_FOUND | ||
end note | ||
end | ||
alt record doesn't exists in cache | ||
rm -> rc: Search record based on clientReferenceId/serverGeneratedId | ||
activate rc | ||
rc -> rm: 0 rows | ||
deactivate rc | ||
rm -> db: Search record based on clientReferenceId/serverGeneratedId | ||
activate db | ||
db -> rm: 1 row | ||
deactivate db | ||
rm -> rc: 1 record | ||
activate rc | ||
deactivate rc | ||
end | ||
rm -> rc: Fetch the existing record | ||
activate rc | ||
rc -> rm: 1 row | ||
deactivate rc | ||
alt incorrect rowVersion | ||
s -> s: Compare rowVersion between request and db | ||
s -> s: Incorrect rowVersion [request: should be +1 only] | ||
s -> k: HFReferral Data /error_topic | ||
group async | ||
es -> k: Consume HFReferral Data | ||
activate es | ||
deactivate k | ||
es -> db: Persist HFReferral Data /error_table | ||
activate db | ||
deactivate db | ||
deactivate es | ||
end | ||
s -> c: HttpStatus: 400 with appropriate error code | ||
note left | ||
Error Code: BAD_REQUEST | ||
end note | ||
end | ||
s -> s: Compare rowVersion between request and db | ||
s -> s: rowVersion in request = rowVersion in db + 1 | ||
rm -> k: HFReferral Data /persist_topic | ||
activate k | ||
rm -> rc: Put HFReferral Data against clientReferenceId/serverGeneratedId in cache | ||
activate rc | ||
deactivate rc | ||
group async | ||
prs -> k: Consume HFReferral Data | ||
activate prs | ||
idx -> k: Consume HFReferral Data | ||
activate idx | ||
idx -> el: Store HFReferral Data | ||
activate el | ||
deactivate el | ||
deactivate idx | ||
prs -> db: Persist HFReferral Data | ||
activate db | ||
deactivate db | ||
deactivate prs | ||
end | ||
deactivate k | ||
rm -> c : HttpStatus: 202 ACCEPTED |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sequence diagram for HFReferral - Delete operation is well-structured and covers the essential steps involved in deleting an HFReferral. Suggestions for improvement include:
- Validation and Error Handling: The diagram effectively details the validation process and error handling for various scenarios. Ensure consistency in error handling across all steps for better maintainability.
- Cache and Database Checks: The diagram shows the process of checking both the cache and the database for record existence. Clarifying the precedence of these checks could enhance efficiency, typically by checking the cache first.
- Async Operations: The async operations for consuming HFReferral Data from Kafka and persisting it in ElasticSearch and the database are well-represented. Clarifying the conditions under which these operations are triggered would improve understanding.
- Final Response: The use of
HttpStatus: 202 ACCEPTED
for successful operations is appropriate. Ensure that all potential error scenarios are covered with the correct status codes and messages for comprehensive client-side handling.
Enhancing these areas could make the diagram even more informative and easier to follow.
import java.lang.reflect.Type; | ||
import java.util.Collections; | ||
import java.util.HashMap; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tip
Codebase Verification
The script output indicates that the only occurrences of Type
and HashMap
in the ProjectStaffService.java
file are the import statements themselves, suggesting that these imports might not be utilized within the class. This supports the concern raised in the review comment about the potential for unnecessary imports cluttering the codebase.
Analysis chain
The addition of imports for java.lang.reflect.Type
and java.util.HashMap
is noted. Ensure these imports are utilized within the class to avoid unnecessary imports that could clutter the codebase.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Verify the usage of Type and HashMap within the class
rg --type java 'Type|HashMap' health-services/project/src/main/java/org/egov/project/service/ProjectStaffService.java
Length of output: 176
/** | ||
* Validates whether project facilities exist in the database or not using project facility IDs for HFReferral objects. | ||
* | ||
* @param request The HFReferralBulkRequest containing a list of HFReferral entities | ||
* @return A Map containing HFReferral entities as keys and lists of errors as values | ||
*/ | ||
@Override | ||
public Map<HFReferral, List<Error>> validate(HFReferralBulkRequest request) { | ||
log.info("Validating project facility IDs"); | ||
Map<HFReferral, List<Error>> errorDetailsMap = new HashMap<>(); | ||
List<HFReferral> entities = request.getHfReferrals(); | ||
|
||
// Grouping HFReferrals by tenantId to fetch project facilities for each tenant | ||
Map<String, List<HFReferral>> tenantIdReferralMap = entities.stream().collect(Collectors.groupingBy(HFReferral::getTenantId)); | ||
tenantIdReferralMap.forEach((tenantId, hfReferralList) -> { | ||
// Get all the existing project facilities in the HFReferral list from Project Service | ||
List<ProjectFacility> existingProjectFacilities = getExistingProjects(tenantId, hfReferralList, request); | ||
// Validate project facilities and populate error map if invalid entities are found | ||
validateAndPopulateErrors(existingProjectFacilities, entities, errorDetailsMap); | ||
}); | ||
|
||
return errorDetailsMap; | ||
} | ||
|
||
// Helper method to add an item to a list if it is not null | ||
private void addIgnoreNull(List<String> list, String item) { | ||
if(Objects.nonNull(item)) list.add(item); | ||
} | ||
|
||
// Fetches existing project facilities from Project Service based on their IDs | ||
private List<ProjectFacility> getExistingProjects(String tenantId, List<HFReferral> hfReferrals, HFReferralBulkRequest request) { | ||
List<ProjectFacility> existingProjectFacilities = new ArrayList<>(); | ||
final List<String> projectFacilityIdList = new ArrayList<>(); | ||
|
||
// Collecting project facility IDs from HFReferrals | ||
hfReferrals.forEach(hfReferral -> { | ||
addIgnoreNull(projectFacilityIdList, hfReferral.getProjectFacilityId()); | ||
}); | ||
|
||
if(!projectFacilityIdList.isEmpty()) { | ||
ProjectFacilitySearch projectFacilitySearch = ProjectFacilitySearch.builder() | ||
.id(!projectFacilityIdList.isEmpty()? projectFacilityIdList : null) | ||
.tenantId(tenantId) | ||
.build(); | ||
|
||
try { | ||
// Using project facility search and fetching the valid IDs. | ||
ProjectFacilityBulkResponse projectFacilityBulkResponse = serviceRequestClient.fetchResult( | ||
new StringBuilder(referralManagementConfiguration.getProjectHost() | ||
+ referralManagementConfiguration.getProjectFacilitySearchUrl() | ||
+"?limit=" + hfReferrals.size() | ||
+ "&offset=0&tenantId=" + tenantId), | ||
ProjectFacilitySearchRequest.builder() | ||
.requestInfo(request.getRequestInfo()) | ||
.projectFacility(projectFacilitySearch) | ||
.build(), | ||
ProjectFacilityBulkResponse.class | ||
); | ||
existingProjectFacilities = projectFacilityBulkResponse.getProjectFacilities(); | ||
} catch (Exception e) { | ||
throw new CustomException("Project Facilities failed to fetch", "Exception : "+e.getMessage()); | ||
} | ||
} | ||
|
||
return existingProjectFacilities; | ||
} | ||
|
||
// Validates project facilities and populates the error map if invalid entities are found | ||
private void validateAndPopulateErrors(List<ProjectFacility> existingProjectFacilities, List<HFReferral> entities, Map<HFReferral, List<Error>> errorDetailsMap) { | ||
final List<String> existingProjectFacilityIds = new ArrayList<>(); | ||
|
||
// Extracting IDs from existing project facilities | ||
existingProjectFacilities.forEach(projectFacility -> { | ||
existingProjectFacilityIds.add(projectFacility.getId()); | ||
}); | ||
|
||
// Filtering invalid entities | ||
List<HFReferral> invalidEntities = entities.stream().filter(notHavingErrors()).filter(entity -> | ||
Objects.nonNull(entity.getProjectFacilityId()) && !existingProjectFacilityIds.contains(entity.getProjectFacilityId()) | ||
).collect(Collectors.toList()); | ||
|
||
// Populating error details for invalid entities | ||
invalidEntities.forEach(hfReferral -> { | ||
Error error = getErrorForNonExistentEntity(); | ||
populateErrorDetails(hfReferral, error, errorDetailsMap); | ||
}); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The validate
method implements the logic to validate project facility IDs in HFReferral objects. It uses a combination of streaming operations and external service calls to perform the validation. The error handling and population mechanisms are correctly implemented. However, consider handling potential exceptions from the service call more gracefully to ensure that the application can recover from transient errors without impacting the user experience.
try {
// Existing service call logic
} catch (Exception e) {
log.error("Error fetching project facilities: {}", e.getMessage());
// Consider adding a more user-friendly error message to the errorDetailsMap
}
* no of cycle and deivery drafted changes * fixes * add localisation code for boundaries * fixes * fixes * Value localise in summary screen, api error change --------- Co-authored-by: nabeelmd-eGov <[email protected]>
* Updated the error logging logic and other utils * added validation toast after file check (#533) * Removed other unwanted logs ::cleaned up the code * campaign search by type fix (#538) * upload draft fixes * campaign type search fix --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Added basic Loggers to know the API Behaviours * Added In Progress to show in mycamapign screen * updated version (#541) * Hlm 5855 (#544) * upload draft fixes * campaign type search fix * fixes --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Feat : added today's date logic in search * Revert kafka changes * Added campaignsIncludesDates in schema * Refactored * Feat : added today's date logic in search (#546) * Feat : added today's date logic in search * Revert kafka changes * Added campaignsIncludesDates in schema * Refactored * formatted and corrected few logs * Added localisation on create of boundary data * HLM-5830 refreshing page is retaining values (#547) * target validation (#548) Co-authored-by: nitiman7765 <[email protected]> * selecting boudaries fixes * Feat : added campaign mapping check * summary date format fix (#550) Co-authored-by: nabeelmd-eGov <[email protected]> * Update campaignUtils.ts * HLM 5848 (#553) * summary date format fix * product error fix, draft calls fix --------- Co-authored-by: nabeelmd-eGov <[email protected]> * added upcoming tab in my campaign (#555) * summary date format fix * product error fix, draft calls fix * added upcoming tab in my campaign --------- Co-authored-by: nabeelmd-eGov <[email protected]> * fixed selection from the draft issue (#556) * Updated the loggers logic * validate upload data in summary (#557) * summary date format fix * product error fix, draft calls fix * added upcoming tab in my campaign * validate upload data in summary --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Feat : added codes and mapping check (#559) * added log level environment config * fixed HLM-5879 toast message (#561) * Feat : user mapping for all boundaries (#562) * no of cycle and deivery drafted changes (#564) Co-authored-by: nabeelmd-eGov <[email protected]> * changes for boundary bulk localization HLM-5874 (#560) Co-authored-by: nitiman7765 <[email protected]> * made toast message time longer (#566) * Fixed the project mapping issue during campaign create * retaining api message (#567) * HLM 5791 (#569) * no of cycle and deivery drafted changes * fixes --------- Co-authored-by: nabeelmd-eGov <[email protected]> * add localisation code for boundaries (#570) * no of cycle and deivery drafted changes * fixes * add localisation code for boundaries * fixes * fixes --------- Co-authored-by: nabeelmd-eGov <[email protected]> * made the delivery conditions as dynamic * fixed message in target upload (#572) * fixed HLM-5871 selection of children (#571) * fixed HLM-5871 selection of children * corrected includeAllChildren * Update SelectingBoundaries.js * Added health master * Feat : added validations and keys reorder * Differenttab (#574) * changes for boundary bulk localization HLM-5874 * localized boundary tab on which split happens * config --------- Co-authored-by: nitiman7765 <[email protected]> * changed filters to true (#575) * Patch 1 (#578) * changes for boundary bulk localization HLM-5874 * localized generateDifferentTabsOnBasisOf --------- Co-authored-by: nitiman7765 <[email protected]> * Bhavya filter (#577) * changed filters to true * fixed includeAllChildren for the lowest * Update micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/SelectingBoundaries.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Jagankumar <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Project type object key updated for condition * API Error localisation change, Gender localisation in summary (#579) * no of cycle and deivery drafted changes * fixes * add localisation code for boundaries * fixes * fixes * Value localise in summary screen, api error change --------- Co-authored-by: nabeelmd-eGov <[email protected]> * HLM 5791 (#581) * no of cycle and deivery drafted changes * fixes * add localisation code for boundaries * fixes * fixes * Value localise in summary screen, api error change * fixes --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Fixed the boundary filtered logic for different types of data injestions (#583) * making generate api to fetch filters from campaign id commit ca425591b1d1ec91a05facb6e2bdf9b5100e9570 Merge: 3ba4c5ddac b491428 Author: Jagankumar <[email protected]> Date: Wed May 15 16:13:32 2024 +0530 Merge branch 'campaign' into boundary-upload-bulk commit 3ba4c5ddac8a9d13145892bfd7c772a8853d6e7b Author: nitiman7765 <[email protected]> Date: Tue May 14 12:24:53 2024 +0530 COMMIT commit f775e17aa68cffa622a038b22119082486f064fe Author: nitiman7765 <[email protected]> Date: Mon May 13 18:36:28 2024 +0530 changes for boundary bulk localization HLM-5874 * Fixed the boundary filtered logic for different types of data injestions * updated comments * Readme config (#582) * Feat : initialised readme * Feat : added readme * Feat : added readMe Config for target * Feat : added localisation for sheetName * Feat : updated columnwidth in boundary --------- Co-authored-by: Jagankumar <[email protected]> * Bhavya check (#585) * changes * Update UploadData.js * Generate API call fix (#584) * no of cycle and deivery drafted changes * fixes * add localisation code for boundaries * fixes * fixes * Value localise in summary screen, api error change * fixes * genarate api call fix * font size change for summary * login css change --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Capital error (#586) * Feat : initialised readme * Feat : added readme * Feat : added readMe Config for target * Feat : added localisation for sheetName * Feat : updated columnwidth in boundary * Feat : capital name in error * Target (#587) * changes for boundary bulk localization HLM-5874 * refactored localization logic --------- Co-authored-by: nitiman7765 <[email protected]> * generate api fixes, user generate fixes (#588) Co-authored-by: nabeelmd-eGov <[email protected]> * Updated the status in camapign API * added info card (#589) * changes in card (#593) * Corrected the project type condition logic * generate api call fix (#595) Co-authored-by: nabeelmd-eGov <[email protected]> * Update campaignMappingUtils.ts * Update genericApis.ts * Fixed the conditions logic for delivery * Update genericUtils.ts (#599) * Update genericUtils.ts * Update constants.ts * HLM 5872 (#600) * generate api fix, user generate file fix * remove console --------- Co-authored-by: nabeelmd-eGov <[email protected]> * updated the condition logic according to the parsing logic * HLM 5872 (#601) * generate api fix, user generate file fix * remove console * downlaod pop up fixes --------- Co-authored-by: nabeelmd-eGov <[email protected]> * addded toast for extra parent (#603) * HLM 5872 (#604) * generate api fix, user generate file fix * remove console * downlaod pop up fixes * localisation update --------- Co-authored-by: nabeelmd-eGov <[email protected]> * updated info css and fetching according to type (#605) * Target nitish (#607) * upated target validaton * updated target vaidation * Update utilities/project-factory/src/server/utils/validators/campaignValidators.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update utilities/project-factory/src/server/utils/validators/campaignValidators.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update utilities/project-factory/src/server/utils/validators/campaignValidators.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Jagankumar <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * upated target validaton * updated target vaidation * added one condition for target * added some chage in condition for valdiate target * Feat : added boundary code mandatory * download with filename fixes (#610) Co-authored-by: nabeelmd-eGov <[email protected]> * fixed localistion (#611) * Update campaignValidators.ts * Update campaignValidators.ts * core/css version update & revert filedownload changes (#614) Co-authored-by: nabeelmd-eGov <[email protected]> * Update campaignValidators.ts * HLM-5908 Genrate issue fix (#616) Co-authored-by: nabeelmd-eGov <[email protected]> * change && to and (#620) Co-authored-by: nabeelmd-eGov <[email protected]> * toast back issue fix (#621) Co-authored-by: nabeelmd-eGov <[email protected]> * toast error fix (#622) * toast back issue fix * version update --------- Co-authored-by: nabeelmd-eGov <[email protected]> * localization logic update * Update campaignValidators.ts * Update campaignValidators.ts * core/css version update & revert filedownload changes (#614) Co-authored-by: nabeelmd-eGov <[email protected]> * Update campaignValidators.ts * HLM-5908 Genrate issue fix (#616) Co-authored-by: nabeelmd-eGov <[email protected]> * change && to and (#620) Co-authored-by: nabeelmd-eGov <[email protected]> * toast back issue fix (#621) Co-authored-by: nabeelmd-eGov <[email protected]> * toast error fix (#622) * toast back issue fix * version update --------- Co-authored-by: nabeelmd-eGov <[email protected]> * fixed random error (#626) * download file in summary screen fix (#627) Co-authored-by: nabeelmd-eGov <[email protected]> * fix rerender (#628) Co-authored-by: nabeelmd-eGov <[email protected]> * Fixed the boundary localisation issue in user and facility generation, Added few logs * Added few logs in boundary generation * Update genericApis.ts * generate fix (#629) * fix rerender * generate api and download error fix --------- Co-authored-by: nabeelmd-eGov <[email protected]> * localisation fetch logic updated and made singleton class * remove filter from boudary (#632) Co-authored-by: nabeelmd-eGov <[email protected]> * Removed filter validation in the generate API * toast message fix (#635) * Cleaned up few file structures * updated the loggers * Updated the campaign cycles conditions for App Integration * Service layer (#631) * Feat : service layer implementation * Feat : service layer implementation * Feat : refactor * updated --------- Co-authored-by: Jagankumar <[email protected]> * Changed imports of kafka * Feat : updated kafka name (#637) * Generate API response time reduced and optimized * Update campaignValidators.ts (#639) * page size fix to 10 (#638) Co-authored-by: nabeelmd-eGov <[email protected]> * summary to back screen redirection fix * summary to back screen redirection fix (#640) Co-authored-by: nabeelmd-eGov <[email protected]> * preview params fix * formatted the code and removed few loggers * auto redirection fix & auto uploaded deleted file fix (#642) Co-authored-by: nabeelmd-eGov <[email protected]> * Generationlogic (#630) * changes for boundary bulk localization HLM-5874 * commit for bulk boundary * commiting the changes fot boundary code generation * upated target validaton * updated target vaidation * commmit * code generation * updary boundary bulk upload logic * generate fix (#629) * fix rerender * generate api and download error fix --------- Co-authored-by: nabeelmd-eGov <[email protected]> * localisation fetch logic updated and made singleton class * updated logic for update boundary data * remove filter from boudary (#632) Co-authored-by: nabeelmd-eGov <[email protected]> * Removed filter validation in the generate API * toast message fix (#635) * Cleaned up few file structures * updated the loggers * Updated the campaign cycles conditions for App Integration * Service layer (#631) * Feat : service layer implementation * Feat : service layer implementation * Feat : refactor * updated --------- Co-authored-by: Jagankumar <[email protected]> * Changed imports of kafka * Feat : updated kafka name (#637) * Generate API response time reduced and optimized * Update campaignValidators.ts (#639) * page size fix to 10 (#638) Co-authored-by: nabeelmd-eGov <[email protected]> * summary to back screen redirection fix * preview params fix * commit suggested by jagan --------- Co-authored-by: nitiman7765 <[email protected]> Co-authored-by: nabeelmd-eGov <[email protected]> Co-authored-by: nabeelmd-eGov <[email protected]> Co-authored-by: Jagankumar <[email protected]> Co-authored-by: Bhavya-egov <[email protected]> Co-authored-by: ashish-egov <[email protected]> Co-authored-by: ashish-egov <[email protected]> * Updates the delivery rules logic for gender * * info message for status creating (#644) * success message if user cred sheet * send id with key resourceid * Send variant in sku also Co-authored-by: nabeelmd-eGov <[email protected]> * Feat : added boundary validation (#643) Co-authored-by: Jagankumar <[email protected]> * Update campaignValidators.ts (#645) * added delay in download (#646) * Update campaignValidators.ts (#647) * fixes (#649) Co-authored-by: nabeelmd-eGov <[email protected]> * fixed header validation (#648) * change in filter recursive (#650) * Update genericUtils.ts (#652) * fix (#651) Co-authored-by: nabeelmd-eGov <[email protected]> * updated lowest level hierarchy validation for target HLM -5948 (#654) * Update campaignValidators.ts (#655) * fixes-> cyclenumber issue, hover issue, dropdown height issue, * css * fixes-> cyclenumber issue, hover issue, dropdown height issue, (#656) * fixes-> cyclenumber issue, hover issue, dropdown height issue, * css --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Update campaignUtils.ts * fixed HLM-5970 * Feat : added boundary validation at data level * fixes * local add * Added boundary validation * Refactor * fixed HLM-5935 and HLM-5749 * Refactor * Feat : updated table * change campaignid in payload * Feat : added campaignId * Update campaignApis.ts * Update campaignValidators.ts * refactored * Refactor * assigned campaignId * Refactor * updated createRequest Schema * Feat : invalid Status Persist * status fix * version-fix * Update CODEOWNERS * core version updated and css fix for language dropdown * refactor (#676) * Uat signoff (#678) * change in filter recursive * lowest level * added validation related to target sheet headers * HLM-5916 * download button fixes in summary (#682) Co-authored-by: nabeelmd-eGov <[email protected]> * Hlm 5927 (#687) * change in filter recursive * lowest level * added validation for boundary codes to be invalid other than that selected from UI in target upload * Added Delivery and cycle config for LLIN and SMC both (#688) * no of cycle and deivery drafted changes * fixes * add localisation code for boundaries * fixes * fixes * Value localise in summary screen, api error change * fixes * genarate api call fix * font size change for summary * login css change * HLM-5718: SMC delivery config enhancement * config update * added config for in between * fix config for llin * added mdms integration --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Fixed HLM-5988_warning message (#689) Co-authored-by: nabeelmd-eGov <[email protected]> * download filename fixes (#693) * download button fixes in summary * download filename with custom name changes added --------- Co-authored-by: nabeelmd-eGov <[email protected]> * download filename fixes (#694) * download button fixes in summary * download filename with custom name changes added * config fix for llin --------- Co-authored-by: nabeelmd-eGov <[email protected]> * successful toast message is fixed (#695) * successful toast message is fixed * Update UploadData.js * HLM-5991: Alert Pop UP CR (#696) Co-authored-by: nabeelmd-eGov <[email protected]> * HLM-5718 changes (#703) Co-authored-by: nabeelmd-eGov <[email protected]> * Localization cache (#706) * change in filter recursive * lowest level * refactored localization cache logic * Update README.md (#707) * Update README.md * Update README.md * Update utilities/project-factory/README.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update README.md --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * HLM-5985_made lowest level changes (#708) * HLM-5985_made lowest level changes * resolved codeRabbit comments * Create LOCALSETUP.md (#709) * Create LOCALSETUP.md * Refactored config * Update LOCALSETUP.md * Update utilities/project-factory/LOCALSETUP.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update utilities/project-factory/LOCALSETUP.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update utilities/project-factory/LOCALSETUP.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update utilities/project-factory/LOCALSETUP.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update LOCALSETUP.md --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * updated the localisation module config * Refactor config (#713) * Refactor config * Update utilities/project-factory/src/server/validators/campaignValidators.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update utilities/project-factory/src/server/validators/campaignValidators.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update utilities/project-factory/src/server/validators/campaignValidators.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update postman_collection.json (#714) * Update postman_collection.json * Update postman_collection.json * Delete utilities/project-factory/project_factory_swagger.yml (#715) * Feat : removed campaignId validation for boundary upload (#718) * updated the delay for boundary relationship * added logger for request TODO TEST will be reverted * Revert "added logger for request TODO TEST" This reverts commit d5c2bf5. * Schema validation (#719) * Feat : removed campaignId validation for boundary upload * Feat : added schema validation * Fixed mdms host * updated the logger messages * updated the loggers * delivery new changes, toast fix, error fix (#716) * delivery new changes, toast fix, error fix * new fixes * fixes * change text component to field component * added hierarchy * fix * fix * fix * fix * passing hierarchy from props --------- Co-authored-by: nabeelmd-eGov <[email protected]> * Schema validation2 (#721) * Feat : removed campaignId validation for boundary upload * Feat : added schema validation * Fixed mdms host * Feat : added boundary validation * Feat : optimized product search * Fix : project mapping fixed (#722) * Fixed project search (#723) * smc fixes (#724) Co-authored-by: nabeelmd-eGov <[email protected]> * Feat : added boundary confirmation (#727) * Fix: fixed processing boundary * Refactor * fixed HLM-6109 (#729) * gate fixes validation, ui ux (#731) Co-authored-by: nabeelmd-eGov <[email protected]> * integrated panelcard component (#732) * integrated panelcard component * Update micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/pages/employee/Response.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Jagankumar <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update genericUtils.ts (#733) * updated the folder structure * Create CHANGELOG.md (#717) * updated the versions --------- Co-authored-by: Bhavya-egov <[email protected]> Co-authored-by: nabeelmd-eGov <[email protected]> Co-authored-by: nabeelmd-eGov <[email protected]> Co-authored-by: ashish-egov <[email protected]> Co-authored-by: ashish-egov <[email protected]> Co-authored-by: nitish-egov <[email protected]> Co-authored-by: nitiman7765 <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: admin1 <[email protected]> Co-authored-by: Bhavya-egov <[email protected]> Co-authored-by: Swathi-eGov <[email protected]>
Summary by CodeRabbit
ReferenceIdType
andSenderReceiverType
, and added validation constraints for stock quantities.health-services/household
,health-services/individual
, andhealth-services/libraries/health-services-models
to document recent changes and improvements.