Skip to content
Open
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
28 changes: 14 additions & 14 deletions src/main/java/com/iemr/flw/controller/ChildCareController.java
Original file line number Diff line number Diff line change
Expand Up @@ -254,7 +254,7 @@ public ResponseEntity<?> saveSevereAcuteMalnutrition(@RequestBody List<SamDTO> s

} catch (Exception e) {
logger.error("Error saving SAM details:", e);
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode",5000);
response.put("errorMessage", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}
Expand All @@ -272,14 +272,14 @@ public ResponseEntity<?> getAllSevereAcuteMalnutrition(@RequestBody GetBenReques
response.put("data", responseObject);
return ResponseEntity.ok(response);
} else {
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode",5000);
response.put("message", "No SAM records found");
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}

} catch (Exception e) {
logger.error("Error fetching SAM records:", e);
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode", 5000);
response.put("errorMessage", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}
Expand All @@ -305,14 +305,14 @@ public ResponseEntity<?> saveOrsDistribution(@RequestBody List<OrsDistributionDT
response.put("message", responseObject);
return ResponseEntity.ok(response);
} else {
response.put("statusCode", HttpStatus.BAD_REQUEST.value());
response.put("statusCode", 5000);
response.put("message", "Failed to save ORS details");
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(response);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}

} catch (Exception e) {
logger.error("Error saving ORS:", e);
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode", 5000);
response.put("errorMessage", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}
Expand All @@ -331,14 +331,14 @@ public ResponseEntity<?> getAllOrDistribution(@RequestBody GetBenRequestHandler
response.put("data", responseObject);
return ResponseEntity.ok(response);
} else {
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode", 5000);
response.put("message", "No ORS records found");
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}

} catch (Exception e) {
logger.error("Error fetching ORS records:", e);
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode", 5000);
response.put("errorMessage", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}
Expand All @@ -364,14 +364,14 @@ public ResponseEntity<?> saveIfDistribution(@RequestBody List<IfaDistributionDTO
response.put("message", "IFA saved successfully");
return ResponseEntity.ok(response);
} else {
response.put("statusCode", HttpStatus.BAD_REQUEST.value());
response.put("statusCode", 5000);
response.put("message", "Failed to save IFA details");
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(response);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}

} catch (Exception e) {
logger.error("Error saving IFA:", e);
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode", 5000);
response.put("errorMessage", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}
Expand All @@ -390,14 +390,14 @@ public ResponseEntity<?> getIfaDistribution(@RequestBody GetBenRequestHandler re
response.put("data", responseObject);
return ResponseEntity.ok(response);
} else {
response.put("statusCode", HttpStatus.OK.value());
response.put("statusCode", 5000);
response.put("message", "No IFA records found");
return ResponseEntity.status(HttpStatus.OK).body(response);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}

} catch (Exception e) {
logger.error("Error fetching IFA records:", e);
response.put("statusCode", HttpStatus.INTERNAL_SERVER_ERROR.value());
response.put("statusCode", 5000);
response.put("errorMessage", e.getMessage());
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(response);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,14 +81,14 @@ public String saveIncentiveMasterData(@RequestBody IncentiveRequestDTO incentive
@Operation(summary = "get high risk assessment data of all beneficiaries registered with given user id")
@RequestMapping(value = {"/fetchUserData"}, method = {RequestMethod.POST})
public String getAllIncentivesByUserId(@RequestBody GetBenRequestHandler requestDTO,
@RequestHeader(value = "Authorization") String Authorization) {
@RequestHeader(value = "JwtToken") String token) {
OutputResponse response = new OutputResponse();
try {

if (requestDTO != null) {
logger.info("request object with timestamp : " + new Timestamp(System.currentTimeMillis()) + " "
+ requestDTO);
String s = incentiveService.getAllIncentivesByUserId(requestDTO);
String s = incentiveService.getAllIncentivesByUserId(requestDTO,token);
logger.info("User Incentive:" + s);
if (s != null)
response.setResponse(s);
Expand Down
17 changes: 16 additions & 1 deletion src/main/java/com/iemr/flw/dto/iemr/EyeCheckupListDTO.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,16 @@
import com.google.gson.annotations.SerializedName;
import lombok.Data;

import java.util.List;
import java.util.stream.Collectors;

@Data
public class EyeCheckupListDTO {
@SerializedName("visit_date")
private String visit_date;

@SerializedName("symptoms_observed")
private String symptoms_observed;
private Object symptoms_observed;

@SerializedName("eye_affected")
private String eye_affected;
Expand All @@ -26,4 +29,16 @@ public class EyeCheckupListDTO {
@SerializedName("discharge_summary_upload")
private String discharge_summary_upload;

public String getSymptomsAsString() {
if (symptoms_observed == null) return null;

if (symptoms_observed instanceof List<?>) {
return ((List<?>) symptoms_observed)
.stream()
.map(Object::toString)
.collect(Collectors.joining(", "));
}
return symptoms_observed.toString();
}

}
4 changes: 4 additions & 0 deletions src/main/java/com/iemr/flw/repo/iemr/HbncVisitRepo.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package com.iemr.flw.repo.iemr;

import com.iemr.flw.domain.iemr.HbncVisit;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
Expand All @@ -22,4 +24,6 @@ HbncVisit findByBeneficiaryIdAndVisit_day(@Param("beneficiaryId") Long beneficia

List<HbncVisit> findByAshaId(Integer ashaId);

Page<HbncVisit>findByAshaId (Integer ashaId, Pageable pageable);

}
2 changes: 1 addition & 1 deletion src/main/java/com/iemr/flw/service/IncentiveService.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ public interface IncentiveService {

String getIncentiveMaster(IncentiveRequestDTO incentiveRequestDTO);

String getAllIncentivesByUserId(GetBenRequestHandler requestDTO);
String getAllIncentivesByUserId(GetBenRequestHandler requestDTO,String token);

String updateIncentive(PendingActivityDTO pendingActivityDTO);
}
33 changes: 21 additions & 12 deletions src/main/java/com/iemr/flw/service/impl/BeneficiaryServiceImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import java.time.LocalDate;
import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
Expand Down Expand Up @@ -521,7 +522,7 @@ public void fetchHealthIdByBenRegID(Long benRegID, String authorization, Map<Str


@Override
public String saveEyeCheckupVsit(List<EyeCheckupRequestDTO> eyeCheckupRequestDTOS,String token) {
public String saveEyeCheckupVsit(List<EyeCheckupRequestDTO> eyeCheckupRequestDTOS, String token) {

try {
for (EyeCheckupRequestDTO dto : eyeCheckupRequestDTOS) {
Expand All @@ -531,30 +532,38 @@ public String saveEyeCheckupVsit(List<EyeCheckupRequestDTO> eyeCheckupRequestDTO
visit.setHouseholdId(dto.getHouseHoldId());
visit.setUserId(jwtUtil.extractUserId(token));
visit.setCreatedBy(dto.getUserName());
StringBuilder sb = new StringBuilder();


// fields mapping
EyeCheckupListDTO f = dto.getFields();
sb.append(f.getDischarge_summary_upload());
String longText = sb.toString();

visit.setSymptomsObserved(f.getSymptomsAsString());

String upload = f.getDischarge_summary_upload();
visit.setDischargeSummaryUpload(
(upload != null && !upload.equalsIgnoreCase("null")) ? upload : null
);

visit.setVisitDate(LocalDate.parse(f.getVisit_date(), FORMATTER));
visit.setSymptomsObserved(f.getSymptoms_observed());

visit.setDateOfSurgery(f.getDate_of_surgery());


visit.setEyeAffected(f.getEye_affected());
visit.setReferredTo(f.getReferred_to());
visit.setDischargeSummaryUpload(longText);
visit.setFollowUpStatus(f.getFollow_up_status());
visit.setDateOfSurgery(f.getDate_of_surgery());

// save/update
eyeCheckUpVisitRepo.save(visit);
}

return "Eye checkup data saved successfully.";
} catch (Exception e) {

} catch (DateTimeParseException e) {
e.printStackTrace();
throw new RuntimeException("Invalid date format. Expected dd-MM-yyyy. " + e.getMessage());

} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("Failed to save eye checkup data: " + e.getMessage());
}
return null ;
}

@Override
Expand Down
99 changes: 61 additions & 38 deletions src/main/java/com/iemr/flw/service/impl/ChildCareServiceImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

Expand Down Expand Up @@ -211,46 +214,60 @@ public List<HbycVisitResponseDTO> getHbycRecords(GetBenRequestHandler dto) {
public List<HbncVisitResponseDTO> getHBNCDetails(GetBenRequestHandler dto) {
List<HbncVisitResponseDTO> result = new ArrayList<>();
try {
List<HbncVisit> hbncVisits = hbncVisitRepo.findByAshaId(dto.getAshaId());

for (HbncVisit visit : hbncVisits) {
HbncVisitResponseDTO responseDTO = new HbncVisitResponseDTO();
responseDTO.setId(visit.getId());
responseDTO.setBeneficiaryId(visit.getBeneficiaryId()); // Update with actual value
responseDTO.setHouseHoldId(visit.getHouseHoldId()); // Update with actual value
responseDTO.setVisitDate(visit.getVisit_date().split(" ")[0]); // Format visit.getVisitDate()
int page = 0;
int pageSize = 10;
while (true){
Pageable pageable = PageRequest.of(page,pageSize);
Page<HbncVisit> hbncVisits = hbncVisitRepo.findByAshaId(dto.getAshaId(),pageable);
if (hbncVisits!=null){
List<HbncVisit> hbncList = hbncVisits.getContent();
if (hbncVisits == null || !hbncVisits.hasContent()) break;

for (HbncVisit visit : hbncList) {
HbncVisitResponseDTO responseDTO = new HbncVisitResponseDTO();
responseDTO.setId(visit.getId());
responseDTO.setBeneficiaryId(visit.getBeneficiaryId()); // Update with actual value
responseDTO.setHouseHoldId(visit.getHouseHoldId()); // Update with actual value
responseDTO.setVisitDate(visit.getVisit_date().split(" ")[0]); // Format visit.getVisitDate()

// Convert all fields to Map
Map<String, Object> fields = new HashMap<>();
addIfValid(fields, "visit_day", visit.getVisit_day());
addIfValid(fields, "due_date", visit.getDue_date());
addIfValid(fields, "is_baby_alive", convert(visit.getIs_baby_alive()));
addIfValid(fields, "date_of_death", visit.getDate_of_death());
addIfValid(fields, "reason_for_death", visit.getReasonForDeath());
addIfValid(fields, "place_of_death", visit.getPlace_of_death());
addIfValid(fields, "other_place_of_death", visit.getOther_place_of_death());
addIfValid(fields, "baby_weight", visit.getBaby_weight());
addIfValid(fields, "urine_passed", convert(visit.getUrine_passed()));
addIfValid(fields, "stool_passed", convert(visit.getStool_passed()));
addIfValid(fields, "diarrhoea", convert(visit.getDiarrhoea()));
addIfValid(fields, "vomiting", convert(visit.getVomiting()));
addIfValid(fields, "convulsions", convert(visit.getConvulsions()));
addIfValid(fields, "activity", visit.getActivity());
addIfValid(fields, "sucking", visit.getSucking());
addIfValid(fields, "breathing", visit.getBreathing());
addIfValid(fields, "chest_indrawing", visit.getChest_indrawing());
addIfValid(fields, "temperature", visit.getTemperature());
addIfValid(fields, "jaundice", convert(visit.getJaundice()));
addIfValid(fields, "umbilical_stump", visit.getUmbilical_stump());
addIfValid(fields, "discharged_from_sncu", convert(visit.getDischarged_from_sncu()));
addIfValid(fields, "discharge_summary_upload", visit.getDischarge_summary_upload());


responseDTO.setFields(fields);
result.add(responseDTO);

// Convert all fields to Map
Map<String, Object> fields = new HashMap<>();
addIfValid(fields, "visit_day", visit.getVisit_day());
addIfValid(fields, "due_date", visit.getDue_date());
addIfValid(fields, "is_baby_alive", convert(visit.getIs_baby_alive()));
addIfValid(fields, "date_of_death", visit.getDate_of_death());
addIfValid(fields, "reason_for_death", visit.getReasonForDeath());
addIfValid(fields, "place_of_death", visit.getPlace_of_death());
addIfValid(fields, "other_place_of_death", visit.getOther_place_of_death());
addIfValid(fields, "baby_weight", visit.getBaby_weight());
addIfValid(fields, "urine_passed", convert(visit.getUrine_passed()));
addIfValid(fields, "stool_passed", convert(visit.getStool_passed()));
addIfValid(fields, "diarrhoea", convert(visit.getDiarrhoea()));
addIfValid(fields, "vomiting", convert(visit.getVomiting()));
addIfValid(fields, "convulsions", convert(visit.getConvulsions()));
addIfValid(fields, "activity", visit.getActivity());
addIfValid(fields, "sucking", visit.getSucking());
addIfValid(fields, "breathing", visit.getBreathing());
addIfValid(fields, "chest_indrawing", visit.getChest_indrawing());
addIfValid(fields, "temperature", visit.getTemperature());
addIfValid(fields, "jaundice", convert(visit.getJaundice()));
addIfValid(fields, "umbilical_stump", visit.getUmbilical_stump());
addIfValid(fields, "discharged_from_sncu", convert(visit.getDischarged_from_sncu()));
addIfValid(fields, "discharge_summary_upload", visit.getDischarge_summary_upload());

// Add more fields as required

responseDTO.setFields(fields);
result.add(responseDTO);
}
if (!hbncVisits.hasNext()) break ;
page++;

}
}


} catch (Exception e) {
logger.error("Error in getHBNCDetails: ", e);
}
Expand Down Expand Up @@ -610,8 +627,14 @@ public List<OrsDistributionResponseDTO> getOrdDistrubtion(GetBenRequestHandler r
orsDistributionResponseDTO.setId(orsDistribution.getId());
orsDistributionResponseDTO.setBeneficiaryId(orsDistribution.getBeneficiaryId());
orsDistributionResponseDTO.setHouseHoldId(orsDistribution.getHouseholdId());
orsDistributionResponseListDTO.setNum_ors_packets(orsDistribution.getNumOrsPackets().toString());
orsDistributionResponseListDTO.setNum_under5_children(orsDistribution.getChildCount().toString());
if(orsDistribution.getNumOrsPackets()!=null){
orsDistributionResponseListDTO.setNum_ors_packets(orsDistribution.getNumOrsPackets().toString());

}
if(orsDistribution.getChildCount()!=null){
orsDistributionResponseListDTO.setNum_under5_children(orsDistribution.getChildCount().toString());

}
orsDistributionResponseDTO.setFields(orsDistributionResponseListDTO);
orsDistributionResponseDTO.setVisitDate(parseDate(orsDistribution.getVisitDate().toString()).toString());
orsDistributionResponseDTOSList.add(orsDistributionResponseDTO);
Expand Down
Loading