Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/main/environment/common_docker.properties
Original file line number Diff line number Diff line change
Expand Up @@ -218,4 +218,4 @@ otp.ratelimit.enabled=${OTP_RATELIMIT_ENABLED}
otp.ratelimit.minute-limit=${OTP_RATELIMIT_MINUTE_LIMIT}
otp.ratelimit.hour-limit=${OTP_RATELIMIT_HOUR_LIMIT}
otp.ratelimit.day-limit=${OTP_RATELIMIT_DAY_LIMIT}
generateBeneficiaryIDs-api-url={GEN_BENEFICIARY_IDS_API_URL}
generateBeneficiaryIDs-api-url=${GEN_BENEFICIARY_IDS_API_URL}
12 changes: 12 additions & 0 deletions src/main/java/com/iemr/common/dto/identity/Address.java
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,12 @@
private String parkingPlaceName;
private Integer servicePointID;
private String servicePointName;
private Double gpsLatitude;
private Double gpsLongitude;
private String digipin;
private Long gpsTimestamp;
private Boolean isGpsUnavailable;
private String gpsUnavailableReason;

public static Address bendemographicsAddressMapper(BeneficiaryDemographicsModel i_bendemographics) {
Address address = new Address();
Expand Down Expand Up @@ -87,6 +93,12 @@ public static Address bendemographicsAddressMapper(BeneficiaryDemographicsModel
address.setSubDistrictId(i_bendemographics.getBlockID());
address.setVillageId(i_bendemographics.getDistrictBranchID());
address.setPinCode(i_bendemographics.getPinCode());
address.setGpsLatitude(i_bendemographics.getLatitude());
address.setGpsLongitude(i_bendemographics.getLongitude());
address.setDigipin(i_bendemographics.getDigipin());
address.setGpsTimestamp(i_bendemographics.getGpsTimestamp());
address.setIsGpsUnavailable(i_bendemographics.getIsGpsUnavailable());
address.setGpsUnavailableReason(i_bendemographics.getGpsUnavailableReason());

return address;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,12 @@ public BeneficiaryDemographicsModel createBenDemographicsModel(BeneficiariesDTO
demographicsModel.setServicePointID(address.getServicePointID());
demographicsModel.setServicePointName(address.getServicePointName());
demographicsModel.setHabitation(address.getHabitation());
demographicsModel.setLatitude(address.getGpsLatitude());
demographicsModel.setLongitude(address.getGpsLongitude());
demographicsModel.setDigipin(address.getDigipin());
demographicsModel.setGpsTimestamp(address.getGpsTimestamp());
demographicsModel.setIsGpsUnavailable(address.getIsGpsUnavailable());
demographicsModel.setGpsUnavailableReason(address.getGpsUnavailableReason());
}
demographicsModel.setHealthCareWorkerID(benDetails.getHealthCareWorkerId());
demographicsModel.setPreferredLangID(beneficiariesDTO.getBeneficiaryDetails().getPreferredLanguageId());
Expand Down Expand Up @@ -216,6 +222,12 @@ protected Address beneficiaryDemographicsModelToAddress(BeneficiaryDemographicsM
address.setSubDistrict(
blockMapper.districtBlockToModelByID(beneficiaryDemographicsModel.getBlockID()).getBlockName());
}
address.setGpsLatitude(beneficiaryDemographicsModel.getLatitude());
address.setGpsLongitude(beneficiaryDemographicsModel.getLongitude());
address.setDigipin(beneficiaryDemographicsModel.getDigipin());
address.setGpsTimestamp(beneficiaryDemographicsModel.getGpsTimestamp());
address.setIsGpsUnavailable(beneficiaryDemographicsModel.getIsGpsUnavailable());
address.setGpsUnavailableReason(beneficiaryDemographicsModel.getGpsUnavailableReason());

return address;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,12 @@ protected Address beneficiaryDemographicsModelToAddress(BeneficiaryDemographicsM
address.setSubDistrict(
blockMapper.districtBlockToModelByID(beneficiaryDemographicsModel.getBlockID()).getBlockName());
}
address.setGpsLatitude(beneficiaryDemographicsModel.getLatitude());
address.setGpsLongitude(beneficiaryDemographicsModel.getLongitude());
address.setDigipin(beneficiaryDemographicsModel.getDigipin());
address.setGpsTimestamp(beneficiaryDemographicsModel.getGpsTimestamp());
address.setIsGpsUnavailable(beneficiaryDemographicsModel.getIsGpsUnavailable());
address.setGpsUnavailableReason(beneficiaryDemographicsModel.getGpsUnavailableReason());

return address;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,12 @@ protected Address beneficiaryDemographicsModelToAddress(BeneficiaryDemographicsM
address.setSubDistrict(
blockMapper.districtBlockToModelByID(beneficiaryDemographicsModel.getBlockID()).getBlockName());
}
address.setGpsLatitude(beneficiaryDemographicsModel.getLatitude());
address.setGpsLongitude(beneficiaryDemographicsModel.getLongitude());
address.setDigipin(beneficiaryDemographicsModel.getDigipin());
address.setGpsTimestamp(beneficiaryDemographicsModel.getGpsTimestamp());
address.setIsGpsUnavailable(beneficiaryDemographicsModel.getIsGpsUnavailable());
address.setGpsUnavailableReason(beneficiaryDemographicsModel.getGpsUnavailableReason());

return address;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,19 @@ public class BeneficiaryDemographicsModel {
@Expose
private String habitation;

@Expose
private Double latitude;
@Expose
private Double longitude;
@Expose
private String digipin;
@Expose
private Long gpsTimestamp;
@Expose
private Boolean isGpsUnavailable = false;
@Expose
private String gpsUnavailableReason;

@Expose
private String occupation;
@Expose
Expand Down
14 changes: 4 additions & 10 deletions src/main/java/com/iemr/common/service/health/HealthService.java
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@ public class HealthService {
private static final String STATUS_VALUE = "Value";
private static final String STATUS_UP = "UP";
private static final String STATUS_DOWN = "DOWN";
private static final String STATUS_DEGRADED = "DEGRADED";
private static final String STATUS_NOT_CONFIGURED = "NOT_CONFIGURED";

// Thresholds
Expand Down Expand Up @@ -183,9 +182,11 @@ private Map<String, Object> checkDatabaseConnectivity() {
stmt.setQueryTimeout(3); // Bounds only the SELECT 1 execution
stmt.execute("SELECT 1");

// If SELECT 1 succeeds, use cached severity from background diagnostics
// SELECT 1 succeeded, so connectivity is UP regardless of background severity.
// Severity is a separate capacity/performance signal (pool usage, long transactions,
// etc.) β€” it must not be reported as a connectivity outage.
String severity = cachedDbSeverity.get();
result.put(FIELD_STATUS, resolveDatabaseStatus(severity));
result.put(FIELD_STATUS, STATUS_UP);
result.put(FIELD_SEVERITY, severity);

} catch (Exception e) {
Expand Down Expand Up @@ -402,13 +403,6 @@ private String performConnectionUsageCheck(Connection conn) {
}
return SEVERITY_OK;
}
private String resolveDatabaseStatus(String severity) {
return switch (severity) {
case SEVERITY_CRITICAL -> STATUS_DOWN;
case SEVERITY_WARNING -> STATUS_DEGRADED;
default -> STATUS_UP;
};
}
private String escalate(String current, String candidate) {
return severityRank(candidate) > severityRank(current) ? candidate : current;
}
Expand Down
Loading