diff --git a/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterInter.java b/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterInter.java index aae5837..1d22c5d 100644 --- a/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterInter.java +++ b/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterInter.java @@ -24,6 +24,8 @@ import java.util.ArrayList; import java.util.List; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.JsonMappingException; import com.iemr.admin.data.employeemaster.M_Community; import com.iemr.admin.data.employeemaster.M_Gender; import com.iemr.admin.data.employeemaster.M_ProviderServiceMap1; @@ -60,7 +62,8 @@ public interface EmployeeMasterInter { ArrayList mapLanguage(List resList); - ArrayList mapRole(List resList1, String authToken); +// ArrayList mapRole(List resList1, String authToken); + public ArrayList mapRole(List resList1, String authToken) throws JsonMappingException, JsonProcessingException; M_UserDemographics mdedit(Integer userID); @@ -154,7 +157,8 @@ Boolean checkingEmpDetails(String userName, String aadhaarNo, String getpAN, Str M_UserServiceRoleMapping2 getDataUsrId(Integer uSRMappingID); - M_UserServiceRoleMapping2 saveRoleMappingeditedData(M_UserServiceRoleMapping2 usrRole, String string); +// M_UserServiceRoleMapping2 saveRoleMappingeditedData(M_UserServiceRoleMapping2 usrRole, String string); + public M_UserServiceRoleMapping2 saveRoleMappingeditedData(M_UserServiceRoleMapping2 usrRole, String authToken) throws JsonMappingException, JsonProcessingException; // ArrayList getMappedLanguge(); diff --git a/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterServiceImpl.java b/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterServiceImpl.java index 41ee880..8a0e9a3 100644 --- a/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterServiceImpl.java +++ b/src/main/java/com/iemr/admin/service/employeemaster/EmployeeMasterServiceImpl.java @@ -32,6 +32,8 @@ import java.util.List; import java.util.Map; import java.util.Set; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.PBEKeySpec; @@ -42,10 +44,19 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpMethod; +import org.springframework.http.ResponseEntity; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestTemplate; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.JsonMappingException; +import com.fasterxml.jackson.databind.ObjectMapper; import com.google.gson.JsonParser; import com.iemr.admin.data.blocking.M_Providerservicemapping_Blocking; import com.iemr.admin.data.employeemaster.M_Community; @@ -85,12 +96,15 @@ import com.iemr.admin.repository.provideronboard.M_ServiceMasterRepo; import com.iemr.admin.repository.rolemaster.M_UserservicerolemappingForRoleProviderAdminRepo; import com.iemr.admin.service.user.EncryptUserPassword; +import com.iemr.admin.utils.CookieUtil; import com.iemr.admin.utils.config.ConfigProperties; import com.iemr.admin.utils.exception.IEMRException; import com.iemr.admin.utils.http.HttpUtils; import com.iemr.admin.utils.mapper.InputMapper; import com.iemr.admin.utils.response.OutputResponse; +import jakarta.servlet.http.HttpServletRequest; + @Service public class EmployeeMasterServiceImpl implements EmployeeMasterInter { @@ -124,6 +138,8 @@ public class EmployeeMasterServiceImpl implements EmployeeMasterInter { @Autowired private EncryptUserPassword encryptUserPassword; + @Autowired + private CookieUtil cookieUtil; private InputMapper inputMapper = new InputMapper(); private Logger logger = LoggerFactory.getLogger(EmployeeMasterServiceImpl.class); @@ -305,7 +321,7 @@ public ArrayList mapLanguage(List resList) } @Override - public ArrayList mapRole(List resList1, String authToken) { + public ArrayList mapRole(List resList1, String authToken) throws JsonMappingException, JsonProcessingException { ArrayList reslist = (ArrayList) employeeMasterRepo .saveAll(resList1); if (ENABLE_CTI_USER_CREATION) { @@ -375,7 +391,7 @@ public boolean equals(Object obj) { } @Async - private void updateSupervisorRoleInCTI(List resList1, String authToken) { + private void updateSupervisorRoleInCTI(List resList1, String authToken) throws JsonMappingException, JsonProcessingException { Map userServiceLineMap = new HashMap(); Set providerMapIds = new HashSet(); for (M_UserServiceRoleMapping2 userRole : resList1) { @@ -443,18 +459,21 @@ private void updateSupervisorRoleInCTI(List resList1, } } - private Set getCTICampaignRoles(String campaignName, String authToken) { + private Set getCTICampaignRoles(String campaignName, String authToken) throws JsonMappingException, JsonProcessingException { + RestTemplate restTemplate = new RestTemplate(); + ObjectMapper objectMapper = new ObjectMapper(); + HttpServletRequest requestHeader = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()) + .getRequest(); + String jwtTokenFromCookie = cookieUtil.getJwtTokenFromCookie(requestHeader); Set resultSet = new HashSet(); - HttpUtils httpUtils = new HttpUtils(); - HashMap headers = new HashMap(); - headers.put("Authorization", authToken); - String getRolesURL = configProperties.getPropertyByName("common-url") - + configProperties.getPropertyByName("campaign-roles-url"); - JSONObject request = new JSONObject(); - request.put("campaign", campaignName); - - OutputResponse response = inputMapper.gson().fromJson(httpUtils.post(getRolesURL, request.toString(), headers), - OutputResponse.class); + MultiValueMap headers = new LinkedMultiValueMap(); + headers.add("Content-Type", "application/json"); + headers.add("AUTHORIZATION", authToken); + headers.add("Jwttoken", jwtTokenFromCookie); + String url = configProperties.getPropertyByName("common-url") + configProperties.getPropertyByName("create-feedback"); + HttpEntity request1 = new HttpEntity(campaignName, headers); + ResponseEntity responseStr = restTemplate.exchange(url, HttpMethod.POST, request1, String.class); + OutputResponse response = objectMapper.readValue(responseStr.getBody(), OutputResponse.class); if (response.isSuccess()) { JSONObject obj = new JSONObject(response.getData()); JSONArray roles = obj.getJSONArray("roles"); @@ -462,6 +481,9 @@ private Set getCTICampaignRoles(String campaignName, String authToken) { resultSet.add(roles.getString(roleIndex)); } } +// JSONObject request = new JSONObject(); +// request.put("campaign", campaignName); + return resultSet; } @@ -906,7 +928,7 @@ public M_UserServiceRoleMapping2 getDataUsrId(Integer uSRMappingID) { } @Override - public M_UserServiceRoleMapping2 saveRoleMappingeditedData(M_UserServiceRoleMapping2 usrRole, String authToken) { + public M_UserServiceRoleMapping2 saveRoleMappingeditedData(M_UserServiceRoleMapping2 usrRole, String authToken) throws JsonMappingException, JsonProcessingException { M_UserServiceRoleMapping2 data = employeeMasterRepo.save(usrRole); if (ENABLE_CTI_USER_CREATION) {