Commit 5d5093ab authored by Ajit Deshmukh's avatar Ajit Deshmukh

Updated profile ID validation logic to handle both single and comma-separated...

Updated profile ID validation logic to handle both single and comma-separated multiple profile IDs for logged-in users
parent 9a6fb118
...@@ -541,11 +541,29 @@ public class ManageSql extends ValidatorEJB { ...@@ -541,11 +541,29 @@ public class ManageSql extends ValidatorEJB {
valueXmlString.append("<name><![CDATA[").append(empgName).append("]]></name>\r\n"); valueXmlString.append("<name><![CDATA[").append(empgName).append("]]></name>\r\n");
valueXmlString.append("<users_name><![CDATA[").append(empgName).append("]]></users_name>\r\n"); valueXmlString.append("<users_name><![CDATA[").append(empgName).append("]]></users_name>\r\n");
if(profileId.trim().equalsIgnoreCase("MSDEVTL")){
valueXmlString.append("<exec_aprv protect='0'>").append("<![CDATA["+execAprv+"]]>").append("</exec_aprv>\r\n");
boolean isMSDEVTL = false;
if (profileId != null) {
String[] profileIds = profileId.split(",");
for (String id : profileIds) {
if ("MSDEVTL".equalsIgnoreCase(id.trim())) {
isMSDEVTL = true;
break;
} }
else{ }
valueXmlString.append("<exec_aprv protect='1'>").append("<![CDATA["+execAprv+"]]>").append("</exec_aprv>\r\n"); }
if (isMSDEVTL) {
valueXmlString.append("<exec_aprv protect='0'>")
.append("<![CDATA[" + execAprv + "]]>")
.append("</exec_aprv>\r\n");
} else {
valueXmlString.append("<exec_aprv protect='1'>")
.append("<![CDATA[" + execAprv + "]]>")
.append("</exec_aprv>\r\n");
} }
BaseLogger.log("3", null, null, "execAprv 523@@>>>"+ execAprv); BaseLogger.log("3", null, null, "execAprv 523@@>>>"+ execAprv);
//changed by Ashish.J //changed by Ashish.J
...@@ -560,7 +578,7 @@ public class ManageSql extends ValidatorEJB { ...@@ -560,7 +578,7 @@ public class ManageSql extends ValidatorEJB {
String deptCode = ""; String deptCode = "";
BaseLogger.log("3", null, null, "wfStatus>>>"+ wfStatus); BaseLogger.log("3", null, null, "wfStatus>>>"+ wfStatus);
// APPLY ONLY WHEN WF_STATUS = A // APPLY ONLY WHEN WF_STATUS = A
if(wfStatus != null && wfStatus.trim().equalsIgnoreCase("A")) { if(wfStatus != null && wfStatus.trim().equalsIgnoreCase("A")) {
BaseLogger.log("3", getUserInfo(), null, BaseLogger.log("3", getUserInfo(), null,
...@@ -585,18 +603,18 @@ public class ManageSql extends ValidatorEJB { ...@@ -585,18 +603,18 @@ public class ManageSql extends ValidatorEJB {
Element elem = (Element) node; Element elem = (Element) node;
String tagName = elem.getTagName(); String tagName = elem.getTagName();
// 🔹 Get value // 9 Get value
String value = ""; String value = "";
if (elem.getFirstChild() != null) { if (elem.getFirstChild() != null) {
value = elem.getFirstChild().getNodeValue(); value = elem.getFirstChild().getNodeValue();
} }
// 🔹 Handle null string // 9 Handle null string
if (value == null || "null".equalsIgnoreCase(value)) { if (value == null || "null".equalsIgnoreCase(value)) {
value = ""; value = "";
} }
// 🔹 Append to valueXmlString (fixed) // 9 Append to valueXmlString (fixed)
valueXmlString.append("<") valueXmlString.append("<")
.append(tagName) .append(tagName)
.append(" protect=\"1\">") .append(" protect=\"1\">")
...@@ -617,21 +635,39 @@ public class ManageSql extends ValidatorEJB { ...@@ -617,21 +635,39 @@ public class ManageSql extends ValidatorEJB {
BaseLogger.log("3", getUserInfo(), null, "Detail1 node NOT found in DOM"); BaseLogger.log("3", getUserInfo(), null, "Detail1 node NOT found in DOM");
} }
} }
else {
BaseLogger.log("3", getUserInfo(), null, "profileId:: "+profileId); BaseLogger.log("3", getUserInfo(), null, "profileId::: "+profileId);
BaseLogger.log("3", getUserInfo(), null, "wfStatus:: "+wfStatus); BaseLogger.log("3", getUserInfo(), null, "wfStatus:: "+wfStatus);
if(profileId.trim().equalsIgnoreCase("MSDEVTL") && !wfStatus.trim().equalsIgnoreCase("A")){
valueXmlString.append("<exec_aprv protect='0'>").append("<![CDATA["+execAprv+"]]>").append("</exec_aprv>\r\n"); boolean isMSDEVTL = false;
if (profileId != null) {
String[] profileIds = profileId.split(",");
for (String id : profileIds) {
if ("MSDEVTL".equalsIgnoreCase(id.trim()) && !wfStatus.trim().equalsIgnoreCase("A")) {
isMSDEVTL = true;
break;
}
}
}
if (isMSDEVTL) {
valueXmlString.append("<exec_aprv protect='0'>")
.append("<![CDATA[" + execAprv + "]]>")
.append("</exec_aprv>\r\n");
} }
else{ else{
valueXmlString.append("<exec_aprv protect='1'>").append("<![CDATA["+execAprv+"]]>").append("</exec_aprv>\r\n"); valueXmlString.append("<exec_aprv protect='1'>")
.append("<![CDATA[" + execAprv + "]]>")
.append("</exec_aprv>\r\n");
} }
BaseLogger.log("3", getUserInfo(), null, BaseLogger.log("3", getUserInfo(), null,
"workflow not approved. Skipping protect. Status: " + wfStatus); "workflow not approved. Skipping protect. Status: " + wfStatus);
}
BaseLogger.log("3", getUserInfo(), null, "valueXmlString:: "+valueXmlString.toString()); BaseLogger.log("3", getUserInfo(), null, "valueXmlString:: "+valueXmlString.toString());
// if (applDB.equalsIgnoreCase("E")) // if (applDB.equalsIgnoreCase("E"))
......
...@@ -1242,6 +1242,7 @@ public class ManageSqlConf extends ActionHandlerEJB { ...@@ -1242,6 +1242,7 @@ public class ManageSqlConf extends ActionHandlerEJB {
String status = ""; String status = "";
String refTranId = ""; String refTranId = "";
String profileId = ""; String profileId = "";
boolean isMSADMIN = false;
UserInfoBean userInfo; UserInfoBean userInfo;
try { try {
userInfo = getUserInfo(); userInfo = getUserInfo();
...@@ -1256,7 +1257,18 @@ public class ManageSqlConf extends ActionHandlerEJB { ...@@ -1256,7 +1257,18 @@ public class ManageSqlConf extends ActionHandlerEJB {
profileId = checkNull(userInfo.getProfileId()); profileId = checkNull(userInfo.getProfileId());
// Added condition if profileId is not MSADMIN return a validation // Added condition if profileId is not MSADMIN return a validation
if (!profileId.trim().equalsIgnoreCase("MSADMIN")) {
if (profileId != null) {
String[] profileIds = profileId.split(",");
for (String id : profileIds) {
if ("MSADMIN".equalsIgnoreCase(id.trim())) {
isMSADMIN = true;
break;
}
}
}
if (!isMSADMIN) {
BaseLogger.log("3", getUserInfo(), null, "Only Admin can close this transaction."); BaseLogger.log("3", getUserInfo(), null, "Only Admin can close this transaction.");
return itmdbAccessLocal.getErrorString("", "MSQLCNA", "", "", con); return itmdbAccessLocal.getErrorString("", "MSQLCNA", "", "", con);
} }
......
...@@ -388,4 +388,8 @@ Insert into MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,E ...@@ -388,4 +388,8 @@ Insert into MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,E
-----------28May--------------
update user_rights set RIGHTS = 'TEPSA' where obj_name = 'sql_changes' and profile_id = 'MSDEVTL';
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment