Skip to content

Commit a996ef5

Browse files
Prescription Template API not working (#139)
* Update application.properties * Swagger changes * AMM-1456 : Skiped jwtToken validation if not present in Cookie or header from mobile request. * Jwtten and user-agent validation * null check * Constants added and null check * Empty check added * Optimized code * removed commented code * Exception Handled and Null conditions added * Coderabbit comments addressed
1 parent 4919ab2 commit a996ef5

2 files changed

Lines changed: 97 additions & 74 deletions

File tree

src/main/java/com/iemr/hwc/controller/wo/LocationControllerWo.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -198,19 +198,19 @@ public String updateGeolocationVillage(@RequestBody String requestObj) {
198198
public ResponseEntity<String> getOutreachMasterForState(@PathVariable("stateID") Integer stateID) {
199199
logger.info("get Outreach programs for state with Id ..." + stateID);
200200

201-
OutputResponse outputResponse = new OutputResponse();
201+
OutputResponse response = new OutputResponse();
202202
HttpStatus statusCode = HttpStatus.OK;
203203
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
204204
headers.add("Content-Type", "application/json");
205205

206206
try {
207207
String resList = locationServiceImpl.getOutreachProgramsList(stateID);
208-
outputResponse.setResponse(resList);
208+
response.setResponse(resList);
209209
} catch (Exception e) {
210210
logger.error("Error while fetching outreach list for stateId" + stateID);
211211
response.setError(500, "Unable to fetch outreach list for stateId" + stateID + "Exception - " + e);
212212
statusCode = HttpStatus.INTERNAL_SERVER_ERROR;
213213
}
214-
return new ResponseEntity<>(outputResponse.toStringWithSerializeNulls(), headers, statusCode);
214+
return new ResponseEntity<>(response.toStringWithSerializeNulls(), headers, statusCode);
215215
}
216216
}

src/main/java/com/iemr/hwc/service/choApp/CHOAppSyncServiceImpl.java

Lines changed: 94 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -604,36 +604,44 @@ public ResponseEntity<String> savePrescriptionTemplatesToServer(List<Prescriptio
604604
return new ResponseEntity<>(outputResponse.toString(),headers,statusCode);
605605
}
606606

607-
@Override
608-
public ResponseEntity<String> savePrescriptionTemplatesToApp(Integer userID, String authorization) {
609-
OutputResponse outputResponse = new OutputResponse();
610-
HttpStatus statusCode = HttpStatus.OK;
611-
612-
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
613-
headers.add("Content-Type", "application/json");
614-
615-
List<PrescriptionTemplates> templateList = prescriptionTemplatesRepo.getPrescriptionTemplatesByUserID(userID);
616-
617-
outputResponse.setResponse(new GsonBuilder().excludeFieldsWithoutExposeAnnotation().serializeNulls().create().toJson(templateList));
618-
619-
return new ResponseEntity<>(outputResponse.toStringWithSerializeNulls(),headers,statusCode);
620-
}
621-
622-
@Override
623-
public ResponseEntity<String> deletePrescriptionTemplates(Integer userID, Integer tempID) {
624-
OutputResponse outputResponse = new OutputResponse();
625-
HttpStatus statusCode = HttpStatus.OK;
626-
627-
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
628-
headers.add("Content-Type", "application/json");
629-
630-
prescriptionTemplatesRepo.deletePrescriptionTemplatesByUserIDAndTempID(userID, tempID);
631-
632-
outputResponse.setResponse("Successfully deleted");
633-
634-
return new ResponseEntity<>(outputResponse.toString(),headers,statusCode);
635-
}
636-
607+
@Override
608+
public ResponseEntity<String> savePrescriptionTemplatesToApp(Integer userID, String authorization) {
609+
OutputResponse outputResponse = new OutputResponse();
610+
HttpStatus statusCode = HttpStatus.OK;
611+
612+
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
613+
headers.add("Content-Type", "application/json");
614+
try {
615+
List<PrescriptionTemplates> templateList = prescriptionTemplatesRepo
616+
.getPrescriptionTemplatesByUserID(userID);
617+
outputResponse.setResponse(new GsonBuilder().excludeFieldsWithoutExposeAnnotation().serializeNulls()
618+
.create().toJson(templateList));
619+
} catch (Exception e) {
620+
logger.error("Error while fetching Prescription Templates userID : " + userID);
621+
outputResponse.setError(500, "Unable to fetch Prescription Templates userID" + userID + "Exception - " + e);
622+
statusCode = HttpStatus.INTERNAL_SERVER_ERROR;
623+
624+
}
625+
return new ResponseEntity<>(outputResponse.toStringWithSerializeNulls(), headers, statusCode);
626+
}
627+
628+
@Override
629+
public ResponseEntity<String> deletePrescriptionTemplates(Integer userID, Integer tempID) {
630+
OutputResponse outputResponse = new OutputResponse();
631+
HttpStatus statusCode = HttpStatus.OK;
632+
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
633+
headers.add("Content-Type", "application/json");
634+
try {
635+
prescriptionTemplatesRepo.deletePrescriptionTemplatesByUserIDAndTempID(userID, tempID);
636+
outputResponse.setResponse("Successfully deleted");
637+
} catch (Exception e) {
638+
logger.error("Error while deleting Prescription Templates userID : " + userID + " tempID : " + tempID);
639+
outputResponse.setError(500, "Unable to delete Prescription Templates userID : " + userID + " tempID "
640+
+ tempID + "Exception - " + e);
641+
statusCode = HttpStatus.INTERNAL_SERVER_ERROR;
642+
}
643+
return new ResponseEntity<>(outputResponse.toString(), headers, statusCode);
644+
}
637645

638646
@Override
639647
public ResponseEntity<String> createNewOutreachActivity(OutreachActivity activity, String authorization) {
@@ -674,45 +682,60 @@ public ResponseEntity<String> createNewOutreachActivity(OutreachActivity activit
674682
return new ResponseEntity<>(outputResponse.toString(),headers,statusCode);
675683
}
676684

677-
@Override
678-
public ResponseEntity<String> getActivitiesByUser(Integer userId, String authorization) {
679-
OutputResponse outputResponse = new OutputResponse();
680-
HttpStatus statusCode = HttpStatus.OK;
681-
682-
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
683-
headers.add("Content-Type", "application/json");
684-
685-
ArrayList<Object[]> activitiesObj = outreachActivityRepo.getActivitiesByUserID(userId);
686-
687-
ArrayList<OutreachActivity> activities = OutreachActivity.getActivitiesForUser(activitiesObj);
688-
689-
outputResponse.setResponse(new GsonBuilder().excludeFieldsWithoutExposeAnnotation().serializeNulls().create().toJson(activities));
690-
691-
return new ResponseEntity<>(outputResponse.toStringWithSerializeNulls(),headers,statusCode);
692-
}
693-
694-
@Override
695-
public ResponseEntity<String> getActivityById(Integer activityId, String authorization) {
696-
OutputResponse outputResponse = new OutputResponse();
697-
HttpStatus statusCode = HttpStatus.OK;
698-
699-
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
700-
headers.add("Content-Type", "application/json");
701-
702-
OutreachActivity activity = outreachActivityRepo.findById(activityId).get();
703-
704-
if (activity != null && activity.getImg1Data() != null){
705-
String img1 = Base64.getEncoder().encodeToString(activity.getImg1Data());
706-
activity.setImg1(img1);
707-
}
708-
709-
if (activity != null && activity.getImg2Data() != null){
710-
String img2 = Base64.getEncoder().encodeToString(activity.getImg2Data());
711-
activity.setImg2(img2);
712-
}
713-
714-
outputResponse.setResponse(new GsonBuilder().excludeFieldsWithoutExposeAnnotation().serializeNulls().create().toJson(activity));
715-
716-
return new ResponseEntity<>(outputResponse.toStringWithSerializeNulls(),headers,statusCode);
717-
}
685+
@Override
686+
public ResponseEntity<String> getActivitiesByUser(Integer userId, String authorization) {
687+
OutputResponse outputResponse = new OutputResponse();
688+
HttpStatus statusCode = HttpStatus.OK;
689+
690+
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
691+
headers.add("Content-Type", "application/json");
692+
try {
693+
ArrayList<Object[]> activitiesObj = outreachActivityRepo.getActivitiesByUserID(userId);
694+
695+
ArrayList<OutreachActivity> activities = OutreachActivity.getActivitiesForUser(activitiesObj);
696+
697+
outputResponse.setResponse(new GsonBuilder().excludeFieldsWithoutExposeAnnotation().serializeNulls()
698+
.create().toJson(activities));
699+
} catch (Exception e) {
700+
logger.error("Encountered exception while fetching activity userId : " + userId);
701+
outputResponse.setError(500, "Encountered exception while fetching activity. " + e);
702+
statusCode = HttpStatus.INTERNAL_SERVER_ERROR;
703+
}
704+
return new ResponseEntity<>(outputResponse.toStringWithSerializeNulls(), headers, statusCode);
705+
}
706+
707+
@Override
708+
public ResponseEntity<String> getActivityById(Integer activityId, String authorization) {
709+
OutputResponse outputResponse = new OutputResponse();
710+
HttpStatus statusCode = HttpStatus.OK;
711+
712+
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
713+
headers.add("Content-Type", "application/json");
714+
try {
715+
Optional<OutreachActivity> activityOptional = outreachActivityRepo.findById(activityId);
716+
if (activityOptional.isPresent()) {
717+
OutreachActivity activity = activityOptional.get();
718+
if (activity.getImg1Data() != null) {
719+
String img1 = Base64.getEncoder().encodeToString(activity.getImg1Data());
720+
activity.setImg1(img1);
721+
}
722+
723+
if (activity.getImg2Data() != null) {
724+
String img2 = Base64.getEncoder().encodeToString(activity.getImg2Data());
725+
activity.setImg2(img2);
726+
}
727+
728+
outputResponse.setResponse(new GsonBuilder().excludeFieldsWithoutExposeAnnotation().serializeNulls()
729+
.create().toJson(activity));
730+
}else {
731+
outputResponse.setError(404, "Activity not found with ID : "+activityId);
732+
statusCode = HttpStatus.NOT_FOUND;
733+
}
734+
} catch (Exception e) {
735+
logger.error("Encountered exception while fetching activity activityId " + activityId);
736+
outputResponse.setError(500, "Encountered exception while fetching activity. " + e);
737+
statusCode = HttpStatus.INTERNAL_SERVER_ERROR;
738+
}
739+
return new ResponseEntity<>(outputResponse.toStringWithSerializeNulls(), headers, statusCode);
740+
}
718741
}

0 commit comments

Comments
 (0)