diff --git a/pom.xml b/pom.xml
index aa3c19c9..d005dba8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.iemr.mmu
mmu-api
- 3.4.1
+ 3.6.0
war
MMU-API
diff --git a/src/main/java/com/iemr/mmu/controller/anc/ANCController.java b/src/main/java/com/iemr/mmu/controller/anc/ANCController.java
index 178f080b..c60b9bf4 100644
--- a/src/main/java/com/iemr/mmu/controller/anc/ANCController.java
+++ b/src/main/java/com/iemr/mmu/controller/anc/ANCController.java
@@ -21,6 +21,9 @@
*/
package com.iemr.mmu.controller.anc;
+import java.util.ArrayList;
+import java.util.HashMap;
+
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -34,6 +37,7 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -42,6 +46,13 @@
import io.swagger.v3.oas.annotations.Operation;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
+
/**
* @Objective Saving ANC data for Nurse and Doctor.
*/
@@ -99,7 +110,23 @@ public String saveBenANCDoctorData(@RequestBody String requestObj,
if (jsnOBJ != null) {
Long r = ancService.saveANCDoctorData(jsnOBJ, authorization);
if (r != null && r > 0) {
- response.setResponse("Data saved successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data saved successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(5000, "Unable to save data");
}
@@ -454,7 +481,23 @@ public String updateANCDoctorData(@RequestBody String requestObj,
try {
Long result = ancService.updateANCDoctorData(jsnOBJ, authorization);
if (null != result && result > 0) {
- response.setResponse("Data updated successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data updated successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(500, "Unable to modify data");
}
diff --git a/src/main/java/com/iemr/mmu/controller/covid19/CovidController.java b/src/main/java/com/iemr/mmu/controller/covid19/CovidController.java
index 959c9cc7..17a03d85 100644
--- a/src/main/java/com/iemr/mmu/controller/covid19/CovidController.java
+++ b/src/main/java/com/iemr/mmu/controller/covid19/CovidController.java
@@ -21,7 +21,9 @@
*/
package com.iemr.mmu.controller.covid19;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import org.json.JSONObject;
@@ -36,6 +38,8 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -109,7 +113,23 @@ public String saveBenCovidDoctorData(@RequestBody String requestObj,
if (jsnOBJ != null) {
Long ncdCareRes = covid19Service.saveDoctorData(jsnOBJ, authorization);
if (null != ncdCareRes && ncdCareRes > 0) {
- response.setResponse("Data saved successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data saved successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setResponse("Unable to save data");
}
@@ -313,7 +333,23 @@ public String updateCovid19DoctorData(@RequestBody String requestObj,
try {
Long result = covid19ServiceImpl.updateCovid19DoctorData(jsnOBJ, authorization);
if (null != result && result > 0) {
- response.setResponse("Data updated successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data updated successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(500, "Unable to modify data");
}
diff --git a/src/main/java/com/iemr/mmu/controller/generalOPD/GeneralOPDController.java b/src/main/java/com/iemr/mmu/controller/generalOPD/GeneralOPDController.java
index b7fa65a0..c1e0eccc 100644
--- a/src/main/java/com/iemr/mmu/controller/generalOPD/GeneralOPDController.java
+++ b/src/main/java/com/iemr/mmu/controller/generalOPD/GeneralOPDController.java
@@ -21,6 +21,11 @@
*/
package com.iemr.mmu.controller.generalOPD;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -33,6 +38,8 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -104,7 +111,23 @@ public String saveBenGenOPDDoctorData(@RequestBody String requestObj,
if (jsonRequest != null) {
Long genOPDRes = generalOPDServiceImpl.saveDoctorData(jsonRequest, authorization);
if (null != genOPDRes && genOPDRes > 0) {
- response.setResponse("Data saved successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsonRequest.has("savedDrugIDs") && !jsonRequest.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsonRequest.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data saved successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setResponse("Unable to save data");
}
@@ -401,7 +424,23 @@ public String updateGeneralOPDDoctorData(@RequestBody String requestObj,
try {
Long result = generalOPDServiceImpl.updateGeneralOPDDoctorData(jsonRequest, authorization);
if (null != result && result > 0) {
- response.setResponse("Data updated successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsonRequest.has("savedDrugIDs") && !jsonRequest.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsonRequest.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data updated successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(500, "Unable to modify data");
}
diff --git a/src/main/java/com/iemr/mmu/controller/ncdCare/NCDCareController.java b/src/main/java/com/iemr/mmu/controller/ncdCare/NCDCareController.java
index 03c4cecc..fa853ad2 100644
--- a/src/main/java/com/iemr/mmu/controller/ncdCare/NCDCareController.java
+++ b/src/main/java/com/iemr/mmu/controller/ncdCare/NCDCareController.java
@@ -21,7 +21,9 @@
*/
package com.iemr.mmu.controller.ncdCare;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import org.json.JSONObject;
@@ -36,6 +38,8 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -108,7 +112,23 @@ public String saveBenNCDCareDoctorData(@RequestBody String requestObj,
if (jsnOBJ != null) {
Long ncdCareRes = ncdCareServiceImpl.saveDoctorData(jsnOBJ, authorization);
if (null != ncdCareRes && ncdCareRes > 0) {
- response.setResponse("Data saved successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data saved successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setResponse("Unable to save data");
}
@@ -316,7 +336,23 @@ public String updateNCDCareDoctorData(@RequestBody String requestObj,
try {
Long result = ncdCareServiceImpl.updateNCDCareDoctorData(jsnOBJ, authorization);
if (null != result && result > 0) {
- response.setResponse("Data updated successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data updated successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(500, "Unable to modify data");
}
diff --git a/src/main/java/com/iemr/mmu/controller/ncdscreening/NCDController.java b/src/main/java/com/iemr/mmu/controller/ncdscreening/NCDController.java
index 39d3531b..5f6ebeab 100644
--- a/src/main/java/com/iemr/mmu/controller/ncdscreening/NCDController.java
+++ b/src/main/java/com/iemr/mmu/controller/ncdscreening/NCDController.java
@@ -21,6 +21,11 @@
*/
package com.iemr.mmu.controller.ncdscreening;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -35,6 +40,8 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -119,7 +126,23 @@ public String saveBenNCDScreeningDoctorData(@RequestBody String requestObj,
if (jsnOBJ != null) {
Long ncdCareRes = ncdScreeningServiceImpl.saveDoctorData(jsnOBJ, authorization);
if (null != ncdCareRes && ncdCareRes > 0) {
- response.setResponse("Data saved successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data saved successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setResponse("Unable to save data");
}
@@ -426,10 +449,27 @@ public String updateDoctorData(@RequestBody String requestObj) {
try {
JsonObject jsnOBJ = parseJsonRequest(requestObj);
int i = ncdSCreeningDoctorService.updateDoctorData(jsnOBJ);
- if (i > 0)
- response.setResponse("Data updated successfully");
- else
+ if (i > 0) {
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data updated successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
+ } else {
response.setError(5000, "Error in data update");
+ }
} catch (Exception e) {
response.setError(5000, "Unable to modify data");
logger.error("Error while updating doctor data :" + e);
diff --git a/src/main/java/com/iemr/mmu/controller/pnc/PostnatalCareController.java b/src/main/java/com/iemr/mmu/controller/pnc/PostnatalCareController.java
index 0e15e43a..1dfa95f1 100644
--- a/src/main/java/com/iemr/mmu/controller/pnc/PostnatalCareController.java
+++ b/src/main/java/com/iemr/mmu/controller/pnc/PostnatalCareController.java
@@ -21,6 +21,11 @@
*/
package com.iemr.mmu.controller.pnc;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -33,6 +38,8 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -104,7 +111,23 @@ public String saveBenPNCDoctorData(@RequestBody String requestObj,
if (jsnOBJ != null) {
Long r = pncServiceImpl.savePNCDoctorData(jsnOBJ, authorization);
if (r != null && r > 0) {
- response.setResponse("Data saved successfully");
+ // Extract drug IDs from JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data saved successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(5000, "Unable to save data");
}
@@ -427,7 +450,22 @@ public String updatePNCDoctorData(@RequestBody String requestObj,
try {
Long result = pncServiceImpl.updatePNCDoctorData(jsnOBJ, authorization);
if (null != result && result > 0) {
- response.setResponse("Data updated successfully");
+ List prescribedDrugIDs = new ArrayList<>();
+ if (jsnOBJ.has("savedDrugIDs") && !jsnOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = jsnOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response with message and IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data updated successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(500, "Unable to modify data");
}
diff --git a/src/main/java/com/iemr/mmu/controller/quickconsult/QuickConsultController.java b/src/main/java/com/iemr/mmu/controller/quickconsult/QuickConsultController.java
index 5b672df5..c7ef2307 100644
--- a/src/main/java/com/iemr/mmu/controller/quickconsult/QuickConsultController.java
+++ b/src/main/java/com/iemr/mmu/controller/quickconsult/QuickConsultController.java
@@ -33,6 +33,7 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
@@ -44,6 +45,10 @@
import io.swagger.annotations.ApiParam;
import io.swagger.v3.oas.annotations.Operation;
+import java.util.*;
+import com.google.gson.Gson;
+import com.google.gson.JsonArray;
+
/**
* @Objective Saving general OPD quick consult data for Nurse and Doctor both.
*/
@@ -124,7 +129,25 @@ public String saveQuickConsultationDetail(
Integer i = quickConsultationServiceImpl.quickConsultDoctorDataInsert(quickConsultDoctorOBJ, authorization);
if (i != null && i > 0) {
- response.setResponse("Data saved successfully");
+ // Check if drug IDs were saved and added to the JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (quickConsultDoctorOBJ.has("savedDrugIDs")
+ && !quickConsultDoctorOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = quickConsultDoctorOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response data with message and drug IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data saved successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ // Convert to JSON string and set response
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(5000, "Unable to save data");
}
@@ -241,7 +264,25 @@ public String updateGeneralOPDQCDoctorData(@RequestBody String requestObj,
Long result = quickConsultationServiceImpl.updateGeneralOPDQCDoctorData(quickConsultDoctorOBJ,
authorization);
if (null != result && result > 0) {
- response.setResponse("Data updated successfully");
+ // Check if drug IDs were saved and added to the JsonObject
+ List prescribedDrugIDs = new ArrayList<>();
+ if (quickConsultDoctorOBJ.has("savedDrugIDs")
+ && !quickConsultDoctorOBJ.get("savedDrugIDs").isJsonNull()) {
+ JsonArray drugIDsArray = quickConsultDoctorOBJ.getAsJsonArray("savedDrugIDs");
+ for (int j = 0; j < drugIDsArray.size(); j++) {
+ prescribedDrugIDs.add(drugIDsArray.get(j).getAsLong());
+ }
+ }
+
+ // Create response data with message and drug IDs
+ Map responseData = new HashMap<>();
+ responseData.put("message", "Data updated successfully");
+ responseData.put("prescribedDrugIDs", prescribedDrugIDs);
+
+ // Convert to JSON string and set response
+ Gson gson = new Gson();
+ String responseJson = gson.toJson(responseData);
+ response.setResponse(responseJson);
} else {
response.setError(500, "Unable to modify data");
}
diff --git a/src/main/java/com/iemr/mmu/service/anc/ANCServiceImpl.java b/src/main/java/com/iemr/mmu/service/anc/ANCServiceImpl.java
index 01fcffc0..a04b2932 100644
--- a/src/main/java/com/iemr/mmu/service/anc/ANCServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/anc/ANCServiceImpl.java
@@ -386,7 +386,17 @@ public Long saveANCDoctorData(JsonObject requestOBJ, String Authorization) throw
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
+
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
@@ -1605,7 +1615,16 @@ public Long updateANCDoctorData(JsonObject requestOBJ, String Authorization) thr
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
diff --git a/src/main/java/com/iemr/mmu/service/common/transaction/CommonNurseServiceImpl.java b/src/main/java/com/iemr/mmu/service/common/transaction/CommonNurseServiceImpl.java
index 1144746b..72e3c8f2 100644
--- a/src/main/java/com/iemr/mmu/service/common/transaction/CommonNurseServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/common/transaction/CommonNurseServiceImpl.java
@@ -2782,7 +2782,9 @@ public Long saveBeneficiaryLabTestOrderDetails(JsonObject caseSheet, Long prescr
return returnOBJ;
}
- public Integer saveBenPrescribedDrugsList(List prescribedDrugDetailList) {
+ public Map saveBenPrescribedDrugsList(List prescribedDrugDetailList) {
+ Map result = new HashMap<>();
+ List prescribedDrugIDs = new ArrayList<>();
Integer r = 0;
if (prescribedDrugDetailList.size() > 0) {
@@ -2798,11 +2800,20 @@ public Integer saveBenPrescribedDrugsList(List prescribedD
.saveAll(prescribedDrugDetailList);
if (prescribedDrugDetailList.size() == prescribedDrugDetailListRS.size()) {
r = prescribedDrugDetailListRS.size();
+ // Extract the IDs from saved entities
+ for (PrescribedDrugDetail savedDrug : prescribedDrugDetailListRS) {
+ if (savedDrug.getId() != null) {
+ prescribedDrugIDs.add(savedDrug.getId());
+ }
+ }
}
} else {
r = 1;
}
- return r;
+
+ result.put("count", r);
+ result.put("prescribedDrugIDs", prescribedDrugIDs);
+ return result;
}
private int calculateQtyPrescribed(String form, String dose, String frequency, String duration,
diff --git a/src/main/java/com/iemr/mmu/service/covid19/Covid19ServiceImpl.java b/src/main/java/com/iemr/mmu/service/covid19/Covid19ServiceImpl.java
index c2868e44..9c2865b2 100644
--- a/src/main/java/com/iemr/mmu/service/covid19/Covid19ServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/covid19/Covid19ServiceImpl.java
@@ -943,7 +943,16 @@ public Long updateCovid19DoctorData(JsonObject requestOBJ, String Authorization)
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
@@ -1242,7 +1251,16 @@ public Long saveDoctorData(JsonObject requestOBJ, String Authorization) throws E
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
diff --git a/src/main/java/com/iemr/mmu/service/generalOPD/GeneralOPDServiceImpl.java b/src/main/java/com/iemr/mmu/service/generalOPD/GeneralOPDServiceImpl.java
index aa75eb58..122ceb25 100644
--- a/src/main/java/com/iemr/mmu/service/generalOPD/GeneralOPDServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/generalOPD/GeneralOPDServiceImpl.java
@@ -915,7 +915,17 @@ public Long saveDoctorData(JsonObject requestOBJ, String Authorization) throws E
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
+
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
@@ -1558,7 +1568,16 @@ public Long updateGeneralOPDDoctorData(JsonObject requestOBJ, String Authorizati
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
diff --git a/src/main/java/com/iemr/mmu/service/ncdCare/NCDCareServiceImpl.java b/src/main/java/com/iemr/mmu/service/ncdCare/NCDCareServiceImpl.java
index aed7f4ea..8f18e060 100644
--- a/src/main/java/com/iemr/mmu/service/ncdCare/NCDCareServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/ncdCare/NCDCareServiceImpl.java
@@ -106,6 +106,7 @@ public void setCommonDoctorServiceImpl(CommonDoctorServiceImpl commonDoctorServi
public void setCommonNurseServiceImpl(CommonNurseServiceImpl commonNurseServiceImpl) {
this.commonNurseServiceImpl = commonNurseServiceImpl;
}
+
@Autowired
private BeneficiaryFlowStatusRepo beneficiaryFlowStatusRepo;
@@ -846,7 +847,17 @@ public Long saveDoctorData(JsonObject requestOBJ, String Authorization) throws E
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
+
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
@@ -1275,7 +1286,16 @@ public Long updateNCDCareDoctorData(JsonObject requestOBJ, String Authorization)
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
diff --git a/src/main/java/com/iemr/mmu/service/ncdscreening/NCDSCreeningDoctorServiceImpl.java b/src/main/java/com/iemr/mmu/service/ncdscreening/NCDSCreeningDoctorServiceImpl.java
index fad48bf5..07a4a4ee 100644
--- a/src/main/java/com/iemr/mmu/service/ncdscreening/NCDSCreeningDoctorServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/ncdscreening/NCDSCreeningDoctorServiceImpl.java
@@ -24,6 +24,7 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import java.util.Map;
import java.util.regex.Pattern;
import org.springframework.beans.factory.annotation.Autowired;
@@ -221,7 +222,16 @@ public int updateDoctorData(JsonObject requestOBJ) throws Exception {
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
diff --git a/src/main/java/com/iemr/mmu/service/ncdscreening/NCDScreeningServiceImpl.java b/src/main/java/com/iemr/mmu/service/ncdscreening/NCDScreeningServiceImpl.java
index a03e9c10..03b434cf 100644
--- a/src/main/java/com/iemr/mmu/service/ncdscreening/NCDScreeningServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/ncdscreening/NCDScreeningServiceImpl.java
@@ -268,10 +268,20 @@ private Long saveNCDNurseTMReferred(JsonObject requestOBJ, String authorization)
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
- if (r > 0 && r != null) {
- prescriptionSuccessFlag = r;
- }
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
+
+ if (r > 0 && r != null) {
+ prescriptionSuccessFlag = r;
+ }
} else {
prescriptionSuccessFlag = 1;
@@ -1323,7 +1333,16 @@ public Long saveDoctorData(JsonObject requestOBJ, String Authorization) throws E
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
diff --git a/src/main/java/com/iemr/mmu/service/pnc/PNCServiceImpl.java b/src/main/java/com/iemr/mmu/service/pnc/PNCServiceImpl.java
index 473151b5..a2d627f1 100644
--- a/src/main/java/com/iemr/mmu/service/pnc/PNCServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/pnc/PNCServiceImpl.java
@@ -362,7 +362,16 @@ public Long savePNCDoctorData(JsonObject requestOBJ, String Authorization) throw
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
@@ -1559,7 +1568,16 @@ public Long updatePNCDoctorData(JsonObject requestOBJ, String Authorization) thr
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store IDs in JsonObject
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ requestOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
diff --git a/src/main/java/com/iemr/mmu/service/quickConsultation/QuickConsultationServiceImpl.java b/src/main/java/com/iemr/mmu/service/quickConsultation/QuickConsultationServiceImpl.java
index 7cf4801f..2062f68a 100644
--- a/src/main/java/com/iemr/mmu/service/quickConsultation/QuickConsultationServiceImpl.java
+++ b/src/main/java/com/iemr/mmu/service/quickConsultation/QuickConsultationServiceImpl.java
@@ -164,6 +164,7 @@ public void setPrescriptionDetailRepo(PrescriptionDetailRepo prescriptionDetailR
public void setExternalTestOrderRepo(ExternalTestOrderRepo externalTestOrderRepo) {
this.externalTestOrderRepo = externalTestOrderRepo;
}
+
@Autowired
private BeneficiaryFlowStatusRepo beneficiaryFlowStatusRepo;
@@ -443,7 +444,19 @@ public Integer quickConsultDoctorDataInsert(JsonObject quickConsultDoctorOBJ, St
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+
+ // Use the modified method to get both count and IDs
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store the drug IDs in the JsonObject for later retrieval in controller
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ quickConsultDoctorOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
+
if (r > 0 && r != null) {
prescriptionSuccessFlag = r;
}
@@ -668,7 +681,19 @@ public Long updateGeneralOPDQCDoctorData(JsonObject quickConsultDoctorOBJ, Strin
tmpObj.setVisitCode(commonUtilityClass.getVisitCode());
tmpObj.setProviderServiceMapID(commonUtilityClass.getProviderServiceMapID());
}
- Integer r = commonNurseServiceImpl.saveBenPrescribedDrugsList(prescribedDrugDetailList);
+
+ // Use the modified method to get both count and IDs
+ Map drugSaveResult = commonNurseServiceImpl
+ .saveBenPrescribedDrugsList(prescribedDrugDetailList);
+ Integer r = (Integer) drugSaveResult.get("count");
+ List prescribedDrugIDs = (List) drugSaveResult.get("prescribedDrugIDs");
+
+ // Store the drug IDs in the JsonObject for later retrieval in controller
+ if (prescribedDrugIDs != null && !prescribedDrugIDs.isEmpty()) {
+ Gson gson = new Gson();
+ quickConsultDoctorOBJ.add("savedDrugIDs", gson.toJsonTree(prescribedDrugIDs));
+ }
+
if (r > 0 && r != null) {
prescribedDrugSuccessFlag = new Long(1);
}